Академический Документы
Профессиональный Документы
Культура Документы
Gwyddor Cyfrifiadur
Project Selection Brochure
March 2009
Brochure for the selection of a project for the partial fulfilment of the requirements for the
degree of BSc Computer Science.
Swansea University
Department of Computer Science
PRIFYSGOL ABERTAWE
SWANSEA UNIVERSITY
Table of Contents
Introduction.........................................................................................3
Selection Timeline..............................................................................4
Project Timeline..................................................................................5
Document Structure............................................................................7
The Projects........................................................................................8
Dr. Arnold Beckmann (a.beckmann@swan.ac.uk)...........................8
Dr. Ulrich Berger (u.berger@swan.ac.uk)........................................9
Professor Min Chen (m.chen@swansea.ac.uk).................................10
Dr. Parisa Eslambolichar (P.Eslambolchilar@swansea.ac.uk)........11
Dr. Phil Grant (p.w.grant@swan.ac.uk)............................................12
Dr. Neal Harman (n.a.harman@swan.ac.uk)....................................13
Dr. Mark Jones (m.w.jones@swan.ac.uk).........................................14
Dr. Matt Jones (matt.jones@swan.ac.uk).........................................14
Dr. Oliver Kullmann (o.kullmann@swan.ac.uk)..............................15
Dr. Robert Laramee (r.s.laramee@swansea.ac.uk)..............................17
Professor Faron Moller (f.g.moller@swan.ac.uk)...............................19
Dr. Ben Mora (b.mora@swan.ac.uk)................................................19
Professor Peter Mosses (p.d.mosses@swan.ac.uk)...........................20
Dr. Markus Roggenbach (m.roggenbach@swan.ac.uk)....................21
Dr. Monika Seisenberger (csmona@swan.ac.uk)..............................22
Dr. Anton Setzer (a.g.setzer@swan.ac.uk)........................................23
Dr. John Sharp (j.a.sharp@swan.ac.uk)............................................26
Dr. Roger Stein (r.d.stein@swan.ac.uk)............................................26
Professor John Tucker (j.v.tucker@swan.ac.uk)..............................29
Mr. Chris Whyley (c.j.whyley@swan.ac.uk).....................................29
Mr. Max Wilson(m.l.wilson@swansea.ac.uk)..................................30
Dr. X. Xie (x.xie@swansea.ac.uk).....................................................31
Industrial Projects...............................................................................32
Students’ Projects................................................................................38
Industrially Related Projects...............................................................38
Intellectual Property Rights.................................................................38
Selection Form....................................................................................39
Students’ Project Form........................................................................40
2
Introduction
Swansea Computer Science Department states as its Educational Aim No 4
"The ability to plan and accomplish a substantial project". The final year project is your
chance to live up to these expectations. Your project can take various forms, for instance
it can be on robotics:
Other examples of past project topics include Exponential Notations, Ontologies, Video
Visualisation, Haptic Interfaces, CSound Abstractions, Probabilistic Algorithms,
Microprocessors, Running Threads in C++, Interactive Tutorial, Cascading Style Sheets,
Verification of RSA, Emacs, XML Databases, Mobile Phone evaluation, Parallel
deterministic algorithms, Software Plagiarism, Automated web page search (IR), Life
performances (IR), ...
The final year project is your chance to study a Computer Science subject of your own
choice. To do something that always has interested you, however, never appeared on the
Swansea syllabus. After your studies, your project most probably will become your
"distinctive feature". Every job interview will include the request: please tell me about
your final year project.
In terms of learning skill, what you will gain is experience in project management -
within your project you will be your own manager. You will learn how to make good
presentations (a talk in Gregynog, a poster at the Project Demonstration Fair), how to
write a project proposal or a project report, and you will gain experience in self-organized
studies. In summary: step by step you will grow out of a taught university programme and
become a computer scientist in your own right.
3
Projects come in three different flavours: you can choose a project suggested by a
member of lecturing staff, you can choose a project suggested by Industry, and you can
come up with a project of your own.
Projects suggested by a member of lecturing staff are usually the safest option: based
on the experience of many projects, extent, depth, and potential of the project proposal
are carefully chosen. Sometimes project proposals go along with the research interest of a
staff member: in these cases you can be sure to get optimal supervision.
Industrial related projects can be real career openers. Should you do well, the company
might actually offer you a job. And, don’t forget: after two years of theory, finally the
practise! There are, however, some potential pitfalls. Sometimes, the company loses its
interest in the project during the course of the year. Then, it will be hard to arrange
meetings in order to get input for the project. Also, you will serve two "masters": your
supervisor at university and the company itself.
Own projects are of course the best! You follow your own path and do what you always
dreamt about. In order for you not to struggle, the department requires that you find a
member of teaching staff who will support your proposal. The risk in such a project is
that, naturally, you don't have much project experience - and your potential supervisor
might not be too familiar with the subject of your choice.
This brings us to the question: how much should you know about your project, right now?
There are two obvious strategies: you go for those things that you already understand - or
you take the challenge to learn something completely new. Both have their pros and cons.
Should a project look clear and easy, and you understand it already now completely, it
might be the case that the project lacks potential: even if you work it out in a perfect way,
as it was so easy from the beginning on, it might not be possible to achieve a high grade
with it. Complex projects, on the other side, might first frighten you: so many new things
to learn, to understand, come to terms with. However, as they are such a challenge, even
if in the end your solution is not a perfect one, you might earn a high grade from them.
One last bit of advice concerning your project choice. Most past students say: the subject
of the project is not so relevant, what really matters is that you get on well with your
supervisor. Thus, you really should use the Project Selection Fair for a good chat on a
project of your interest and check if the communication works out.
Project time-line
With the announcement of the project allocated to you, the project clock starts to tick!
You have about 10 month to finish your work. Overall, the project should take about 300
hours, which is equivalent to about 2 months of full time work.
Your first course of action should be to contact your supervisor. And there is just one big
piece of advice: do it immediately after you have been told which project you will be
doing! Ask him or her about the necessary background studies on literature, and maybe
about first steps of activity: this is what you need to do over the summer.
In September 09, when you are back for your third year studies, things will become a little
hectic. The Initial Project Document will be due by the end of the 3rd week of Semester
one. Often, this document keeps students completely busy, forcing them to neglect their
other modules. Should you have done some work over the summer, however, you will
experience a nice and relaxed time. The initial document shall demonstrate that your
project has a clear focus, that you understand what the project is about, and, last but not
least, that you have a clear idea of what to do during your project. Thus, an initial
document usually states clear project aims. Then, it puts the project into context: Where is
it located within the big realm of Computer Science? What have other people already
accomplished in the area specific to your project? Additionally, you might want to prove
that you understand the methods and tools involved in your project: for instance, you first
describe the nature of the processing involved (e.g., handling XML documents), and then
discuss your choice of programming language (in our example, e.g., Java as it has with
JAXP an extensive library for processing XML), and give arguments for your choice
(continuing our example, you could describe the class javax.xml.parsers, give an example
of how to call it, where this example is protypically for what you plan to do in your
project). Finally, you provide a project plan, e.g. in the form of a Gantt chart. This all is
rounded up by a vast amount of references, which preferably should be text books and
scientific papers, rather than websites.
The Initial Document out of the way, the "real" work of the project begins: probably first
experiments with the implementation, and/or more background reading. This will give
you the material for your Project Presentation in Gregynog, end of November 09. The
student conference is usually just awesome, ask last year's students how things went.
Your contribution to this conference is a presentation of about 15 minutes
(12 minutes presentation + 3 minutes for questions). In the audience you will have your
supervisor or 2nd marker (should they be available) as well as other students of your year.
Your job is to convince them that you have, of course(!), the best project in the world and
that you are completely up to it. For the first point, you will have to discuss the
motivation behind your project and why this "naturally" leads to your project aims. For
the second point, the best way to convince the audience is to show first project results.
Some students will already have a running prototype - with limited functionality, of
course, however, they clearly have something running. In a more theoretical project it
might be possible to show the proof of a theorem. Or, should your project follow a top-
down software development model, you might want to show the first design of the
software architecture and discuss how this accomplishes the specified use cases.
The department usually supports your preparation for your talk at the Gregynog student
conference with a special lecture "How to cook up a presentation?" which will be held
about 2 weeks before the student conference.
After all this, the project does not have any formal demands on you for the rest of the
year. In January '10, you can sit your exams without the project interfering, however
nearly at the beginning of Semester 2, the Interim Document will be due, namely by the
end of week 2. At about half-time of your project, this document gives you the chance to
reflect on how you are doing: are you on track with respect to your project plan from the
5
Initial Document, or are things not going according to plan? In your document you
discuss this relation between plan and reality, and come up with a revised project plan - if
necessary. Furthermore, you give evidence of the progress you made. For instance, you
write a chapter summarising background studies on topics central for your project. Or,
you document a running prototype. Or you present collected design documents. Or you
give a long proof for a theorem. Or or or.
After all these writing exercises, finally it is time to produce your real "masterpiece", the
Project Dissertation.
Probably, it will be due at the end of week 10 of the 2nd term in your 3rd year. The good
news is: you can re-use all the documents, pictures and graphics that you have produced
so far. Thus, especially with all your writing experience at hand, it should not be too hard
to compile a 80 - 100 pages document. Its structure is in some sense simple: First, you
discuss the motivation of your project, name your project aims, give an overview on
related approaches, discuss the background of your project (what tools are you using,
what theoretical knowledge is needed to understand your approach). Then, you describe
what you have achieved - this part should be the largest part of your dissertation. In a
software oriented project, you simply provide a system handbook including the
requirement documents, the design of the software architecture, the coding principles for
the individual modules, the testing approach taken (including test documentation).
Finally, you take a step back and evaluate what you have achieved: did you really match
all your project aims? You also evaluate your project management: what went well within
your project, what parts caused trouble? A summary and outlook on possible future work
rounds up your dissertation. And, of course, you better have a nice long list of references
that prove that you did your homework looking up the standard literature.
Phew. Now your project is nearly done. Only the final presentation is missing, your
exhibition at the Project Demonstration Fair probably in the last week of the 2nd
Semester of your 3rd year studies.
Do you still remember this Fair? The 2009 fair stood nearly at the beginning of your
project life cycle, when you were about to choose a topic. However, now - in 2010 - it is
your turn, to show to the departmental public as well as to the local IT industry what you
have accomplished over a period of nearly one year. You will have a stand on your own,
where you can put up a poster, hand out fliers, have your business card at hand. Quite a
few students found their first job thanks to this fair. Anyway: your task at this fair is
simple to explain. Within the time-span of, say, 5 minutes you need to be able to explain
your project to a visitor of your stand: what it is about, what you have accomplished, what
makes your solution special. A project demonstration in the form of a running
programme might round up your explanation. To this end, the department will make sure
that there are enough computers available, but you might also want to bring a laptop of
your own.
Like for your Gregynog presentation, the department will arrange for an extra lecture
How to come up with a great poster? which will cover the graphical design principles
for posters as well as the technical question of how to actually produce it.
Well, that's about what you need to know right now. What remains is to wish you all the
best of luck with your project!
Markus Roggenbach, Chris Whyley
(3rd year project coordinators)
Document Structure
7
The Projects
Dr Arnold Beckmann
Dr. Beckmann's research is mostly concerned with applications of logic and
complexity to questions in computer science. Here are some possible projects,
further information can be found at http://www.cs.swan.ac.uk/~csarnold/Projects/
Dr Ulrich Berger
8
Dr Berger's research is concerned with applications of logic to computer science, in
particular functional programming. The following projects are about implementing
formal logic. A good introduction to the general logical background is provided by
the textbook
D. van Dalen. Logic and Structure. Springer 1994.
9
this technique is known as dynamic programming). In a lazy functional
programming language the effect of memoizing a function can be achieved very
elegantly by a type transformation, that is, a uniform modification of the
function's signature [3,4]. In this project the transformational memoization
technique shall be implemented in Haskell and applied to problems in, for example,
bio-informatics (protein sequence alignment).
[3] R. Hinze. Memo functions polytypically!. Proceedings of the Second
Workshop on Generic Programming, Ponte de Lima, Portugal, 2000.
[4] T. Altenkirch. Representations of first order function types as
terminal coalgebras. Typed Lambda Calculi and Applications, TLCA 2001.
Lecture Notes in Computer Science 2044, pages 8--21, 2001.
10
of the vehicle detection and recognition pipeline. (This project offers a very broad
scope and it can accommodate two project students).
Dr Parisa Eslambolchilar
Dr. Parisa Eslambolchilar’s are of research interest include dynamics, continuous
interaction and gestural interaction with small screen devices.
Dr Phil Grant
PWG-1: Solving Kakuro using Constraint Logic Programming over
Finite Domains
Kakuro is a puzzle which has recently become popular and appears in many daily
newspapers. Sicstus Prolog has a library (clpfd) for handling constraints over finite
domains. The constraint solver is very efficient and makes it ideal for tackling this
puzzle. The Kakuro solver will be written using the clpfd library and a UI will be
designed using PrologBeans (a Java interface to Prolog). An investigation into
generating Kakuro puzzles should also be undertaken and attempt to classify the
difficulty of the puzzle.
Dr Neal Harman
Neal Harman’s research interests include algebraic specification of hardware,
algebraic specification languages and environments, and formal specification
methodologies. Students wishing to discuss a project with Dr. Harman should talk
to him during the project selection fair or call on him in his office (Room 301).
Dr Mark W. Jones
This year I will offer projects on Ray Tracing with different areas of research /
emphasis.
The first part of each project will be to implement the technique of ray tracing as
demonstrated in the level 2 Graphics course. The primary areas of coding will be
13
the 3D viewing transform, an efficient triangle intersection test, the Phong shading
model, the use of an open source mesh reader, texture mapping and a kd-tree.
Dr Matt Jones
Matt Jones is interested in interaction design especially of mobile devices and
services. He is also keen to show how computer science can positively shape
communities and society.
In addition to the projects listed below, he would be keen to talk to students about
their own ideas in these areas. More info at: www.undofuture.com
14
MJ-4: Exertion interfaces
There has been a range of research into providing systems to support or to be driven
by exercise. I am interested in any proposals that build on such previous pieces of
literature. You might be interested in improving skill (say in running or surfing);
encouraging healthier lifestyles; or just providing new ways to have fun.
MJ-5: My Virtual Bookshelf
I download lots of reports, research articles etc. I’d love to have them visualised on
a large-screen display. I’d love even more to be able to interact with this
information – e.g. touching the display with a mobile device to take that document
away with me when I travel. This project will look at related research in this area
and develop and evaluate a prototype.
Dr Oliver Kullmann
Main fields of interest:
Development of the OKlibrary, an open-source library for "solving hard problems",
see http://ok-sat-library.org, which is about algorithms and implementations for
hard algorithmic problems, and all connected aspects (for example combinatorics or
software engineering), and applications of such methods to various areas
(verification or optimisation, for example).
Besides that, in the rare case that your are interested in mathematical foundations of
combinatorics, algorithmics, or complexity theory, there are plenty of opportunities
(which are perhaps better discussed personally).
Some concrete projects related to the OKlibrary:
15
do you dare to attack the 26-queens problems?! This project is about to study given
implementations, comparing them, and perhaps coming up with something better.
16
large random problems. We want to look into these algorithms, implement some
of them, and we want to experimenting with our and other implementations.
Generic projects:
OK-8: Algorithms and implementations for satisfiability problems
(several projects)
In CS-232 at the end we touched the satisfiability problem. Here is your chance to
get more involved in it, either from the practical or from a more theoretical side.
You could work on a certain aspect of the OKlibrary, or apply it to solve some
problems, or you might test its performance, try to analyse its cache behaviour, ...
If you found some interest in SAT, and you also don't shy away from C++, then
speak to me, so that we can find something for you. If you actually do shy away
from C++, then you might like programming in Maxima/Lisp, a very convenient
computer algebra environment. (Of course, more theoretical projects are also
possible.)
Dr Robert Laramee.
Robert S. Laramee is a member of the visual and interactive computing group.
His research is focused on to use computers and their graphic capabilities in order
to generate images, either automatically or interactively, from data, in order to gain
insight into that data.
Visualization is also a very application-oriented field of computer science. Thus,
any project undertaken with Bob will allow you to finally apply those theoretical
skills learned in lectures, improve your programming ability, and supply you with
other necessary skills that are directly applicable both in the real world and in
research. Visualization is also very rewarding because you can actually see the
results of your work and easily show it to others. The following projects are only a
sample of suggested topics. If you would like to discuss other possibilities, please
contact Bob directly. Note also that an effort will be made to tailor the projects in
order to suit the student's interests.
17
A new area of biological research is identifying and grouping patterns of behaviour
in wild animals by analysing data obtained through the attachment of tri-axial
accelerometers. As these recording devices become smaller and less expensive their
use has increased. Currently acceleration data are visualised as 2D time series plots,
and analyses are based on summary statistics and the application of Fourier
transforms. The goal of this project is to develop alternate visualisations of this
data so as to analyse, explore and present new patterns of animal behaviour.
Some possibilities include interactive spherical scatterplots, spherical histograms,
clustering methods, feature-based state diagrams, as well as the use of multiple, co-
ordinated linked views of the data.
This project studies the application of visualisation methods to accelerometry data
from animal movement. This project can involve collaboration with the Biology
department.
Dr Benjamin Mora
BM-1: Writing text with the 3D OpenGL library.
OpenGL is a powerful library, but does not provide the ability to write text inside a
3D window. The project will consist of finding the best way to write some text
inside an OpenGL window using OpenGL calls.
19
Peter Mosses’ research interests include algebraic specification languages,
advanced support tools (ASF+SDF, Maude, Stratego), and formal description of the
syntax and semantics of programming languages.
The project is to generate such parsers and interpreters using an advanced tool: The
Meta-Environment [http://www.meta-environment.org]. This tool can generate
parsers for general context-free grammars – in contrast to lex/yacc or Javacc, which
can handle only restricted kinds of grammars – and evaluate terms using rewriting
rules (more efficiently than Maude!). The project would be suitable for a student
having a good grasp of TPL and functional programming.
Dr Markus Roggenbach
Markus Roggenbach’s research interest is formal methods, from semantical
foundations through tool support to industrial applications. However, he supervises
projects on all sorts of other topics, including algorithmic topics, studies on
programming language, or industrial related projects.
Optical illusions have fascinated mankind ever since. A ‘magic moving image’ -
see Picture 1 - encodes a sequence of several images. Taking a partially transparent
overlay - see Picture 2 - makes a single image visible - see Picture 3. Moving the
overlay over the magic moving image shows apparent motion.
In the project, the student shall write a software that automatically encodes a
sequence of several images into a ``magic moving image'' and that simulates the
effect of the overlay.
Dr Anton Setzer
22
Andrei Alexandrescu has written a fascinating book “Modern C++ Design.
Generic Programming and Design Patterns Applied.”, Addison-Wesley, 2001.
In this book he documents the library Loki, which simplifies the development
of highly generative programs in C++. This library exploits the limits of the
template mechanism of C++ and is an example of highly advanced programming
techniques. The goal of this project is to study this library in depth and carry
out some small case studies in it.
Language requirements: C++. It is part of the project to learn C++ in depth.
Any software written should run under Linux and the Gnu compiler.
24
measure mathematical theories and therefore to determine the limits of what can be
proved in them.
An ordinal notation system is a set of terms denoting ordinals. The goal of this
project is to study simple ordinal notation systems and to prove the standard
conditions on ordinal notation systems (linearity and well-foundedness). This
project can be done purely theoretically, or we can start developing some of this
theory using the theorem prover Agda.
Language requirements, in case ordinal notation systems are implemented in
Agda: Agda version2. It will be part of the project to learn that language.
Agda can be installed under Windows, Macintosh and Linux.
Dr John Sharp
25
simple style analysis on programs. Ideally the project should be modular so that
different analyses could be easily added, and adaptations made for different
languages.
Dr Roger Stein
RDS-2: VoiceXML
What is VoiceXML? What applications are suited to the use this technology? What
factors need to be considered when developing the user interface for VoiceXML
application? What software development methodology is best suited to developing
a VoiceXML application? This project will investigate and review the current status
of VoiceXML technology and seek to answer some of these questions by
implementing a suitable example application. (cf. www.voicexml.org and
www.w3.org/Voice/Guide/)
A possible example application is a student information centre. We could have a
database to which lecturers could easily upload marks and comments for module
coursework, and also module examination results. Students could then access their
coursework marks using a mobile phone through your VoiceXML application.
RDS-8: LINQ
Microsoft has recently released the .NET Framework 3.5. LINQ (Language
Integrated Query) is a key component of that release and looks to be an important
development in tools to access database systems. It provides a common syntax for
accessing SQL data, XML data, object collections and other datasets. This project
will research the background to the language and develop an educational tool for
use by students on a database course. For example, an interactive LINQ execution
monitor or tool to learn LINQ. (See www.linqpad.net for an example.) The project
27
could alternatively concentrate more on LINQ's connections to functional
programming and the use of lambda expressions.
28
Mr Chris Whyley
CJW-1: Data Flow Analysis Tools for Java
ADA is a programming language often used for writing safety-critical systems, as
described in the module CS-313, High Integrity Systems. Spark Ada can be
regarded as a set of tools which statically analyse the flow of data within a legal
Ada program to ensure, for instance, that a function cannot have unexpected side
effects. The purpose of this project is to produce similar tools for the static analysis
of the data flow within Java programs. It is not necessary to learn Ada for this
project, but some research into the language will be required.
CJW-3: Stylometrics
Stylometrics are the means by which various texts are analysed for “style” so that
another piece of work, alleged to be by the same author can be attributed. This
project seeks to determine whether or not different programming “styles” can be
detected and utilised in Unfair Practice detection. Requires good marks in
Compilers - CS-218, and lots of use of jjtree, javacc etc.
CJW-4: DotPlots
DotPlots are a fun and interesting way to compare two pieces of text for
similarities. The idea of this project is to see whether they can be usefully used to
discover possible plagiarism in software, or find duplicated code (for re-factoring)
etc.
Mr Max Wilson
Web search related topics:
(good for people who might one day want to work somewhere like google!)
Dr Xianghua Xie
XX-1: Computer Vision - Object Tracking
This year I am looking for one student to take on a computer vision project. It will
involve developing a computer vision algorithm to track a single object in a video
sequence. The object of interest can be a person or a moving vehicle. Tracking is an
important problem in Computer Vision and has numerous applications, such as
sport analysis (football, tennis, swimming etc.), wildlife conservation, and
surveillance.
The student needs to be very good at programming and has good mathematical
skills. This project will use an open source library, OpenCV. OpenCV is similar to
30
OpenGL but for computer vision tasks. So, previous knowledge on OpenGL will be
helpful but not essential.
If you are interested in practical computer vision problems and keen to learn more
programming through practicing, this project can be a good opportunity to do so.
If you are interested in other computer vision and image processing problems (for
example medical image analysis) but not necessary tracking, please feel free to talk
to me.
Industrial Projects
Working with an industrial partner on a project gives students very valuable
experience and makes for very impressive reading on their CV. Students selecting
one of the following projects will be assigned a supervisor during the summer. They
will also be encouraged to contact their chosen company to discuss the project with
them. Such meetings will usually take place with the supervisor.
As industry works on tighter time schedules IR projects are sometimes withdrawn
by the companies.
Other industrial projects may arise over the summer, especially as a result of
placements. Any student who finds (early on) that their placement could lead to a
possible project that they may wish to continue as their third year project should
contact Mr. Chris Whyley as soon as possible.
31
shown that the use of a governance methodology such as PRINCE 2 does not
mitigate many of the causal factors behind IT project failure. By understanding the
nature of these causal factors and incorporating strategies to mitigate them,
organisations within Wales would benefit greatly from improved IT project delivery
capability and ROI. My companies mission is to improve IT project delivery
capability within welsh organisations and in particular those based within the
Swansea area. As a MSc Computer Science graduate of Swansea University I am
well aware of the departments excellent teaching and research capability and would
very much enjoy engaging the University once again. Best Regards Leyton Price
(Director) Dettica Consulting & Training Ltd .
The above would need to be available to multiple users, with the option of user
restrictions for accounts purposes. We would also like the database/system to be
available for staff to access remotely, as we frequently travel, and enabling our staff
the opportunity to view new/amended bookings would be a great benefit.
33
Some of the test and deployment modules may be in Visual Basic 6
34
chose what happens next in a story or change the scenery – the possibilities are
endless. You’d be creating your own performance shared with millions of others
and the performers themselves.
Live, interactive events for a global family.
There are many potential users – Rock Groups, Large-Scale Outdoor Events, Live
Theatre, Music Festivals and much more. And, of course, there are business
applications – getting your message to worldwide clients in an innovative and
irresistible way.
Coding Language
Probably Open-Source? JavaScript? What would work best?
IR-13: Shopfitter.com
Company Profile - Shopfitter is a business that gives buinesses the tools to set up a
secure e-commerce site. Employing a standard Windows interface, you are able to
create a web based product catalogue with 'fill the fields' simplicity. No web
development skills are required. Site properties such as styles, colours and fonts can
be set globally, along with your company's trading terms and details. Shopfitter
allows businesses to produce catalogues to be browsed easily by potential customer
Project Brief – is to develop an XTML editor and a database for the
shoppfitter.com The exact content of the project can be discussed with the
company in detail, please contact ITWales for this.
35
Company - Redhat
The intention of this project is to compare the information gathered at the system
call level (read/write/etc) from common applications with that gathered at the block
device level, to see what conclusions can be drawn about the performance of the
file system.The data can easily be gathered on any reasonably up to date Linux
system, the former with strace and the latter with blktrace. Therequirement is thus
to take the text files generated by these tools to create a Markov model of the
application's use of the file system. I can assist in providing traces from
"real"applications if and when required. There are then two possible extensions to
this basic project ,the first one is to write a program to emulate the application so
that its possible to reproduce the same I/O conditions but without the complication
of setting the application up. The second possible extension of this project is to
compare the I/O patterns generated by the application with the file systems I/O to
the block device in order to compare the efficiency of different file systems. An
efficient file system is one which generates fewer, large contiguous disk I/Os in a
mostly linear manner. Disk performance is very good for contiguous writes, but
poor when seeks are required, so a good filesystem tries to minimise the number of
seeks for a given amount of I/O.
IR-15: OpenStreetMap
Company – Redhat
There are a large number of possible investigations relating to the openstreetmap
mapping project which would be interesting. Probably one of the more important at
the moment is the scope for automatic means of detecting errors in the OSM
database. The OSM database consists of two parts. Firstly there is a collection of
GPS tracks, and secondly there is the vector map database itself. Either or both of
these two data sources could form the basis for a project, and in the case of the GPS
track database, there is also scope for automatic classification of tracks according to
the timing information.
36
Student Project Proposals
Students that have a particular interest that they think will make a good
third year project may propose that project. The project may have a
basis within a summer placement, personal interest or a commercial
use. Each proposal must contain:
A project title.
A brief description (about 300 words).
Specific hardware and software requirements, if any.
The main features of the project, such as links with industry, the reason
for personal curiosity, or the target market.
This proposal should be shown to members of staff who you think may
be interested in supervising such a project. You should obtain the
signature of any member of staff who is interested on the appropriate
part of the project selection form. In the absence of any staff
signatures, the project will not be considered. Students should bear in
mind that suggested projects offer students a very wide scope, and
most projects can be tailored to student interest.
Industrially Related Projects
In the light of a summer placement (either by our own Industrial
Placement Scheme, or your own means), you may have a substantial
problem which could make an interesting 3rd year project. During the
summer you should contact your supervisor (or Mr. C. Whyley) with a
proposal as above. If the supervisor is willing you may be allowed to
follow this new project.
Please note that the acceptance of a proposal is subject to some form
of quality control to ensure that the project meets the standards
required by the department.
University Policy on
Intellectual Property of Projects
As part of your degree course you will from time to time become
involved in projects within the University* or on placement with
outside companies or organisations. These projects are usually
regarded as an integral part of your studies and in most instances will
form part of your degree syllabus.
37
this respect in the same way as staff. Thus, Intellectual Property
belongs to the University in the first instance.
38
Department of Computer Science
Swansea University
Surname:
Other Names:
Student Number:
Section 1: CHOICES.
Please state up to seven choices in order of preference. You should select no more than
two projects from any one lecturer. Lecturers may give precedence to students who have
discussed projects with them.
39
Section 2: STUDENT'S OWN PROPOSAL(S).
Omit this section if you do not have your own proposals.
Signature(s) of Possible
Code Project Title
Supervisor(s)
OWN-1
OWN-2
Signature:
Date:
40