HeaderSIS.jpg

IS480 Team wiki: 2013T1 Kungfu Panda Final Wiki

From IS480
Jump to navigation Jump to search
KP-NewHeader.PNG



Main WikiKP-Main Wiki Link.PNG
KP-WithClient2.PNG


Project Progress Summary

Final Presentation Slides Download!
Link to our Banch Teller Application: http://10.0.106.169:8080/SMUtBank_Teller/


Our team, Kungfu Panda, have been progressing well since the start of iteration 1; currently, we are in iteration 9 of our project. Although through the first half of the semester, we faced some changes requested by our client, our team faced them well. We were very focused. However, due to some last minute changes to our requirement, our team is currently rescheduling some task to the next iteration in order to complete the prioritized task first.

After Midterm, our team should have completed about 65% of the Branch Teller Application which includes the Party Customer, Deposit Account, Loan Account and Transaction use cases. We will be moving on to complete our X-Factor (Credit Approval and Teaching Tool) after our Midterm.

Project Highlights

  • Address feedbacks from our User Tests

Project Challenges

  • We were unable to get expert advice for our application (e.g. real branch teller)
  • Trying to get real branch teller as our users for User Test
  • Constant changes made to our requirement by our client
  • Dependency with the other FYP SMU tBank teams
  • Having to handle the deadlines to get the services up for the other teams and also services by them

Project Achievements

  • Complete the Application with all our client's requirement
  • Manage to secure one Branch Manager from a bank to try out our Application

Project Management

Project Status

Currently, our project is 100% completed.
Percentage of Development Tasks Complete = Number of Completed Tasks (in Green) / Total Number of Tasks

The below diagram shows a coloured diagram / map of development tasks that are completed and outstanding.
974×497px 1051×489px

Project Milestone

KP Milestone Table.PNG
KP FinalMilestone.PNG
Our Updated Project Schedule Download!

Project Schedule (Planned Vs Actual)

Project Metrics

Schedule Metrics

KP-ScheduleMetricsNew2.PNG



KP-Individule MetricsWk23.PNG



Below are some graphs which shows our schedule metrics for each iterations and for each individual members.
We have also calculated the average man hours per week each member put in.

KP-TeamScheduleMetricsWk23.PNG


KP-Individule MetricsGraphWk23.PNG


KP-ManhoursWk23.PNG



Bug Metrics

Bug Metric for FYP Week 30: 0 KP-GoodBugMetric.PNG
Below shown are the latest 25 bugs our team have encountered and is recorded in our Bug Tracker.
http://kfpbugtracker.no-ip.org/webissues

KP BugTrackerFinal.PNG


KP-BugMetricsNew2.PNG


KP-BugMFormula.PNG


KP BugMetric-a.PNG


KP BugMetric-b.PNG


KP BugMetric-c.PNG


Happiness Metric

KP-HappyMetirc.PNG
KP-HappyMetircScale.PNG


KP Happy Metric New.PNG

Technical Complexity

Frontend Complexity

KP-Frontend Complexity.PNG


Backend Complexity

Summary of Complexities Faced

  1. Data Integrity
    1. Ensured that insert statements made to the databases were ordered (serialized)
    2. Handled error flow should a transaction violation error occur
  2. Finance Formulas
    1. Had to research on finance formulas and understand the time value of money in order to complete this task
    2. Translated finance formulas (annuity formula) into Java code to be used in the Loan creation process
  3. Business Logic Errors
    1. Used XPath formulas within Tibco Designer to check for conditions such as insufficient balance or no such account and what to do subsequently
  4. Business Process Flow
    1. Entire business logic of the core banking systems is programmed inside the back-end services
    2. Deciding the order of events (which should come first etc.) in terms of business requirements was a key consideration in the design as well



Development using Tibco Enterprise Messaging Service (EMS)
Tibco Enterprise Messaging Service is a middleware product that implements the Java Messaging Service (JMS). Its flexible architecture helps simplify operational complexity by supporting the communication with a wide variety of technologies so that businesses can focus on the development and refinement of business requirements.

To develop on the EMS, our team had to use a sister product of Tibco, the Tibco Designer. This is a GUI-based developmental interface that allows developers to minimise coding whilst maintaining a high level of efficiency in capturing business process logic.

Sample Service: Account_Loan_Create Service KP-Account Loan Create.PNG


Quality of Application

Project Deliverables

Stage Specification Modules
Project Management Project Scope
Progress Overview
Risks
Metrics
Meeting Minutes
Design ER Diagram
General Architecture Diagram
Branch Teller Architecture Diagram
Testing UT 1 - Informal Testing
UT 2 - Deployment Exercise

Quality

Deployment

The following Branch Teller Functionalities have been deployed in the SMU tBank Server:
These represent 17 of 18 core functionalities.
- Party Create
- Party User PIN Create
- Party Read & Update
- Customer's Accounts Dashboard
- Account Deposit Read & Update
- Account Loan Create
- Manage Customer's Loan Accounts
- Account Loan Read & Update
- Transaction Deposit
- Transaction Withdrawal
- Transaction History Read
- Payment Credit Transfer Bill Payment
- Payment Loan Repayment Full
- Payment Loan Repayment Partial

The following Back End Services have been deployed in the SMU tBank Server:
These represent all 17 SMU Core Services.
- Party Customer Create
- Party Customer Read
- Party Customer Update
- Party Customer Read IC
- Account List Read
- Account Deposit Create
- Account Deposit Read
- Account Deposit Update
- Account Loan Create
- Account Loan Read
- Account Loan Update
- Transaction Deposit
- Transaction Withdrawal
- Transaction History Read
- Payment Credit Transfer Create
- Transaction FullLoanRepayment Create
- Payment Loan Repayment Partial

Testing

Link to our Our User Testing

Client Testing

Deployment Exercise

User Testing

Our team did 2 User Test on 25 Oct and 8 Nov respectively
Link to our Our UT 1 Results
Link to our Our UT 2 Results

The objective of the user test is to test

  • The usability of the application
  • Measure the time required for each test cases
  • To see the learning curve of our application


For each User Test, we invited 30 SMU students from different schools to be our user and these users are all first time users.
The users are left to execute the task while our team member observe and time them.

The scope we covered for these two User Test are:

  1. Create Customer and Update Customer Details
  2. Create and Update Deposit Account
  3. Create and Update Loan Account
  4. Deposit & Withdrawal
  5. Bill Payment
  6. Overview and create Ibanking Account
  7. Customer View (by NRIC and Customer ID)
  8. Transactions (Partial & Full Loans)
  9. View Transaction History
  10. Direct Debit Authorisation
  11. Update Customer Details


Time Result
This is the average timing we have collated for our UT 1 and UT 2 for each individual test case.
Our Team have notices that after making the change suggested in UT 1 by our users, the timing for UT 2 is faster as compared to UT 1.
KP UTAvgTiming.PNG

From the timing we have collated, we have also noticed that users tend to be faster at conducting a task they had done before.
Therefore, our application have a low learning curve, allowing users to familiarise the application very easily.
KP UTTimeDiff.PNG

Subjective Feedback
This is the subjective feedbacks we have received from both UT 1 and UT 2.
The score given were in the range of between 4 to 4.5, where
Score of 5 means: Very Easy and Very Good
Score of 1 means: Very Difficult and Very Bad
KP SubjectiveFeedback.PNG
Overall Comments

  • Information is well organised and legible
  • Fast and Responsive, Simple Design, Clear sections on left menu
  • Clean cut, Simple, Neat layout
  • The notification pop-up is useful
  • Colours are soothing to the eyes, and fonts are appropriate for such applications


Changes
KPChange-Color.PNG


UAT

At the end of our whole project, our team did a User Acceptance Test with our client to test whether the application is functional and that proper validation for each fields are correct.
This test cover all the requirement our client have given to us.
We are glad to pass all the task cases. More details can be found by clicking the link below. Link to our UAT with Client

Reflections

Team Reflection

KP-TeamPiclong.PNG


Individual Reflections

Geraldine Koon (Project Manager)
Through IS480, I learnt that in a project, everyone really needs to work closely together regardless of the different working style each member has. Things may not work out very well at the start, however, as we work along with one another strong points and help each another with our weak points, we will be able to progress well together. Also in this project, I realized that progress is impossible without changes. With all the feedback we received from our client and user testing, I see that the changes we made have improved our application, becoming a much better application as we progress.
All in all, I am very glad that my team have managed to come so far together and it is definitely a very memorable experience.


Jonathan Ho (Business Analyst)


Zhu Juntao (Usability Engineer)



James Lim (Quality Assurance)



Kevin Ng (Lead Developer)
SMU tBank's systems will continue to be developed and improved upon, it's important that we design our code with extensibility and modifiability in mind. This will assist future teams to improve upon our foundation to ensure SMU tBank remains a relevant and effective teaching and educational tool.


Tan Yao Guang (System Analyst)
As a developer in the team, I have learnt many technical skills ranging from developing using third party libraries like Drools, to using a GUI development environment (TIBCO). But then there were the other skills that I got to learn as well - there was the creating of a credit engine from scratch. This required us to do an extensive amount of research to find out how credit scoring was done in the industry, as well as finding out average loan amounts etc. These skills were not technical in nature and hence was a great add-on to the skills learnt for myself from this project.


KP-SponsorComment.PNG