School of Computer Applications DCU
 
Home About Us Research People Prospective Students Current Students Alumni Career Opportunities Staff Intranet
Timetables
Project Submission Form

Final Year Projects - 1997


PLEASE NOTE: PROJECT FILES ARE CURRENTLY OFF-LINE.

Please contact web@computing.dcu.ie if further specifications of these projects are required.

WWW/Inter-DataBase Interface Tool Aidan Clarke, Paraic Nolan (1997)
doc97.zip, code97.zip
Our final year project consists of creating a Windows Application which will allow its user to access, update and query data located in a Windows based database (such as MS-Access) or databases located on a UNIX platform which are ODBC compatible. The user will be able to perform the above operations directly from a Windows front end or remotely via the World Wide Web. We will initially implement the program on an Intranet scale and hopefully will be able to pursue it to Internet level.
On an Intranet scale, we would aim to provide secure data transmission and retrieval using basic encryption, whilst on an Internet scale we would aim to provide more powerful data encryption and password protection.
We will be using Visual Basic 4, ODBC Software and C to develop the Windows Application, and CGI/Java & JDBC to develop the Remote Access Application. The Databases we intend using are SQLServer and Access on Windows, and hopefully Oracle 7.0 on UNIX.

Dairy & Manager Calendar Programme Breffni Murdoch (1997)
doc97.zip, code97.zip
The company information assistant is a single application consisting of 5 separate tools:
  1. DIARY: A diary and calendar manager type program.
  2. PROFILE: Contains personal information on the employee using the application which can then be viewed by other users in 'employees' and 'project' sections of the program.
  3. EMPLOYEES: Consists of a searchable list of employees containing names and usernames, and specifies if they are logged onto the system. Selection of employees from the list displays their profile, from which an e-mail program can be run so as to contact the user.
  4. PROJECTS: Consists of a project database consisting of planned, current, and completed projects. Project information includes such things as project leader and team, start date, end date, costs, etc. Users can email the project team from this section, and/or view their user profiles.
  5. HELPDESK: An E-mail program in which users can fill out details of technical problem they may be having with equipment in their office. This information, along with users profile information is generated into an e-mail and sent to the company's IT department e-mail address.
All these tools are combined into one platform independent Java application.

"NotePerfect" - Multiple Part MIDI Music Editor Anthony Fitzgerald, Barry O'Flanagan (1997)
doc97.zip, code97.zip
This project is an analogous to a word processor for the music domain. It is aimed at amateur composers and therefore has a restricted range of notation. The program allows the user to input music and lyrics on to multiple staves on-screen. The program supports multiple parts (it is based around a solo part with a piano style accompaniment, i.e. treble and bass). Also included is a choice of multiple instruments, different keys and time signatures. Dynamics such as style, volume and velocity are represented on the manuscript. Playback of the composition is achieved via output of the piece to a MIDI compatible sound card and speakers. As with word processors, one of the key features is printing of the document, or manuscript in this case. The program uses the WYSIWYG idea, as with most other word processors, i.e.: what appears on the screen is what is printed. The program also provides options for loading and saving of compositions in two formats, MIDI and our own specific format
Keywords: Music, MIDI, Multimedia.

RugWarrior Simulator Under Windows Brian Marshall (1997)
doc97.zip, code97.zip
The RugWarrior is a small mobile robot which can move around a room. It has infra-red sensors which can detect objects above a certain height towards which it is moving, and also has bump switches to detect if it has hit an object. The RugWarrior has also two motors which can be programmed to take action when the robot detects or hits an object, thereby implementing directional changes. To program the RugWarrior a C program is written to set variables, start processes etc., and then down-loaded to the robot. My task is to implement a virtual RugWarrior in Windows NT/95. This will involve the following:
  1. A simulator which will allow the loading of a user defined map file which specifies the outlay of a virtual room, e.g. walls, corridors, objects etc. The user can then view the pre-programmed RugWarrior's actions in the room.
  2. A library of functions which will be linked with a user C program to control the robot, this program will communicate with the simulator.

Year 2000 Tool Kit Alan Darcy (1997)
doc97.tar, code97.tar
In the Year 2000 computer-based information systems will encounter a new century for the first time. Evidence shows that more than one third of companies do not realise the extent of the problem or whether it affects them. Time is running out for companies to resolve this problem. This project is a Tool Kit to help resolve the problem. It consists of two parts, A thesis, which will outline the background to the problem and the various methods of resolving the problem from both an I.T and Managerial perspective. A sample of tools that can help automate the resolving of the problem. This includes a tool for identifying problematic lines of code.

Insurance Telebusiness Application Caroline Clinton, Ciaran Galligan (1997)
code97.zip
This project consists of a software system used by people receiving and making telephone calls in the area of car insurance. It will advise the operator what questions to ask and allow the answers to by typed or directly spoken onto the screen, control the logic flow of the conversation and also to make reference information available on the screen so that it can be given out to the person who is making the telephone call.
The application will contain both a scriptwriter and user application. The scriptwriter will allow for the designing of the suitable screens for the operator to use while on the phone. It will only be accessible by the department manager or team leader who will create the suitable screens. The user application will provide the interface between the operator and client. It is based on the screens designed from the scriptwriter and will allow information to be passed between the operator and client. To allow for information to be directly spoken to the screen we will use an application package called Dragon Dictate. It is a fast and accurate speech recognition system that converts what the operator says into written text on the PC screen.
Application area : C++, Visual Basic4, Access7, Dragon Dictate, on Windows 95 platform.

INTERNET CBT Cathal Gurrin (1997)
doc97.zip, code97.zip
The phenomenal growth of the Internet has lead to it being put to many uses, including Remote Learning. This project will allow the Internet, or any LAN, to be used as a medium for providing Multimedia Based Training courses. The project consists of two programs:
  1. A Course Browser, developed in JAVA, which will allow a user to partake in the multimedia training courses. This application will run with any operating system that supports the JAVA virtual machine and will provide many of the useful features from web browsing such as bookmarks & hyperlinks. Regular examinations & feedback will be provided for the user. I expect to incorporate the ability to read and display HTML into the browser also. The second application, the Course Developer, will be written in Visual C++ for Windows NT/95. It will be used to create the courses and will provide for data input in the familiar MS PowerPoint style using any of the incorporated screen templates. To overcome the bandwidth limitations and delays of sending audio/video data across the Internet the browser will implement advanced loading of the next screens.
  2. The Course Development application will incorporate vector-based drawing tools to enable the transmission of an image specification as opposed to bitmapped images where possible, in a manner similar to VRML.

CSC Based French Search Techniques Christine Delaney, Carol Tiernan (1997)
doc97.tar.gz, code97.tar.gz
Our project is to develop a user interface to the already running MMIR search engine. The user of this system will enter French text, and the system will return the number of words which have the same CSC code as the key words (plus the plurals and variants of these words)in the query. The user then chooses which of these words they wish to continue the search with. After entering in their choice within 2-3 seconds the documents relevant to the user's query will be returned. We will be using a stemming algorithm and an algorithm to convert the French query term into its relevant character shape codes. This project is UNIX based and will be written in C.

Jobtrack Plus Clare Carter, Orla Finnan (1997)
doc97.zip, code97.zip
A job tracking, scheduling and warehouse storage system. We intend to implement a solution to the flow-shop problem incorporating the Skip-Shop scenario, which means scheduling a n jobs on m machines where each job has a set sequence of machines to run on. The aim is to get each job completed by its due date. Having drawn up a daily schedule the project will run as a simulation of a factory environment. Machine bottle-necks, job-tracking at any time and new orders coming in will be represented. At the close of each day, a number of reports will be printed, showing machine output and expected completion date of all jobs. A warehouse storage system will also be incorporated to enable supervisors locate a particular job in a warehouse once it is ready to be shipped.
The project will run on a Windows platform and will be written in Visual C++.

3D Graphical Landscape Generator Colin O'Toole (1997)
doc97.zip, code97.zip
My fourth year project is a 3d graphical landscape generator. The project is written in C++ using the Visual C++ v4.0 compiler, is windows based and uses the OpenGL libraries for graphical effects.
The aim of this project is to enable a user to create a virtual landscape and then to populate it with various objects. Once the design is complete the user will be able to move through the landscape in full 3D. The virtual world will incorporate features such as lighting and shading, fog, and texture mapping. Landscapes may be saved and loaded, and graphical options include detail settings, a variety of display options (wireframe, filled, filled and shaded, textured etc.) and the ability to map user selectable bitmap images to terrain.

Management Training Toolkit Damien Kennedy, Sean Morley (1997)
doc97.zip, code97.zip
The aim of this project is to provide a graphical modelling tool for modelling a business or any other economic model. The user will be able to graphically describe his/her model by creating entities and entity relationships in the form of the diagram. The use can also define the relationships between entities and create a Control Panel for viewing entity values in the form of graphs or tables and also to change entity values. Once the user has created the diagram they may run a simulation of the model over a user specified period of time using the Control Panel to view and change entity values.
Languages Used - Microsoft Visual Basic 4.0, Microsoft Visual C++ 4, PCLEX, PCYACC.

Secure Livestock System Declan O'Kane (1997)
doc97.zip, code97.zip
The Secure Livestock System is a quality package, intended to provide farmers with the best possible software to assist them in their farm management, and veterinary surgeons or agricultural officials with a means of tracing livestock. To accomplish these goals, the system has been developed on a client/server platform using Microsoft's Visual Basic 4, and SQL Server 6. Design took place only after extensive consultation with potential end-users, and was approached using the Structured Systems Analysis and Design Methodology (SSADM). It combines comprehensive recording facilities with powerful reporting, yet the interface is designed for ease of use, so little effort is required to achieve maximum benefit. The system generates the greatest amount of management information possible, based on a limited amount of recording. Thus, keeping the records up to date requires little overhead. The program is flexible, in that it does not demand that every item of information be entered. Clearly, if more information is entered the greater the detail of the reports generated, and therefore more informed management decisions can be taken. The system provides for fast and easy editing of entries with dialogue boxes, scroll menus etc. Security procedures are provided to ensure the confidentiality of user data, and the integrity and system resources. Comprehensive Help and Error Handling facilities are also provided.

The Maritime Traffic Control System Conor Tierney, Brian Morley (1997)
doc97.zip, code97.zip
The Maritime Traffic Control System (MTCS) came out of an article in the Irish Times during the summer of 1997. In Irish territorial waters at the moment, there is no reliable method of tracking shipping. Also, search and rescue is hampered by the lack of resources available for such an expanse of water as Ireland has. A third problem is that of illegal fishing by Spanish, New Zealand and Icelandic fishermen. Therefore, we aim to put forward an idea based on air traffic control, involving Irish registered shipping using transponders, and a coastal based radar coverage.

Client Correspondence Document Builder David Andrews (1997)
doc97.zip, code97.zip
The system I'm developing will be used in conjunction with an already existing system which is used by the Corporate Business section in Irish Life. The existing system is used to generate letters which are to be sent to members and employers who avail of Irish Life Pension Plans. The existing system allows the user to select a letter and its intended recipient. An SQL query is then dynamically created from a database which stores data related to each document (the document database), when this query is fired to the database which contains the customer data, it returns information which is specific to the selected recipient and the letter template is merged with the retrieved data. Each letter requires specific information and therefore its own SQL. Many more letters are to be added to the system. The system I am currently developing will allow user to add documents to the existing system.
This system will allow the user to select the information they require for a letter by selecting the required fields from a menu. The system will create the SQL necessary to retrieve the data the user has selected using a rule base which specifies how the tables which hold the fields the user has selected are to be joined. Also it will create a header file and data file for the document, and it will update the document database with the created SQL and other information pertaining to the new document. This will allow the user to put a document on the system, eliminating the need for someone with knowledge of SQL to maintain the system.
The system will be developed using Visual Basic 4, Word 7 and Access 7 for DCU but will use Oracle instead of Access in Irish Life.
This system will be used by Irish Life staff in the Corporate Business section who deal with the business administration of the Retirement Solution and Retirement Extra Pension Plans.

RISKMAN3 - A CASE tool for Software Risk Analysis Dermot Reynolds (1997)
doc97.zip, code97.zip
"If Las Vegas sounds too tame for you, software might just be the right gamble" [Steve McConnell : Rapid Development].
Indeed, the software industry is rife with examples of projects that overran their schedule requirements, exceeded their allocated budgets and others that failed completely due to a factors from inexperienced team members to incomplete requirements.
My project provides a CASE tool that helps project managers to identify, control and manage some of the risks inherent in their software project. The project revolves around a generic project model which represents a typical software project. The project manager "instantiates" this model so that it reflects his/her project. Once instantiated, mini "risk experts" attack the model, analyzing it for potential risks. Any risks that are identified can be monitored and the risk experts will present suggestions as to how the risks can be controlled.
Application areas: Software Development, Business, Artificial Intelligence.
Environment : Windows 95 / Windows NT 3.51+
Software : Visual C++ 4.X, Crystal Reports Professional 4.5, Any relational database ( Access 95 for demonstration )
Languages : C++ / MFC 4.0, DAO API for database layer

Light 'N' Motion Gary O'Callaghan (1997)
doc97.zip, code97.zip
Light 'n' Motion is an application designed to simulate a controller desk for different lighting systems. These systems may be used for many different purposes, however the most common use of them is in a night-club or stage production. Sometimes the lights can be rotated or positioned manually (via the light desk), by a pre-programmed sequence or as a response to audio waves.
The light desk communicates with all the individual lights in the system with one of a number of digital protocols. One of the most recent of which is called DMX512 - Digital Music eXpress with 512 binary channels for the encoding scheme. It is currently being implemented in discotheques and presentations for both light and sound systems.
It is the aim of this project to create an easily operated PC Controller desk to operate such systems. The application will allow the user to rotate and switch on/off a light. It will also give the option to allow the light to be controlled be an audio signal.
The application will be mainly written in C++, and will operate on a standalone Personal Computer connected to a lighting system.

Local Community Authorware David Quigley (1997)
doc97.zip, code97.zip
The application is intended to be a tutorial designed to increase a child's awareness of its surrounding community. It will be aimed towards children of about age 12 in a disadvantaged inner city school. Most of these kids have no concept of what sociological structures are in place for their benefit, for example the police force. Most of these kids would come from area's where the police would be seen as the enemy. This project will try to present in a simple and fun to learn way, the impact that eg: the police can have on improving their safety, making their town a more desirable place for industry to come in and hence create jobs to give them a better life. The same impact that schools and libraries can have on their lives, perhaps the fire brigade, various clubs and organisations. The big picture here is to increase appreciation of the environment in which they live and to build up a sociological map of their city. The real challenge here is trying to make the child understand the various links between the different aspects of society and how they interrelate.
The package itself will be based upon a map of the community will look like a game, and will employ techniques from various working papers about how games help understanding and learning to present a fun interactive environment for the user.
It will be written in Visual Basic and C++ and will run on Windows 95.

Web Search Engine using Character Shape Codes Fergus O'Connor (1997)
doc97.tar.Z, code97.tar.Z
The project will consist of a Java front-end which will interact with an already-developed search engine. It will use a client/server architecture with the Java front-end acting as the client and the search engine acting as the server.
The objective of the project is to develop a Java interface to an already-developed search engine based around documents indexed with Character Shape Codes (CSCs). CSCs are a cut down version of the alphabet used to represent words based on their physical characteristics. They can be used when Optical Character Recognition (OCR) is not accurate enough to read old or blurry documents such as facsimiles and CSC is much less computationally expensive than OCR. Since many words may have the same CSC representation (especially for shorter words), a normal search engine would throw up many documents which have no relevance to the user's request.
My project will allow the user to refine their search based on information previously compiled on the frequency of words for a given CSC. But by using a synonym, adding more words, or using morphological variants of any of the words(e.g. development, develop, develops, developing etc.), the user can re-submit the request and thus gain a better result.
Language: Java. Platforms: Client-UNIX/PC/Mac, Server-UNIX.

Music Tutor for Grades I to IV Fiona Henry (1997)
code97.zip
This project will is written in Borland Delphi. It is split into three sections.
  1. The rudiments of Music - In this section all the material in Grades I to IV will be covered in a visual format to the user. Each topic will be covered with examples and a series of questions will be generated at the end to which the user must enter the correct answers. They will be given three chances to do this and if they do not succeed the correct answer will be displayed for them.
  2. Automatic Harmony Generator - In this section the technique behind the harmony of music will be explained. From the notion of intervals through chord progressions and cadences. The User will be asked to enter a line of music which will either be the soprano line or the Bass line. This line of music will be analysed and a three part harmony will be displayed to accompany this line.
  3. History of Music - This section describes four eras in music history. The Baroque, Classical, Romantic and Impressionistic. Each of these eras will be described verbally and piece of music illustrating the characteristics of each o the eras will be played by a composer from that era.

Sales Forecaster Francis Callaghan (1997)
code97.zip
This project aims to implement an accurate and responsive sales forecasting and (automatic) stock reordering tool. Especially for those environments where shelf/storage space is of a premium and where reordering must be accurate enough to avoid both shortage (where the retailer can lose business opportunity) and abundance (where the retailer can lose stock and/or business opportunity on another product).
The entire system works as a distributed electronic-point-of-sale (DEPOS). The database of products is held locally and client machines (cash points) send product codes to the server. The server looks up the code in the database and returns a product name and a price. The client keeps a track of all products sold that transaction and at the end it subtotals up the price. The server will have deducted the items from stock and will subtract the price of any special offers from the subtotal.
The system will operate on Windows 95/NT personal computers. The network protocols used are TCP/IP which I hope will allow maximum flexibility and a degree of Internet usage.
I aim to implement the system using Microsoft VisualC++, using but not totally relying on MFC. Windows sockets are used for TCP/IP implementation and ODBC is used for the database interface. I believe ODBC offers the greatest range of support.

Whiteboard Conferencing Aid Ian Marron (1997)
doc97.zip, code97.zip
The Whiteboard is a conferencing tool that will allow people to work simultaneously on a graphical presentation or design whilst communicating using a built in chat facility. It is essentially a multi-user paint package with an integrated chat tool. The application has uses in both business and educational fields where for instance workers can, from the comfort of their own offices, participate in a live session across a network to work on a common project design. The system interface will consist of both a paint package which will allow the user to use basic drawing functions much like those found in Microsoft Paintbrush, and a chat tool which will allow the participants in the conference to communicate textually.
The Whiteboard Conferencing Aid consists of two main parts, a server program and a client program. The server program is the manager of the conference and it basically facilitates the communication between it's clients, the users of the whiteboard. The client program is the main part of the system. It contains the paint package and chat programs in a single user interface which the users use to communicate through. Most of the computation for the functions of the chat tool and paint package are carried out locally at the client, with the server acting mainly as a relay.
The system will run on a network of PC's running Windows NT, and will be implemented in C++ and VC++. The networking will be handled using Windows Sockets.

Data Dictionary for Federated Databases James Collins, Declan Clancy (1997)
doc97.zip, code97.zip
Due to an increasing need for integration between company wide heterogeneous database systems, a requirement has arisen to handle these as a single coherent database. The objective of this project is to ease the administrative load in combining the required data from each database into an easily accessible format to the database administrator.
Federated databases are required to hold metadata about the objects they must manage. A federated data dictionary provides some persistent store for the these metadata objects, together with an interface for storing, retrieving and modifying metadata objects. The federated database communicates with its component databases through a series of schema mappings. The project will be able to create and store component, export and federated schemata as a series of (CORBA) objects, and then store them in an OODB. It will be able to automatically detect any changes to the existing schemata, and inform the federated database administrator.
Tools: Visual C++ 4.2, Orbix 2.2 POET 4.0
Platform: Windows NT 4.0 platform. Languages: C++, CORBA ID
Application Area: Databases / Distributed Computing

Java GUI Builder John Howlett, Garrett Ahern (1997)
doc97.tar.gz, code97.tar.gz
Externally this project consists of two main components, a GUI builder and a Java Widget collection.
The GUI builder will provide the user with a user friendly way to design graphical user interfaces (GUI's) for the Java language, basically the user will be able to 'drag' GUI components from a floating toolbox and 'drop' them onto a work area where they can be positioned, resized and have their attributes altered where necessary, another option available at this point is the ability to insert user-written Java code to respond to events on the interface. The main function of the application is to generate Java code that will replicate the GUI that has been designed on screen, this generated code utilises GUI specific libraries, which are referred to as Java Widgets.
The Java Widget set is a collection of reusable Java GUI components, they are not a collection of all possible GUI components. While AWT provides the basic building blocks for the user interface, this Widget collection will provide higher level GUI components to make user interface building easier.
The goal of this project is to help Java developers creating sophisticated user interfaces without the need to reinvent the wheel.
Tools used: Motif, Java, Lex, C
Languages: C, Java
Platform: Solaris
Application Area: Java / Internet

Network Information Tool Jim Coll (1997)
doc97.zip, code97.zip
This project involves producing a network tool that will maintain a database of information about all networked PC's present on a Novell Netware LAN. The information will be gathered from each machine on the network , then transmitted back to a server machine and stored in the database. The information gathered will include the configuration of each machine, it's user(s), operating system version, the main applications installed on the machine, etc.
This utility will be helpful to network administrators and system support personnel. It would allow them to determine the configuration of a PC without having to leave their desk and possibly allowing more problems to be solved over the phone, thus saving valuable time. The database could also be referenced by management when deciding upgrade policies for PC's to give them an accurate account of the current status concerning the software and hardware being utilised on the network.
Langauges used: C/C++, Netware SDK, Borland Delphi, Access.

Image Retrieval Project John McGoldrick, Richard Halpin (1997)
doc97.zip, code97.zip
The Image Retrieval project has been developed as part of Alan Smeaton's Multimedia Information Retrieval Research group.
The aim of the project was to develop a Web based system for the retrieval of images from a database. The project is made up of two parts; a method for indexing the images based on criteria such as colour and texture content and the WWW interface which retrieves images from the database using a user sketch or picture as the query. The system has been written in JAVA to make it platform independent, a necessity for WWW based applications.
When the user launches the application they will be presented with an interface similar to Windows Paintbrush. Using this interface the user can draw a query image or load an existing image which will be analysed for its colour, texture and content components. These components will then be converted to a textual representation for searching through the previously indexed set of 5,000 images.
Tools Used: Java JDK 1.1 / Netscape
Application Area: Multimedia Information Retrieval / Internet

Queue Simulation Tool Jim McMullen (1997)
doc97.zip, code97.zip
The aim of this project is to provide a user-friendly interface to simulate various queues in queuing theory. The project will allow the user to pick the queue they want to simulate and to set the various variables involved in the formula for the queue. Using the user's input, the project will provide a graphical simulation of the queue. The user will also be able to view various statistics and graphs at any time.
Simulation is a descriptive technique that involves developing a model of a process and then conducting experiments on the model to evaluate its behaviour under certain conditions. It is not an optimising technique but enables decision makers to test their solutions on a model that reasonably duplicates a real process. Simulation models enable decision makers to experiment with decision alternatives using a 'what if' approach. The use of simulation as a decision making tool is fairly widespread. For example, airline pilots often undergo extensive training with simulated landings and takeoffs before being allowed to try the real thing. I hope to provide a model that will allow the user to test various queuing techniques under various conditions and he/she should be able to draw conclusions from these tests.
Tools: Visual Basic 4.0 32-bit
Platform: Windows NT
Application Area: Simulation / Modelling

Search Results Evaluation Tool James Minogue (1997)
doc97.tar, code97.tar
This project is a result of an original idea by Fergus Kelledy M.Sc for the Text Retrieval Conference(TREC) and suggested as a fourth year project by Dr. Alan Smeaton. It is an evalution tool to show the results generated by a search engine developed by Fergus Kelledy.
It allows users a better and more intuitive way of selecting the document they want from the results of a search query by displaying the results in a graphical rather than a textual format. The user enters a search string, the results of which are calculated and the user is then presented with a series of graphs which represent the suitability of each document found. By looking at the graphs, the user can easily see which document is most useful and can select that document to display by clicking on it.
The project is implemented in Java and takes the format of an applet running under a Java-compatible web browser.
Application Area: Internet Text Retrieval
Tools: Java

Credit Union Management System John Carey (1997)
doc97.zip, code97.zip
The objective of this project is to allow the management of a Credit Union to see quickly and clearly exactly how their institution is being run and where improvements can be made to enable a more efficient and more profitable Credit Union to be run for it's members. The main element of the project will be a management reports system which will allow the production of a number of different reports to enable the management of a Credit Union to analyse various aspects of the operation of the Credit Union. These reports will vary in their complexity and will cover a number of different elements of the running of a Credit Union (e.g. analysis of daily, monthly and yearly balances, liquidity reports, comparison with budget reports etc.). The reports will differ with some being of a graphical nature. These reports will enable the management of a Credit Union to analyse the running of the institute and enable them to make decisions which will aid in the future performance of the Credit Union.
The project will be written with a Visual Basic 4 front-end which will be in place over C/C++ code. The main elements of the project will be written in C/C++.

Eirchem Pricing, Order Management System John Pearson (1997)
Eirchem Ltd. have been supplying raw materials to the Irish chemical industry since 1977. Always looking to expand and diversify, Eirchem have now realised the potential of the Internet as a means of supplying information to customers. Much of the Eirchem product base can be categorised as commodities. Their prices are continually changing as a result of supply, demand and other economic factors. The Eirchem Pricing Order Management System will enable managers to modify pricing structures for certain products as needed, and most importantly, impart that information to concerned customers as quickly as possible.
The system can be viewed from two perspectives: The managers will use a Windows database application written in Delphi using MS-Access databases to set prices, view performance data and customer purchasing history, while the Customers will use a Java implemented front end to the Eirchem Databases. This will enable a customer to 'Log on' to the database using a unique username and password, and once connected customers can check prices, sales history, track orders etc. This system is being developed with the input of one of Eirchem's customers to ensure every angle has been covered. It is envisaged that the Eirchem Pricing, Order Management System will from the basis of many other systems to encourage the growth of what has become known as 'E-Commerce' in Irish industry.
Tools: Delphi / MS Access
Languages: Delphi (Object PAL)
Application Area: Business

CodeSafe Marie Browne (1997)
doc97.zip, code97.zip
Many companies have an existing codebase which has evolved from a number of projects. As some, if not all, of this code would have been developed under pressures of deadlines, demos, and as quick hack fixes, it is unlikely that the code will conform to the company's standards.
CodeSafe will solve this problem, making organically grown code more maintainable. It will allow the user to specify a set of files and a set of transformations (such as MFC naming convention or Kernaghan and Richie. indentation) and then CodeSafe will apply these transformations to the code. The user may also specify a set of warnings for bad coding standards.
The project is implemented in Visual C++.

Eric the Window Manager Julie Galvin, John Looney (1997)
doc97.tar.gz, code97.tar.gz
X-Windows, the networked windowing system for Unix is the basis for this project. A window manager is one of the most complex, yet vital pieces of software bundled with any XWindows distribution. The window manager sits between the XServer (the low level GUI layer) and the applications.
Eric is proposed to be an easy to use window manager. The idea was to produce an attractive & functional window manager with a small memory footprint. Being an event driven program, it must accept every mouse and key press, process them, and pass them onto the relevant "client" programs while controlling the window focus. The software also provides the "decoration" around application windows. This decor is both functionally and aesthetically important, as the idea of this window manager is to provide an environment where a user can work as fast and as comfortably as possible. Eric also comes with a file-manager, that supports drag and drop onto a button bar and desktop. Programs can be launched from the buttonbar/desktop later. A virtual desktop and other utilities are also provided.
The tools we used were very varied. C and some Java for the programming, as well as the Motif and Xlib libraries for interfacing with X itself. We used Lex and Yacc extensively for parsing the configuration files.

Dungeon of Death Killian Breslin, Francis Shanahan (1997)
doc97.tar.gz, code97.tar.gz
Dungeon of Death is a 3D, one/two player game. The game takes place in a dungeon, from which the only escape is to fight.
The game incorporates kinematic techniques (modelling of motion) along with object modelling, sound, and network options to provide a realistic fighting experience.
The characters are modelled using a custom built object modeller which can also be used to incorporate movement into the objects. Each character in the game is made up of a polygon mesh, each polygon subsequently is rendered in real time using texture-mapping/light-sourcing. The two player game is played across a network, while the one player game is played against an artificially intelligent computer opponent. Athmosphere is provided using sound effects, music and animation sequences.
The game is written for Solaris (on an i86pc machine), but should run on any unix with only minor changes. The code is written in a mixture of C and assembly language, and uses "X" for the graphics.
Application Area : Game
Environment : Solaris

Automatic License Plate Recognition System. Mark Ryan, Douglas Oldrey (1997)
doc97.zip, code97.zip
The purpose of the system is to read in a digital image of a vehicle licence plate and determine the registration number of that vehicle. A photo is given to our program and the program should a) locate the boundaries of the actual physical plate ,b) find and isolate the characters of the reg. Number, and c) determine what these characters are and display them to the user.
The main application area for this project would be in security. It could be used to monitor vehicles at toll booths, car parks, check points, or anywhere vehicle monitoring is needed. Another application could be found in locating stolen vehicles by setting up a (more developed) live system on a roadway that could monitor traffic. This idea could be expanded further to be used in conjunction with automatic speed-detecting radar systems, for automatic identification.
Development tools used : Kodak DC25 Digital Camera, Visual Basic/C++ and C/C++ DLLs.

Network Voting System (G.D.S.S) Mark Griffin (1997)
doc97.zip, code97.zip
This network voting system will allow a company to continually develop and refine its policies with regard to it business strategies/objectives and its employees working conditions. It could be a component part of a larger Group Decision Support Systems (GDSS). The system allows employees of a company to give their preferences and suggestions/comments on internal policies in the company. To achieve this and encourages participation, the system will be user friendly and attractive to use.
The participation aspect will take on board employee views on key issues. When a policy needs to be voted on, it is entered in to the system. Employees will be able to select and read the details of this policy. For the purposes of this system a participant exercises a preference or an indication of acceptance on a given policy. A 'vote' is used to express this on the system. They can cast their 'vote' only by providing their password. The system will then assimilate the information and provide the results, to be then be presented to management. The results can be posted on the system at the appropriate time.
The system will be developed in VC++ and will be used over a TCP/IP network.
Tools: MS Visual C++ 4.2
Languages: C++ / MFC
Application Area: Networks.

Literate Programming Tool Martin Leech (1997)
doc97.zip, code97.zip
This project will be a tool to aid in the writing of programs that conform to the literate programming philosophy. Literate programming is a way of writing code so that it will be easily understood by humans and not just machines. It makes use of formatting and commenting, so that the finished product combines both program code and documentation.
The project will take in C\C++ project components (i.e. the makefile, c, cpp and h files) and will output a HTML version of the code with function names, variable names, keywords etc. each with different appearances (font, size, colour) according to the users preferences. And to make the code easier to navigate embedded in the code would be a number of hyper-links to bring you to different parts of the code, e.g. clicking on a function name to bring you to the implementation of that function.
The front end of this project will be windows based. This interface would allow the user to customise how the code is to be presented, e.g. changing colours, font sizes etc. for each of the elements in the program.
Tools: MS Visual C++
Languages: C++ / MFC / HTML
Application Area: Programming Utilities

Event Notification System Michael McNamara (1997)
doc97.zip, code97.zip
The Event Notification System is based around flash messages coming in from an external source, being stored in a database, and displayed to a user, if they are interested in the particular subject. The system will be Internet based with a C++ back end.
The idea is that a user logs in to their account on a particular server where they have a number of interests registered. They select an Event Notification System, there can be more than one, from which they wish to receive information. As the messages are introduced to the system they are displayed on the users screen, if they have registered an the event.
The front end of the application will be Web based, using all the browser features such as JavaScript, Java Applets, Frames etc. This will display the events to the user as they occur. A relational database will be used as a user account database and will keep track of who wants to know about what events, who is logged on, and when someone logs back on after a period to keep them up to date on what happened in their fields of interest in their absence. Some form of fuzzy logic can be used to search input details for keywords and topics of interest for indexing. The underlying communication of the application will be message based.
Languages: Java, HTML, C++
Application Area : Internet / Java / Utility

Multimedia - Information Retrieval Niamh Lysaght (1997)
code97.zip
While searching for documents, although valuable information can be found, typically many irrelevant documents are also retrieved and many relevant ones missed . Indexing the text helps reduce this problem, however not all the words in a text are part of the central theme . The hypothesis that this project is based on, is that important words in a passage can be determined by measuring the "distance" between all word pairs in a document and pruning out the "unconnected" words . We are left with a number of key words or terms which are then indexed and will represent document / article . The number of words representing an article has been varied to determine which pruning method is the most effective .This project is being developed on a UNIX platform using ANSI C.

Help Toolkit Petrina Leslie (1997)
doc97.zip, code97.zip
This is a tool for creating and editing Windows Help Files in a dynamic WYSIWYG authoring environment. The user will be able to create Help Contents Files, add Help Topics and create indexes with great ease and speed. It will be possible to see what the File will look like without having to compile it.
The visual design environment will allow the user to add topics, pop-ups and jumps by just a click of the mouse. When a user adds a new topic, a properties box appears allowing the user to change the default topic id and add indexes to the new topic.
The toolkit will support documentation reuse by allowing the user to import documents written in other word processors and by allowing the user to save the Help File as a HTML file.
Implementation languages/Tools: Visual C++, lex & yacc
Platform: Windows NT

Multimedia Tin-Whistle Tutorial Rachel Nicholson (1997)
doc97.zip, code97.zip
The main aim of this project is to develop a tutorial type application that will instruct the user how to learn to play the tin-whistle. It will make use of the multimedia applications of the PC, such as audio, imaging and visual effects. The application will be set out in chapter format with a bookmark feature allowing the user to top at whatever point they wish, place a bookmark and then return to that exact point on another occasion. The application should allow the user to follow the on-screen instructions at his or her own pace in a user friendly and innovative environment. This will be a single-user project that will be developed in Borland C++ for Windows. The user will have the option of selecting their own skill level initially and then by following the on-screen instructions, improving their skill. It will be a purely instructional application with a feature allowing the user to record themselves playing and then replay it.

Video Conferencing Kevin Clarke, Ruairi O`Shea (1997)
doc97.zip, code97.zip
Video Conferencing is the next step in global telecommunications, in the future it will enviably replace the telephone and become standardised. The aim of the project is to achieve communication via both video and audio in real time. The target network set-up would ideally be a LAN but the Internet is possible but presently usually too slow of coherent fusion of sound and video.
The issues that the project covers is adaptive synchronisation over a network which is based on network performance which is constantly being bench-marked. Compression in both sound and video is real time and by this nature needs to be fast enough as to increase the overall amount of bytes per second communicated.
Each computer will have four major tasks in operation; to send video and sound and to receive video and sound. Sound gets top priority to allow a seamless audio flow in both directions. Video adapts to exploit the remaining network load to give the best possible picture. Video is accessed via a motion camera attached to a Video Blaster, sound via a microphone attached to a Sound card.
The project is implemented with Visual C++ for Windows NT and Windows 95 platforms.

Distributed Chess Steven Harford (1997)
doc97.zip, code97.zip
This is an application in which the game Chess is implement for the Windows NT/Windows '95 environment. A person wishing to use this application can play chess against another human opponent or the machine itself.
This software differs from a standard commercial chess program in that the program has the option to use a distributed system to calculate different parts of the chess tree concurrently. This concurrency increases the ability of the computer to search for a greater number of moves, hence stronger moves.
The primary goal of this project was to demonstrate the benefits of
distributed computing and to create an application capable of playing a game of chess in an "intelligent" manner.
The system is written in Microsoft Visual C++ and distributed using IONAs implementation of CORBA.

Analysis Tool For Workstream/DBMS Seamus Hoban (1997)
doc97.zip, code97.zip
The aim of the project is to provide a simple and effective means of collecting and analysing performance data from Consilium software's "Workstream" product and its associated database, DEC's DBMS.
The project involves paring through transaction logs and database statistics reports residing on a VAX and importing the required data to a SQL Server database running on Microsoft's NT platform using a mixture of C and Visual Basic. The database itself has been designed to allow maximum flexibility with respect to the information retrieved and provides stored procedures for retrieval of information, removal of old data.
A front end has been designed to allow the graphing, charting and retrieval of this information and to automate the production of various reports such as database growth and daily performance figures. The front end is presented in an Excel-like format using Visual Component's "Formula One 4.0" OCX, which provides support for over one hundred of Excel 7s' functions and a similar look and feel.
Tools Used: MS Visual C 4.0, Visual Basic 4.0 32-bit, SQL Server 6.5 Internet Information Server
Languages: C, VAX DCL, Visual Basic, SQL
Platform: NT Server 4.0, VAX/VMS 6.0

Geography Authoring Tool Sylvia Nolan (1997)
doc97.zip, code97.zip
This application is a Geography Authoring Tool which will give any teacher the ease of creating unique tutorials in various aspects of the Junior Certificate Geography syllabus.
The reason I have chosen this age range (14 to 15) to aim at is that I think that this age range are receptive to enjoyable picture and colour exercises and 'multi-choice' or 'fill-in-the-blank' questions which I shall enable the creation of. In my opinion, these exercises are more appreciated by this age group rather than older groups. It is different from every other authoring tool in that it contains geography specific features and hints which make it perfect for the student to understand and take a keen interest in and quick and easy for the teacher to utilise.

Internet/Databases/Transactions Martin Maher, Stephen Quinlan (1997)
doc97.zip, code97.zip
Development Environment : 486 Linux Web Server with Java Development Kit, Pentiums running Windows 95, Windows NT, Netscape/Internet Explorer, NT Server running SQL Server
Our Project allows a user to query a database over the Internet via a web-browser. We are developing this application for Technology Transfer Department, Forbairt which provides an integrated set of services enabling Irish companies to import/export new technology from/to foreign companies. Therefore, this project will enable foreign companies to get information on offers or requests of new Technology and make contact with Technology Transfer. To avail of our project, a user links to the Technology Transfer homepage and enters a query via the HTML form provided. This query is processed and used to search the SQL Server database stored on an NT Server. The user is then presented with a dynamically generated page containing a list of 'hits'. By clicking on one of these hits a new page with more detailed information on the offer or request is dynamically generated and displayed. The user is then allowed to make contact via email.
The project incorporates Java, JDBC, CGI, Linux, SQL Server, NT Server, HTTP Security, HTML, and JavaScript.

Executive Information System Tool Ronan Mac Domhnaill (1997)
doc97.zip, code97.zip
In any organisation information and data is only pertinent to a sub-group of users. Providing relevant data in the correct format to users can aid greatly the decision making process and information structure within an organisation. Most organisations contain a single large database and access to the database is determined by pre-defined boundaries and applications. I plan to create an information system prototype using a database and a user-friendly interface whereby users can "drill -down " into the database and select the information they want. Organising the data into logical and integrated systems as they relate to each other provides the key to the success for this application, analysing past trends and future projections.
The needs of different organisations vary and so must be tailored to the requirements of the different systems. EIS' main strength comes from the presentation of the data in a graphical and analytical manner. Because of the importance of the User Interface Visual Basic was chosen as the best tool to use for this application as a front end to an MS Access Database.

A study of dynamic load balancing Qamir Hussain (1997)
doc97.tar.gz, code97.tar.gz
The purpose of the project is to distribute a ray tracing application, as efficiently as possible across a network. Load balancing describes an algorithm that assigns work or tasks to processors so that the overall speed of execution of the tasks proceeds as efficiently as possible. The two load balancing approaches are static and dynamic algorithms.
Static algorithms do not change the amount of work assigned to processors throughout the course of the execution of the program. Dynamic algorithms change the assignment of work to processors if better assignment of work might be possible. By finding an efficient dynamic algorithm for the ray tracing applications other problems which can be run in parallel will also benefit from this algorithm.
The project consists of three parts the front-end written in Visual C++. The scheduling algorithm written in Visual C++ using a orbix client to take of assigning work to the distributed servers. The ray tracing engine which will be the servers of the system which will distributed across a network also written in Visual and using orbix to take care of creating servers objects.

3D Space Game for UNIX Eoin Harrison, Anthony Bolger (1997)
doc97.tar.gz, code97.tar.gz
We are writing a 3D Space Game for Unix, this will be a multi-player network game, which will allow up to eight players to battle against each other. The graphics engine will incorporate fully texture mapped and gouraud shaded polygons. The engine will take advantage of the pentiums ability in instruction parallelism to allow ~60% speed increase in frame rate of the game. The game will also consist of artificially intelligent enemies to provide the game with standalone playability, thus one will be able to combat against your friends or the computer. The game engine will also support stereo sound capabilities for special effects and continuous background music. An extra support application for the game will be developed to provide the facility of quick and easy design of most game objects such as ships and missiles. This will be written for X-Windows using the Motif libraries.

Inteach & Inteach Authoring Package Triona Howlett (AM4, 1997)
The main aim of this project was to devise a computer pedagogical tool, Inteach, which would enable Leaving Cert. Maths students to understand the concepts of integration without the necessity to learn significant amounts of the programming syntax associated with large Maths packages. From a practical point of view, it was evident that some provision would have to be made for the teacher, namely that some sort of facility would be provided by which arbitrary worked examples could be incorporated into the package. To this end, Inteach Authoring Package was designed.
Inteach is based on an effective GUI interface which combines the graphical and theoretical elements of integration. It is envisaged that this will aid the student in acquiring an appreciation of the main concepts of integration. Questions such as "How do we get from this curve to that solid of revolution?" and "What does that function look like?" are instantly answerable with Inteach. The main topics covered are Area under the Curve, Solids of Revolution and Drawing 3-D functions. Additional features include facilities for viewing arbitrary 2-D and 3-D functions using a calculator-type interface.
Environment & Languages: The main interface for both Inteach and Inteach Authoring Package was designed for Windows NT V.4.0 and written using Visual Basic 4.0. All graphics were implemented in Borland C++ 4.52 using Windows API functions.

Minerva/CASE Ronan Cullinane, Laurence Breen (1997)
A company's records are perhaps it's most valuable commodity, but often these records are spread across multiple heterogeneous databases. The databases may be legacy systems and are unlikely to avail of to-days best practices and techniques. Minerva is a next generation design system that brings the power of objects to yesterdays databases.
Minerva/CASE is a fully featured CASE tool for designing object orientated federated database systems. The federation is expressed as a set of collaborations between objects. The design can be proven to be consistent, the roles that objects may play can be enforced, and IDL for Iona's CORBA implementation can be generated.
Minerva/CASE allows the user to move from initial deign to final implementation of a federation in one integrated environment. It encourages re-use of design by providing a component gallery, where proven design patterns can be stored to be later dropped into new projects. It provides a versioning schema to track, and protect, designs that are evolving over time.
Minerva/CASE, written in Visual C++, is targeted for the Windows NT platform. It makes use of OLE, CORBA and ODBC technologies. As provable CASE tool, data dictionary, pattern library, and code generator, Minerva/CASE goes all the way.

BugMan PSP Paul Dermondy (1997)
doc97.zip, code97.zip
BugMan PSP is a multi-user defect management system which supports the PSP (Personal Software Process). The PSP is a framework of techniques to help software engineers improve their performance through a step by step approach to measuring and analysing their work. BugMan PSP supports level 0 of the PSP.
BugMan PSP enhances the overall effect of the PSP by incorporating it with a defect database. Currently PSP information is gathered and analyzed by hand, sometimes with the help of spreadsheets. BugMan PSP automates the collection of defect data. BugMan PSP could eventually automate the entire PSP system but this is beyond the scope of the project.
BugMan PSP was developed with Visual C++ 4 and the MFC Classes. It uses an MS Access95 database as a backend and communicates with it through ODBC.Multi-user access is provided through Access running in multi user mode on a shared LAN drive.

Road Haulage System Róisín Mulligan (1997)
doc97.zip, code97.zip
My fourth year project is an office system designed to meet the needs of the average Irish haulage firm. It is specifically designed with a view to catering for the non-technical user, using the basic windows GUI and simple click and drag instructions.
It offers a comprehensive invoicing system, where billing can be done by contracted rates, weight of the goods in carriage or by the distance the journey will take. In addition, credit notes can also be created in the same way. A detailed data base will underlie the invoicing system from which reports can be created . Secondly, the system will cater for the monthly accounts of the firm from which reports again may be generated. The end of year P&L a/c will be created. `Kilometres travelled by Litre' and alternatively `miles per gallon' are two additional functions available.
Finally, a routing facility exists giving the shortest route between two points as the base case. This may be extended by the constraint of the `trailer height' giving a route with no low obstructing bridges. Dynamic roadwork's may be placed on the map which will again give the shortest alternative route.

Multimedia Mind Map(tm) Editor Pete Dempsey, John Kelleher (1997)
doc97.zip, code97.zip
The Multimedia Mind Map(tm) Editor is an application tool that allows a user to create a Mind Map(tm) according to Tony Buzan's method of Mind Mapping(tm), with additional multimedia features. It was developed for Windows 95/Windows NT environment, using Microsoft Visual C++ version 4.0.
Tony Buzan writes in his book "Mind Training": "The Mind Mapping method is close to the way in which the brain works; it can therefore be used in almost all the areas in which thinking, remembering, planning or creativity are required".
The structure of a Mind Map(tm) consists of a central concept with sub-concepts, represented as branches, stemming from it. The use of colour, dimension and images enhance a Mind Map(tm) and our editor provides the extra functionality of having additional text notes and being able to record a sound for each concept.

3-D Object Viewer Paul Coffey (1997)
This 3-D Object Viewer is designed as an educational tool aimed at technology classes at secondary school level, it's aims are to show> real world objects that would be of interest to the target group - e.g. aeroplane wing. Objects will be viewed in solid or wire-frame mode. Full rotation of the object around all axes will be possible, this will be coupled with a zoom option. An option will also exist, where parts of the 3-D object may be cut away by the user, thus allowing him/her see "inside" the object which is being viewed. Due to the nature of the user, the application is written for DOS.

Gilt Calculators Sean Croston (AM4, 1997)
Objectives: The principal objective of this project is to develop an application which provides stockbroking dealers with a powerful, accurate gilt calculating tool, used to display and analyse potential gilt trades and sale repurchase agreements. The main aims of the project could be summarised as follows:
  • Develop a Windows application to aid Brokers dealing in Gilts. Calculation must concur with BLOOMBERG calculations (deemed to be Market standard).
  • Develop a DLL (Dynamic Link Library(Function Library)) containing Gilt related functions, which can handle the forthcoming year 2000 and can could be used with Windows applications.
Environment & Languages: The Gilt Calculators application is developed for Windows 3.11 (or Windows NT 3.51) partly in Microsoft Visual C++ 1.5 (DLL) and partly in Visual Basic 3.0 (Windows Front End) connecting to either an ORACLE or Microsoft Access 2.0 database.
The DLL (developed in MS Visual C++) contains financial functions relating to Gilt and REPO (sale-repurchase agreements) calculations which can be called by programs and other DLLs to perform calculations in the Windows environment. The Visual Basic Windows Front End provides a user friendly link to the database and access to the financial calculations available in the DLL.

ASCII Data Manipulator (A.D.M.) Adam Fitzsimons (1997)
code97.zip
The aim of my project will be to develop an application that will allow the building of procedures to manipulate or validate text file input (i.e. Allow changing or checking of the format or contents of data). The user will be able to define these procedures by arranging processing entities in a flow chart form using a graphical user interface. The arrangement of the components can then be saved, reloaded or run. To write a program to do this in a language such as C or Pascal is a time-consuming inconvenience that may take many lines of code. ADM programs are data-driven, that is, you describe the data you wish to work with, and then what to do when you find it. In other languages you have to describe, in great detail, every step the program is to take. When working with procedural languages, it is usually much harder to clearly describe the data your program will process. ADM programs are refreshingly easy to both design and understand. There are some programming languages like Awk or Lex that are designed for writing these sort of routines but ADM offers a much easier interface and does not require complex syntax.

Visual Code Publisher Mark Keenan (1997)
doc97.zip, code97.zip
The project aims to promote the re-use of software and to provide a more user friendly means of acquiring re-usable components. The project is to consist of two parts. The first part, Visual Code Publisher. This program which will be written in Visual C++ will scan through a set of input files (an existing C++ program) and output this code into a HTML formated document. Part 2 of the project, Visual Class Locator, is used to search through an archive of existing documents created by the Visual Class Publisher and present the requesting user with a list of matches to his/her query. A user may view and/or download total programs or individual classes from a program.

Automated Test Environment Mark King (1997)
doc97.tar, code97.tar
This project developed a system for gluing together the entire test process that is currently used locally and in a number of Sun test sites remotely. Currently test running procedures within Sun have all the support needed to conduct tasks from start to finish. However, the process lacks in regard to consistency, simplicity and ease of use and it requires two well trained engineers to monitor the run. Should things go wrong, tracing ones way to the fault often proves time consuming and tedious. Even if the run goes smoothly, there are a large number of steps involved in the setting up of the run and the engineer requires a detailed understanding of both the hardware and software involved.
Automated Test Environment has removed the necessity of the test run owner to edit files and perform tedious checks before test run commencement. This should substantially reduce costly human error in test setup/running and will reduced the manpower required to undertake/monitor the test run from two persons to one. It will also reduce the effort required to train new employees on test running procedures, while also freeing other testers from having to know the unnecessary details of test running.

Netra network manager B.Duggan (1997)
doc97.tar, code97.tar
The Netra Network Management Module is an extension of an existing package on release from SUN, entitled Netra-i version 3.1. Netra-i is a tool which allows a systems administrator to configure their machine as an internet/intranet server with minimum difficulty. At present, the administrator is offered no means of monitoring the services Netra allows them to set up. The Network management module provides a means whereby this can now occur.
The module is divided into three sections; 1: Current Netra Configuration, showing how the server is currently configured; 2: Dynamic Reporting of Netra-i services, showing the administrator current server activity, and; 3: Static Reporting of Netra-i services, providing periodic summary reporting of services.
The intention of the module is to provide the administrator, who is assumed to have no UNIX knowledge, with a means of performing diagnostics on their server, by providing them with reports which may assist them in pinpointing the problem. In addition to this, the administrator is provided with other information such as activity on their web server, mail activity to and from the server, and statistics about each user. The tool is designed to make the life of the novice system (netra) administrator a lot easier.

DairyMon - O-O Data Acquisiton / Monitoring Framework T. O'Connell (1997)
doc97.tar, code97.zip
The objectives of this project are to
  • Investigate the requirements that must be fullfilled to implement a successful real time application.
  • Investigate the uses of Object Oriented design in the implementation of such a system.

Planetary Information P.Fitzpatrick (1997)
The project will encompass the use of Newton's laws of gravitation in the calculation of both the relative positions of the planets around the sun, and the relative positions of each of the planet's moons in orbit around each planet. These positions will be recalculated and updated continuously in real time to be redisplayed on the users display.

The Retail Assistant J.Ledwidge (1997)
doc97.zip, code97.zip
My aim in developing the Retail Assistant was to bring the benefits of the PC to a retail environment and to transform the PC in a management system for business. As a general rule traditional 'cash registers' have been functional within the restrictions offered by their eight segment display and limited keyboard, offering very little in the way of stock control other then subtotals and totals of daily sales. The aim was to incorporate tracking in both a mathematical and graphical way and analysis of the results leading to improved product availability and selection. The ultimate aim of The Retail Assistant was to provide forecast information on products, thus enabling the right goods to be stocked at the right times.
The system as implemented at present achieves the first of these goals in that a structure is in place to gather the information required to perform analysis, A reports system such as crystal reports could now be used to provide a graphical representation of the data collected.

Digital Terrain modeller C.Boyd & D.O'Callaghan (1997)
doc97.tar.gz, code97.tar.gz
This program is designed to generate a digital model of a landscape area. This information will be displayed to the user in various forms, the first of these forms will be a wireframe model and the others will include different variations on the filled polygon form. The points needed to generate this model will be loaded into the program from a local file. This file may be generated by either loading a file from the Psion, using a .PCX file to generate a height map, or using various command line operations via an external program (i.e. Modelgen).

Helpdesk Call Logging System David Hughes (1997)
doc97.zip, code97.zip
The Call Assignment Tracking System has been developed for the helpdesk of the IT Department in Intel Ireland's Fab 14. The Client Support Group provides first-line support to all users, and a program to analyse the call volumes and types to this group, and also to check that response times are within the Service Level Agreement(SLA), was needed. Originally an internally developed application, running on VMS, was used to log calls, but it was inflexible in its reporting capabilities, and was unable to provide management with the necessary reports.
This application was developed as a 32-bit application in Microsoft Visual C++ 4.0 on the Windows NT platform. It is a true MDI Application, and uses the MFC Data Access Objects(DAO) class to access the database through the jet engine. The database was developed through Access 2.0(due to compatibility issues).

Document Management System Joseph Neary (1997)
doc97.tar.gz, code97.zip
The objective of this project was to develop a simple document management system. The system would allow the user to scan a paper based document using a scanner of choice, save the document as a windows bitmap file (BMP), index the image into a simple database which would allow the user to search and retrieve the document for display, printing, electronic mail etc.
The more popular document management systems like Minoltas MI3MS 3000 system or Docunet AG Docuware 3.1 support many extended features, but both support the core features which were implemented in this project, e.g. the use of TWAIN compliant scanners, the BMP file type, the Search and Retrieval engine. It was decided to capture the core elements of a good document management system first and if time permitted to extend it further.