Difference between revisions of "AAN Final Wiki"
Viryap.2011 (talk | contribs) |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 17: | Line 17: | ||
===Progress=== | ===Progress=== | ||
− | + | 90% of the project is completed! | |
* All functionalities completed! | * All functionalities completed! | ||
* Completed 12 out of 12 iterations | * Completed 12 out of 12 iterations | ||
Line 30: | Line 30: | ||
Test our system [http://portal-smuosl.rhcloud.com/home.jsp here]! | Test our system [http://portal-smuosl.rhcloud.com/home.jsp here]! | ||
+ | |||
+ | Download our slides [[File:AAN FYP Final Presentation.pdf|here]]! | ||
=== Project Timeline=== | === Project Timeline=== | ||
Line 179: | Line 181: | ||
|- | |- | ||
| 10 || Payment Web Service || When we first started it, we have yet to get the requirements from OSL. Therefore, we will be continuing with the Paypal webservice to ensure what we wants fit into OSL requirements. || Continue with Paypal webservice in iteration 11 | | 10 || Payment Web Service || When we first started it, we have yet to get the requirements from OSL. Therefore, we will be continuing with the Paypal webservice to ensure what we wants fit into OSL requirements. || Continue with Paypal webservice in iteration 11 | ||
+ | |- | ||
+ | | 11 || Payment Web Service || iPhone is a secondary application as of now, and we have officially ran out of time with the number of things we need to fix after UT as well as the new functionalities given to us. || Continue with Paypal webservice for iPhone after finals or discuss with OSL and see if they think if its okay to drop the functionality | ||
|- | |- | ||
| 12 || Messaging and Complaints Functionality|| After UT and discussion with OSL, it is suggested that these two functions should be combined together. Therefore, we added this additional function in the last iteration. || Assign the task of coding a new function to a member who isn't busy with changing UI after UT. | | 12 || Messaging and Complaints Functionality|| After UT and discussion with OSL, it is suggested that these two functions should be combined together. Therefore, we added this additional function in the last iteration. || Assign the task of coding a new function to a member who isn't busy with changing UI after UT. | ||
Line 343: | Line 347: | ||
|| Manuals | || Manuals | ||
|| | || | ||
− | [[File:AAN Web UserManual.docx|User Manual(Web)]], [[File:AAN_IOS_User_Guide.pdf|User Manual(iOS)]] | + | [[File:AAN Web UserManual.docx|User Manual(Web)]],[[File:Android_Manual.docx|Android Manual(Phone)]],[[File:AAN_IOS_User_Guide.pdf|User Manual(iOS)]] |
− | + | ||
|- | |- | ||
Line 396: | Line 400: | ||
I'm someone who likes to plan ahead and ensure that everything will go according to those plans leading to me having excessively high expectations for a lot of things. However, FYP being FYP is not so smooth-sailing. There are a lot of times when I am frustrated because the schedule planned must be altered because of various reasons, or when the outcome of things are different from what I expected. Eventually I've learnt to take things in stride and just plan everything to the best of my ability while dealing with the rest as they come. My mantra actually came to me sometime after midterms when I was upset with everything that is going on in life, and honestly repeating that to myself really makes me feel happier about everything I'm doing! Managing expectations is difficult, but somehow when you have a positive mindset towards everything, all the work seems to be a lot more enjoyable! | I'm someone who likes to plan ahead and ensure that everything will go according to those plans leading to me having excessively high expectations for a lot of things. However, FYP being FYP is not so smooth-sailing. There are a lot of times when I am frustrated because the schedule planned must be altered because of various reasons, or when the outcome of things are different from what I expected. Eventually I've learnt to take things in stride and just plan everything to the best of my ability while dealing with the rest as they come. My mantra actually came to me sometime after midterms when I was upset with everything that is going on in life, and honestly repeating that to myself really makes me feel happier about everything I'm doing! Managing expectations is difficult, but somehow when you have a positive mindset towards everything, all the work seems to be a lot more enjoyable! | ||
+ | ====Jerrold==== | ||
+ | I realized the importance of design after this project. No matter how much functions you have in the application, if you are unable to have an attractive UI, no one will be attracted by it or be willing to use it. Therefore, I decided that I will dabble more in illustrator and CSS during the summer as a form of self-improvement. | ||
===Sponsor Comment=== | ===Sponsor Comment=== |
Latest revision as of 13:02, 17 April 2014
Project Progress Summary
Progress
90% of the project is completed!
- All functionalities completed!
- Completed 12 out of 12 iterations
3 tests have been held
- Heuristics Test: January 20 - 24
- Usability Test 1: February 13 - 14
- Usability Test 2: March 31 - April 4
System is deployed on the live server that OSL will be using in the future!
Test our system here!
Download our slides File:AAN FYP Final Presentation.pdf!
Project Timeline
Detailed schedule can be found here!
Project Highlights
- Changes in requirements
- The merging of Message Management and Complaints functionality
- Removal of Edit Booking and Delete Booking
- Working with the different SMU corporate offices
- Office of Finance is going to be providing us with a new Paypal account under them which we didn't expect at first!
Project Challenges
- Liaising with the different stakeholder
- Although our main client is OSL, we need a lot of different resources from the various SMU Corporate office to complete our application. During the process, there is a lot waiting time involved since we need to wait for all the different offices to be free as well as find a solution that will satisfy all the stakeholders. E.g. ensure that IITS will be comfortable with maintaining our app in the future
- Manually drawing all the maps and locker clusters
- As we are unable to get the maps from the school offices due to security issues, we have to resort to drawing all the maps personally. The process is extremely tedious as we have to pinpoint the exact location of all the locker clusters and replicate them on maps.
- Counting the lockers in each cluster
- To ensure that we are able to do a theatre-style booking system, we need to take down all the specific location of individual lockers and assign row and columns to each individual lockers to ensure the smooth generation of the locker locations while student are making their bookings.
Project Achievements
- Supporting the application on three different platforms
- New and innovative way to book lockers!
Project Management
Project Status
Module | Function | Status | Confidence Level | Deployment status | |
CORE | Register for LMS | ||||
Register | Not Completed | 1 | × | ||
Sign in | |||||
Sign in | Completed | 1 | ✓ | ||
Booking Management | |||||
Add Booking | Completed | 1 | ✓ | ||
View Booking | Completed | 1 | ✓ | ||
Edit Booking | Removed from functionalities under request of client | 1 | - | ||
Delete Booking | Removed from functionalities under request of client | 1 | - | ||
Paying for Booking | Completed | 1 | ✓ | ||
Locker Management | |||||
Add Lockers | Completed | 1 | ✓ | ||
View Lockers | Completed | 1 | ✓ | ||
Edit Lockers | Completed | 1 | ✓ | ||
Delete Lockers | Completed | 1 | ✓ | ||
Search for Lockers | |||||
Search Lockers | Completed | 1 | ✓ | ||
Feedback Management | |||||
Report faulty locker | Completed | 1 | ✓ | ||
View faulty locker reports | Completed | 1 | ✓ | ||
Update faulty locker status | Completed | 1 | ✓ | ||
Submit feedback | Completed | 1 | ✓ | ||
View feedback | Completed | 1 | ✓ | ||
Update feedback | Completed | 1 | ✓ | ||
Delete feedback | Completed | 1 | ✓ | ||
Locker Maintenance Account Management | |||||
Add Maintenance team | Completed | 1 | ✓ | ||
View Maintenance team | Completed | 1 | ✓ | ||
Edit Maintenance team | Completed | 1 | ✓ | ||
Delete Maintenance team | Completed | 1 | ✓ | ||
Statistics Dashboard | |||||
View Dashboard | Completed | 1 | ✓ | ||
Booking Window Management | |||||
Set/Open/Close Booking Window timing | Completed | 1 | ✓ | ||
Set/Edit Booking Timeframe | Completed | 1 | ✓ | ||
Messaging Management | |||||
Send Message | Completed | 1 | ✓ | ||
Delete Message | Completed | 1 | ✓ | ||
SECONDARY | iPhone App Development | ||||
Add locker bookings | Completed | 1 | ✓ | ||
View Locker | Completed | 1 | ✓ | ||
Report faulty lockers | Completed | 1 | ✓ | ||
View map | Completed | 1 | ✓ | ||
Android App Development | |||||
Add locker bookings | Completed | 1 | ✓ | ||
View Locker | Completed | 1 | ✓ | ||
Report faulty lockers | Completed | 1 | ✓ | ||
View map | Completed | 1 | ✓ |
For more information of the respective functions, visit AAN_Project_Management#Project_Status here!
Project Schedule (Plan Vs Actual)
Iteration | Task | Reasons for delay/changing iteration | Mitigation Plan |
---|---|---|---|
10 | Payment Web Service | When we first started it, we have yet to get the requirements from OSL. Therefore, we will be continuing with the Paypal webservice to ensure what we wants fit into OSL requirements. | Continue with Paypal webservice in iteration 11 |
11 | Payment Web Service | iPhone is a secondary application as of now, and we have officially ran out of time with the number of things we need to fix after UT as well as the new functionalities given to us. | Continue with Paypal webservice for iPhone after finals or discuss with OSL and see if they think if its okay to drop the functionality |
12 | Messaging and Complaints Functionality | After UT and discussion with OSL, it is suggested that these two functions should be combined together. Therefore, we added this additional function in the last iteration. | Assign the task of coding a new function to a member who isn't busy with changing UI after UT. |
12 | FAQ functionality | The client decides that we need a faq page as well as include terms and conditions for students before they start their bookings. | Virya and Jerrold to implement the changes |
12 | Messaging and Complaints Functionality | During iteration 12, we are unable to finish fixing all the bugs for this functionality. | Since we are going to do maintenance till April 28th, we will be finishing this part of the app after finals. |
Project Metrics
Schedule Metrics
To know how we calculate our schedule metrics, please refer to this!
For more information regarding Team AAN's mitigation plan, please refer to here!
Bug Metrics
To know how we calculate our bug metrics, please refer to this!
For more information regarding Team AAN's exact bugs, please look here!
Project Risks
S/N | Risk Statement | Consequence | Likelihood | Impact | Level | Contingency Plan |
---|---|---|---|---|---|---|
1 | OSL and IITS unable to provide us with list of student email | Student will have to create a new account to book lockers | High | Medium | A |
|
2 | Unable to make use of Office of Finance Paypal account | Will have to recode our payment system to fit into Ofin's current system or persuade Ofin to create a separate account for OSL | High | High | A | * Set a deadline as to when Ofin has to get back to use regarding the account types they support or if they are going to accommodate to our system |
3 | System will be unable to pass IITS review and thus unable to go live | There will be no one to maintain the system for OSL after we finish the project | High | High | A | * Pass the codes to IITS by 31st March
|
For the complete set of risks we face since the conception of project, please visit here! More information regarding how we measure our risks can also be found on that page.
Technical Complexity
Usability
Front-end validation With front-end validation ensuring that fields such as email, and phone numbers are checked; users can be reassured that what they submit will most likely be sensible!
Pictorial guide for different locker locations in SMU A map is shown for every level of the school which have lockers ensuring that students will know where their lockers are located at. Also, by displaying the exact location of lockers, it makes it easier for students to find their desired lockers.
Instructions for users Instructions as well as terms and conditions will be shown to students every time they attempt to book a locker ensuring that they will be clear of how to use the system as well as some of the basic guidelines for locker booking.
One stop solution for locker bookings
- Book locker, search for lockers and make all the complaints at one central location.
User Testing is held with students to ensure what we deliver is what they want
- The 2 UTs provides us with perspectives of how the application can be changed to ensure that users will be able to use it easily and find the process enjoyable.
Maintainability
Utilizes Redhat Open Shift to host our application
OSL will be able to easily upgrade their plans on the website any time they desire.
Aligned our security principles with IITS guidelines so that they can take over our project
After numerous meetings with IITS, we have aligned our project security principles with their requirements to increase the chance of them taking over our project after we are done. We will be submitting our codes to them, and OSL will have to communicate with IITS to ensure that they are willing to take over the project.
Readme guide!
In the event that IITS refuses to take over the project, our team is providing OSL with a read me guide which will teach them how to do basic configurations in the system as well as what the web and phone app can do respectively.
Compatability
Can be used on major browsers such as Chrome, Firefox, and IE
Users are recommended to use only IE9 and above for our web application. Why are we not catering to IE8 and below? IE8 is being used by mostly Windows XP which Microsoft themselves will stop providing updates and help later this year. Therefore, our team doesn't see the need to maintain something that will not be in use soon. Moreover, eLearn’s site is also recommended to be use with IE9 and above.
Scalability
Flexibility
Ability to add new lockers
Lockers that are added into cluster will be automatically reflected when users are choosing their lockers
Security
Token based authentication
Ensures that the password isn't being passed around unnecessarily if the event doesn't call for it.
SSL
Quality of product
Project Deliverables
Stage | Specification | Modules |
Project Management | Minutes | |
Metrics | ||
Requirements | Story cards | CRUD Customer, Trend Analytic |
Analysis | Use Case | Use Case Diagram |
Screen Shots | Prototype | |
Design | ER Model | ER Model |
System Architecture Diagram | Architecture Diagram | |
Testing | Heuristic Testing | Heuristic Test Results |
Usability Test Plan | Test Plan | |
Usability Test 1 Results | UT1 Results | |
Usability Test 2 Results | UT2 Results | |
Handover | Manuals |
File:AAN Web UserManual.docx,File:Android Manual.docx,File:AAN IOS User Guide.pdf |
Code | client server | |
Deployment Diagram | instructions |
Deployment
Testing
There are three tests conducted for our system; one Heuristics and two Usability Testing.
In the Heuristics Testing, we aim to find out user's view towards the design of our application so that we can make changes accordingly and ensure that the final product will be of high quality and well-received by everyone.
Heuristics Info:Heuristics Testing
For our first usability test, we will like to find out how well can users navigate our system. This will allow us to further improve on our system and ensure that the end product will be something that is close to dummy proof. Also, since we will be catering the system to the entire SMU, students from other schools participated in our UT too to ensure that we have a diverse and somewhat balanced opinion.
Usability Test 1 Info:Usability Test 1
After our first usability test, we made changes to some parts of the system based on the feedbacks that we have. Furthermore, there is the addition of certain functionalities as well as the iPhone app. Therefore, the second usability test allows us to finetune our project and ensure that our final product will be something that OSL finds satisfactory. Similar to the previous UT, the majority of participants are SMU students since they are the one who will be mainly using the system.
Usability Test 2 Info:Usability Test 2
Reflection
Team Reflection
FYP is a project that is considered long for a school project, and throughout this entire period we have to manage several stakeholders. From our interactions with the stakeholders, we realized that it is extremely important to communicate constantly as well as delivering what we have promised in advance. This will ensure that we keep a nice and friendly friendship for the entire duration. Also, due to the nature of our project, a lot of us dabbled in areas which we are unfamiliar with, further improving our technical capability!
Individual Reflection
Gabriel
One of the key tenets of the popular 7 Habits of Highly Effective People deals with beginning with the end in mind. Throughout this FYP journey, I learnt that a problem well defined was half the problem solved. The team needed to have a common idea and vision of our deliverables and end product with our client, and defining the requirements was a key factor to our team’s completion. After all, you can’t build something if you don’t know what you’re building right? Moving forward, apart from learning to be more receptive and versatile towards unfamiliar technologies, I have learnt how different technologies can fuse together to provide a holistic business solution.
Simon
During the course of this FYP; more significant than the technical skills attained, I have gained invaluable experiences and insights in terms of how a project is managed throughout its life-cycle. From the initial phase of requirements gathering to planning and deciding on what type of development convention and system architecture should be used till the actual deployment, this project has given me first hand knowledge and experience on the full development of a IT project. I learnt to better manage client expectations and balance their changing requirements with the more rigid timeline of the project. One thing I learnt was that communication and information had to flow regularly between the client and the project team. This was to keep the client up to date on the progress as well as help the project team to mitigate the need for major changes if the system deviated too far from the clients expectations. This is a likely scenario if the client was not kept informed on how the system was turning out to be and would very likely result in project delivery delays for the team. The team also had to be flexible and be ready for changes along the timeline.
Overall, I have gained much more than what words can express from this wonderful journey with my team for FYP!
Viet
As the lead developer, I learn to better understand how to design a reliable and flexible system from scratch. Also I have better understanding on web application development including REST web services, Hibernate framework. In addition, I have learnt more about mobile development process in iOS and Android. Finally, I learn about the importance of collaboration among team members to project’s success and integration.
Virya
"You're only wronged when you pity yourself. Think positively and look upon everything with a positive light, then you'll enjoy everything that you're doing right now." This is my mantra during FYP.
I'm someone who likes to plan ahead and ensure that everything will go according to those plans leading to me having excessively high expectations for a lot of things. However, FYP being FYP is not so smooth-sailing. There are a lot of times when I am frustrated because the schedule planned must be altered because of various reasons, or when the outcome of things are different from what I expected. Eventually I've learnt to take things in stride and just plan everything to the best of my ability while dealing with the rest as they come. My mantra actually came to me sometime after midterms when I was upset with everything that is going on in life, and honestly repeating that to myself really makes me feel happier about everything I'm doing! Managing expectations is difficult, but somehow when you have a positive mindset towards everything, all the work seems to be a lot more enjoyable!
Jerrold
I realized the importance of design after this project. No matter how much functions you have in the application, if you are unable to have an attractive UI, no one will be attracted by it or be willing to use it. Therefore, I decided that I will dabble more in illustrator and CSS during the summer as a form of self-improvement.