|Semester||AY 2010-2011 Semester 1|
|Duration||19 May 2010 - 10 Dec 2010|
|Team members||Tommy Tien Dehui|
|Thia Kai Xin|
|Wong De Ming|
|Supervisor||Professor Li Ying Jiu|
|Sponsors||SMU Students' Association|
|Clients||Sarah Swee, Finance Secretary, SMUSA|
|Daniel Lee, Deputy Finance Secretary, SMUSA|
- 1 Project Overview
- 2 Project Details
- 3 Project Management
- 4 Change Management
- 5 Learning Outcome
Our team’s project seeks to improve the current SMUSA claim system. This claim system is used by the various CCAs (co-curricular activity) of SMU to claim money that they have expended for various CCA purposes (e.g. purchasing jerseys, renting training space, hiring coaching staff). This money has been granted to the CCAs as part of their biyearly budgets, which are given to them every semester. In order to achieve this, we must analyze the whole business process and find out which are the areas that can be optimized by leveraging on Information Technology (IT).
For the current claim system, submitting of claims is all done manually and is a paper-based process. The 2 main problems with the current system are that firstly, the overall claims process takes a total of 1 to 2 months, and secondly, it is hard to track where the bottleneck is and what is causing the delays.
Hence our main motivation for undertaking this project would be to (1) increase the overall speed of the claims process, (2) reduce the number of mistakes caused by manual work, and (3) to be able to accurately track the status of a claim and what stage of the process it is at.
Our project aims to design 4 modules:
- Budgeting module
- Claims module
- Administrative module
- Reporting module
Through the implementation of an online claims module, the user would be able to track the status of a claim and where exactly each claim is along the claim process and who was the last one to interact with the claim. This will make the overall claim process more efficient and effective, as the bottleneck can be pinpointed and immediate action can be taken to alleviate the delay. Thus, we are targeting a 33.3% increase in speed of operations to shorten the overall claims process to a total of 3 weeks.
With a budgeting module in place, the module would allow us to track past budgets of each CCA, and track how much of their budget were expended every semester. Hence, this will enable us to see which CCAs are maximizing their budgets, and which CCAs are spending much less than what they budgeted for. This would help in tracking the accuracy of budgeting by each CCA’s financial secretary and predict future trends and correlation between requested budget and expended budget. This in turn provides a gauge for SMUSA to help them to decide how much they should cut each CCA’s budget for the subsequent semester’s budget.
Although the previous FYP has come up with the beta version, however the system do not encompass the needs of the client. Thus, upon request from the client, we have decided to continue with the project and revamp the system. On top of revamping the system, based on the feedbacks given during beta version, there will be new addition to the user requirements. We hope to streamline our client’s business processes and optimizing it with IT solutions, thus meeting all the requirements requested by our client.
Our final takeaway for the sponsor would be a website that allows you to make online claims. It will be deployed on SMUSA’s server, and the type of web database management we will be using would be Oracle. At the same time, we need to provide a in depth analysis function to help SMSUA determine which club is over spending and under utilizing their resources. This will help in their budgeting and quickly sieve out the clubs which have been misusing their budget.
For this project, our team will work closely with SMUSA Finance Department, so as to better understand their existing claims process flows to develop our system. Once implemented, this system will bring more efficiency in student reimbursements and also a one-stop function for Finance, OSL and CCA clubs to track budgets effectively.
We seek to improve the efficiency of SMUSA’s claim system, and thus saving time, cost, and reducing manual labor and its resultant errors.
1. 25% increase in the speed of the overall claims process (i.e. new lifecycle time of 3 weeks)
2. Accurately track the status of a claim and what stage of the process it is currently at
3. Provide a more descriptive view of the expenditure of the individual clubs (via the budgeting and reporting modules)
|SMUSA Finance Secretary||Sponsor||Administers the development of the project|
|SMUSA Deputy Finance Secretary||Client||Point of contact for project requirements|
|Office of Finance||Client||Provides assistance in understanding the claiming process|
|Director, Office of Student Life||Project Continuity Support||Provides continuity support after project is handed over|
|SMU Communications and IT Helpdesk||Technical Support||Provides assistance to the integration of system with SAP|
|Prof. Li Ying Jiu||Supervisor||Advises and supervises project team|
- Java Servlets & AJAX Framework: The previous group used Ruby On Rails (ROR). However, there is no continuity in the project as the main users change yearly and programmers with ROR background are rare. Hence, we will start from scratch and will implement the Java/AJAX framework, coding in model 2 (model-view-controller design pattern).
- Adobe Dreamweaver CS5
- Microsoft Visio
- Unfuddle: Project management solution that encompasses Subversion hosting and implements tickets to track our progress with program bugs and milestones to track achievements
- Oracle 11G: Oracle offers superior, out the box enterprise software integration, better performance (especially for larger database) and better security features than MySQL.
- UNIX Server: Our client’s server is running on Unix
Analyzing current system
This project is a continuation from previous FYP group. The project was handled over with Budgeting and Claims module completed. However, after discussing with our client (SMUSA), we realized that the Claims module needs to be re-analyse again as it did not fulfill certain requirements of the business process. Moreover, after exploring the current status of the applications, we felt that there was no continuity in the project as the main users changes every year and it is rare to find a programmer with Ruby on Rails background.
Below is a summary of the problems we have identified:
|#||Business Needs of our Client||Solutions Implemented by Team uClaim|
|1||Coding was not done using frameworks taught in our SIS modules (e.g. Java)||Coding will be done using Java and AJAX framework|
|2||The UI (User Interface) and paper-based nature of the entire process was not very easy to use.||UI will be revamped to increase userability and to be more simplistic and concise in nature|
|3||To track the accuracy of budgeting by each CCA’s financial secretary and the ability to predict future trends and correlation between requested budget and expended budget.||Reporting module will aid in the decision making process of granting the subsequent semester’s budget for each CCA.|
|4||To track previous records of past transactions (e.g. for reference, view past budget utilization rates) and to move away from paper-based storage methods.||Archiving of records function will be introduced and storage function would be via an online database.|
|5||Claims module that contains all ANNEX forms (Previous group’s claims module only included 1 ANNEX forms and did not include other ANNEX and did not complete ANNEX codes ).||A fully-functional Claims module that includes all ANNEX forms and implements ANNEX codes.|
Methods of Collaboration
- Google Docs
Roles and Responsibilities
|Daryl Lee||Security Analyst / Developer||*Responsible for secure connection during login and access of information.
*Design the security program
*Secondary role as Developer for Claims module
|Hendry Poh||User Interface Designer / Web Developer||*Design the layout for best user experience and usability.
*Implement a rich Web Experience on the portal
|Mark Voon||Documenter / Developer||*Management of documents and diagrams
*Secondary role as Developer for Budgeting Module
|Thia Kai Xin||Database Administrator / Developer||*Setting up of database and scripting of SQL queries
*Secondary role as Developer for Claims Module
|Tommy Tien Dehui||Project Manager||*Project management
*Managing stakeholders and main liaison to client
|Wong De Ming||Quant Analyst / Developer||*Responsible reporting system
*Provide an in-depth algorithm for the analysis of data collected
*Secondary role as Developer for Report module
|Version||Description of changes||Changed by||Date|
|v1.0||Initial requirements gathered||Tommy Tien||18 June 2010|
Business Process Diagrams
User Interface Designs
Updated as of 26th September 2010
|Number||Risk Category||Risk Description||Impact||Risk Level||Mitigation Plan||Comments|
|1||Project||One of our group members will be in China for the entire summer (May-August) due to his internship commitments.||1. Difficult to communicate with him during the initial 1-2 weeks of his internship stint as he needs time to settle down and set up his internet connection and workstation.
2. He will not be physically present for our meetings.
|Medium||1. Record detailed minutes of every meeting so that he can refer to them and update himself regularly.
2. Implement the use of Skype so as to be able to have verbal and visual communication with him. This will provide him a virtual presence during our meetings and he will still be able to provide his input and comments during our meetings.
|This risk has been eliminated as all our group members are back in Singapore.|
|2||Project||Scheduling a common meeting time with our clients and stakeholders.||1. With our whole project team busy with classes and CCA (co-curricular activities) commitments, it is quite hard to find a common meeting time (i.e. weekday evening / night) to meet our clients and stakeholders.||Medium||1. Work out a schedule well in advance and block out those dates to ensure full attendance for the meetings.
2. If advanced booking (e.g. at least 1 week in advance) of meeting dates is not possible, then we will cater to the clients and stakeholders and attend the meeting with as many group members present as possible.
|This risk has been greatly minimized via the mitigation plan.|
|3||Project||Possibility of the server experiencing prolonged periods of downtime.||1. The server may experience advanced technical issues that would require prolonged periods for maintenance and repair work to be carried out.||High||1. Schedule frequent server maintenance checks to monitor load bearing updates and to troubleshoot any problems before they escalate out of proportion.
2. Maintain daily interaction with the server to ensure that the team has a highly accurate server status update.
3. Use personal server (which we would have more control over as compared to the SMUSA server)
|This risk has been kept in check via the mitigation plan.
However, due to feasibility constraints (e.g. cash, lack of suitable location), the use of a personal server is not possible.
|4||Product||For our reporting and analysis of the budget (granted / expended), we shall be using a business intelligence application called Crystal Reports to aid us (via graphical designing of report layouts and data connections)||1.This application is totally new to all of the group members. Hence, there will be a steep learning curve to conquer in order to fully master and utilize this application for our analytical work.||Medium||1.Invest a large amount of time and effort to study and use this application, so as to properly incorporate all of project data to enhance our level of analytical work and improve the analysis section of the Claims System.||This risk has been kept in check via the mitigation plan.|
|5||Product||Implementation of the Oracle Database to use as our database management system.||1. None of our group members possess prior working experience with the Oracle Database. Hence, there will be a steep learning curve to conquer in order to fully master and utilize this database management system.||Medium||1. Invest a large amount of time and effort to study and use this application, so as to maximize the use of our database management system.||This risk has been eliminated as all the group members have installed the Oracle Database and have experienced working with the database (e.g. inserting and retrieval of data from the database).|
|6||Product||Implementation of the AJAX Framework to create an interactive web application||1. Only one of our group members possesses prior working experience (minimal) with the AJAX Framework. Hence, there will be a steep learning curve to conquer in order to fully master and utilize this framework.||Medium||1. Invest a large amount of time and effort to study and use this application, so as to produce a proper and interactive web application.||This risk has been greatly minimized as the numerous weeks’ worth of interaction with the AJAX Framework has allowed us to familiarize ourselves with it.|
|7||Business||Our Claims System would be required to eventually be integrated with the Office of Finance’s (OFIN) SAP Finance Module. Proper integration is required to ensure longevity of the Claims System.||1. None of our group members possess prior working experience with the Office of Finance’s (OFIN) SAP Finance Module. Hence, there will be a steep learning curve to conquer in order to fully master and utilize this SAP Finance Module.||High||1. Invest a large amount of time and effort to ensure proper integration with the SAP Finance module is possible.||This risk is still apparent as we still have not had much exposure to the OFIN SAP Finance Module.|
|8||Product - Specific||As our online Claims System is being created from scratch (not merely just an improvement from a previous online Claims System), the group’s interpretation of functions and process flow may differ from our clients’ and stakeholders’ interpretation.||1. Our perception of an effective process flow may differ from the current process flow.
2. We may suggest an alternative approach to a certain current process flow. However, the clients and stakeholders may have an opposing view and a different alternative approach.
|Medium||1. Schedule frequent meetings with the clients and shareholders (e.g. fortnightly) to ensure that our team’s ideas and thought process are align to that of our clients and shareholders. This will keep the process flow on track and ensure that our clients and shareholders will be satisfied and agreeable with our end product.||This risk has been eliminated as our regular interaction with the clients and shareholders has ensured that our work is on the right thought process.|
|9||Product-Specific||Users may take a significant amount of time to migrate over to this new system.||1. Users would require time to learn how to use this new system and understand all the system's functionalities.||Medium||1. Arrange for short introductory courses to teach the users how to make optimum use of the new system.
2. Include a FAQ section and documentation/help text to guide the users along as they use the new system.
|This risk has been kept in check via the mitigation plan.|
|10||Product-Specific||This large-scale project will involve large amounts of information (data and files).||1.An effective storage and tracking process will be required to communicate and share information with one another.
2.Many versions of data will be created and all the group members should possess the most recent version for each set of data. We should also be able to backtrack to previous versions of data in case we need to refer to an old set of data.
|Medium||1.Implement the use of Dropbox and not rely on the use of thumb drives and emails to send files and information. Dropbox creates a local shared folder onto each of our Desktops, enabling easy sharing and retrieving of files with one another.
2.By updating your own Dropbox folder on your Desktop, you will be able to update your versions of data to the most updated versions. This ensures that all group members are equally informed and are working with the most updated resources. Dropbox allows one to backtrack and retrieve previous versions.
|This risk has been eliminated through the continued updating via Dropbox and Tortoise Subversion.|
3 Risk levels: low, medium, high
4 Categories: product-specific, project, product, business
1. Product-Specific Risks:
affects the factors that are associated with the product being developed. eg: availability of testing resources, storage
2. Project Risks:
affect the project schedule or resources
3. Product Risks:
affects the performance quality of software. eg: use of a specific framework [e.g. Java(Ajax Framework) vs Ruby on Rails]
4. Business Risks:
affects the viability of the software. eg: integration problems with the OFIN SAP module.
Claims module overlook
Add new event
Add new user
A project management solution that encompasses Subversion hosting and implements tickets to track our progress with program bugs and milestones to track what we achieved
This one stop solution is much more efficient than alternate solutions.
- Subversion hosting: Sourceforge
- File sharing: Dropbox
- Project management: Google docs
Unfuddle Tickets & Activities
Unfuddle Milestones Tracker
Unfuddle Ticket Tracker
|Milestones||Description||Intended End Date||Actual End Date||Remarks|
|1||Finalize requirements with client||16 Jun||16 Jun||Completed|
|2||Complete training||16 Jul||6 Aug||Completed|
|3||Iteration 1 (User Interface and Database setup)||6 Aug||11 Aug||Completed|
|4||Prepare prototype||14 Aug||14 Aug||Completed|
|5||Presentation of initial project to client||12 Aug||12 Aug||Completed|
|6||Iteration 2 (Administrative Module release)||7 Sep||17 Sep||Completed|
|7||Mid term review||30 Sep||30 Sep||Completed|
|8||Mid term UAT||8 Sep||11 Oct||To Be Started|
|9||Iteration 3 (Budgeting Module release)||30 Sep||30 Sep||Completed|
|10||Iteration 4 (Claims Module release)||19 Oct||To Be Started|
|11||Iteration 5 (Reporting Module release)||10 Nov||To Be Started|
|12||UAT||12 Nov||To Be Started|
|13||Documentation and end-user training||15 Nov||To Be Started|
|14||Final review||16 Nov||To Be Started|
- Functional: Issues tracking
We will be using a web application called unfuddle
Refer to the Unfuddle screenshots (in the above section) for a more detailed overview.
1. Meeting 1: Minutes for 10 May 2010
2. Meeting 2: Minutes for 19 May 2010
3. Meeting 3: Minutes for 28 May 2010
4. Meeting 4: Minutes for 17 June 2010
5. Meeting 5: Minutes for 1 July 2010
6. Meeting 6: Minutes for 8 July 2010
7. Meeting 7: Minutes for 11 July 2010
8. Meeting 8: Minutes for 17 July 2010
9. Meeting 9: Minutes for 18 July 2010
10. Meeting 10: Minutes for 22 July 2010
11. Meeting 11: Minutes for 16 August 2010
12. Meeting 12: Minutes for 22 August 2010
13. Meeting 13: Minutes for 8 Sept 2010
14. Meeting 14: Minutes for 15 Sept 2010
15. Meeting 15: Minutes for 27 Sept 2010
16. Meeting 16: Minutes for 1 October 2010
17. Meeting 17: Minutes for 11 October 2010
18. Meeting 18: Minutes for 28 October 2010
19. Meeting 19: Minutes for 4 Nov 2010
20. Meeting 20: Minutes for 17 Nov 2010
21. Meeting 21: Minutes for 24 Nov 2010
1. Client Meeting 1: Minutes for 12 May 2010
2. Client Meeting 2: Minutes for 2 August 2010
3. Client Meeting 3: Minutes for 11 October 2010
4. Client Meeting 4: Minutes for 12 November 2010
1. Supervisor Meeting 1: Minutes for 15 July 2010
2. Supervisor Meeting 2: Minutes for 3 Aug 2010
3. Supervisor Meeting 3: Minutes for 30 Sep 2010
|For the design of the web page and user interface, we initially intended to use NetObjects Fusion and Microsoft Expression||1. Incompatibility issues when trying to manually manipulate the code for the backend logic of NetObjects Fusion.
2. Microsoft Expression only addresses the user interface portion of our requirements
|Switched to Adobe Dreamweaver CS5 as it provides us a more holistic solution, allowing us to address both the web page and user interface requirements either by designing visually or via direct coding.|
|SMU’s Unix server (production environment) is rather complicated and taking longer than planned to master (2 weeks instead of 1 week).||Time was needed to resolve host and IP address.||Consult Lee Yeow Leong (SIS Course Instructor) for guidance.|
|Change requirement by the client after our client update session: Audit Trail for claims made by CCA’s need to be recorded. Thus, the delete functionality for CCA’s, Events and Users should rightfully be implemented during the Reporting Module.||The audit trail has not been implemented yet and thus CCA’s, Events and Users should not be deleted from the database. Instead, the entries should be logged in a report.||Implement audit trail for deleted CCA’s, Events and Users by extracting the relevant data into a log file. This log file can then be generated into a report file for consolidation purposes.|
|Oracle Database 11G is not compatible with our school’s UNIX server.||Our school’s UNIX server doesn’t support this edition of the Oracle Database.||Downgrade to oracle database 10G express. However, this isn’t an issue as we don’t require the new advanced features that are exclusive to the Oracle Database 11G version.|
|Changed the user interface design (as compared to our initial wireframe design)||Upon gathering comments about the initial wireframe design, we decided that userability could be increased by changing from the design of having a horizontal taskbar (with the main page below).||Implemented the design of a left-sided taskbar (with the main page to the right).|
Midterm Change Management Report
|No.||IS480 – Final Year Project||Core competencies which address the Outcomes|
|1||Integration of business & technology in a sector context|
|1.1 Business IT value linkage skills||YY||
|1.2 Cost and benefits analysis skills||Y||
|1.3 Business software solution impact analysis skills||YY||
|2||IT architecture, design and development skills|
|2.1 System requirements specification skills||YY||
|2.2 Software and IT architecture analysis and design skills||YY||
|2.3 Implementation skills||Y||
|2.4 Technology application skills||N||-|
|3||Project management skills|
|3.1 Scope management skills||Y||
|3.2 Risks management skills||YY||
|3.3 Project integration and time management skills||Y||
|3.4 Configuration management skills||Y||
|3.5 Quality management skills||Y||
|4||Learning to learn skills|
|4.1 Search skills||Y||
|4.2 Skills for developing a methodology for learning||Y||
|5||Collaboration (or team) skills|
|5.1 Skills to improve the effectiveness of group processes and work products||Y||
|6||Change management skills for enterprise systems|
|6.1 Skills to diagnose business changes||N||-|
|6.2 Skills to implement and sustain business changes||N||-|
|7||Skills for working across countries, cultures and borders|
|7.1 Cross-national awareness skills||N||-|
|7.2 Business across countries facilitation skills||N||-|
|8.1 Presentation skills||Y||
|8.2 Writing skills||Y||
YY: This sub-skill is the main focus of the module
Y: This sub-skill is partially covered by the module
N: This sub-skill is not covered by the module
Daryl: I have learnt that the work is not truly over when you have completed your own assigned piece of work, for the key is a fully functional integrated model. So it is important to do integration at an early stage and as an iterative process, so as to ensure a smooth integration process where bugs and conflicts can be spotted early and rectified quickly.
De Ming: I learnt that revising materials learnt from past modules was especially useful to our project as some functionalities (e.g. bootstrapping of a CSV file to a database) and logic greatly aided me in designing certain modules (e.g. uploading of budget) of our project. So it definitely pays off to not forget what you previously learnt!
Hendry: As the AJAX framework is entirely new to me, designing an effective user interface takes a large amount of time, experimentation, and research work. Hence, it is important to start designing early in order to be able to consider and implement various design considerations.
Kaixin: The initial learning curve for mastering the Oracle database was rather steep and substantial time was required to read up on forums and to experiment with the database and connecting it to our web interface. Thus, I learnt that developing and maintaining the database was an ever-ongoing learning process as whenever we updated or added a functionality, further tweaking of the codes (e.g. SQL) and connection logic was required.
Mark: Although the project has many different segments (e.g. coding of modules, user interface, project management, documentation), I have learnt that it is imperative that everyone knows the progress of each segment, regardless of whether or not you are assigned to that particular segment. Hence, it is important to have up-to-date and regular communication with group members for status updates and so that everyone has a clear picture of the overall progress.
Tommy: With a bigger project scale and a more complicated client requirement set as compared to the Software Engineering project, effective project management has become even more critical and hard to execute to ensure a successful project.