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 - 2002
All links relating to further specifications of the projects are only available internally

The following is a list of URL's  for the final year projects 2002. In each case the students were asked to prepare a functional specification (in HTML), and create links from this to the documentation, source code etc.
Note: The code and documentation collected here represent work done as part of our undergraduate course, and are intended to be used as a reference for future students. The school makes no claim as to their completeness or suitability for a specific purpose, and users are advised to exercise extreme caution when unpacking and running them. As with any collection of third-party code, we strongly recommend that you apply suitable safeguards against viruses or other unexpected behaviour.

A Software Tool to Organise My Personal Photo Space - Clíodhna Nerney and Damian Furlong

This project is to construct a software tool, which will allow a person to easily organise their digital photos using a web front end. All photos uploaded into the system, which would be done using Bluetooth technology, have a date/time stamp, a GPS location, direction and an optional soundbyte which is to be assumed will be available with a "camera of the future". This is then stored in the database to be viewed later. The photos can be organised by date/time, by keyword (using word-stemming) or by location (organised by nearest town). Localised searches can be done by inputting data. The web site will be available to be used by anyone once they have completed registration, which includes security measures to pass across information such as credit card numbers, and checks for valid information. This is a web-based multi-media project being run on a JRun web-server with Apache with SSL plugged in. The coding is done using JSPs and JavaBeans.

XML Interface for Fischlar on a Compaq iPAQ - Colm Dunne

The DCU Postgraduates developed a Web-based digital video system called Físchlár. (http://www.cdvp.dcu.ie/index.html) At present a user can pre-set the recording of TV broadcast programmes and can choose from a set of different browser interfaces which allow navigation through the recorded programmes. There is a hard-coded version of Fischlar, which runs on Internet Explorer on a Compaq iPAQ with a wireless LAN connection. This project involves extracting data for a set of programs stored a sample SQL-Server database that reflects the production Fischlar system. This data will then be re-formatted into XML format using ASP. This will involve defining the DTD (Document Type Definition) for Físchlár.The XML Page will then be parser with an XSL sheet using MSXMLDOM. The main part of the project will be developing an XML translator to visualise the iPAQ interface in accordance with the existing hard-coded HTML interface. This translator will be developed using XML Schema's. The project is really to see how to implement our Fischlar iPAQ interface using XML translations, specifically using XML Schemas. This idea was suggested by Professor Alan Smeaton.

SMS Notification of Incoming Emails - Cathal Cole and Brendan Franks

Our project was to develop a personalised SMS email notification and summarization tool to alert users about incoming emails on certain topics only, and summarize the text of the emails using a text summarization tool. In effect, users will receive SMS messages when their mailboxes are sent emails which flag the system to summarize the incoming email and send an abbreviated form to a mobile device. The project incorporates a personalised website enabling the user to specify the mail server along with the rules based upon which, the SMS messages will be dispatched, e.g. restriction by subject, cc, time, date etc. The user will also be able to view the full details along with the abbreviation of any email summarized and sent to their phone. A java backend will check the mail servers of all users and proccess any message which flags the system, storing it, summarising it and sending it out as a text message. The technologies used include Internet Information Server(IIS), Java, Microsoft SQL Server, Active Server Pages(ASP), JDBC. Project Area: Ecommerce. OS: Windows

Automatic Polling of Online Newspaper to Alert on Topics - Joan McSwiney and Alison Murphy

This project has a web interface to allow (restricted) users to enter a "profile" of key phrases. Online news resources such as the RTE.IE or IRELAND.COM websites are polled, daily, examining their new material (today's Irish Times for example) to detect "stories" which contain these key phrases, and such alerts are notified back to the user via email or via a profile web page, depending on that users request. For example, the communications and marketing office in DCU are always interested to know when and where DCU or Dublin City University is mentioned in the newspapers and this project generates a web page, daily, with links back to the specific news stories where DCU is mentioned and then e-mails the communications and marketing department to notify them. The project validates all queries by removing stopwords and stemming the words and using the term frequency algorithm. By using the TF algorithm, we show results in the order that they are likely to be most relevant by counting the amount of times the key phrase occurs. We created a spider to crawl through specified web sites (eg Ireland.com) following links and downloading the contents of these pages. The spider is run daily using a batch file, which then calls a script that matches the users' keywords and phrases against the daily downloaded files. This project also includes an archive of up to seven days of matched results. This information can then be accessed by all valid users. The project was created through UNIX using PERL and CGI scripts and HTML.

Parallelising Físchlár Video Analysis. - Karl Podesta

Seperating video into shots and scenes is a huge benefit to navigating content and is used effectively in Físchlár, a web-based system in DCU which demonstrate recording and playback of television programmes as digital video. Físchlár does it's analysis by determining boundaries between camera shots and selecting shot & scene keyframes. This a computationally costly exercise and my project parallelises it so that (a) it runs faster and (b) it does not need a Sun Enterprise server. A portfolio of methods is used to detect a shot boundary in a piece of video: colour moment & histogram differences, edge detection, and MPEG macroblock analysis. Using the school's 23 node Beowulf Linux cluster which I maintain and have previously helped build, my project parallelises these methods so that the analysis runs up to 60% faster through ordinary message passing and temporal data parallelisation. This project was suggested by and is a contribution to the Centre for Digital Video Processing (CDVP) in DCU for their work on video analysis, and is also an effective demonstration of the favourable price/performance ratio of contemporary cluster computing using Beowulf & Linux. Category: Multimedia Platform: Linux Language: C/C++, MPI

Video Stream Shot Comparison - Cathal Small

My project involves taking several minutes worth of Físchlár video footage which has been segmented into shots, and then analysing and comparing these shots against one another for colour similarity. A shot is any continuous video stream taken by the same camera without stoppage and usually lasts several seconds. Ten minutes of video footage would contain several scenes each made up of approximately 15 shots which are themselves made up of several hundred frames (still images). Any frame can be analysed to compute a colour histogram which shows the proportion of pixels of each colour within that frame. Sampling at a rate of 2 frames/second, I hope to create a 3D colour histogram model to represent each shot of video footage by combining together a series of histograms (an 8 second shot will have a 3D colour model combining 16 histograms). This 3D representation will be stored for each shot. Shots can then be compared against each other using this 3D model to hopefully find the next closest similar shot. I expect to implement this idea using a combination of Java and Microsoft Excel graphs.

Neural Network Modelling and Maximum Entropy - Kevin Hussey

My project is a hand written digit classifier, The aim of the project to to create an application to recognise various hand-written characters, I intend to create this application by having a Neural Network, written in java. I intend to try to develop two different ways to do this, 1 a conventional multilayer feedforward neural network, using backpropagation and the sigmoid activation function. 2. To write a network using a technique called 'Maximum Entropy', What maximum entropy will do is try to make the network have as simple configuration as possible, ( as my other network could have as many as 6,000 connections ). Languages:Java Area:AI OS: Windows NT

Graphics Generator - Mark Preston-Smith and Elaine Kieran

We decided to create a graphics generator for musical input but we wanted to avoid doing this using fractals as this approach has often been used before. Instead we have decided to render animated graphics that will have some visible change in relation to the musical imput. The program takes in a musical input in the form of a .WAV file. This file is then processed using Digital Signal Processing to calculate the frequency and amplitude of the file at particular time intervals. This output is the input to a POV-ray file which renders specific graphics to match the frequency and amplitude of the file. The resulting bitmaps from the POV-ray file are then made into an AVI and combined with the original .WAV file, and played on our media player. We well be using Java and Visual Basic for the processing and multimedia and POV-ray as the rendering tool. Area: Multimedia Languages: Java, Visual Basic, POV_ray OS: Windows 2000, and Windows NT

Intelligent Object Tracking - Richard Wagstaff

Using image recognition systems to track an object in an environment with multiple moving objects. Background: Linking object recognitions systems with image tracking systems to follow a chosen object in an environment with multiple moving objects. This would have applications such as tracking (ball or players) during a football match, or for use in lighting effects (Tracking-lights used in theatre etc.) Initially I will use a web-cam or similar to stream images which would then be analysed to find a certain object; maybe a football. Later this would centre the image on the object by tracking, using panning functions/zooming of the camera. By the end I hope to allow for recognition of more complicated objects, such as certain players of a football match. For the project I would need a web-cam or similar with programmable tracking, code would be written in C++ and/or Java, Some pattern recognition techniques, and would be based on the Windows NT Platform.

Evolution Simulation - Colm Kenna

Project Idea originally came from one of the project proposals on the web (http://www.computing.dcu.ie/~alistair/projects.html). It is a project based on evolution of species and interaction of animals to each other (attack/defence). My project will be based on basic species at first but will be designed in such a way that it could be extended overtime to handle more complex environments. Things such as climate, temperature, position on the food chain and supply of food that a species eats. The function of this project would be to provide a simulation of evolution over various generations of species and how they evolve over generations as the supply of their food source grows/shrinks or as their numbers grow shrink and various other mutations over generations that cause species to evolve. Doing this project I hope to both learn about and demonstrate knowledge in AI and pattern matching and ability to create a program that will itself over time evolve and show some form of machine learning in it. Various milestones exist in the project such as classification of species i.e. what climate suits them best, how long they live, energy usage, etc. The next milestone would be taking this information and getting species them to interact with each other (hunting) and with themselves (hunting in packs). The next milestone would be evolution of a species over generations and increase decrease in numbers over generations (i.e. if food source runs out, environment becomes uninhabitable ) and movement over generations (i.e. if food source runs out, environment becomes uninhabitable but there is a more suitable living environment) The requirements of this project are just a P.C. And c++ compiler and/or Java compiler. There have been projects in previous years based on evolution but it is a large area so newer projects could still differ greatly from previous years ones. Also there are various websources with games based loosely around it such as E-Den (http://www.geocities.com/ResearchTriangle/Forum/3830/edenoverview.html) x

X-IMAP (X-tended IMAP) - Barry O Neill and Brian Bambrick

The IMAP mail protocol is vastly underused, and it's a shame, considering the advantages it has over the more predominant POP protocol. One of the reasons for this is its'complexity, people prefer to develop clients and server for the very basic POP protocol. We aim to simplify development of software for this type of mail system by improving on the protocol. In our protocol, we intend to use XML to store mail on the server, and all communication will be in XML. The use of XML, due to the large number of processing APIs for popular programming languages, will allow developers to write clients and servers a lot quicker. Our server and client will be written in java, so we will be developing an API that can be used to simplify things further for java programmers. Other benefits of using XML include the possibility of easy development of other applications such as administration and cataloguing of mailing lists, among others. The server and client will also be using inbuilt SSL connections by default. Most email sent over a network/the internet is in clear text, anybody on the mail's route can intercept the messages. Most servers that support secure connections do so by means of tunnelling through SSH, or other external means. This shouldn't have to be the norm, hence we are including SSL connections by default in our software.

Peer to Peer Web Conference - Michael O'Connor

My project is a fully secure peer to peer web conferencing utility. It allows sharing of all types of files, peer to peer broadcast chat (multi user), peer to peer private chat (one to one) and also group collaboration via a peer to peer canvas. The system is implemented using a combination of public key cryptography and des encryption. At no stage are the public keys stored on the server, if a user wants a file for example he enters into a protocol with user B which involves generating a session key with the other user encrypting using Triple DES or AES and abolishing the session key. Each users private key will be stored securely on his / her machine. Only the application will be able to access the private key on the users machine as the user must put in a password to logon this password is used as the basis for unlocking the private key at client end. This application has very important uses in government or highly sensitive business areas where security is a top priority, but care was taken to balance this with good usability and design.

Projects to Research Handovers in Bluetooth - Glenn Sweeney

The term Bluetooth refers to an open specification for a technology to enable short-range wireless voice and data communications anywhere in the world using hardware, software and interoperability requirements. It is a new and exciting emerging technology, being developed by the Bluetooth SIG comprised of some 150+ companies. Bluetooth, which is both inexpensive and energy-efficient, and uses license-free radio bands, makes it possible for practically anyone to become an operator using this system. The number of products incorporating Bluetooth technology is expected to reach 1.4 billion units by the year 2005. Currently two major limitations of Bluetooth, is that communication between devices must be direct (one to one); and secondly that they do not support the movement of an active terminal from one network interface device to another. However, in due course of time, solutions for forming, multihop ad hoc, roaming networks over Bluetooth will be needed. This project aims to incorporate roaming, similar roaming on GSM Protocol, into existing Bluetooth technology, i.e. The user may have a portable device(PDA) and travel seamlessly from one bluetooth piconet to another. Each piconet is made up of a master and up to 8 slave devices. Slave devices communicate directly to the master. What I propose is a routing protocol that allows a device move from one piconet to another, thus switching the master-slave connection that it's connected to without the user noticing the change. Firstly, I will show at an application level that a device can communicate through the network topology. Secondly develop and prove, at Simulation level, a protocol to allow routing and handovers. To combine these together I will develop a information website resource to allow others see my progress and expand on my ideas.

Email Server Management Monitoring Tool - Jean FitzGerald

The concept behind this project is to provide Web based monitoring of an email server system. The idea is to manage a multi-server configuration via the Web which would give a merge-view of the servers. A Web-based viewer of a multi-server environment would be useful in terms of monitoring throughput figures from multiple servers and so act as a collector of performance. An accurate picture of the whole system's performance would be presented giving statistics for each server and for the system as a whole. If a server is down, the monitoring tool can report it immediately, the service provider can be alerted and measures taken to fix the problem with the server. Analysis of where the traffic is coming from and going to and if any bottle necks exist would allow significant alterations to be made to improve service. This project proposal document presents the idea for the Web management-monitoring tool as servlet applications. Each tool will be developed as a separate Java servlet to be run on the servers. Like applets, the servlets will be accessed through a Web browser. Unlike applets, the servlets will communicate with the server using the HTTPS protocol (Secure Hypertext Transfer Protocol), thereby allowing for encrypted communication between the client and server with SSL (Secure Socket Layer). The development of a secure single server view and a secure overall view of the system, as servlets, provides for localization and enhanced security.

DCU Graduate Page - Lydia Farragher

At the moment all students in Dublin City University have been given a college e-mail account and this account has no expiry date. The main reason for this is to keep graduates of D.C.U in contact with the college and each other, after they have left. I propose the idea of a web-front end that is dedicated to this. Users will be able to log on to the website and will have complete access to all the different sections. The different sections are as follows: They will be able to access their mail from the web site without having to log in again. log in via telnet or some other less user-friendly approach. There will be a message board, which will contain information about jobs, and various other topics and a message board with messages for other users. I will facilitate slashdot style message threading. There will also be a search facility available, which will enable the user to search for other users and if time allows (search over the previously posted messages using SQL queries into a DB). For example: I want to search for a user (Michelle, who started in D.C.U in 1997 and did Applied Languages) I will then get back a list of results, and whether the person has updated their information, they will be contactable. Also the user will be able to modify his/her details which are available to the site. Security will be dealt with with SSL. SSL, or Secure Sockets Layer, is a technology, which allows web browsers and web servers to communicate over a secured connection. This means that the data being sent is encrypted by one side, transmitted, then decrypted by the other side prior to any processing. This is a two-way process, meaning that both the server and the browser encrypt all traffic before sending out data. Platform Used: Windows NT Languages Used: JAVA,JSP, SQL

Research Tool - Lorna Gavin and Fatima Aziz

The idea for our project is to be able to enter items that needed to be researched into a list on the PDA. When you connect the PDA to the PC a browser opens up to our metasearch engine and the items on the list are then searched for in the engine and their resulting pages of links is then saved to the computer. Development Tools: Microsoft Visual C++, Conduit Development Kit and Conduit Inspector and Configuration Tool (for the conduit), Metrowerks Code Warrior and Palm Emulator (for the Palm Application) and Tomcat Web Server (for the Metasearch engine). Area: Multimedia OS: Windows 98

Suunto PC Interface and Dive Log - Ciaran Browne and John Reddy

We propose to build our own interface (hack) between an integrated Suunto Cobra computer and the PC. The information will then be represented in our own dive log application on the PC. Given enough time, we will expand this to the Palm-Pilot/Hand-Spring visor console. The interface will be a plastic box with a few basic electronic components inside with relevant connecting cables. It will connect to the RS232 Comms Port on the PC and produce a bit stream that will be decoded by a VB interface. We will represent this data in our VB dive log application showing dive profiles and further dive information e.g. number of dives, air pressure, depth etc. We will develop our project using VB, which will communicate with the Suunto Cobra, decode information entered and represent results graphically. We think this is a good idea, as it will have real world benefits for scuba Divers as it will show graphically his/her ascent to the surface with decompression stops depending on how far he/her dives. We will save money building our own hack as they retail between Euro70 and Euro120+.

ROLO - Image Email and Web Search Engine - Lorraine Donohoe and Roisin Flannery

Our project is a Web Search Engine, which will incorporate three main sections, a Web Crawler, Search Engine and Web Interface. The web crawler traverses the WWW following links, downloading web pages and formatting them into a fast, searchable format. Our search engine will work over three media, giving the user the option of document, image or email searches. We will use the TF*IDF Term Weighting algorithm, and some of the features we will include will be document length normalisation, stop-word removal, and also a "cache-copy" facility. The web interface will take in a query from a user, and display the ranked results from that query on the web interface. Languages: Java, Servlets, HTML, SQL Server, Tomcat Web Server. Area: MultiMedia OS: Windows NT

Search Engine - Ian Wright

My final year project involves building a Search Engine index using the document-query matching algorithm TF*IDF for internal representation of documents which should aid fast searching. A Web interface would have to be developed for the search engine to improve the functionality of the project as a whole.

ToneGen - Joanne Kelly

ToneGen is an application which generates Nokia and Motorola ring tones for mobile phones. It allows the user to generate tones and outputs the tones to a format which could be entered manually into the phone or downloaded using a SMSC gateway /developer kit. It could also support conversion of other file formats (MIDI) to phone tunes. The tone files database will be taken from the ceolaire music retrieval system. The user can compose a mobile phone ring tone, listen to it, edit it, or download it to their mobile phone. For security reasons, initially the user would have to register to use the site. When they registered they would be sent a password by SMS, which they must use along with their phone number to login. Background. The project was suggested to me by a School of Computing Postgrad, Tom Sodring. I thought that it would be a good project to attempt, as I'm interested in using SMS and other mobile phone technologies. What will the project achieve? The project would be useful for mobile phone operators such as Eircell, Esat and Meteor. The main users of this application would be children and teenagers. Justification for attempting this Project. I think this project will be enjoyable to work on. I think that the project idea is extremely interesting and I am also interested to work with SMS.

Focused Web Crawler Using Reinforcement Learning - Karl Glennon

The objective of this project is to create a webcrawler and web based search facitility for seeking out specific file types. I have chosen to demonstrate the project using MP3 audio as the target file type. The project will use 3 autonomous agents. 1. At the backend of this facility will be a web crawling robot. This agent will perform html parsing and information retrieval and document traversal. In this process the robot automatically traverses the Web's hypertext structure by retrieving a document, and recursively retrieving all documents that are referenced. Upon finding a hyperlink anchoring to an mp3 it will add the anchor text and file location to a relational database. 2. A second robot will be used to ensure that links still active. Any broken links will be removed from the database. This will be executed on a periodic basic. It is at this point that links are rated using reinforcement learning techniques 3. A final agent will be used request and harvest the mp3s found by the web crawler. This will provide a feature akin to Google's cache for links to mp3s to, which are no longer active. ID3 tags contained within the downloaded mp3s may be used to supplement the information available for searches. User Interface: Adhering to good design principles the presentation layer and search facility for the dataset will be implemented using a relational database, SQL and a server side scripting language.

Universal Site Search Engine - Derek Organ

The purpose of this project is to build a search engine capable of being used universally to search a website's content. By registering with my site it would give you the small amount of code needed to run the search engine from where you want on your site. It will also allow you to exclude certain folders and files from the search. This and other options can be set on the preferences page. The interface and some other general operations will be coded using PHP. I came up with this idea when I was on INTRA. The company wanted me to organise a search engine for their site. I then generated a very basic search engine using a database to hold all the information and a perl script for the engine. I realised afterwards that this could be greatly improved. I have since done some research into search engines and found out that it is possible to store the information in a matrix which can be held in memory. This would increase the speed of the retrieval. I will also have to parse the files to get rid of all the html tags and stop words. It is one thing to retrieve all the relevant documents. The next question is how can I sort all these documents so that the most relevant document is at the top? For this I will use the BM25 probabilistic retrieval model. I will code the search engine in Java. I will use a list of all the documents and their relevant URLs on the computing website to test the search engine. This project will not have a web-crawler but it could be easily added at a later stage. Proposed Supervisor Cathal Gurrin

Animated Java Debugger - Susan Gallagher and Breffni Coffey

The aim of our project was to make learning java easier for beginners and also to allow easier debugging of run time errors. The user inputs their completed code to the application. The application allows the user to observe the execution of their program in slow motion. As it steps through the code it animates objects and variables being created, changes in variable values, method calls and interaction between objects. The project was written in java and executes as an applet. OS: Windows NT Area: Language Engineering

D6 Emulator for the Palm Pilot - Dermot Carroll

For my fourth year project I intend to write a D6 emulator for the Palm Pilot. When complete the system will enable users of the D6 educational computer to use their Palm Pilot to carry out the functionality of the D6. (e.g. manually enter a program, examine registers and run the program). The system front end will consist of the basic D6 buttons and display which will enable the user to tap the PDA screen to press the buttons and view the results on the display. The Project will consist of 3 main areas. 1. Find a suitable software emulator that can be used as for the 8086 processor. This software must then be altered and adapted to suit the project. Parts that may require change are interrupts; output to ports (display, speaker etc.) 2. Learn and understand how to program the Palm Pilot. The development environment I intend to use is MetroWerks CodeWarrior IDE and the Constructor for Palm OS. I must first learn how programs are written for the Palm and how they are compiled and downloaded to the device 3. Integrate the work done in parts 1 & 2 above in order to develop the emulator for the Palm Pilot.

Project Submission Project - Barbara Cahill

At the moment students submit projects in the project box where they are recorded and passed onto the relevant lecturer. As most projects are electronic, this should be easy to automate. The idea of this project is that a student will submit the project via a Web page. A Java program would store the project for the lecturer along with the date it was received. At the project due date an email notifies the lecturer and the projects are made available in a common directory. Each lecturer can edit the due dates of the projects. Project idea came from lecturer Charlie Daly. This project will allow students to submit their projects via the web. The projects will then be zipped into a blob and stored in a mySql database. The lecturer can then download all projects from the database and add comments or mark projects as they see fit. The projects will then be sent back to the database where the student can view comments or the marks that the lecturer has inserted. Potential users Lecturers and students in DCU Justification for attempting project. By attempting this project, I would hope to end the paper trail that leads into each lecturer's office each year. It would also be advantageous to have an electronic account of each student's project. Overview of project characteristics, hardware and software requirements (sources). This project will use the following Java, MySql, Tomcat, Unix, HTML.

TimeTable Generator - Eileen Gavin

My project is a timetable-scheduling tool primarily for the use of the VEC schools of Ireland. Currently the software, which is available does not utilize an optimum algorithm, resulting in a lot of post-development work to be done by the user and most frequently this work is done by hand. This project will focus on creating a solution that is going to be used to create an optimum timetable for an average VEC school. The remainder will be alterable from a user-friendly interface. My project will be developed in Visual Basic v6. This will interact with a Microsoft Access database, which will hold all the information needed on the teachers, students, classrooms and subjects. It will be running on any Windows operating system after Win95.

Java - XML Presentation Application - Siobhan Maher

My 4th Year project is a Java Application that has similar functionality to Power Point and it's completely written in java. The project is split into two applications, a slide editor and viewer. The slide editor is an application, which allows the user to create new presentation slides and modify existing ones, and the slide viewer allows the user to playback the slideshow. The application has the ability to process sound and media files in the presentation slides. The presentation files are in XML format and the benefits of this are that it makes the data much more easily to manipulate and transmit. OS: Windows NT Area: Software Engineering Languages: Java

Project Idea Submission System - Daniel MacAlister

For my fourth year project I plan to write a system for ca3 and ca4 Project proposals. A student will fill out a form detailing their project idea and an overall Specification on an online form. Then using servlets the form will be transferred to a database where all project forms will be held. Project submission times will be noted and if a student is late on submitting a project they will be emailed by the system to remind them. Then when the lecturers have their meeting to discuss each student's project they will be displayable on a webpage, whether project ideas are acceptable or not will be decided and each group of projects will be displayed on a separate page. The accepted projects will be displayed on a webpage and a supervisor will be allocated to each student based on the type of project it is (certain keywords may associate it with a certain lecturer). The lecturers will be able to access a webpage summarising all accepted projects, and will be able to view their own projects (that they will be supervising) and to contact the students by mail links. The students' webpages will be checked to see if they have submitted a functional spec and the date when it was submitted.

Time Based Web Content Generator - Trevor Parsons

The TBWCR will, depending on the time, reveal only that web content that is suitable for time period the user is in when they access the web site. The TBWCR works with the use of special

X-NET Server Management Tool - Shane Pounch

X-NET is an ASP application for managing your files and databases online from anywhere. The directory manager allows you to copy, cut, paste, download, and view (highlighted) source code, as well as edit and move files and folders. You have a bi-panel presentation that lets you easily browse your files, click on a base and edit it. Also features customizable graphics, colors, and language. The directory manager automatically opens your Access Mdb and lets you view/edit all the content and everything that SQL makes possible through a database manager. You have a complete user management that lets you attribute folders, rights and more. Available in 3 languages (English, French and German). A three tier architecture is used including a Front end Consisting of a web page created in HTML viewed in Internet Explorer 5. Middle tier The ASP should perform most of the work with the web server. Back end An MS Access format will be used with the use of SQL to access it.

A Trading Site using the ASP.Net Platform - Kevin Mee

This Auction Site will be used for online virtual items, mainly for many of the gaming worlds available. Users will be able to sign-up, search for items, bid on items, run auctions, bookmark auctions and keep a database of all their own items. This project will be built on a three-tier structure and at the same time separating all the logic from the user interface (web page). Database access will be handled using the new ADO.NET framework. This will create a "disconnected" database (using Web Services) to the user for them to manipulate, and all changes will be posted back to the database when needed. All the logic will be programmed using C# and ASP.NET will be used to handle all the server controls.

SQL Console - Paul Mc Cormack

A Console to connect to any odbc complainant, when connected you can pass sql queries to the database and get back results. The console has options to load sql queries from text files, and saves queries to text a file; the sql editor has all the option of modern day editors like cut, past, load previous queries etc

Secure Java Application Server - Ronan Ryan and James Ryan

This project is an application server implementation, which can load and execute Java code on behalf of remote users. Typically, a registered user will connect to the server and send one or more Java classes that will be loaded and executed by the server. Then remote users will link to the server and request the service of a program that is currently running on the server. To ensure that only registered users can use the server and that Java code only accesses resources for which a user has permission, the server implements suitable authentication and authorisation mechanisms. Authorisation is handled with JAAS(Java Authentication and Authorisation Service), and once a user is authenticated all code is run on behalf of that user. In this way as opposed to traditional access control measures we can grant privileges based not just on where the code comes from, but also, on who is running the code. For authentication we used an RSA challenge-response mechanism which we incorporated into the JAAS framework. In order to log on to the system a user must demonstrate that he/she is in possession of the required RSAPrivateKey. All keys are stored securely using PBE (Password Based Encryption) and the client-server connection is SSL (Secure Socket Layer) over RMI (Remote Method Invocation). This system was written purely in Java on Windows NT 4.0 so is completely portable across all platforms. It's a software development project, and its advantage is that it allows Java classes to be executed remotely in a secure sandbox like environment with very fine-grained access control mechanisms.

Music Analyser & Transcriber - Jonathan O Callaghan

This project is a java application which takes a sound file as input, e.g. mp3, wav, cda file etc, and determines the notes/chords being played using the fast fourier transform method. The user is then shown how to play the piece of music (on guitar and piano) using tab notation and an animated user interface. It will also include options to isolate these instruments and either play back the wave with the instrument either removed or on its own. It could also include a wav recorder so the user could record themselves playing and possibly add effects like time-delay, Wah, phaser, flanger etc. It would hopefully include an option to combine their own recording with the backing track from the original sound wave.

Intelligent Poker Player - Garrett Ryan

The aim of my project will be two-fold. Firstly there is a web based poker game that multiple people can log into and play. This game will be capable of dealing and analysing most of the popular casino poker games - Texas Holdem, Omaha, Omaha Hi-Lo, 7 Card Stud and 7 Card-stud hi-lo. Texas Holdem is the game of choice to decide the world champion of poker. In this game each player receives two cards and some betting occurs. Then three cards called community cards are revealed and another round of betting occurs. There are two subsequent rounds with one card being revealed each time. These five cards are called community cards and are available to all the competing players. If at the end there is more than one player still in the game the best five-card poker hand wins. This hand is made up from the player's two cards and the five community cards. For the game of Texas Holdem one or more computer players will be provided. This is the main goal of the project - to develop an intelligent texas Holdem player. The player should be capable of playing against up to nine opponents. The player will have a strong grounding in probability to aid in decision making. Elements of game theory will be involved and randomisation used so as not to be predictable. The computer player should be able to execute and recognise bluffs, an essential part of a winning poker player. The central constituent of the computer player will be to implement some form of opponent modeling. This will be done through neural networks and the computer player will build up profiles of opponents over the history of hands played with them. Neural networks appear to be well suited to this task. Justification of project: The attention of the artificial intelligence community has only recently been directed towards poker and a truly world-class player has yet to be developed. Attempting the project should give a good insight into artificial intelligence programming, game theory, statistical programming, java network programming and neural networks. Intermediate objectives: I would hope to have the dealing, game interface and hand analysing implemented by January. I would hope to concentrate the network programming and on the main computer player from then on. If I have time I may code more than one type of computer player. Project characteristics: The project will be implemented in java using Windows NT.

3D Strategy Board Game - Fortress - Ciaran Daly and David Dempsey

One of the most popular and exciting areas in programming today is in the area of games programming. With the emergence of new technologies, games development remains as interesting as ever. The aim of our project is to develop a three dimensional strategy game, which is a networked multiplayer game but also has AI opponents. Fortress's UI was developed using the Java 3D API. The game is similar to chess but is played on three boards, which are in a three-tier formation. A player may connect to a Fortress server and play against other people connected to the server or he/she may play against an AI opponent. The game also has an integrated chat feature and games are arranged by people in the chat room. The server keeps a record of a player's statistics, such as game wins and losses. These are stored in the player's profile, which only the player can access with his/her password. These profiles are protected by the server in an encrypted file.

Computer Go - Conor O'Kane

The aim of my project is to write a computer Go program with an effective AI algorithm. The game of Go can be played on anything from a 9x9 to a 19x19 size board and so far no one has created an AI routine for Computer Go which has been effective against expert Human players, unlike in other board games such as Chess. I plan to write a program which will have a GUI enabling a human player to play against the AI, as well as having network functionality in the program to allow it to connect to a Go Internet server where it can play against other computer programs and other human players. My project will build on the latest AI techniques employed in Go, as detailed in the paper "Computer Go: An AI orientated survey" by Bruno Bouzy and Tristan Cazenave (http://www.ai.univ-paris8.fr/~cazenave/CG-AISurvey.pdf). It will involve a significant degree of research and theory, however there will be some programming involved in implementing the GUI and Network functionality, as well as in implementing the AI routines. Language: Java Platform: NT

Bearings - The Maze Game - Adrian Peyton

Bearings is a web based java one player 3D maze platform game where the user must navigate through a series of mazes in order to complete the game. Along the way the user encounters monsters, which must be killed, and objects (guns, night-vision goggles etc..) which must be picked up. Against the clock, the aim is to score as much as possible in as short a time as possible. The game runs as client/server architecture, where the server manager runs on the game machine. The client (web browser running the game) connects via a socket connection to the server. The game was designed so that the mazes could be created online by players and have them saved to the system, so that other users may play them. The user may jump to a particular maze provided they know the password, which can be attained by completing the levels that precede the required level. Platform: windows Section: Games/ Entertainment/AI

Mail Client with Spam Guard - Paul Callely

The project is an email client, which enables the user to access mail folders from any POP3 email Server. It will be able to receive plain text and HTML emails and will be able to deal with attachments. The user will be able to send, receive and store messages. The second part of the project is to design a Mail Filter, which is, can be added to the Client and will allow the user to filter out unwanted emails. The user will be able to tell the Filter what he/she wants to filter out. There are three main category types and the filter will decide which category the incoming email falls into. These categories are Adult Material, Online Shopping and Banking. The project will involve doing research into the different methods of Text Filtering and Text Retrieval to see what approaches are best suited to creating a successful Filter. The Filter will also sort the mails into Folders of friends and Mailing Lists that the user has subscribed to. The program will be written in Java with the user interface being created using the Java Swing and Java AWT API's. The Mailing functions will be written with the help of the JavaMailTM API and the JavaBeansTM Activation Framework (JAF).

Sports Rankings Developer - Padraig Cooney

I am developing a web-based system to allow a user generate sports rankings systems akin to the FIFA World Rankings and other such systems used by sports organizations to calculate performance. The project can be divided into two parts - a GAA template and an option to develop one's own ranking system from scratch. As the GAA does not have a means of ranking its county teams in this way, I have developed a GAA template as my default option. This will involve setting out various criteria for establishing results. For example, a victory in a match will affect a team's standing depending on the competition in which the game was played; the stage of the competition; the relative ranking of the opposition; the score accumulated; and the margin of victory. Rankings are calculated on a monthly basis, and consider results for the past five years. The user inputs match results through the web interface for the current rankings to be worked out. The project also allows a user to build their own rankings system for whatever sport is desired, by selecting a whole set of criteria; inputting competitors, tournaments, tournament formats etc.; selecting the relative importance of different tournaments; and specifying the low-level details of the sport itself. My project has an elegant and easily operated user interface, with helpful notes included for certain input fields. To develop the system, I have used Java Servlets, JSP and a JDBC connection to a Microsoft Access database.

PR and other Online Voting Systems - Shaun Canny

I propose to develop a real secure online proportional representation voting system, real in the sense that it will simulate an actual election in Ireland. I will also propose to develop other voting methodologies to compare election results using these different methods, such as "first past the post". My system will generate results when polling has finished. The system will also generate graphical representation of these results using SVG (if time permits). For the PR method I will use the single transferable vote method. Description: The voter will be able to log on to the web page, from which they will be asked to enter their username and password. I will implement some form of encryption to make this secure. On a correct entry, a voting form will appear for the designated constituency, which the voter belongs to. The voter will then fill in the form. They will do this by selecting the candidate of their choice in order of preference. Once they have done this there vote will be recorded. I plan to introduce a time constraint, which means that a voter will only be able to vote within a specified time period, as is the case in any election. When the time period has elapsed the results will be automatically calculated along with graphical representation of the results. I will also implement other algorithms for calculating votes. Implementation: I propose to implement my project by using Java server pages (JSP) in order to implement the various functions associated with my project. I will be using the Tomcat server to run these pages. These pages will connect up to either a Microsoft access or SQL server database. I will use jdbc (Java database connectivity) for this connection. The front end will be developed using html. I am also proposing to develop on screen graphs i.e. so once the results are in you will be able to see the results in graph format and also be able to see the voting patterns matched with previous elections etc. For this I will use S.V.G. (scalable vector graphics) Conclusion: I think this project is an excellent idea because it enables people to vote on the Internet, so they don't have to be in their local booth in order to vote. Secondly the project has no limitations it can be used anywhere whether it be general elections or a university elections etc.

Programmer's Editor - David Costigan and Ronan O'Ceallaigh

Our project is a Programmer's Text Editor, based around a language definition file, called Fist. The name of the project comes from the description of telegraph operator's unique style as their "fist". We intend this editor to be as flexible and fast as possible, so that an individual programmer would be able to create his/her own unique coding environment. The language definition file would include a description of a programming language, for example reserved words and control structures, which the programmer could edit to suit his/her own coding style. There would be one definition file for each language, and several files are supplied with the editor. There are also numerous user interface features, which are optional to the user. These include auto-completion, a code overview window, syntax highlighting and code statistics. OS: Can be compiled onto any platform. (Unix, Windows, MacOS) Language: C++ Application Area: Software Engineering

Java Traffic Simulator - Paul Carr

It is in the area rule-based simulation that I have focused my final year project on. The objective of this project is to accurately simulate the flow of road traffic in a graphical user interface. In order to achieve the simulator must capture both the physical and human components of traffic. This means that the simulator must determine the reactions of the vehicle driver depending on the vehicle's state. The state of a vehicle can be determined by the distance and by the difference in speed, in comparison to the leading vehicle. If the vehicle state changes, the driver must react. Other reactions that are determined are those in response to changes to the environment in which the driver in driving in. Examples of these would be the speed limit, traffic lights etc. Another objective of this project is to distinguish between drivers with different characteristics. A characteristic of a driver would be the risks that he/she would be willing to take. A certain type of driver will maintain a safe distance between himself/herself and the vehicle in front of it others may not. Some drivers will obey the speed limit, others may not etc. I have created the simulator using a psycho-physical vehicle-following model. Psycho-physical vehicle-following models determine reactions of vehicles in traffic processes with regard to changing the acceleration of vehicles. Reactions happen if differences in speed and distance to the predecessor occur.

COFS for Nurses - a Computerised Filing System for Public Health Nurses - Ruth Kyne and Marita Cummins

There is a problem in the health sector at the moment, in that it is not computerised. We decided to try and computerise the public health nurse sector, as our Fourth Year Project. The basic job of the public health nurse, which is to cater for the needs of the patient she/he is visiting, is made very difficult due to the manual process of data storage and retrieval. Not only does the nurse spend the day filling out the forms as she visits the patients, but she then has the additional task when she/he arrives home, of updating these files and sending them to the Health Board by post. This creates a lot of unnecessary over time for the health nurse. Also, it is not very secure to send this information by post and as these are medical records, by law they must remain confidential. The aim of our project was to design a web-like application into which nurses can enter details of a patient's consultation. The application takes all the information entered, saves it to a database and allows the nurse to generate a report based on the information entered. It also allows the user to view the report or update information on the database. There is also options to print the report out and to save the report onto the nurses desktop. This application could be installed on the nurse's laptop or home p.c., or it could even be installed in a clinic with our database as a central database. The project also deals with security as medical records have to be confidential by law. The database requires a password and can only be accessed by running the system. The system can only be accessed by providing a password, which is registered when installing the application. This password is encrypted and stored in a file on the database. The application was designed using JavaServer Pages, MS Access and XML.

Online Auction Site using Enterprise Java Beans - Cormac Hall and Conor Lennon

This final year project aims to produce an online auction application. It is developed using Enterprise Java Bean technology. The main function of the application will allow registered users to place items of theirs for sale. These will be then made available to other registered users so they can bid for them and purchase them. A user will also be able to view their items currently for sale as well as view their transaction history. The application is developed through the EJB technology as this technology is suited towards developing component based applications. The technology is also geared towards ensuring safe and secure transactions over different tiers. The architecture of EJB also encourages good programming techniques which for example ensures specification is seperate to implementation and allows developers to more clearly focus on the business logic of the application, instead of having to worry about the more technical side of the development. Our application it is hoped will exploit and use these and other advantages of the EJB technology. To that effect it as also hoped that we can carry out some kind of analysis or testing of our application to highlight some of the advantages of using Enterprise Java Beans.

SMS Newsletter - Eoin Daltún

The aim of the SMS Newsletter project is to allow an Organisation of some description to send out newsletters (reminders of upcoming events) to subscribed recipients via SMS. A person can subscribe to an organisation's newsletter by sending in a message to a specific phone using keywords. The subscriber's number is then associated with that club and when a newsletter is scheduled, the new subscriber receives a message via SMS. The Newsletter is controlled by an administrator via a web based user interface using Java Server Pages. Platform: Windows 2000 (JSP's through any browser) Software: Java and Java Server Pages using Tomcat webserver. Area: Multimedia

Automatic Categorisation and Filtering Tool - Paula Howlin

The objective of this project is to create an automatic filtering and categorisation tool for sports related documents. The aim of it being to aid people in their jobs, making it easier for users to produce sports reports for television, radio and print coverage. Using Information Retrieval methods the program will be able to identify sports documents and then automatically categorise them into their respective categories. For this ten super-documents relating to ten different sports will be created, each super-document will be about 50k of text each. Applying the Information Retrieval method will allow the identification the best category (if any) for any particular document. The interface will be web based. The web page (when a user logs in) will alert a newscaster, researcher or whoever the user is to the fact that there is new information about a particular sport. In the event that the document being entered contains information that leads the program to believe that it could be two or more sports the program will let the user decide which one it is. 1) Area of application: MultiMedia 2) OS: Windows 2000 Professional using IIS web server with Microsoft SQL Server access holding configuration information 3) Languages used to implement: Java

Java Email Client - Brian Quinn

I propse to develop an Email client that will be a 100% java application. I will use the JavaMail API to do this. My Email client will employ various internet email protocols. (POP, IMAP) The features of the email client will include: A Folder list, including the option to create your own folders. Tools for flagging email for follow up, and a filtering option. An adress book to manage your contacts. The capability to send attachments with messages. Messages will be sent in plain text format, but if i have time i wìll also try to include the capability to send HTML mail. I also plan to include a hyperlinking facility whereby distinguishing terms will be selected from an incoming mail message and linked to google to allow searching for that term. To this end I will develop a function to select words based on the word frequencies, the idea that the mid-frequency words are best for this task. I will use Java Swing toimplement the user interface.

On-Line Personal Organiser - Amy Healy

The Personal Organiser is a diary on the web where users input information about meetings or other events that they wish to be reminded of, an SMS message and an email will be sent to the user to alert them of an up and coming event. When the user initially sets up his/her calendar they must select a password to be used to logon to their diary/calendar. The username for each user will be their mobile number. The user can access the web page via their P.C. When the user logs on from their P.C. they must enter in their Username (i.e. mobile number) and their chosen password. When entering details about an event the user selects the date of the event. On selecting a date the user will be given the option of scheduling this event with other users, where by it will send them an email and a SMS message about the proposed event. Then the user can select how often he/she wishes to remind himself/herself and other users of the event. The user can have a private and public diary, whereby the public diary will be accessible by other users (users will be issued with a username and password), which will be specified by the user. When a user enters details about an event for a particular date he/she can decided which diary to put it into public or private. The private diary can only be viewed by the user. If the user logs on from their WAP-enabled mobile phone, the site recognises the users mobile phone number and brings them directly to their diary/calendar. · Here they can enter details of a meeting or an event that they wish to be reminded of via SMS and email and how often they wish to be reminded. They can also search through their Private and Public Address Books for information. Platform Used: Windows NT Languages Used: ASP, VBScript, VB, WML Application Area: Can be used for personal or business use. Would be useful for people you spend a lot of time away from their desk

Voice Operated Website Manager - Conor Kelly and Deridre Redmond

WebMan, our Voice Operated Website Manager is a user friendly application which allows relevantly inexperienced computer users to create and maintain their very own website. By incorporating the latest in speech recognition technologies with a consistent, easy to use interface, WebMan covers up all of the normal complications of using HTML to build a website and managing the web pages and images. Dragon NaturallySpeaking is the speech engine behind the application allowing for use of Voice Commands and Dictation of Text. WebMan operates on a speak and click system with context sensitive hints/help and basic tutorials for all of the main elements of Web pages. WebMan provides easy to follow steps for all of the more complicated aspects of designing web pages and uploading them to the Internet. Area of Application : MultiMedia / Web OS : Windows 95/98 & NT Languages : Delphi / Object Pascal

Java Chat Room - Keith Conroy

This chat room is a client/server application that uses sockets. The server creates a thread for every new user that connects to it. The client sends messages to the server, which broadcasts the string to every other client. The graphics and the speech synthesis coincide with the clients actions. A client is represented by a figure on the screen, and if a client is sending a message, their figure moves their mouth. This is done with the manipulation of images, and the switching between them. Also every string that is sent to the client is spoken out to the client. This part of the project uses Java Speech API. This synthesiser avails of the Microsoft package Speech SDK 5.1. OS: Windows NT Language : Java Area: MultiMedia

Automated Track and Trace Barcodes - Niamh Maher

This project is to be used to automate the linking of a unique track and trace number to the name and address of the receiver, of a parcel. The Unique number is held in a barcode which is to be read from a pre-printed label, by a barcode reader, checked using check digit calculation, and then linked to a database record containing the names and addresses of the recipients. The program also must allocate unique serial numbers, to each client, which will be written to a spool file along with all relevant information to be printed. This spool file will be used to personalise the printed documents. These unique numbers must then be stored and updated in order to authenticate and keep track of documents. This entry to the database will also be time and date stamped. Name and address must be printed on the label containing the barcode. In addition to basic function of the program it will be required to print out a dispatch sheet when a consignment of packages has been finished. This dispatch sheet must include details of all packages, complete with track and trace number. Also it must contain the total number of packages dispatched. This dispatch list will also be e-mailed to the customer. It will contain all the information from the database. In the event of a misplaced package there will be the option of a search under name, address, date and track and trace number. Once the details of the package have been obtained it will be possible to trace the whereabouts of the package via the web. OS: Windows me Languages: Powerbasic Area: Other

Visual Database Design and Creation Tool in Java - Kenneth Maher

Normally the steps of designing and creating database systems are both very long and tedious for a DBMS user. The DBMS user must first plan out the schema of their DBMS using some sort of modelling system and then spend a long time creating the necessary SQL create table statements to create the tables needed in the Database. My project will combine both these long and arduous processes into one simple to use application. This application is a Database Design and Creation tool. The Design and Creation tool will allow a user familiar with the basics of Database Design, to create an Entity-Relationship model of the Database schema on screen. Once the user has created their ER model of the RDBMS, the application will allow the user to automate the Database Creation process by generating the necessary SQL statements to create the required tables in the database. The application will allow users to design correct representations of database systems and automate the creation of these systems. The application has a wide variety of possibilities and uses by both professional and academic users. Lecturers and Academic staff can use the application to teach students about correct database design and creation. Users in the private IT sector such as System Administrators and Project Managers who require the easy design and implementation of a databases can also use this application. Since the application has been developed solely in Java, it is completely platform independent and offers support to a wide range of RDBMS's through ODBC anJava's own JDBC. At present the system supports both Microsoft Access and Microsoft SQL Server. Due to the fact that the application has been designed and implemented in a completely Object Oriented manner, there is a framework in place to add different Database systems easily (such as Oracle etc). As well as adding extra databases to the system, users can also easily add unlimited functionality to the application such as a Database Management Suite or a Verification System for the ER model.

Documentation Made Easy - Jennifer Gibson and Jennifer Fitzgerald

Having noticed the vast amount of documentation required throughout the Software Project Lifecycle, this project aims to ease the process of project documentation thus making it less cumbersome and error-prone. The idea behind this innovation is creating links between software documents regarding a specific project whereby fields are automatically populated in the document templates. This in turn reduces the overheads of both time and integrity regarding the information input. The project is an online application developed using Java Servlets, XML, SQL and HTML.Users can create, store, and view documents for any projects they are involved with. Our product has many improvements on current applications available in the software market, through its user friendly environment and innovative procedures and functionality, thus making it a forerunner of its field. OS: Windows NT Area: Ecommerce Languages: Java Servlets, XML, SQL and HTML

Web Based Project Management Tool - Joseph Hunter

I propose to develop a browser based Project Management application to administer, delegate and monitor resources that are involved in a Government Departmental based project. A typical Government Departmental Project has the following properties: Project Title, Project Sub-Tasks, Personnel involved, Time constraints (milestones and deadlines) and the budget allocated to the project. Each project for the upcoming year is described and outlined in a business plan at the start of the year. Each section within a department has its own business plan, which shows the projects they will undertake in the forthcoming year and all the relevant details of each project as described above. The proposed application will allow a section to update these projects and generate reports on these projects based on certain criteria. This will enable Government personnel to calculate in advance the feasibility of future projects and to update projects as they progress during the year. Functions & Features Provided 1. Informative Gantt Chart Views: The Project Management tool running in a browser will allow users to view and edit all project information that is stored in a relational database. The user can view different information on each specific project based on certain criteria. For instance there will be Gantt chart views to see all projects currently in progress and the time and personnel allocated to each individual project. 2. Edit Specific Projects Using Forms Based on these views the user can use forms to edit different projects or add in relevant information. For instance if a project view shows a project which has not enough resources allocated to it, the user can see from other projects what resources are available for that project and if necessary move the dates of that project to coincide with the release of the necessary resources. 3. Incorporate Management Science Techniques To increase the functionality of the tool I plan to incorporate some Management Science techniques to inform the end user of the feasibility of certain projects and generate reports to show what resource is being under or over allocated or similar project diagnostic information.

Automatic Stock Ordering System for Business - Brendan Cahill

My project is an automatic stock ordering system, which uses management science techniques to ensure a company gets it`s stock for the cheapest possible price, while at the same time ensuring a company will never run out of a product. The system is implemented entirely in Java and uses a Swing based GUI which has been designed to be as user-friendly as possible. The system has been designed to work with any Win95/98/NT operating system, but due to the fact that it is written entirely in Java it should be adaptable to any platform capable of running a Java VM. The main area of application for this project is ECommerce. OS: Windows NT/ME

Portfolio Software - Joseph James Maloney

This project objective is too create a software environment, orientated towards a business & Finance market side of Computing. The application is a Portfolio application, and the targeted end-users would be private individual investors & asset Managment Companies. The software will incoporate all the features associated with portfolio managment & analysis, Which include - - Monitor changes in the value of your Stocks and funds since they were purchased - Get a year - to - date returns. - Get a single at-a-glance view of price changes and market valuations for all holdings. - A graphic analysis of stocks and markets. - Generate tax & fees due on the investments. - Tailor the portfolio analysis to suit yor needs. The software will be based on a Client - Server model, thus allowing for multiple clients connecting to a database to store the vast ammounts of information that portfolios amount. The application will be a graphic user interface for the Front End and a Server for the Back-end.The Front End will be written in JAVA - SWING whilst the back end will be written in JAVA. This aspect will then add a multi - platform dynamic to the Software application. The database will be an SQL implementation, with an expansion into ORACLE if possible thus matching the business nees of a Company & the software that company would have. I have an indepth knowledge of Java And Java - Swing and to set up a Network of clients connecting to a Server. My research in this project though stems from the Finance aspect and incorporating these standards into a viable software package, as i have much interest from the financial aspects of Computing.

OPAC Library System - Seamus Mc Morrow and Adrian Cadden

The OPAC (On-line public access catalog) application is a web based Client and user account interface. It aims to be a web interface for any web browser to library management system or as a standalone product to any Z39.50 server with an oracle database by using Library and internet standards such as Z39.50,J2EE,XML,JSP. It will provide ·Basic & expert searches ( title, subject, keyword, author, ISBN, record number ) ·Library news system ( Library portal news system ) ·Display member info ·Members will be able to review/rate books It is OS independant.

CEREBROGEN, A Brain Computer Interaction System - Kyle O'Connor and Amarah Khalid

Our project, CEREBROGEN, allows a user to control cursor movement and object selection on a computer using brainwaves. This system monitors brain electrical activity from Electroencephalographic (EEG) readings in the sensorimotor cortex using electrodes applied to the scalp. This information is amplified by a PowerLab system and sent to a PC via the USB port. The sampled data is relayed through a third party program, Chart, and then processed by our Java based application. The data is analysed using a Fast Fourier Transform, which produces a Frequency Band Spectrum. This spectrum is further classified in relation to system-coordinated events during training and testing to identify left and right intentional movement. Over a number of sessions this allows the user to control a binary channel with thought alone. This project was developed in Windows 2000. The area of application is Human Computer Interaction (HCI), specifically it is a Brain-Computer Interface (BCI) system. The CEREBROGEN project was sponsored by Intellit Ltd. www.intellit.ie

Remote Desktop over HTTP - Donal Riordan

Tools which allow a user to control another computer from a different one via a network have been popular for years. However, all software to date requires both server software to be installed on the controlled machine and client software to be installed on the controlling machine. This model presents a number of problems: - Client software must be carried around on disks if the user is to use it on different machines - Client software may not be available for certain platforms - Users may not have permission to install or run the client software on the machine My project gets around this by using a system whereby a web browser communicating using HTTP is used as the client software. A web browser is now a standard piece of software on computers or, at least, computers with network capabilities. Because of this the system could be used by alot more machines than previous systems. For example, using my system, the controlling system could be in an Internet café, or it could be a web terminal which are becoming increasingly common in airports, bus & train stations or it could even be a handheld device. Basically any computer which can use the web can be used to control the computer running the server. The ubiquitous presence of the web access means that a user should be able to control their home or office computer from anywhere in the world on almost any machine as if they were actually sitting in front of it. OS: Windows 9x, NT, 2000 and XP Language: C++ (using Borland's C++ Builder) Application Area: Remote Desktop

Interface for Object-Relational Database metadata (Oracle 9) - Alan Power and Sarah Murray

For our project, we have developed two Java libraries to interface with an Oracle 9i database. The only pre-requirement these libraries have in order to work is that the server-side library is loaded into Oracle 9i's built-in CORBA object request broker. The server-side library provides methods to connect to an Oracle 9I database and retrieve information about data in the database, including types, objects (attributes, methods and hierarchy), triggers and stored procedures. On the server side, we have also provided a Java interface object which holds the data contents of a query, potentially containing a combination of objects, arrays and nested tables. This interface object can be accessed from the client side. The client-side library is a thin client and provides methods to connect to the server-side library using CORBA. The client supplies a usable interface for calling server-side functions, as well as providing java swing components. The swing components provide a graphical user interface, which the user can add to a Java application to display the returned data in a user-friendly fashion. In addition, we have developed a sample client which illustrates the use of both the client and server side libraries, as well as being a fully functioning application in its own right. Language: Java and CORBA with Java OS: Linux and Windows NT Application area: Java programming and Oracle 9i

Migration Path for Object Related Database through XML - Thomas James and Finian Nally

The idea behind our project is to develop a Java application to take an Oracle 9i database and transform it into a content rich XML schema. In our case we have chosen the W3c XSD schema. We will not only transform the basic features of the database into our XML schema but one of the key points is that we will be able to model and transform the features of Oralce 9i such as inheritance, relationships, and the whole idea of object tables into our schema. Once we have generated a vaild schema, we will then transform the actual data to an XML file. The second half our project it to take this generted XML file and map it back to an empty Oracle 9i database. Our application will parse the XML using an XML DOM parser and generate the create statements and insert statement to create the database as it originally was with all of its various features. Finally we will take our appliaction and research the possibility of mapping our XML to any Object Oriented database.

XML Database - Caoimhín Dónal Breathnach

The project consists of an XML front end for an Oracle object-relational database. The front end will allow the user to store and search any XML document, and query it on the basis of any tags and content it may contain. The interface will hide the Oracle Database from view, and to all intents and purposes it will be an XML database. The objectives of the project are to provide a powerful tool for the analysis and storage of an XML document, or a group of XML documents, and to demonstrate my understanding of the object-relational database model,the XML document specification language, the Java programming language, and how to integrate them successfully.

Portable Java based SQL Console - David Walsh

This is a portable java console for SQL statements and connections to different databases. The console will use a JDBC thin driver to connect to a database and to work on any Java supported platform. The application will take the SQL query from the editor and pass it to the database.The selected SQL statements are executed against the established connection. One by one the results of the execution are displayed in the window. The toolbar provides buttons for saving contents of both the query and the result as ASCII output and an option for loading and executing sets of SQL statements as a plain ASCII file. The application will provide all capabilities modern editors provide, e.g. cut and paste options. Keyword: Database

Clustered Web Server (CWS) - John O'Connor

The traditional design of web servers is limited by a lack of scalability and fault-tolerance. It is becoming near impossible to process requests generated by millions of Internet users in the world and to meet the need of hosting Internet information that is growing explosively. My project provides an extensible and scalable Web server system, which can be extended in size to increase the computing power for handling large amounts of user requests. The system makes use of freely available software such as Apache web server to perform the actual web page serving. My project provides a load balanced front end to a group of web servers. It achieves the distribution of load using the Http 1.1 protocol and some simple yet effective algorithms. CWS actaully consists of multiple modules such as Constellation, a gui tool for creating configuration files, and CWStat, a module for logging load information. The main part of the system in the actual load balancing daemon, httplbd. OS: Linux Language: C\C++ & Gnome Application Area: High Availibility Servers

BF RacerX - Kevin Boland and Seán Fitzpatrick

Our project we have wrote a Directx Game Engine which supplies basic development tools for a programmer to be able to develop there own game quickly. On this engine we have built our game BFRacerX which is a car simulation that simulates every aspect of the car right down to the radio :) . This game allows for a multiplayer game which can be run on the same console or over a network.

Online Fantasy World Cup - Daniel Cronin

My Project is an Online fantasy World Cup game. It is a child of the ever increasing popularity of fantasy games online. It involves email and sms notification to the users and allows one to pick eleven players from 32 countries and over 700 players competing in World Cup 2002. Each player earns points for their performances in the World Cup and if you have this player on your team, then you earn these points also. You are put in a league with all the other users as an added incentive to choose wisely. I will be using Java, Java Servlets, HTML, and SQL to implement this. Area: MultiMedia OS: Windows NT

Graphical Interation with 8086 Embedded CPU - Brendan Bradley

The application presented here is a graphical environment, which allows the user to interact with a virtual 8086 embedded cpu system. The purpose of the application is to provide a 'view' of the system, ie to provide a window into the system, and sufficient tools with which to manipulate or interact with the system. This is achieved by using a familiar instrument panel layout to graphically represent the state of critical elements of the system. The main elements of the user observed system are the individual instruments, all of which are independent real time view components. As their name implies these instruments are updated in real time as the information they present changes. From the interactive and functional point of view, the user is provided with controls which are similar to those found on domestic consumer audio visual appliances. These all follow a similar theme with every control marked with a symbol which by convention represents the functionality or purpose of that control. This system uses the DCU D6 embedded development environment, or D6 computer.

Applications of Identity Based Encryption - Shane Healy

For my final year project I proposed implementing an Identity Based Encryption (IBE) scheme. The scheme describes a method of encrypting a message by using the recipients email address as the public key. The project will demonstrate the advantages of this system over conventional implementations of Public Key Cryptography in a simple mail client. The research has been carried out by the Applied Crypto Group, which is part of the Security Lab in the Computer Science Department at Stanford University. Using IBE the sender would encrypt the mail using the recipients' email address. When received the recipient would call an independent Private Key Generator (located on an independent server, for example) to receive his private key which would allow him to then decrypt his mail. The advantages are that the sender need not know anything about the recipient when sending a mail to him except for his email address. The potential users of this systems are anyone who wishes to send encrypted email but don't want to or are unable to obtain the recipients public key. It can be used in conjunction with any mail client and is independent to the security of the medium the message is travelling through.

Encrypted Mailing List using IBE - Donal Hunt

An Identity Base Encryption (IBE) scheme is a public-key cryptosystem where any string is a valid public key. In particular, email addresses and dates can be public keys. The IBE email system developed by the Applied Crypto Group at Stanford University is based on the first practical Identity Based Encryption scheme (IBE). The cryptosystem has chosen ciphertext security in the random oracle model assuming an elliptic curve variant of the computational Diffie-Hellman problem. The aim of this project is to integrate the work done by the Applied Crypto Group with the open-source mailing list manager Mailman. This