IS480 Team wiki: 2015T MADHOUSE Project Overview
Project Description | Project Scope | Technologies | The X-factor |
Project Overview
Our project aims to re-engineer and extend upon the current Pair Programming Log (PPLog) used by SMU School of Information Systems (SIS), for IS 203 - Software Engineering. Specifically, the areas that we are looking to work on are:
- Improving the user interface to provide users with an improved user experience
- Enable real-time collaboration on creating and maintaining the project schedule
- Integration with Git version control management
- Implementation of push deployment of students’ application to SMU SIS’s server using Linux Containers (LXC) for environment isolation
The main objective of this project is to re-engineer the PPLog system so as to improve the overall user experience for Software Engineering students.
As a secondary objective the new PPLog seeks to improve maintainability with documentation. This is done by ensuring that codes can be understood by the instructors and their teaching assistants, in addition these codes would be accompanied by documentation.
Motivation
PPLog’s initial goal was to provide students with greater ease in the management of their project schedule and more timely feedback on the progress of their project. However, after two cycles of Software Engineering (IS203), it has still yet to fulfill its goals fully. Chiefly, the main reason for this is the poor UX for the application. Throughout the two cycles of SE, students has constantly given feedback about the user unfriendliness of the application. Hence, a revamp of PPLog is initiated by the SE Teaching Team.
While the options for an extension of the existing code base is available to us, discussion with our sponsors has justified that a complete rewrite for the application will be more ideal for the following reasons:
A series of quick patches and “hacks” applied over the first cycle of SE has resulted in poor maintainability of the code base. Documentation was also unavailable for maintainers. Application was initially architectured to be based on Server-Side generated pages (JSP). However, later on in its development, AJAX functionalities were haphazardly mixed in. This resulted in tight coupling of the interface and the backend causing poor extensibility of the code base. Original application was based on Subversion as opposed to Git which the teaching team is moving towards.
Stakeholders
Sponsor | Lee Yeow Leong (Senior Lecturer) |
IS 203 - Software Engineering Teaching Team | Professor Rajesh Krishna Balan Professor Lee Youngki Ong Hong Seng Thiang Lay Foo |
End User | Students of the SE |
Supervisor | Professor Benjamin Gan |
Advisor | Geoffrey Goh (author of the current PPLog) |