HeaderSIS.jpg

IS480 Team wiki: 2017T1 ICON Final

From IS480
Jump to navigation Jump to search
ICON Banner.jpg


Icon Home.png
Icon TheTeam.png
Icon ProjectOverview.png
Icon ProjectSchedule.png
Icon Documentation.png
MAIN WIKI MIDTERMS WIKI FINAL WIKI

Project Progress Summary

Final Presentation Slides

  • Link to Final presentation slides
 https://drive.google.com/drive/folders/14z_T3G1rGduQoCzsnE95JVzMSMF8txlX?usp=sharing

Project Highlights

ICON project in numbers.png

Positive Highlights:

  • Additional features to the system to further bring values to the client
  • Extra efforts put in by the developers to deliver the system, with major changes, on time

What unexpected events occurred?

  • Major changes in business requirements, particularly in Project Management Module & Expense Management Module
    • Changes in the format of template used for expense processing via QuickBooks
    • Reducing the scope of Expense Management Module, but focusing on the depth and the quality of the remaining features
    • Data formats required for creating resources and entities such as employees, projects and tasks.
    • A new proposal on Dashboard module by the team

Project Challenges

  • Change requirements were more frequent, however in order to provide real business value and keep users onboard, the team accepted the majority of changes.
  • As a result, major changes in the project scope and the project timeline

Project Achievements

  • Despite the major changes in, particularly, the Expense Management Module and the introduction of Dashboard module, the team has managed the scope and delivered the system on time
  • Team took further initiative to introduce the Dashboard Module to the business, after identifying and understanding that the client needs a clear view on its performances

Project Management

Project Schedule (Planned vs. Actual)

Pre-Acceptance
Pre-Midterm
Current


Pre-Acceptance
Pre-Midterm
Current

Project Metrics

Task Metrics

ICON Task Number Final.PNG
ICON Task Metrics Final.PNG

Bug Metrics

ICON Bug Metrics Final.PNG
Icon bug score Final.PNG

Key Technical Complexity

S/N Problem Solution Screenshot
1 Figure out the optimal architecture that would give Abundant’s employees seamless access to their respective client’s QuickBooks account Solution Part 1: A system of QBO “apps” that would act as the gateway for information to pass to and from AMS and the QuickBooks account securely and seamlessly. Icon tech solution 1 1.png

[Click here for an enlarged view]
We created a Token entity as a wrapper and customized a Client Factory object which can accept our Token objects as parameters to handle QBO’s Oauth2 requirements.
Icon tech solution 1 2.png
[Click here for an enlarged view]
With QBO Platform client, we call a bearer token which also checks the validity of the Refresh Token (generated from the set-up stage found in the manual) that produces an updated Refresh Token which we update in our database for future use and an Access Token
Icon tech solution 1 3.png
[Click here for an enlarged view]
The access token is used as a parameter to create QBO’s context object which builds the Data Service, the channel to send or read data from the Intuit servers (formal name for QBO servers).

2 Figure out the optimal architecture that would give Abundant’s employees seamless access to their respective client’s QuickBooks account (Cont'd.) Solution Part 2: We designed the system in such a way that Abundant’s employees may verify the contents of the submission before the actual execution to ensure data validity and accuracy in an efficient manner. Icon tech solution 2 1.png

[Click here for an enlarged view]
This is done first by creating a class, PaymentFactory, that takes in the Excel file and generates our own customized Payment objects from the rows of data.
Icon tech solution 2 2.png
[Click here for an enlarged view]
Next, we created QBODAO, which would scan each Payment objects and verify the contents with the data in the Intuit servers through the Data Service object Icon tech solution 2 3.png
[Click here for an enlarged view]
After uploading the file, the PaymentFactory and QBODAO objects also create QuickBooks’ Purchase objects so that once the user has verified the information in the process page, the Purchase objects are immediately sent to QuickBooks through a batch operation. Icon tech solution 2 4.png
[Click here for an enlarged view]
After processing, we would also give the employee final confirmation on the status of the submission of the Purchases to avoid duplicate submissions or highlighted run time errors that could not be detected previously.

Finally, we adapted a mailing API to give the employees the ability to save these results to their email in the click of a button.

3 Create a project deadline generator that caters to all their client’s deadlines automatically. We created an algorithm that simplifies the business logic Abundant gave us and create a Timeline object Icon tech solution 3.jpg

[Click here for an enlarged view]

Quality of Product

Project Deliverables

Topic of Interest Link
Project Management Minutes
Metrics
Risk Management
Change Management
Project Overview Project Overview
[Poster]
[Pitch Video]
Project Documentation Diagrams (Workflow, Solution Overview, Use Case, ER, Navigation)
Prototype
Testing Testing Document

Testing

User Testing Date Venue Number of Testers
User Testing 1 11 Oct 2017 Abundant Accounting's Office 2
User Testing 2 3 Nov 2017 Abundant Accounting's Office 3
User Testing 3 11 Nov 2017 Abundant Accounting's Office 3
User Testing 4 19 Jan 2018 Abundant Accounting's Office 3
User Testing 5 24 Jan 2018 Abundant Accounting's Office 3
User Testing 6 31 Jan 2018 Singapore Management University 30

Reflection

Team Reflection

The project has offered an enriching experience for the team. The team, in particular, has learnt the importance of effective communications with stakeholders to ensure that every part of development is aligned with the business requirements and the expectations.

Individual Reflection

Bernita
As a whole, FYP has taught me more about communicating with various stakeholders. Depending on the stakeholder, ideas have to be explained in such a way that they can understand. For example, a business person with no technical knowledge will not understand the limitations of a program. Another instance would be if we do not provide evidence of our hardwork or statements that we make, our words may not be well understood or worse, it may be breed mistrust. Overall, FYP has also pushed me to think out of the box and learn independently and as a team

Jae Hyeong
Through FYP, not only did I learn to work under pressure and time constraints, but I’ve also learnt to enjoy the process of overcoming challenges with my team. The project has also offered a great learning experience to apply the knowledge and skills we learn in school to a real life project. I learnt the importance of strong communication with sponsor to gather frequent user feedback to improve our application and following a detailed work schedule to ensure we meet our project goals/milestone on time.

Jagdish
My FYP journey has taught me 3 main lessons. Firstly, you are your only limit. During the past 9 months, I have challenged myself more than i could have imagined. Secondly, the importance of communication between all stakeholders cannot be underestimated. Lastly, TEAM means Together Everyone Achieves More but also a team is only as strong as its weakest player.

Min Oo
This past few months have been a deep learning curve for me. I learnt a lot in managing stakeholders, delivering the product on time, and finding the best architecture to suit the business process. I would say that these past few months have nurtured me and made myself confident as programming has not been an easy road for me.

Yu Mai
Looking back on our journey, I am confident if we were to redo everything with the knowledge we gained we could accomplish it all in a fraction of the time we have spent. It was a challenging, tiring yet fruitful challenge that has definitely given me invaluable experience, especially in the area of project management, software development and client relationship management.

  • The team has put in much effort to manage and accommodate the changes which we have raised
  • They have also took initiatives to further bring values to our business, which we appreciate very much
  • Testimonial videos from the employees of Abundant Accounting (Please turn on the Closed Caption):