Senior Projects

Here is some useful information for my senior projects (maybe you are looking for the School site on IT/CS Senior Projects).

Quick links

Useful Information

Using Subversion

Subversion will be used for file storage and version control for project documents and code. The Subversion (often referred to as SVN) server is available at:
svn://sandilands.info/svn/

A nicely formatted web site that gives read access to files is at:
https://sandilands.info/viewvc/

For users, you need an SVN client. On Windows, TortoiseSVN is the defacto standard. It integrates into your Windows explorer shell. On Unix-based systems, the SVN command line tool is most commonly used. Ubuntu has for example an svn package.

A short introduction to using TortoiseSVN for Senior Projects is available.

Current Projects

EduNet: Educational Software for Networking Courses

Group Members
Buranin Sukonpradit, Apilux Pinsaikaew, Sarawut Khunyoatying
Year
2010
Keywords
animation, graphical user interfaces, client/server, web 2.0, Google APIs
Project Overview

SIIT students study several courses on data communications and networking, including ITS323, ITS327, ITS332 and ITS413. This project requires the development of software to demonstrate the concepts, algorithms and protocols learnt during these courses. For example, the software may include:

  • IP address calculator
  • Animation of protocol operations (e.g. Stop-and-wait flow control, ARQ)
  • Network diagnostic tools (e.g. ping, traceroute, nslookup) enhanced with graphical interfaces
  • Throughput and delay calculators for different technologies
  • Animation of routing protocols and algorithms (e.g. a network of hosts/routers is generated, and the animation shows how different routing algorithms find the best paths)
  • Comparisons of the effect of errors on video quality (e.g. show a video in one window, and show the same video in another video if 1% of packets are lost)
  • Animation of packet delivery through a computer/network

The intended users are students of data communications and networking courses. The software will be for educational purposes: it aims to make it easier for students to understand the concepts in networking. Hence the main focus will be using appropriate user interface techniques to explain concepts (e.g. animations, video, calculators). Where possible, the software should be interactive. The software may be standalone (eg. written in Java or other language) or web-based (e.g. AJAX plus Google APIs). The exact set of features is open for discussion and will be finalised in the design.

Resources

Annotated Lectures

Group Members
Tanyaporn Kittisirisawat, Pongpat Tunchuvong, Theerapong Vorrapittayaporn
Year
2010
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/AnnotatedLectures/
Keywords
AJAX, web 2.0, user interface design, instant messaging, collaborative/social software, education
Project Overview

Many educational institutions encourage students to use computers (e.g. laptops, mobile devices) during class to support their learning. One common use is for the students to view the lecture slides/notes on their own computer, instead of having a print out of slides. However, without good software, it is difficult to annotate the slides during the lecture. This project requires you to develop a system that allows annotation of slides during a lecture, as well as sharing of those annotations within the class.

Assume slides for a lecture are made available on a website so that during the actual lecture, students can view the slides via their laptop or mobile device. For example, they may be viewed as an interactive slide show. You must develop this website so that students can easily add annotations during the lecture. There are various factors you need to consider such as:

  1. What interface is appropriate for adding annotations during the lecture? (needs to be quick and easy)
  2. How can students update/edit their annotations outside of class?
  3. Is a lightweight interface needed, say for mobile devices? E.g. even if the slide cannot be view on a mobile phone, the student may still be able to add an annotation.

The website will maintain annotations from all students, and therefore can allow students (and lecturer) to see/edit annotations of other students. Hence you will need to consider:

  1. How to control the privacy of annotations? E.g. specifying who can view your annotations
  2. How to control editing of your and other peoples annotations?
  3. Can the lecturer delete annotations?
  4. Can a new annotation be broadcast to all students immediately?

Finally, you may add extra features to the website that support in-class learning and feedback. Some ideas include:

  1. Simple voting interface on each slide. E.g. Understand or Don't Understand. Students click on the appropriate button and that information is recorded by the website for feedback to the lecturer (either after the lecture or in real-time).
  2. Anonymous questions. A student types in a question, and the lecturer is alerted.
  3. Links and attachments. Allow students/lecturer to add additional links or documents for further information on a specific part of a lecture.
Resources
Related Work: Moodle | BigBlueButton
Technologies: SVG | HTML5 | SMIL

Coloured Petri Nets for Protocols

Group Members
Panithi Deepalard, Maneerat Phongsuteetaworn, Pakamas Theerachai
Year
2010
Keywords
theoretical computer science, formal methods, network protocols, functional languages, XML/XSLT
Project Overview

Coloured Petri Nets are a formal language for modelling distributed systems. Although they have a formal mathematical basis, in practice the graphical form is commonly used. That is, people create a graphical model of a system (similar to UML, state transition diagrams) and then analyse the behaviour and performance of that system. They have been widely used in analysis of Internet protocols, distributed algorithms and software, business processing modelling, transportation systems (such as trains), manufacturing and embedded systems, as well as biological systems.

A project group last year developed a CPN of a protocol for in-vehicle communications, publishing a paper at an international conference. There are some common ways for modelling different protocols in CPNs. In this project you will develop tools to support the modelling of protocols in CPNs, with the goal of automating the modelling process. After learning about Coloured Petri Nets and related tools (CPNTools and ASAP) you will have several tasks:

  1. Write software that automatically converts a state-table based description of an Internet protocol into a CPN of that protocol. As CPN Tools uses an XML format for its files, this will involve applying XSL Transmformations.
  2. Develop CPN models of common protocol mechanisms, such as retransmission or fragmentation, that can be re-used for specific protocols.

This project is suited to 2 or 3 students who are interested in learning something new. The new knowledge is excellent for students interested in studying a Masters (e.g. in Embedded Systems at SIIT/TAIST or in theoretical computer science in one of many European universities in this field).

Resources
Related Work: PetriWeb Technologies: XML, XSLT, CPN, CPN Tools

Vehicle Monitoring/Emergency Application

Group Members
Wathit Boonpluk, Jirarit Chantipporn, Sarun Boonkoonsak
Year
2010
Keywords
video processing, mobile phone application, emergency services, GPS, car applications, OBD-II, wireless communications
Project Overview

Last year a group developed an application for monitoring vehicle data (such as location via GPS, speed via OBD and surrounds via webcam) and in the case of an accident, sending selected data to an emergency services dispatch centre (for delivery to police, ambulance, fire, insurance). This project will continue in the same application. You have the option of improving the existing application (e.g. adding the ability to do intelligent processing of the video so that it can be transferred via GPRS/3G, collecting real vehicle speed data via a OBD-II device) and/or porting the application to a mobile platform (e.g. implementing the features on a mobile phone, so it no longer requires an in-vehicle laptop).

Resources

Past Projects

Wireless Mesh Networks

Group Members
Maythavute Poonpanitch and Natt Kitsawatpaisan
Year
2009
Keywords
wireless LAN, hacking, open source, network design and test, video applications
Project Overview

A wireless mesh network (WMN) comprises wireless routers that together form a network to provide Internet connectivity to mobile/fixed hosts. The wireless routers are normally fixed in position, but some may be mobile. This project involves deploying an experimental wireless mesh network and testing applications on the network.

Wireless mesh networks are used in scenarios when a wired backbone is unavailable or prohibitively expensive. Compared to wireless LAN hotspots and cellular networks, the access points/routers in a WMN do not require wired network connectivity - they forward traffic wirelessly towards a special gateway with (normally wired) connectivity to the Internet. An example application scenario is a community/village network where high speed Internet access is unavailable to all users. With 10's of wireless routers deployed within selected homes/businesses, 1 or 2 of which also have wired connections, all users within range of the wireless routers can access the shared wired Internet connections.

SIIT has about 40 Linksys WRT54GL wireless routers. The initial task of this project is to configure these routers using OpenWRT (or similar) so that WMN routing protocols such as OLSR can be used. The routers must then be deployed across SIIT Bangkadi campus to establish an experimental WMN testbed. Once deployed and tested, the next task is to experiment with different applications and configurations of the test-bed, analysing the performance limits of the network. An interesting application is the delivery of video over the WMN to multiple users (e.g. multicasting a DVD, streaming Youtube videos).

Two applications of interest for the WMN are:

  1. Network Management Application: a graphical interface to allow a network manager to view the network topology, and make changes to the wireless routers remotely
  2. User Access Application: end-user application to allow people to register and log-on to use the network.

Each group will be responsible for one of the applications.

There are various other tasks that could be completed using the testbed WMN. In addition, simulation analysis of the network (using OPNET Modeler) could be performed to consider scenarios with more than 40 nodes. The exact set of tasks will be agreed upon at the start of the project. Depending on the tasks chosen, there is a good chance to produce results that can be published in an international conference paper.

Links

Coloured Petri Net Modelling and Analysis of Distributed Systems

Group Members
Rattapat Taburan and San Choosang
Year
2009
Keywords
theoretical computer science, simulation, formal methods, network protocols, functional languages, something different!
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/Autosar/
Project Overview

Coloured Petri Nets are a formal language for modelling distributed systems. Although they have a formal mathematical basis, in practice the graphical form is commonly used. That is, people create a graphical model of a system (similar to UML, state transition diagrams) and then analyse the behaviour and performance of that system. They have been widely used in analysis of Internet protocols, distributed algorithms and software, business processing modelling, transportation systems (such as trains), manufacturing and embedded systems, as well as biological systems.

In this project you will:

  1. Learn what are Coloured Petri Nets
  2. Learn the software tools for creating models, such as CPNTools and ASAP
  3. Create a model one or more distributed systems (such as BitTorrent or other Internet protocols)
  4. Analyse the functional and performance aspects of the distributed system

This project is suited to 1 or 2 students who are interested in learning something new. The new knowledge is excellent for students interested in studying a Masters (e.g. in Embedded Systems at SIIT/TAIST or in theoretical computer science in one of many European universities in this field).

Links
Networks Wiki (login required)

WiFi-based Vehicular Internet Access

Group Members
Pornthep Chutinantvarodom and Sararat Klinkhajorn
Year
2009
Keywords
wireless LANs, mobile Internet, vehicular networks, 4G, web applications
Project Overview

Develop a web-based interface for car management and entertainment applications. The applications will be controlled by a wireless router inside the car. You will use a Linksys WRT54GL wireless router, running OpenWRT and with additional storage attached (e.g. for movies, music, maps). The wireless router runs a web server. You will develop the web interface (and backend applications) to allow users to access a variety of applications within the car, e.g.: play music and videos; access maps; view information about the car (fuel usage, distance). The wireless router can make use of an external EDGE/3G wireless card for Internet access, or use concepts of Delay Tolerant Networks (see Cabernet from MIT as an example of WiFi in the car).

Links

In-Car Mobile Internet

Group Members
Kajornpong Poolsawad, Shivnetra Singhsumransukh and Piraphol Kengsakul
Year
2008
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/InternetCar/
Project Overview
This project involves building a network that will provide Internet access to vehicles (cars, busses), and developing an in-car Internet application. The project will demonstrate future mobile Internet technologies in the following scenario: vehicles move through a city-wide wireless network (Wi-Fi, WiMax, 3G); each vehicle is equipped with an on-board mobile Internet gateway; devices inside the vehicle (cameras, laptops, phones, entertainment systems) access the Internet via the on-board gateway using Wi-Fi, Bluetooth and Ethernet.

You will use existing open source and low cost software and hardware to build a prototype mobile router and test-bed network. You will then develop an appropriate Internet application that can be used on the devices in the car. Some examples include: reporting accidents to police, insurance companies, repair centres; road traffic monitoring; in-vehicle gaming.
Links
Mobile IP: ACM Crossroads | RFC 3344 | Understanding Mobile IPv6 | Introduction to Mobile IPv6 | KAME (MIPv6 on BSD) | Cisco IOS
NEMO: IPv6 Network Mobility | RFC 3963 | NEMO Platform for Linux

Mobile Peer-to-Peer

Group Members
Thanaphat Limgitnuwat, Srisudarat Srisadee and Peng Zhou
Year
2008
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/MobileP2P/
Project Overview
Peer-to-peer applications (BitTorrent, Limewire, eMule, ...) are popular for sharing files between people. However, they are mainly used on PCs. Some attempts have been made to port these applications to mobile devices (e.g. phones). This project will develop a mobile P2P application, where mobile devices share files amongst themselves. That is, a mobile device can transfer files directly to neighbour mobile devices, without connecting to an existing Wi-Fi or GPRS network. The advantage of this is that users are no longer dependant on network operators (TOT, True, AIS, ...). This results in much cheaper (sometimes free) data access, and allows applications to work outside of Wi-Fi or GPRS coverage areas. Example applications include: mobile gaming; social applications (messaging, chat); and event and news notifications. You may choose the Mobile P2P application to focus on.

IP Home Entertainment System

Group Members
Chotika Angsurit, Yanisa Akkarawichai and Nont Posriprasert
Year
2008
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/HomeEntertainment/
Project Overview
Lets assume that future home entertainment devices (DVD players, HDD recorders, TVs, MP3 players, digital still and video cameras, gaming consoles, audio systems, etc.) will have an Internet Protocol (IP) interface. That is, the devices have IP addresses, and can be controlled (and in same cases, send/receive data) via an IP network. Your task will be to build an application that controls these devices. To demonstrate this application, you will need to create test-bed network with selected devices.

Travel Blog

Group Members
Athiwat Kshemasanta Na Ayudthya, Kitanan Sirilapphoonphon and Krailada Lamwilaikesorn
Year
2008
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/TravelBlog/
Project Overview
Many people maintain a blog about their travels, including holidays, business trips and living overseas. You will develop a web site that will: a) integrate the many desired features of a travel blog into one site; and b) make the blogging process simple to use, especially while away. For the first aim, you need to include features for the planning of the trip, the actual trip and post-trip. Examples include: Planning: Itinerary, budget, bookings, maps, bookmarks of web sites, languages, ...; The trip: blog, photo/video sharing, real-time map, expenses, driving log, ...; Post-trip: reviews, report generation (e.g. expense report). For the second aim, you must develop an easy to use interface. For the planning and post-trip features, a PC-based web interface is recommended. However, while travelling, a much easier interface (e.g via mobile phone) is needed. An example interaction may be: while travelling, take a photo of a location with mobile phone camera, and immediately post that on the web site, with an attached short commentary. The web site may then automatically display your location on a map, update your itinerary etc. You are encouraged to make use of existing web systems such as: content management systems, Google Maps, photo sharing sites, integration with other travel sites. The focus of your project will be integration of these into one web site, and implementing an easy-to-use interface.

SIIT OPNET Analysis

Group Members
Sake Valaisthien
Year
2008
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/SIITOpnet/
Project Overview
Create a model of the SIIT network in OPNET IT Guru. Collect statistics from the real SIIT network and use them to determine the appropriate traffic for the OPNET model.
Links
OPNET: OPNET
Packet Capture: Wireshark | tcpdump | SCRUB-tcpdump | Anonymization API | IPSumDump | tcpdpriv

Electronic Voting

Group Members
Kanit Armolwithawat, Thanad Rungrawi and Supaporn Taerungroj
Year
2007
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/Evoting/

Online File Storage

Group Members
Nuttapon Pichetpongsa, Phuviwats Leevoraphanchai and Rangsiman Tritripchartsakul
Year
2007
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/OnlineFileStorage/

Lab Network Management System

Group Members
Peachanan Rojwongsuriya, Rathanin Wujchalapong and Tavicha Ruangnukulkit
Year
2007
Subversion (SVN) Repository
https://sandilands.info/viewvc/Projects/LabNMS/

3D Action Role Playing Game

Group Members
Ekapop Techateerapreeda and Vorapoj Patamapas
Year
2006

Hanuman 3D Game

Group Members
Natt Leelawat and Krittapong Uaamporn
Year
2006

Return to: Course List | Steven Gordon's Home | SIIT