Difference between revisions of "IS480 Team wiki: 2011T1 Ascension/Ascension Finals Wiki"
Wk.peh.2009 (talk | contribs) |
Ct.ng.2009 (talk | contribs) |
||
(40 intermediate revisions by 5 users not shown) | |||
Line 36: | Line 36: | ||
a) Progress report UI | a) Progress report UI | ||
− | b) | + | b) Operations Tracking App Contingency Plan (master resend and connection switch off) |
Line 44: | Line 44: | ||
− | These completion gives us great confidence to add more to our current traffic management module. We also continue to get feedbacks on | + | These completion gives us great confidence to add more to our current traffic management module. We also continue to get feedbacks on Operations Tracking App UI and will continue to improve towards the next iteration. |
Line 51: | Line 51: | ||
{| class="wikitable" cellpadding="15" style="border: 3px solid black;" | {| class="wikitable" cellpadding="15" style="border: 3px solid black;" | ||
! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ||
− | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white"> | + | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Operations Tracking App<font> |
|- | |- | ||
Line 89: | Line 89: | ||
- Instant Messenger | - Instant Messenger | ||
− | - | + | - Operations Tracking App User Interface |
|- | |- | ||
Line 108: | Line 108: | ||
<u>Iteration 9 – 16th Oct to 25th Oct</u> | <u>Iteration 9 – 16th Oct to 25th Oct</u> | ||
− | In iteration 9, our core to do list is to settle the operations report (which is a core functionality) and to get Instant messenger on | + | In iteration 9, our core to do list is to settle the operations report (which is a core functionality) and to get Instant messenger on Operations Tracking App working. As this is a crucial period of development (before the SMU period closes in on project submission and presentation), we gave our best shot by pushing our development efforts to the maximum. We completed Operations report, Instant messenger on Operations Tracking App and as well our traffic management algorithm were ready, completing more than we have targeted. We have also created the pre-maze view screen to inform the next batch when they are able to go into the station. |
− | By end of this iteration, we have completed everything that is on the management portal, leaving the final touch up on | + | By end of this iteration, we have completed everything that is on the management portal, leaving the final touch up on Operations Tracking App User interface which was swapped with the designing of our poster. |
{| class="wikitable" cellpadding="15" style="border: 3px solid black;" | {| class="wikitable" cellpadding="15" style="border: 3px solid black;" | ||
! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ||
− | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white"> | + | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Operations Tracking App<font> |
|- | |- | ||
Line 153: | Line 153: | ||
<font color="red">- Instant Messenger</font> | <font color="red">- Instant Messenger</font> | ||
− | - | + | - Operations Tracking App User Interface |
|- | |- | ||
Line 162: | Line 162: | ||
<u>Iteration 10 – 26th Oct to 11th Nov</u> | <u>Iteration 10 – 26th Oct to 11th Nov</u> | ||
− | In iteration 10, our core do to list is to ensure that our | + | In iteration 10, our core do to list is to ensure that our Operations Tracking App User interface is totally revamped. After which vigorous testing on performance and functionality before we head for our UAT with our clients and facilitators. After revamping the UI, we started the UAT which further uncovered some bugs. During the testing, little suggestions and improvements were given as our clients were all very satisfied with the end to end maze optimization. The entire process now seems sleeker and time taken was reduced much to our clients satisfaction. In this iteration, we also managed to implement speech to text function, as we have some spare time on our timeline. |
{| class="wikitable" cellpadding="15" style="border: 3px solid black;" | {| class="wikitable" cellpadding="15" style="border: 3px solid black;" | ||
! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ||
− | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white"> | + | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Operations Tracking App<font> |
|- | |- | ||
Line 204: | Line 204: | ||
<font color="red">- Instant Messenger</font> | <font color="red">- Instant Messenger</font> | ||
− | <font color="red">- | + | <font color="red">- Operations Tracking App User Interface</font> |
|- | |- | ||
Line 220: | Line 220: | ||
{| class="wikitable" cellpadding="15" style="border: 3px solid black;" | {| class="wikitable" cellpadding="15" style="border: 3px solid black;" | ||
! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Management Portal</font> | ||
− | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white"> | + | ! align="left" width="240px" style="background: #4C4646" style="border: 3px solid black; background: #4C4646 "| <font color="white">Operations Tracking App<font> |
|- | |- | ||
Line 252: | Line 252: | ||
<font color="red">- Tracking Modules</font> | <font color="red">- Tracking Modules</font> | ||
− | < | + | <font color="red">- Speech to Text </font> |
<font color="red">- Swype</font> | <font color="red">- Swype</font> | ||
Line 258: | Line 258: | ||
<font color="red">- Instant Messenger</font> | <font color="red">- Instant Messenger</font> | ||
− | <font color="red">- | + | <font color="red">- Operations Tracking App User Interface</font> |
|- | |- | ||
Line 287: | Line 287: | ||
{| class="wikitable" style="text-align:left;background:SeaShell" | {| class="wikitable" style="text-align:left;background:SeaShell" | ||
|- | |- | ||
− | | | + | | |
+ | '''1. Enhanced Operations Tracking Application Performance''' | ||
+ | |||
+ | Reduce scanning timing by 75%. From 1 min to 15 seconds (for a group of 4). | ||
+ | |||
+ | Kept in-processing and out-processing timing within 3 and 5 seconds respectively. | ||
+ | |||
+ | Total administration time required reduced from 3 minutes to 30 seconds. | ||
+ | |||
+ | |||
+ | [[Image:Ascension ScanUI.jpg]] | ||
+ | |||
+ | |||
+ | '''2. Operations Tracking App User Interface''' | ||
+ | |||
+ | Interactive user interface with easy navigation. | ||
+ | |||
+ | Switch being commonly used modules which expedites tracking procedures. | ||
+ | |||
+ | Ease of switching and checking of instant messenger. | ||
+ | |||
+ | Overall background nature team with engraved buttons. | ||
+ | |||
+ | |||
+ | [[Image:Ascension Android1.jpg]] | ||
+ | |||
+ | [[Image:Ascension Android2.jpg]] | ||
+ | |||
+ | |||
+ | '''3. Self developed customized Instant Messenger''' | ||
+ | |||
+ | Communication between Traffic Manager and Facilitator – never as easy before. | ||
+ | |||
+ | Communication through messages initiated by Traffic Manager or System. | ||
+ | |||
+ | Simple to type, easy to respond. | ||
+ | |||
+ | Fully designed and customized by us. | ||
+ | |||
+ | |||
+ | [[Image:Ascension IM.jpg]] | ||
+ | |||
+ | |||
+ | '''4. Report Algorithm and Generation''' | ||
+ | |||
+ | Report can be generated as soon as a student step out of the maze. | ||
+ | |||
+ | Sleek integration of report configuration and BIRT tools. | ||
+ | |||
+ | Complicated algorithm to generate results for student report. | ||
+ | |||
+ | |||
+ | [[Image:Ascension Report1.jpg]] | ||
+ | |||
+ | [[Image:Ascension Report2.jpg]] | ||
+ | |||
+ | |||
+ | '''5. Traffic Management Algorithm''' | ||
+ | |||
+ | Simple and easy to understand algorithm. | ||
+ | |||
+ | Visibility of students within stations. | ||
+ | |||
+ | Decision support tools to highlight crisis maze management to Traffic Manager. | ||
+ | |||
+ | |||
+ | [[Image:Ascension TM2.jpg]] | ||
|} | |} | ||
− | |||
===Project Management=== | ===Project Management=== | ||
Line 317: | Line 382: | ||
|style="border: 3px solid black;"| 1. Requirements gathering | |style="border: 3px solid black;"| 1. Requirements gathering | ||
− | 2. Mock up on | + | 2. Mock up on Operations Tracking App and Management Portal |
|style="border: 3px solid black;"| 28th May | |style="border: 3px solid black;"| 28th May | ||
Line 403: | Line 468: | ||
- Report UI | - Report UI | ||
− | - | + | - Operations Tracking App contingency plans |
2. Instant Messenger on Management Portal | 2. Instant Messenger on Management Portal | ||
Line 416: | Line 481: | ||
|style="border: 3px solid black;"| 9 | |style="border: 3px solid black;"| 9 | ||
− | |style="border: 3px solid black;"| 1. | + | |style="border: 3px solid black;"| 1. Operations Tracking App UI |
2. Operations Report | 2. Operations Report | ||
− | 3. Instant Messenger on | + | 3. Instant Messenger on Operations Tracking App |
4. Traffic Management Algorithm | 4. Traffic Management Algorithm | ||
Line 439: | Line 504: | ||
3. Speech to text function | 3. Speech to text function | ||
− | 4. | + | 4. Operations Tracking App Interface Enhancement |
|style="border: 3px solid black;"| 11th Nov | |style="border: 3px solid black;"| 11th Nov | ||
Line 467: | Line 532: | ||
[[Image:Ascension FinalScheduleMetric.png|Final Schedule Metric]] | [[Image:Ascension FinalScheduleMetric.png|Final Schedule Metric]] | ||
− | + | Our first major road block comes in iteration 5, where we slipped our project timeline and was reminded that our scope was too wide and complex to follow. | |
+ | |||
+ | |||
+ | We made some shift, dropped some functions and got back on track in iteration 6 and 7. | ||
+ | |||
+ | |||
+ | On the surface, it looks like we have a pretty smooth project management, with almost everything on-time. However, much effort has gone behind the scenes to ensure that we met our timeline. We all have worked together since year 1 semester 1. We knew each other strengths, weaknesses and working style. Together with our common goals, whenever we failed to hit our timeline, we will immediately increase meeting frequently to make sure that we are on time. Constant “nagging” and “nudging” or in better phrasing, hard work is the key to us keeping our schedule on track. | ||
+ | |||
+ | |||
+ | We do not have any fantastic graphs or charts to manage our schedule and project. But we have the heart and spirit to ensure that we keep to our schedule and eventually to our goals of IS480. | ||
Line 481: | Line 555: | ||
[[Image:Ascension FinalBugScore.png|Final Bug Score]] | [[Image:Ascension FinalBugScore.png|Final Bug Score]] | ||
− | + | After the troubles in iteration 4/5 has blew past, we have always kept our bugs within control. Whenever the bug score increases, we will always re-prioritize and schedule more bug fixing time and meet up more often. After mid-terms, the bulk of the bugs that happens has to do with integration of Operations Tracking App and the portal. We realized the trend and put forward a plan to meet up more often for end to end testing and find out the integration issues that we were facing. With that, we managed to keep our bug portion in control. | |
Line 495: | Line 569: | ||
The following are ranked accordingly to the level of difficulty. | The following are ranked accordingly to the level of difficulty. | ||
− | 1. Pushing of automated messages from the backend portal to | + | 1. The need to integrate Instant Messenger with Traffic Management and Operations Tracking Application with codes in Java, Javascript, AJAX, PHP as well as to synchronize with two servers, which one of them is controlled by an external vendor, and the Android devices. |
+ | |||
+ | 2. Pushing of automated messages from the backend portal to Operations Tracking Application. This includes the difficulty in trying to understand the push architecture of the technology, manipulating the data received and troubleshooting integration issues. | ||
+ | |||
+ | 3. Develop report alogrithm and using BIRT technology to produce intuitive and flexible charts. | ||
+ | |||
+ | 4. Algorithm behind the overall maze lapse timing to push suggestions to Traffic Manager. | ||
+ | |||
+ | 5. Difficulty in retrieving the alarm set in database, configuring the alarm countdown timer and elapsed time in different pages and getting them to sync with each other. | ||
+ | |||
+ | 6. Flexible adjustment of scores and weightages if student did not attempt the module. | ||
+ | |||
+ | 7. In-built image processing to allow the client's to view notes of any size, zoom in and out. | ||
+ | |||
+ | 8. User touch experience is fully customised to support user multi-touch controls, allowing the users to perform on-screen dragging, swiping etc. | ||
+ | |||
+ | 9. Customization of QR Codes. | ||
− | 2 | + | 10. Auto re-numbering of options when deleting previous options in Maze Config (e.g. when deleting option 2, option 3 is re-numbered as option 2 and so on). |
− | + | 11. Almost all of the UI design and android navigation has to be designed from scratch to fit the overall theme and improve user experience. Navigation has to be designed in a way that is easy to understand and support traversing of different pages. | |
− | + | 12. Validations when uploading CSV file. | |
− | + | 13. Auto-refresh of Traffic Management using AJAX. | |
− | + | 14. Multi-pagination for fluidity of navigation in the report configuration. | |
|} | |} | ||
− | |||
===Quality of Product=== | ===Quality of Product=== | ||
====Project Deliverables==== | ====Project Deliverables==== | ||
− | {| class="wikitable" style=" | + | {| class="wikitable" cellpadding="15" style="border: 3px solid black;" |
+ | ! align="center" width="150px" style="border: 3px solid black; background: #FC9" | Stage | ||
+ | ! align="center" width="250px" style="border: 3px solid black; background: #FC9"| Specification | ||
+ | ! align="center" width="250px" style="border: 3px solid black; background: #FC9"| Modules | ||
+ | |- | ||
+ | |||
+ | |rowspan="5" style="border: 3px solid black;"| Project Management | ||
+ | |style="border: 3px solid black;"|Minutes | ||
+ | |style="border: 3px solid black;"| [[IS480_Team_wiki:_2011T1_Ascension/Ascension_Meeting_Minutes | Ascension_Meeting_Minutes]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Schedule | ||
+ | |style="border: 3px solid black;"| [[Media:Schedule.xlsx|Schedule]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Metrics (Incl. Bug and Change log) | ||
+ | |style="border: 3px solid black;"|[[Media:Metrics.pdf|Metrics]] | ||
+ | [[Media:Metrics_290911.xlsx|Metrics Version 2.0]] | ||
+ | |||
+ | [[Media:Ascension Metrics v3.0.xls|Metrics Version 3.0]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Presentation Slides | ||
+ | |style="border: 3px solid black;"|[[Media:Ascension_Acceptance_Presentation.pdf|Acceptance Presentation Part I]] | ||
+ | [[Media:Ascension_Acceptance_Presentation2.pdf|Acceptance Presentation Part II]] | ||
+ | |||
+ | [[Media:Midterms_final.pdf|Mid-terms Presentation]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| LOMS | ||
+ | |style="border: 3px solid black;"| [[Media:Ascension_LOMS.pdf |Team LOMS]] | ||
+ | [[IS480_Team_wiki:_2011T1_Ascension/Ascension_LearningOutcome | Individual LOMS]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Requirements | ||
+ | |style="border: 3px solid black;"| Functional Requirements | ||
+ | |style="border: 3px solid black;"|[[Media:Ascension_Storyboard_v1.pdf|Storyboard v1.0]] | ||
+ | [[Media:Ascension_Storyboard_v2.pdf|Storyboard v2.0]] | ||
+ | |- | ||
+ | |||
+ | |rowspan="3" style="border: 3px solid black;"| Analysis | ||
+ | |style="border: 3px solid black;"| Use Case | ||
+ | |style="border: 3px solid black;"| [[Media:Use_Case.pdf|Use Case v1.0]] | ||
+ | [[Media:Ascension_Use_Case_v2.pdf|Use Case v2.0]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Process Flow Diagram | ||
+ | |style="border: 3px solid black;"| [[Media:Ascension_Business_process.pptx|Process Flow Diagram v1.0]] | ||
+ | [[Media:Ascension_Process_modeling.vsd|Process Flow Diagram v2.0]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Solution Architecture Diagram | ||
+ | |style="border: 3px solid black;"| [[Media:System_Architecture.pdf|Architecture Diagram v1.0]] | ||
+ | [[Media:Ascension ArchitectureDiagram v2.pdf|Architecture Diagram v2.0]] | ||
+ | |- | ||
+ | |||
+ | |rowspan="2" style="border: 3px solid black;"| Design | ||
+ | |style="border: 3px solid black;"| ER Diagram | ||
+ | |style="border: 3px solid black;"| [[Media:Eer.pdf|Implementation Schema]] | ||
+ | [[Media:Ascension Final EER.pdf|Final DB Schema]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Class Diagram | ||
+ | |style="border: 3px solid black;"| [[Media:Ascension ClassDiagram.pdf|Class Diagram]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Testing | ||
+ | |style="border: 3px solid black;"| Test Plan | ||
+ | |style="border: 3px solid black;"| [[Media:Final_Test_Plan_-_UAT_A.pdf|Milestone A]] | ||
+ | [[Media:Final_Test_Plan_-_UAT_B.pdf|Milestone B]] | ||
+ | |||
+ | [[Media:UAT_C.xlsx|Milestone C]] | ||
+ | |||
+ | [[Media:Ascension Test scripts Executive - UAT D.pdf | UAT D Executive]] | ||
+ | |||
+ | [[Media:Ascension Test scripts Facilitator - UAT D.pdf | UAT D Facilitator]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;" rowspan="3"| Handover | ||
+ | |style="border: 3px solid black;"| Manuals | ||
+ | |style="border: 3px solid black;"| [[Media:Ascension User Manual v1.pdf|User Manual]] | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Code | ||
+ | |style="border: 3px solid black;"| Client's Server | ||
+ | |- | ||
+ | |||
+ | |style="border: 3px solid black;"| Deployment Diagram | ||
+ | |style="border: 3px solid black;"| [[Media:Deployment_Diagram.pdf|Deployment Diagram]] | ||
|- | |- | ||
− | + | ||
|} | |} | ||
Line 540: | Line 717: | ||
During the maze implementation, the internal users are able to utilize the web application to monitor the traffic flow within the maze. This is connected to the web host server via PHP, AJAX and Javascript. The internal users are also able to send messages to facilitators within the maze by connecting to an internal server located in Sanctuary House, which is coded using PHP, AJAX and Javascript. | During the maze implementation, the internal users are able to utilize the web application to monitor the traffic flow within the maze. This is connected to the web host server via PHP, AJAX and Javascript. The internal users are also able to send messages to facilitators within the maze by connecting to an internal server located in Sanctuary House, which is coded using PHP, AJAX and Javascript. | ||
+ | |||
+ | <br/><br/> | ||
+ | '''Instant Messenger''' | ||
+ | |||
+ | [[Image:Ascension ArchitectureIM.png]] | ||
+ | |||
====Deployment==== | ====Deployment==== | ||
Line 545: | Line 728: | ||
|- | |- | ||
| | | | ||
− | Our entire project | + | Our entire project has been deployed to Sanctuary house server. |
+ | |||
+ | You may access it via [http://ydc.sanctuaryhouse.com.sg/login.php Sanctuary House Server URL] | ||
+ | |||
To better understand our entire deployment, click to view our [[Media:Deployment_Diagram.pdf|Deployment Diagram]]. | To better understand our entire deployment, click to view our [[Media:Deployment_Diagram.pdf|Deployment Diagram]]. | ||
Line 556: | Line 742: | ||
'''UAT D''' | '''UAT D''' | ||
− | + | '''General Client Feedback:''' | |
− | |||
− | + | 1. Configurations was nice, was what we wanted | |
− | + | 2. Need to also perform the duplicate functions for comment module in configurations [We have done it] | |
− | + | 3. Report configuration was easier to use | |
− | + | 4. Student Management function is sleek, cool and easy | |
− | + | 5. Operations Tracking App UI was so much nicer and better | |
+ | 6. Traffic Management was cool | ||
− | + | 7. Instant Messenger was sleek and very useful | |
− | + | 8. Report was simple, nice and professional | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Line 645: | Line 812: | ||
− | Through this project, i have been absolutely convinced about the effects of iterations. Through the iterations, we built on what we have done and improve on it. It is usually only after we have something can be further think of ways to improve on. We are glad that through the iterative approach, we have got our client and Prof to help us in telling us what can be improved and what can be done. It really enhances the project by a lot more than we would have expected. Our traffic management went through 3 big changes and | + | Through this project, i have been absolutely convinced about the effects of iterations. Through the iterations, we built on what we have done and improve on it. It is usually only after we have something can be further think of ways to improve on. We are glad that through the iterative approach, we have got our client and Prof to help us in telling us what can be improved and what can be done. It really enhances the project by a lot more than we would have expected. Our traffic management went through 3 big changes and Operations Tracking App 3 changes as well. In addition, our entire report module (which is so complicated on algorithm) went through 2 big changes. All this are really due to the fact that constantly review and improve/build on previous iterations to come up with this amazing product |
|} | |} | ||
Line 683: | Line 850: | ||
|- | |- | ||
| | | | ||
− | + | The past 8 months had been a difficult yet enriching experience for me. I still remember when I started, I had a hard time juggling between the preparation for this final year project as well as my internship workload. After school has started, it was when the project really went into full speed. I had learnt how to manage my time by planning ahead the time required for the various tasks and prioritize my work before leisure. | |
+ | |||
+ | |||
+ | Prior to doing this FYP, I had only worked with 2 members before, thus I did not know how the dynamics of our team would be. We all know that there is no perfect team. Initially we had some difficulties adapting to each other's working style and we had some minor conflicts in this aspect. But our team eventually ironed out the conflicts and came into consensus after honest discussions with each other. | ||
+ | |||
+ | |||
+ | After working together for these tiring 8 months, I have built strong bonds with my team mates. I learnt that support and appreciation is essential for a good work product and project experience. | ||
+ | |||
+ | |||
+ | It was though cooperation and hard work with my teammates that we could see the project from initiation to the final product. Hence, I would like to thank my prof for overseeing our entire progress, my teammates for their constant support & understanding, and our client for giving us a chance to make Project eSpire possible. | ||
|} | |} | ||
Line 690: | Line 866: | ||
|- | |- | ||
| | | | ||
− | + | Team Ascension took on project laden with challenges – starting with how to explain it – and successfully delivered a system that is both technically sophisticated and richly functional. The Management Portal and Maze Operations Tracking Application will enable the client to improve the operational efficiency of its educational maze activities while collecting data that will help the organization quantify its social impact. The team consistently impressed me with their enthusiasm, curiosity, commitment, determination, and professionalism. Congratulations on a job well done! | |
|} | |} | ||
Line 704: | Line 880: | ||
− | [[ | + | Click to view the [[Media:Ascension ClientEmail.png| full email]]. |
+ | |||
+ | Click to view [[Media:Testimonal for Ascension.docx| Client's Testimonial]]. | ||
|} | |} |
Latest revision as of 00:25, 25 November 2011
Contents
Ascension Finals Wiki
This is Ascension's Finals Wiki page. Click to return to our team's Main Wiki Page.
Project Progress Summary
Project Highlights
Milestone D - Iteration 8
Why do we have a milestone directly after only 1 iteration? This is because iteration 8 which happens in recess week means that we would have the most time to work on our project. The speed of our development and the amount completed by end of this iteration would have high impact and effect on our planning of functionalities and the amount of stuff we can do, leading towards final presentation.
As the hosting manager of Sanctuary house does not allow installation of tomcat apache, we have to use alternative methods. We got a server from Sanctuary House and deployed our reporting server on it, integrate it with our current deployment at the hosting manager. We spent much time on it, to and fro Sanctuary House and was glad that by end of iteration, we already resolved this issue.
1. Changes from UAT C a) Progress report UI b) Operations Tracking App Contingency Plan (master resend and connection switch off)
3. Development Report
*Highlighted in red are functions that are fully completed. |
Milestone E - Iteration 9, 10, 11
In iteration 9, our core to do list is to settle the operations report (which is a core functionality) and to get Instant messenger on Operations Tracking App working. As this is a crucial period of development (before the SMU period closes in on project submission and presentation), we gave our best shot by pushing our development efforts to the maximum. We completed Operations report, Instant messenger on Operations Tracking App and as well our traffic management algorithm were ready, completing more than we have targeted. We have also created the pre-maze view screen to inform the next batch when they are able to go into the station.
*Highlighted in red are functions that are fully completed.
In iteration 10, our core do to list is to ensure that our Operations Tracking App User interface is totally revamped. After which vigorous testing on performance and functionality before we head for our UAT with our clients and facilitators. After revamping the UI, we started the UAT which further uncovered some bugs. During the testing, little suggestions and improvements were given as our clients were all very satisfied with the end to end maze optimization. The entire process now seems sleeker and time taken was reduced much to our clients satisfaction. In this iteration, we also managed to implement speech to text function, as we have some spare time on our timeline.
*Highlighted in red are functions that are fully completed.
The main task for this iteration is to prepare for finals and update our wiki. However, we have some bugs that was brought over from the last UAT. The 1 critical bugs that were brought over was the sending messages to multiple android devices from the portal’s IM. That was resolved in this iteration.
*Highlighted in red are functions that are fully completed. |
Project Challenges
We have faced strong challenges as we embark on this project.
Challenges can be summarized in the following.
Handling Android programming was definitely not easy as I have thought. On the contrary, it has gotten me stuck on many occasions because I simply have no idea how to code that particular function. What seems easy to do on the web becomes painstaking difficult when coding on the mobile platform. In addition to JAVA programming, the user interactions such as swiping left or right have to be handled. Moreover, coming up with an intuitive user interface on a mobile platform is very challenging. I am faced with not only space constraint but also the difficulty of presenting information or buttons in such a way that makes it easy to understand instantly. Integrating both user-friendliness with required functions was no mean feat. I am glad that in the process of learning, I have found and adopted a new form of learning methodology.
Team management was a difficult thing i face in this project. Different people have different expectations and their words mean different things. Hence, to ensure that things get on hand, i have to communicate differently with different people to get things done in the expected manner. Thus it was very important to keep open communication and bring about differences as soon as i realized it on table for everyone to discuss and resolve them.
|
Project Achievements
1. Enhanced Operations Tracking Application Performance Reduce scanning timing by 75%. From 1 min to 15 seconds (for a group of 4). Kept in-processing and out-processing timing within 3 and 5 seconds respectively. Total administration time required reduced from 3 minutes to 30 seconds.
Interactive user interface with easy navigation. Switch being commonly used modules which expedites tracking procedures. Ease of switching and checking of instant messenger. Overall background nature team with engraved buttons.
Communication between Traffic Manager and Facilitator – never as easy before. Communication through messages initiated by Traffic Manager or System. Simple to type, easy to respond. Fully designed and customized by us.
Report can be generated as soon as a student step out of the maze. Sleek integration of report configuration and BIRT tools. Complicated algorithm to generate results for student report.
Simple and easy to understand algorithm. Visibility of students within stations. Decision support tools to highlight crisis maze management to Traffic Manager. |
Project Management
Project Schedule (Plan vs Actual)
Iterations | Planned | Actual | Schedule Metric | Comments | |
---|---|---|---|---|---|
1 | 1. Requirements gathering
2. Mock up on web-front |
12th May | 12th May | 1.0 | On Time |
2 | 1. Requirements gathering
2. Mock up on Operations Tracking App and Management Portal |
28th May | 28th May | 1.0 | On Time |
3 | 1. Revision of mock up
2. Finalized and developed web front 3. Proposal Submission |
21st June | 21st June | 1.0 | On Time |
4 | 1. Refinements of tracking module requirements
2. Developed node dollars, comment and MCQ 3. Report algorithm refinements 4. UAT A |
22nd July | 22nd July | 1.0 | On Time |
5 | 1. Developed Supermarket
2. Developed Traffic Management 3. Progress Report – Half completed 4. UAT B – Acceptance Presentation |
12th Aug | 12th Aug | 1.6 | The other half of progress report could be developed in time due to the learning curve in BIRT. We rescope after acceptance as the project idea was not focussed. |
6 | 1. Developed scenario and prioritization module
2. Developed progress report configurations 3. Improvements on Traffic Management |
2nd Sep | 2nd Sep | 1.0 | On Time |
7 | 1. Developed maze configurations
2. Completed Progress Report 3. Completed UAT C – Mid term presentation 4. Implemented Swype function |
29th Sep | 29th Sep | 1.0 | On Time. Replaced speech to text with swype function. |
8 | 1. Changes from UAT Feedback
- Traffic Management refreshing page issue - Report UI - Operations Tracking App contingency plans 2. Instant Messenger on Management Portal 3. Development Report |
15th Oct | 15th Oct | 1.0 | On Time. |
9 | 1. Operations Tracking App UI
2. Operations Report 3. Instant Messenger on Operations Tracking App 4. Traffic Management Algorithm 5. Customization of Instant Messenger with traffic management |
25th Oct | 25th Oct | 1.0 | On Time. Shift the designing of poster from iteration 11 to this iteration. |
10 | 1. Testing
2. Day in a life workshop 3. Speech to text function 4. Operations Tracking App Interface Enhancement |
11th Nov | 11th Nov | 1.0 | On time. All UAT except Noel has been completed. UAT with Noel scheduled on 14th Nov. |
11 | 1. Preparation for Presentation
|
21st Nov | 21st Nov | 1.0 | On time. Presentation slides done. presentation date scheduled on 24th Nov, 4pm. |
Project Metrics
Schedule Metrics Our first major road block comes in iteration 5, where we slipped our project timeline and was reminded that our scope was too wide and complex to follow.
|
Bug Metrics After the troubles in iteration 4/5 has blew past, we have always kept our bugs within control. Whenever the bug score increases, we will always re-prioritize and schedule more bug fixing time and meet up more often. After mid-terms, the bulk of the bugs that happens has to do with integration of Operations Tracking App and the portal. We realized the trend and put forward a plan to meet up more often for end to end testing and find out the integration issues that we were facing. With that, we managed to keep our bug portion in control.
Click to access our Bug Log |
Technical Complexity
The following are ranked accordingly to the level of difficulty. 1. The need to integrate Instant Messenger with Traffic Management and Operations Tracking Application with codes in Java, Javascript, AJAX, PHP as well as to synchronize with two servers, which one of them is controlled by an external vendor, and the Android devices. 2. Pushing of automated messages from the backend portal to Operations Tracking Application. This includes the difficulty in trying to understand the push architecture of the technology, manipulating the data received and troubleshooting integration issues. 3. Develop report alogrithm and using BIRT technology to produce intuitive and flexible charts. 4. Algorithm behind the overall maze lapse timing to push suggestions to Traffic Manager. 5. Difficulty in retrieving the alarm set in database, configuring the alarm countdown timer and elapsed time in different pages and getting them to sync with each other. 6. Flexible adjustment of scores and weightages if student did not attempt the module. 7. In-built image processing to allow the client's to view notes of any size, zoom in and out. 8. User touch experience is fully customised to support user multi-touch controls, allowing the users to perform on-screen dragging, swiping etc. 9. Customization of QR Codes. 10. Auto re-numbering of options when deleting previous options in Maze Config (e.g. when deleting option 2, option 3 is re-numbered as option 2 and so on). 11. Almost all of the UI design and android navigation has to be designed from scratch to fit the overall theme and improve user experience. Navigation has to be designed in a way that is easy to understand and support traversing of different pages. 12. Validations when uploading CSV file. 13. Auto-refresh of Traffic Management using AJAX. 14. Multi-pagination for fluidity of navigation in the report configuration. |
Quality of Product
Project Deliverables
Stage | Specification | Modules |
---|---|---|
Project Management | Minutes | Ascension_Meeting_Minutes |
Schedule | Schedule | |
Metrics (Incl. Bug and Change log) | Metrics | |
Presentation Slides | Acceptance Presentation Part I | |
LOMS | Team LOMS | |
Requirements | Functional Requirements | Storyboard v1.0 |
Analysis | Use Case | Use Case v1.0 |
Process Flow Diagram | Process Flow Diagram v1.0 | |
Solution Architecture Diagram | Architecture Diagram v1.0 | |
Design | ER Diagram | Implementation Schema |
Class Diagram | Class Diagram | |
Testing | Test Plan | Milestone A |
Handover | Manuals | User Manual |
Code | Client's Server | |
Deployment Diagram | Deployment Diagram |
Architecture Diagram
Overall
1. Pre/Post Maze
Before the actual implementation of the maze, the internal users are able to access the web application to do configurations to the maze and report, by giving scores to questions used in the maze. The web application is connected to the web hosting server via PHP scripts. AJAX and JavaScript are also used to refresh pages with updated data from the DB, as well as perform validation checks respectively.
After a maze implementation, internal users are able to generate individual reports for individual student’s progress within the maze, development reports for teachers or internal users for summary of the students’ progress in the maze, as well as operation reports for the internal users to analyse maze operations. Reports are done using BIRT and Java to connect to the Apache Tomcat Server located in the Sanctuary House Internal Server, as well as BIRT and Java to connect to the core DB located at the web hosting domain.
2. In Maze
During the maze implementation, the internal users are able to utilize the web application to monitor the traffic flow within the maze. This is connected to the web host server via PHP, AJAX and Javascript. The internal users are also able to send messages to facilitators within the maze by connecting to an internal server located in Sanctuary House, which is coded using PHP, AJAX and Javascript.
During the maze implementation, the internal users are able to utilize the web application to monitor the traffic flow within the maze. This is connected to the web host server via PHP, AJAX and Javascript. The internal users are also able to send messages to facilitators within the maze by connecting to an internal server located in Sanctuary House, which is coded using PHP, AJAX and Javascript.
Instant Messenger
Deployment
Our entire project has been deployed to Sanctuary house server. You may access it via Sanctuary House Server URL
|
User Acceptance Testing
UAT D General Client Feedback: 1. Configurations was nice, was what we wanted 2. Need to also perform the duplicate functions for comment module in configurations [We have done it] 3. Report configuration was easier to use 4. Student Management function is sleek, cool and easy 5. Operations Tracking App UI was so much nicer and better 6. Traffic Management was cool 7. Instant Messenger was sleek and very useful 8. Report was simple, nice and professional
|
Reflection
Team Reflection
We have come a long way since April this year.
We started off understanding and mapping the requirements from their business process and scenario. It was really difficult. Just as how it was difficult for both our supervisor and reviewer to understand, we met the same problem then. Eventually, we have to come out with technical solutions to resolve the business issues, which are hindsight, i do not know how did we achieve it.
During the requirements stage of our presentation, we needed more sessions to understand and map requirements. However, the extra amount of time was difficult as our clients were all working. We resolved this with the clients through a set of procedures to talk to different owners on different portions of the project and took on our initiative to propose and suggest options.
Throughout the project, we faced many difficulties ranging from Android, BIRT, Instant Messenger, deployment and many integration issues. One of those were our wrong deployment to realizing that the actual deployment with hosting manager does not support Tomcat Apache. We eventually resolve it through much communication with the hosting manager and our clients. We decided to re-use one of Sanctuary House server to publish and deploy our report server. Subsequently, as we are implementing our Instant Messenger, we needed to test the broker and port which took place on many nights (as late as till 4am).
We have our differences, disagreements over the course of 7 months, be it the technical aspect, project management, scope, datelines and many other different things we probably find it difficult to remember. But, we always make it a point to talk things out, understand each other and recover from it. Learning how to work together is an important lesson that we all have mastered. A good testament of our relationship is that after going through so much together, we are sticking together as we bid our modules together for next semester to continue working with one another. What really kept us together throughout the 7 months was one important thing that we have done at the start.
We lay out our common objectives, learning points and targets for the project, and when tough times occurs, we always remind ourselves of our goal to be one of the top project and continue to push on! All the way! |
Individual Reflection
Ng Choon Teck
I am so proud that we have completed the project at this stage. At one point it seems to me that it was an uphill struggle.
Honestly, I never thought and could imagined our product being the way it is. Absolutely amazing stuff.
|
Au Cheong Hing
This entire journey has been incredibly enriching for myself. There have been tough times and enjoyable ones of which many of these events has values and lessons to be drawn out of it. I remember the time when most of the members in the team were unhappy with the size of the scope. We felt that it was too big to handle given the amount of resources we had. I personally felt that we did not give ourselves enough time to perfect our solution. But then we learnt together as a team and worked the scope together. We also reduced risk very well by attempting all the unknown early and give ourselves time for progressive learning. For example, I started on BIRT technology early for simple text reporting. Thereafter, I moved on to chart creation using BIRT technology as well. Because BIRT is open source and is an unfinished product, there are many areas which I have to find an alternative solution to my problems. Furthermore, my business scenario is more complex than a simplistic sales figure reporting. All in all, I think I gained a lot in learning to learn, to be sensitive to the larger picture when I am confronted by a scenario and decision making. |
Chen Jun Fan
It has been a long journey since we started from April this year. This FYP project has pushed us to our limits, and made us realize that nothing is technologically impossible. Many a times, when a new suggestion is raised up by our PM to improve our system, we are always bounded by our individual technical capabilities, and would deem the suggestion impossible to be accomplished. However, in the end, most of these ‘impossible’ suggestions became the most value-adding functions of our system.
|
Chee Jing Hui
Tough times don’t last but tough teams do. I guess this sums up what I have thought of this team. We have certainly gone a long way. Like any other teams, we have had disagreements over the scope, functions, user interfaces etc. However, one thing that stands out is that at the end of the day, we will always come together and resolve these issues. And though each one of us has different responsibilities, we will always help one another in troubleshooting problems even if it falls outside of our own scope.
|
Peh Wei Kiat
The past 8 months had been a difficult yet enriching experience for me. I still remember when I started, I had a hard time juggling between the preparation for this final year project as well as my internship workload. After school has started, it was when the project really went into full speed. I had learnt how to manage my time by planning ahead the time required for the various tasks and prioritize my work before leisure.
|
Prof Comments
Team Ascension took on project laden with challenges – starting with how to explain it – and successfully delivered a system that is both technically sophisticated and richly functional. The Management Portal and Maze Operations Tracking Application will enable the client to improve the operational efficiency of its educational maze activities while collecting data that will help the organization quantify its social impact. The team consistently impressed me with their enthusiasm, curiosity, commitment, determination, and professionalism. Congratulations on a job well done! |
Client Commments
Didn't have the chance to say it yesterday, (it' so not "me" to say these out in words actually), but I just thought that I should have let the team know about this.. Sincerely a big thank you for a great job on this initaitive. Many thoughts and details have been put in, it's quite obvious - especially when there are initiatives that it's really "we don't know what we don't know" cataology kind of suggestions. (Example, the suggestion when >=50% of the maze is in the red alert, suggestions are prompt, little details like the keyboards of the android apps, drill down graphs etc) I guess it's the last milestone and last few weeks of this FYP project. Thanks guys, and sincerely; it's finishing so, hang it there. (:
Click to view Client's Testimonial. |