HeaderSIS.jpg

Difference between revisions of "IS480 Team wiki: 2013T2 Zora Final Wiki"

From IS480
Jump to navigation Jump to search
 
(46 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
==Project Progress Summary==
 
==Project Progress Summary==
 +
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
! scope="col" width="200" bgcolor="#280063"|<font color="white">Deliverable</font>
 +
! scope="col" width="250" bgcolor="#280063"|<font color="white">Link</font>
 +
|- align="left"
 +
|bgcolor="#8275aa"|Final Presentation Slides
 +
|bgcolor="#dbdbdb"|
 +
*[[Media:Zora_Final_Presentation.pdf‎ ‎|v2: 21 Apr 2014]]
 +
|- align="left"
 +
|bgcolor="#8275aa"|Deployed Site Link
 +
|bgcolor="#dbdbdb"|
 +
*[http://hris.sterling-portal.com/ HRMS Portal]
 +
|}
  
Place your Final slides link and deployed site link here
 
  
For proposal, please see Requrements at the Project Deliverables. This will help us understand your scope. Note wiki policy [[Help:Contents|here]].
 
  
This page should NOT be too long. It should link to other pages in the IS480 team wiki. Do not repeat the proposal, midterm or other wiki information here. Highlight changes since [[IS480_Midterm_Wiki | midterm]].
+
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
  
Describe the project progress briefly here. Is the project completed? Link to the final presentation slides and videos.
+
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
Completion of project
 +
|bgcolor="#9fc1fe"|
 +
100% (Core, Secondary, Good to Have)<br/>
 +
[[IS480_Team_wiki:_2013T2_Zora_Scope|<font color="#069" face="">'''View detailed scope here'''</font>]]
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
Number of Iterations
 +
|bgcolor="#9fc1fe"|
 +
12<br/>
 +
[[IS480_Team_wiki:_2013T2_Zora_Project_Schedule|<font color="#069" face="">'''View detailed schedule here'''</font>]]
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
Number of Heuristics
 +
|bgcolor="#9fc1fe"|
 +
1
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
Number of User Testing
 +
|bgcolor="#9fc1fe"|
 +
3
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
Deployment
 +
|bgcolor="#9fc1fe"|
 +
*Deployed on client's server on [http://www.bluehost.com// bluehost] on 12 Apr 2014.
 +
*Handover to our client Sterling Engineering completed.
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
Changes since Mid-Term
 +
|bgcolor="#9fc1fe"|
 +
*Addition of new X-Factor to compensate for lack of technicality: Fraud Detection
 +
*Did not implement 2 good to have features: Audit Log, Portal Notification due to the new addition X-Factor.
 +
|}
 +
 
 +
===Milestones===
 +
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
! scope="col" width="375" bgcolor="#e2421e" |<font color="white">Completed Milestones</font>
 +
! scope="col" width="375" bgcolor="#d3362d" |<font color="white">Remaining Milestones</font>
 +
|- align="left"
 +
|bgcolor="#f9b39a"|
 +
*Heuristics 1 (18 Sep 2013)
 +
*User Test 1 (18 Oct 2013)
 +
*Proposal Submission (28 Oct 2013)
 +
*Acceptance Presentation (8 Nov 2013)
 +
*User Test 2 (3 Feb 2014)
 +
*Live Deployment 1 – Leave, Claim, Administration (19 Feb 2014)
 +
*Mid-Term Presentation (26 Feb 2014)
 +
*User Test 3 (17 Mar 2014)
 +
*Live Deployment 2 (12 Apr 2014)
 +
|bgcolor="#ee9b95"|
 +
*Final Presentation (21 Apr 2014)
 +
|}
  
===Project Highlights:===
+
===Completed Functionalities===
 +
{| align="center" cellpadding="2" style=  width="750px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Project Scope & Progress</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[IS480_Team_wiki:_2013T2_Zora_Scope|<font color="#069" face="">'''View detailed completed features '''</font>]]
 +
|}
 +
 +
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
! scope="col" width="500" bgcolor="#bd103d"|<font color="white">Core Modules</font>
 +
! scope="col" width="500" bgcolor="#861b47"|<font color="white">Secondary Modules</font>
 +
! scope="col" width="500" bgcolor="#bd103d"|<font color="white">Good to Have Modules</font>
 +
|- align="left"
 +
|bgcolor="#bd9ea6"|
 +
*Basic Remuneration
 +
*Claims
 +
*Leave
 +
*Basic System Administration
 +
*ACL
 +
|bgcolor="#d799ae"|
 +
*Training & Development
 +
*Performance Management & Appraisal
 +
*Claim Analysis Report
 +
*Advanced Remuneration
 +
*X-Factor: Fraudulent Claim Detection
 +
|bgcolor="#bd9ea6"|
 +
*Manage Performance Management
 +
|}
  
What unexpected events occurred and how were they handled?
 
*A team member left the project and dropped the course
 
*List of requirement changes
 
** CRUD items replaced with CU/Sync/Archive items
 
** Business analytics replaced with iPad client
 
*Took 8 weeks to learn Ruby on Rails
 
*etc.
 
Be brief. A couple of sentences on the event and another couple on what was done is sufficient. Do not repeat the next sub sections. If there are no highlights, remove this section
 
  
===Project Challenges:===
+
===Project Highlights===
 +
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
! scope="col" width="250" bgcolor="#89695e"| <font color="white">Issue Description</font>
 +
! scope="col" width="250" bgcolor="#89695e"|<font color="white">Consequences</font>
 +
! scope="col" width="250" bgcolor="#89695e"|<font color="white">Mitigation Plan</font>
 +
|- align="left"
 +
|bgcolor="#cedad1"|Client request for 2 additional features in leave module and claim module.
 +
|bgcolor="#cedad1"|If not handled appropriately, might result in big delay in schedule and project not being able to complete by final presentation.
 +
|bgcolor="#cedad1"|
 +
*Using the [[IS480_Team_wiki:_2013T2_Zora_Metrics#Change_Management|<font color="#069" face="">'''Change Management Metric'''</font>]] , we negotiated with the sponsor and managed to reject the change in claim and greatly reduced the scope of the change in leave module.
  
Describe areas of the project that were particularly difficult and how they were dealt with, whether successfully or not. Again, a few sentences are enough. If there are no challenges, remove this section.
+
|}
  
 
===Project Achievements:===
 
===Project Achievements:===
  
Methods, technologies, processes, teamwork, etc. which were particularly successful – highlight things which worked very well towards completing the project. A bulleted list of one to two sentences each will do. If there are no achievement, remove this section.
+
*Able to get users to use our early live deployed copy with 41 Claims, 14 Leaves being submitted as of 13 April 2014.
 +
*Conducted a training session on 17 April 2014
  
 
==Project Management==
 
==Project Management==
  
Provide more details about the status, schedule and the scope of the project. Describe the complexity of the project.
+
{| align="center" cellpadding="2" style=  width="750px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Project Schedule</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[IS480_Team_wiki:_2013T2_Zora_Project_Schedule|<font color="#069" face="">'''View Full Project Schedule Details'''</font>]]
 +
|}
  
===Project Schedule (Plan Vs Actual):===
+
{| align="center" cellpadding="2" style= width="750px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Project Scope & Progress</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[IS480_Team_wiki:_2013T2_Zora_Scope|<font color="#069" face="">'''View Full Project Scope Details'''</font>]]
 +
|}
  
Compare the project plan during midterm with the actual work done at this point. Briefly describe a summary here. Everything went as plan, everything has changed and the team is working on a new project with new sponsors or the supervisor is missing. A good source for this section comes from the project weekly report.
+
{| align="center" cellpadding="2" style=  width="750px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Planned VS Actual Schedule</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[IS480_Team_wiki:_2013T2_Zora_Project_Schedule#Planned_VS_Actual_.28Finals.29:_Phase_5_.26_Phase_6|<font color="#069" face="">'''View Planned VS Actual Schedule Details (Finals)'''</font>]]
 +
|}
  
Provide a comparison of the plan and actual schedule. Has the project scope expanded or reduced? You can use the table below or your own gantt charts.
+
{| align="center" cellpadding="2" style= width="750px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Project Risks</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[IS480_Team_wiki:_2013T2_Zora_Risks|<font color="#069" face="">'''View Project Risks'''</font>]]
 +
|}
  
{| border="1"
+
===Project Schedule===
|- style="background:blue; color:white"  
+
{| align="center" cellpadding="2" style=  width="850px"
|| Iterations
+
|- align="left"
|colspan="2" align="center"| Planned
+
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Final Project Timeline</font>
|colspan="2" align="center"| Actual
+
|- align="left"
|| Comments
+
! scope="col" bgcolor="#ffffff"| [[Image:expanded_project_schedule_overview_actual.png|850px|center]]
|-
+
|}
  
|rowspan="2"| 1
+
===Project Metrics:===
|| Customer CRUD
+
====Schedule Metric====
|| 1 Sept 2010
+
{| align="center" cellpadding="2" style=  width="750px"
||
+
|- align="left"
|| 25 Aug 2010
+
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Schedule Metrics</font>
|| Fiona took the Sales CRUD as well.
+
|- align="left"
|-
+
! scope="col"  bgcolor="#ffffff"| [[Image:ZORA ScheduleMetricScore.jpg|800px|center]]
 +
|}
  
|| Trend Analytic
+
====Highlights of Project Schedule====
|| 1 Sept 2010
+
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
||
+
|- align="left"
|| 15 Sept 2010
+
! scope="col" width="50" bgcolor="#a7b1aa"| <font color="white">Iteration</font>
|| Ben is too busy and pushed iteration 1 back
+
! scope="col" width="50" bgcolor="#a7b1aa"|<font color="white">Category</font>
|-
+
! scope="col" width="650" bgcolor="#a7b1aa"|<font color="white">Reasons</font>
 
+
! scope="col" width="650" bgcolor="#a7b1aa"|<font color="white">Action Taken</font>
|rowspan="2"| 2
+
|- align="left"
|| User tutorial
+
|bgcolor="#cedad1"|2
|| 1 Oct 2010
+
|bgcolor="#cedad1"|C (SM > 1.1)
|colspan="2"|  
+
|bgcolor="#cedad1"|
|| Removed proposed by Ben
+
*Apply Leave: It is more complex that it initially was anticipated. Leave consist of annual, maternity, unpaid and others. All of which requires different business rules. We took longer than we expected for this section.
|-
+
*Upload file for Leave & Claim: It is of a high difficulty level for the team due to the lack of knowledge and time to research.
 
+
|bgcolor="#cedad1"|
|colspan="2"|  
+
*PM shifted incomplete tasks to other iteration.
|| Psycho analysis
+
*All other tasks are being reviewed to ensure that they are broken down to the simplest task possible.
|| 1 Oct 2010
+
|- align="left"
|| New module proposed by sponsor
+
|bgcolor="#cedad1"|7
 +
|bgcolor="#cedad1"|C (SM > 1.1)
 +
|bgcolor="#cedad1"|
 +
*User Test: Time is taken up to do intensive test on the deployed application using the user test task instructions.
 +
*Other commitments: Team members have other submissions and presentation with other modules during iteration 7. As such, some tasks are delayed.
 +
|bgcolor="#cedad1"|
 +
*Drop of previous X-Factor of claim analysis interactive graph to free up manpower resources
 +
*Allocate time to do intensive user test using task instructions in the user’s environment before the next user testing
 +
*PM to find out commitments in other modules other than FYP for later iterations and reschedule tasks accordingly/re-allocate tasks
 
|}
 
|}
  
===Project Metrics:===
+
[[IS480_Team_wiki:_2013T2_Zora_Metrics#Schedule_Metrics|<font color="#069" face="">'''View more details on schedule metric here'''</font>]]
  
Summary of analysis for the metrics collected. You may refer to another page for the details about the metrics and how it is collected.
+
====Bug Metric====
 
 
====Bug Metrics====
 
  
 
{| align="center" cellpadding="2" style=  width="550px"
 
{| align="center" cellpadding="2" style=  width="550px"
Line 87: Line 206:
 
|}
 
|}
  
===Technical Complexity:===
+
[[IS480_Team_wiki:_2013T2_Zora_Metrics#Bug_Metric|<font color="#069" face="">'''View more details on bug metric here'''</font>]]
 +
 
 +
====Change Management Plan====
 +
2 new additional changes updated in the change tracker:
 +
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
! scope="col" width="50" bgcolor="#800000" |<font color="white">Iteration</font>
 +
! scope="col" width="400" bgcolor="#800000" |<font color="white">Feature Description</font>
 +
! scope="col" width="500" bgcolor="#800000" |<font color="white">Function Feasibility</font>
 +
! scope="col" width="500" bgcolor="#800000" |<font color="white">How does it value add?</font>
 +
! scope="col" width="200" bgcolor="#800000" |<font color="white">Priority level</font>
 +
 
 +
|- align="center"
 +
|bgcolor="#f9b39a"|11
 +
|align="center" bgcolor="#f9b39a"|
 +
Additional Features for Leave
 +
* Generate Leave Report
 +
|align="left" bgcolor="#f9b39a"|
 +
*Include 1 additional page for HR Personnel to view all the leave applied
 +
*Filtering to of the dates to be done
 +
*Information include leave details, date duration, applied by whom, approved/rejected by whom, status
 +
|align="left" bgcolor="#f9b39a"|
 +
*HR can view the different leave of all employee at one go
 +
|align="left" bgcolor="#f9b39a"|'''3''' <br/>(Instead of creating one additional page, allow HR personnel to access to feature "View Approved & Rejected Leave"
  
Describe and list the technical complexity of your project in order of highest complexity first. For example, deploying on iPhone using Objective-C, customizing Drupal with own database, quick search for shortest flight path, database structure, etc.
 
  
==Quality of product==
+
|- align="center"
 +
|bgcolor="#f9b39a"|11
 +
|align="center" bgcolor="#f9b39a"|
 +
Additional Features for Claims
 +
* Claim summary report
 +
|align="left" bgcolor="#f9b39a"|
 +
*Include 1 additional page for HR Personnel to view the summary of all claims
 +
*Filtering to of the dates, claim type, claim name to be done
 +
*Information include claim date, approved by whom, validated by whom, receipt link
 +
|align="left" bgcolor="#f9b39a"|
 +
*HR can view all the claims in a page
 +
|align="left" bgcolor="#f9b39a"|'''4''' <br/>(Rejection of change due to lack of time & high complexity)
 +
|}
  
Provide more details about the quality of your work. For example, you designed a flexible configurable system using XML.config files, uses Strategy Design Pattern to allow plugging in different strategy, implement a regular expression parser to map a flexible formula editor, etc.
+
[[IS480_Team_wiki:_2013T2_Zora_Metrics#Change_Management|<font color="#069" face="">'''View more details on the Change Management Plan & Results'''</font>]]
  
===Project Deliverables:===
+
===Technical Complexity===
 +
{| cellpadding="0" style="margin: 1em auto 1em auto;" "height: 317px"  width="750px"
 +
|- align="left"
 +
|bgcolor="#cedad1"|Application
 +
|bgcolor="#cedad1"|
 +
*Codeigniter Framework
 +
*PHP 5.2.17
 +
*Apache
 +
*TCPDF
 +
*PHPass
 +
|
 +
|- align="left"
 +
|bgcolor="#cedad1"|Browser
 +
|bgcolor="#cedad1"|
 +
*HTML
 +
*CSS
 +
*Javascript
 +
*Jquery Library
 +
*Jquery Validation Plugin
 +
|
 +
|- align="left"
 +
|bgcolor="#cedad1"|Database
 +
|bgcolor="#cedad1"|
 +
*MySQL 5.1.66
 +
*phpMyAdmin
 +
|}
  
List the artifacts produced for this project. The entire deliverable can be submitted in a separate thumb drive, web repository or place in the IS480 team wiki.
+
*One challenge faced is the integration of various libraries into our application. We would need to figure out how to utilise the various libraries. While there are documentation for the libraries, they are sometimes not adequate when we are debugging our application
 +
*The 2 libraries we have used so far is ''TCPDF'' and ''PHPass''
 +
**''TCPDF'' is used to generate PDF documents such as claim slips, pay slips etc.
 +
**''PHPass'' is used for password hashing and encryption
  
{| border="1"
 
|- style="background:blue; color:white"
 
|align="center"| Stage
 
|align="center"| Specification
 
|align="center"| Modules
 
|-
 
  
|rowspan="2"| Project Management
+
{| align="center" cellpadding="2" style=  width="550px"
|| Minutes
+
|- align="left"
|| Sponsor weeks -10 -5 3 7 Supervisor weeks -2 3 5 7
+
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Integration of various modules</font>
|-
+
|- align="left"
 +
! The various modules of our application are not individual silos and they are tightly integrated with each other. In order to manage the challenge of sharing data, we have developed extensive documentation for all the tables in our database. An example is shown in the picture below. 
 +
|- align="left"
 +
! [[File:Zora Final db documentation.jpg|550px|center]]<br>
 +
|}
  
|| Metrics
 
|| Bug metrics
 
|-
 
  
|| Requirements
 
|| Story cards
 
|| [http://www.agilemodeling.com/artifacts/userStory.htm CRUD Customer], [http://www.agilemodeling.com/artifacts/userStory.htm Trend Analytic]
 
|-
 
  
|rowspan="4"| Analysis
+
{| align="center" cellpadding="2" style=  width="550px"
|| Use case
+
|- align="left"
|| [http://en.wikipedia.org/wiki/Use_case_diagram overall]
+
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Managing Live Data</font>
|-
+
|- align="left"
 +
! As we have deployed our application early, we also faced the challenge of handling existing data our application as we make changes to our database tables. We use the Beyond Compare software to identify changes in order to ensure smooth migration.   
 +
|- align="left"
 +
! [[File:Zora Final Managing real data.jpg|550px|center]]<br>
 +
|}
 +
{| align="center" cellpadding="2" style=  width="550px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">k-nearest neighbor algorithm</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[Image:Zora Final kNN.jpg|550px|center]]
 +
|- align="left"
 +
!
 +
We have used the k-nearest neighbor (kNN) algorithm to classify and detect fraudulent claims. Based on past claims data, we have built a training set on fraudulent claims. When a claim is submitted, our application will calculate the distance of the new claim in relation to all the claims that is already classified. Based on the nearest k - neighbours, the algorithm will classify the claim. As shown in the picture above, where k is 3, the new claim is classified as fraudulent as 2 out of the 3 neighbours is fraudulent.
  
|| System Sequence Diagram
 
|| [http://en.wikipedia.org/wiki/System_Sequence_Diagram client], [http://en.wikipedia.org/wiki/System_Sequence_Diagram server]
 
|-
 
  
|| [http://en.wikipedia.org/wiki/Business_Process_Modeling_Notation Business Process Diagram]
+
Calculating distance:
||
 
|-
 
  
|| Screen Shots
+
We have used the following variables in calculating distance:
|| CRUD Customer, Trend Analysis
 
|-
 
  
|rowspan="2"| Design
+
*Claim amount
|| [http://en.wikipedia.org/wiki/Entity-relationship_model ER Diagram]
+
*Income of claimer
|| 1, 2, 3
+
*Claim type
|-
+
*Department of claimer
 +
*Day of date incurred
  
|| [http://en.wikipedia.org/wiki/Class_diagram Class Diagram]
 
|| [http://en.wikipedia.org/wiki/Class_diagram 1], [http://en.wikipedia.org/wiki/Class_diagram 2], [http://en.wikipedia.org/wiki/Class_diagram 3]
 
|-
 
  
 +
Each variable is normalised to ensure that all variables would have equal weight and the distance will not be skewed by variables with large values. After normalising, each variables are given different weighs based on their significance in determining the possibility of claim fraud.
 +
|}
  
|| Testing
+
<br/>
|| Test plan
 
|| [[IS480_Midterm_Wiki#Testing: | instructions]]
 
|-
 
  
|rowspan="3"| Handover
+
==Quality of product==
|| Manuals
 
|| User tutorial, Developer manual, Setup manual
 
|-
 
  
|| Code
+
===Design Considerations===
|| client server
+
*We have chosen to use Twitter Bootstrap for our User Interface (UI) as users a familiar with the layout of the design.
|-
+
*Our team can move away from reinventing the wheel and focus on providing our users a more intuitive interface instead.
 +
* In the design of our UI, we use the '''Nielsen's 10 heuristics''' as our guideline
  
|| [http://en.wikipedia.org/wiki/Deployment_diagram Deployment Diagram]
+
{| cellpadding="0" style="margin: 1em auto 1em auto;" "height: 317px"  width="750px"
|| [[IS480_Midterm_Wiki#Deployment: | instructions]]
+
|- align="left"
 +
|bgcolor="#a7b1aa"|<font color="white">Nielsen's Heuristics </font>
 +
|bgcolor="#a7b1aa"|<font color="white">Screenshot</font>
 +
|
 +
|- align="left"
 +
|bgcolor="#cedad1"|
 +
*Error prevention
 +
*Help users recognize, diagnose, and recover from errors
 +
|bgcolor="#cedad1"|
 +
[[Image:Zora midterm errorprevention.jpg|300px|center]]
 +
|
 +
|- align="left"
 +
|bgcolor="#cedad1"|
 +
*User control and freedom
 +
|bgcolor="#cedad1"|
 +
[[Image:Zora midterm redo.jpg|150px|center]]
 
|}
 
|}
  
Not all parts of the deliverables are necessary but the evidence should be convincing of the scope.
+
===Security considerations===
 +
*Password salting and hashing
 +
**Using PHpass library, each password is assigned a unique salt and hash
 +
*Cross Site Scripting Validation
 +
**Validation is done at input to prevent cross site scripting
 +
*Dynamic Access Control
 +
 
 +
=== Maintainability===
 +
 
 +
*Coding conventions & standards carefully adhered to. Our framework has a [http://ellislab.com/codeigniter/user-guide/general/styleguide.html| style guide] that we follow.
 +
*We have 3 layers of abstraction within our application - Views, Controllers & Model
 +
 
 +
<br/>'''MVC Model:'''
 +
[[Image:Zora architecture.png|400px|center]]
  
=== Quality:===
 
  
Explain the quality attributes (non functional) of your project deliverables. Have you designed the architecture, use a design pattern, etc? Does your architecture address scalability, performance, reliability, availability, fault tolerance, usability, etc. Does your design address maintainability, flexibility, configurability, etc. Be brief here but you can link to diagrams or code detail pages. Do not repeat the technical complexity part, link to it if necessary.
+
<br/>'''Architecture Model:'''
 +
[[Image:Zora architecture real.png|400px|center]]
 +
 
 +
===Project Deliverables:===
 +
 
 +
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
! scope="col" width="150" bgcolor="#280063"|<font color="white">Stage</font>
 +
! scope="col" width="350" bgcolor="#280063"|<font color="white">Specification</font>
 +
! scope="col" width="250" bgcolor="#280063"|<font color="white">Links</font>
 +
|- align="left"
 +
|rowspan="2" bgcolor="#8275aa"|Project Management
 +
|bgcolor="#dbdbdb"|Meeting Minutes
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_Meeting_Minutes|<font color="#069" face="">'''Meeting Minutes'''</font>]]
 +
|- align="left"
 +
|bgcolor="#dbdbdb"|Metrics
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_Metrics|<font color="#069" face="">'''Metrics'''</font>]]
 +
|- align="left"
 +
|bgcolor="#8275aa"|Requirement Gathering
 +
|bgcolor="#dbdbdb"|Business Requirements
 +
|bgcolor="#dbdbdb"|
 +
[[IS480_Team_wiki:_2013T2_Zora_Business_Requirements|<font color="#069" face="">'''Business Requirements'''</font>]] 
 +
|- align="left"
 +
|rowspan="4" bgcolor="#8275aa"|Analysis
 +
|bgcolor="#dbdbdb"|Use Case
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_Business_Requirements|<font color="#069" face="">'''Business Requirements'''</font>]]
 +
|- align="left"
 +
|bgcolor="#dbdbdb"|System Sequence Diagram
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_System_Architecture|<font color="#069" face="">'''System Architecture'''</font>]]
 +
|- align="left"
 +
|bgcolor="#dbdbdb"|Business Process Diagram
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_Business_Requirements|<font color="#069" face="">'''Business Requirements'''</font>]]
 +
|- align="left" 
 +
|bgcolor="#dbdbdb"|UI Protoypes
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_UI_Prototypes|<font color="#069" face="">'''UI Prototypes'''</font>]]
 +
|- align="left"
 +
|rowspan="2" bgcolor="#8275aa"|Design
 +
|bgcolor="#dbdbdb"|ER Diagram
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_System_Architecture|<font color="#069" face="">'''System Architecture'''</font>]]
 +
|- align="left"
 +
|bgcolor="#dbdbdb"|Class Diagram
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_System_Architecture|<font color="#069" face="">'''System Architecture'''</font>]]
 +
|- align="left"
 +
|bgcolor="#8275aa"|Testing
 +
|bgcolor="#dbdbdb"|Test Plans
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_Testing|<font color="#069" face="">'''Testing'''</font>]]
 +
|- align="left"
 +
|rowspan="2" bgcolor="#8275aa"|Handover
 +
|bgcolor="#dbdbdb"|Manuals
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_Business_Requirements|<font color="#069" face="">'''User Manuals'''</font>]]
 +
|- align="left" 
 +
|bgcolor="#dbdbdb"|Deployment Diagram
 +
|bgcolor="#dbdbdb"|[[IS480_Team_wiki:_2013T2_Zora_System_Architecture|<font color="#069" face="">'''System Architecture'''</font>]]
 +
|}
  
 
===Deployment:===
 
===Deployment:===
  
In an iterative approach, ready to use system should be available (deployed) for client and instructions to access the system described here (user name). If necessary, provide a [[IS480_Final_Wiki#Project_Deliverables: | deployment diagram link]].
+
*Deployed on client's server on [http://www.bluehost.com// bluehost] on 12 Apr 2014.
 +
*Deployed version consist of ALL modules that we have coded for the entire iteration.
 +
*Handover to our client Sterling Engineering completed.
  
===Testing:===
+
==Testing==
  
 
====User Test 3====
 
====User Test 3====
Line 323: Line 575:
 
|}
 
|}
  
==Reflection==
+
{| align="center" cellpadding="2" style= width="750px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">User Test 3 Analysis</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[Media:User Test 3 Analysis.pdf|<font color="#069" face="">'''
 +
View Full Analysis. '''</font>]]
 +
|}
 +
 
 +
===Bug Log===
 +
{| align="center" cellpadding="2" style=  width="500px"
 +
|- align="left"
 +
! scope="col"  bgcolor="#4D4D4D"| <font color="white">Bug Log</font>
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[Image:Zora Final Log Metric.png|900px|center]]
 +
|- align="left"
 +
! scope="col"  bgcolor="#ffffff"| [[Media:Bug Log & Metrics.xlsx‎|Click here to view the Bug Log & Metrics file.]]
 +
|}
  
Compile common lessons and reflection for the team and for each team member. Be brief.
+
==Reflections==
 +
===Team Reflection===
 +
{| cellpadding="0" style="margin: 1em auto 1em auto" "height: 317px"  width="765px"
 +
| scope="col" width="200" bgcolor="#a7b1aa"|[[Image:zora_team_photo.jpg]]
 +
| scope="col" width="550" bgcolor="#cedad1"|
 +
Throughout the course of the project, we experienced many ups and downs as a team. One of the key takeaways is the need for change management, the importance of documenting client changes along the way. Teamwork, in supporting and motivating each other during challenging and difficult times also proved to be especially critically in seeing the project to its completion.
 +
|}
  
===Team Reflection:===
+
===Individual Reflections===
  
Key lessons learned – indicating where the team improved, or would do things differently next time. You may refer to the learning outcome summary in your proposal. A very short checklist style will suffice. It would be very convincing if the knowledge is share at the wiki [[Knowledge_base | knowledge base]] and linked here.
+
{| cellpadding="2" style="margin: 1em auto 1em auto" "height: 100px"  width="750px"
 +
|- align="left"
 +
|bgcolor="#FFF"|
 +
[[Image:zora_learning_fiona.jpg|250px|center]]
 +
|bgcolor="#FFF"|
 +
[[Image:zora_learning_kk.jpg|250px|center]]
 +
|bgcolor="#FFF"|
 +
[[Image:zora_learning_yunxi.jpg|250px|center]]
 +
|- align="left"
 +
|scope="col" width="250" bgcolor="#1c90bf"|<font color="white">Fiona Woo</font>
 +
|scope="col" width="250" bgcolor="#4474e0"|<font color="white">Lim Ken Khoon</font>
 +
|scope="col" width="250" bgcolor="#43459c"|<font color="white">Tan Yun Xi</font>
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
*Through IS480, I have learnt to be an independent learner by picking up good project management skills from projects done by our seniors.
 +
*Being a project manager made me understand the importance in seeking common concensus from my fellow groupmates in whatever decision I have made. I have also come to understand that maintaining the morale and camaraderie of the team is essential for the success of the team.
 +
*The challenge that I face the most is understanding the capabilities and schedule of each team member so as to give a realistic deadline to each tasks. The use of metrics and the weekly meetings to update project progress really aid for me to overcome this challenge.
 +
|bgcolor="#9fc1fe"|
 +
*IS480 gave me a chance to step out of my comfort zone. As a lead developer, I often had to be a trailblazer by researching on new technologies, weigh their cost and benefits in order to decide whether to implement them. As such, I am now more versatile as I become more receptive towards unexplored technologies.
 +
*I have also honed my mentoring skills as I not only have to introduce any new technologies that I have researched to my team members, I would also need to assist them in adopting the new technologies.
 +
*However, it is has not been a smooth journey throughout the IS480 journey. There was the time where I faced problems in implementing several technologies in data visualization for data analytics. This was solved by exploring other alternatives and close communication with the team, especially, project manager.
 +
|bgcolor="#a8b5d8"|
 +
*Due to the various project scopes, we took a substantial amount of time to gather business requirements. I learned the need to document business requirements properly which will allow both the developers and the client to understand better on how the project will turn out. Also, the hi-fidelity prototype in the business requirement made it easy for both parties to be on the same frequency and picture the upcoming system more easily.
 +
 
 +
*I also learned that even though a business requirement document was prepared, the document serves just as a guideline. Throughout the development phrases, as the developers who have more expertise in developing a system, we should initiate some system changes that were not stated in the document if we foresee that it will aid the client in their business activities and is not hard to implement.
 +
 
 +
*One of the toughest challenges was to meet the client’s changing/new requirements yet with the limited amount of time we have to develop. I learned the need to ensure our system is flexibility so that we would be able to cater these changes more effectively.  
  
===Individual Reflection:===
+
|- align="left"
 +
|bgcolor="#FFF"|
 +
[[Image:zora_learning_yixian.jpg|250px|center]]
 +
|bgcolor="#FFF"|
 +
[[Image:zora_learning_meizhen.jpg|250px|center]]
 +
|bgcolor="#FFF"|
 +
[[Image:zora_learning_darryl.jpg|250px|center]]
 +
|- align="left"
 +
|bgcolor="#1c90bf"|<font color="white">Lee Yi Xian</font>
 +
|bgcolor="#4474e0"|<font color="white">Tan Mei Zhen</font>
 +
|bgcolor="#43459c"|<font color="white">Darryl Leong</font>
 +
|- align="left"
 +
|bgcolor="#4dbfd9"|
 +
*Through IS480, I had learnt the important of building a system with flexible concept/design on the backend, to allow easy amendment to changes and new requirements and programming framework became very handy in such situation.
 +
*The challenge I faced the most is getting the missing piece of requirements into a workable system. As our project is built on the agile methodology, changes and new requirements come at different phase. Therefore, I have to ensure that the database design is flexible enough to capture the new data and also striking a balance between ease of accessing to data and minimize data redundancy.
 +
|bgcolor="#9fc1fe"|
 +
*Being a quality analyst, I had learnt that testing is an essential procedure that should not be eliminated or avoided when developing an application, especially user test. Without user test, there is no way the application that we built can be perfect because as developers, we can never fully understand the real needs of the user until they tried the system themselves and provide us feedbacks to improve accordingly.
 +
*The challenge that I faced the most is the dilemma I was in to choose between the quality of our system and to implement all the feedback provided by our users given our tight schedule. The use of a response plan and change tracker aids me in overcoming my challenge.
 +
|bgcolor="#a8b5d8"|
 +
*Learnt that system UI design requires deep, intimate understanding of the client’s business processes and environment .
 +
*I have also realized that prototyping plays an important part in being able to observe how users interact with the users.
  
Describe in a paragraph, the key areas of learning or improvement. These should be personal areas of growth or learning. Each individual should list his/her effort, responsibility, actual contributions and personal reflection. Do not repeat team project contributions or member roles. Link if necessary.
+
|}
  
 
===Sponsor Comment:===
 
===Sponsor Comment:===
Sometimes, the client writes a report to feedback on the system; this sponsor report can be included or linked from here.
+
-Watch this space-

Latest revision as of 16:09, 21 April 2014

Project Progress Summary

Deliverable Link
Final Presentation Slides
Deployed Site Link


Completion of project

100% (Core, Secondary, Good to Have)
View detailed scope here

Number of Iterations

12
View detailed schedule here

Number of Heuristics

1

Number of User Testing

3

Deployment

  • Deployed on client's server on bluehost on 12 Apr 2014.
  • Handover to our client Sterling Engineering completed.

Changes since Mid-Term

  • Addition of new X-Factor to compensate for lack of technicality: Fraud Detection
  • Did not implement 2 good to have features: Audit Log, Portal Notification due to the new addition X-Factor.

Milestones

Completed Milestones Remaining Milestones
  • Heuristics 1 (18 Sep 2013)
  • User Test 1 (18 Oct 2013)
  • Proposal Submission (28 Oct 2013)
  • Acceptance Presentation (8 Nov 2013)
  • User Test 2 (3 Feb 2014)
  • Live Deployment 1 – Leave, Claim, Administration (19 Feb 2014)
  • Mid-Term Presentation (26 Feb 2014)
  • User Test 3 (17 Mar 2014)
  • Live Deployment 2 (12 Apr 2014)
  • Final Presentation (21 Apr 2014)

Completed Functionalities

Project Scope & Progress
View detailed completed features
Core Modules Secondary Modules Good to Have Modules
  • Basic Remuneration
  • Claims
  • Leave
  • Basic System Administration
  • ACL
  • Training & Development
  • Performance Management & Appraisal
  • Claim Analysis Report
  • Advanced Remuneration
  • X-Factor: Fraudulent Claim Detection
  • Manage Performance Management


Project Highlights

Issue Description Consequences Mitigation Plan
Client request for 2 additional features in leave module and claim module. If not handled appropriately, might result in big delay in schedule and project not being able to complete by final presentation.
  • Using the Change Management Metric , we negotiated with the sponsor and managed to reject the change in claim and greatly reduced the scope of the change in leave module.

Project Achievements:

  • Able to get users to use our early live deployed copy with 41 Claims, 14 Leaves being submitted as of 13 April 2014.
  • Conducted a training session on 17 April 2014

Project Management

Project Schedule
View Full Project Schedule Details
Project Scope & Progress
View Full Project Scope Details
Planned VS Actual Schedule
View Planned VS Actual Schedule Details (Finals)
Project Risks
View Project Risks

Project Schedule

Final Project Timeline
Expanded project schedule overview actual.png

Project Metrics:

Schedule Metric

Schedule Metrics
ZORA ScheduleMetricScore.jpg

Highlights of Project Schedule

Iteration Category Reasons Action Taken
2 C (SM > 1.1)
  • Apply Leave: It is more complex that it initially was anticipated. Leave consist of annual, maternity, unpaid and others. All of which requires different business rules. We took longer than we expected for this section.
  • Upload file for Leave & Claim: It is of a high difficulty level for the team due to the lack of knowledge and time to research.
  • PM shifted incomplete tasks to other iteration.
  • All other tasks are being reviewed to ensure that they are broken down to the simplest task possible.
7 C (SM > 1.1)
  • User Test: Time is taken up to do intensive test on the deployed application using the user test task instructions.
  • Other commitments: Team members have other submissions and presentation with other modules during iteration 7. As such, some tasks are delayed.
  • Drop of previous X-Factor of claim analysis interactive graph to free up manpower resources
  • Allocate time to do intensive user test using task instructions in the user’s environment before the next user testing
  • PM to find out commitments in other modules other than FYP for later iterations and reschedule tasks accordingly/re-allocate tasks

View more details on schedule metric here

Bug Metric

Bug Score Tracking
Zora Final Bug Metric.png

View more details on bug metric here

Change Management Plan

2 new additional changes updated in the change tracker:

Iteration Feature Description Function Feasibility How does it value add? Priority level
11

Additional Features for Leave

  • Generate Leave Report
  • Include 1 additional page for HR Personnel to view all the leave applied
  • Filtering to of the dates to be done
  • Information include leave details, date duration, applied by whom, approved/rejected by whom, status
  • HR can view the different leave of all employee at one go
3
(Instead of creating one additional page, allow HR personnel to access to feature "View Approved & Rejected Leave"


11

Additional Features for Claims

  • Claim summary report
  • Include 1 additional page for HR Personnel to view the summary of all claims
  • Filtering to of the dates, claim type, claim name to be done
  • Information include claim date, approved by whom, validated by whom, receipt link
  • HR can view all the claims in a page
4
(Rejection of change due to lack of time & high complexity)

View more details on the Change Management Plan & Results

Technical Complexity

Application
  • Codeigniter Framework
  • PHP 5.2.17
  • Apache
  • TCPDF
  • PHPass
Browser
  • HTML
  • CSS
  • Javascript
  • Jquery Library
  • Jquery Validation Plugin
Database
  • MySQL 5.1.66
  • phpMyAdmin
  • One challenge faced is the integration of various libraries into our application. We would need to figure out how to utilise the various libraries. While there are documentation for the libraries, they are sometimes not adequate when we are debugging our application
  • The 2 libraries we have used so far is TCPDF and PHPass
    • TCPDF is used to generate PDF documents such as claim slips, pay slips etc.
    • PHPass is used for password hashing and encryption


Integration of various modules
The various modules of our application are not individual silos and they are tightly integrated with each other. In order to manage the challenge of sharing data, we have developed extensive documentation for all the tables in our database. An example is shown in the picture below.
Zora Final db documentation.jpg


Managing Live Data
As we have deployed our application early, we also faced the challenge of handling existing data our application as we make changes to our database tables. We use the Beyond Compare software to identify changes in order to ensure smooth migration.
Zora Final Managing real data.jpg

k-nearest neighbor algorithm
Zora Final kNN.jpg

We have used the k-nearest neighbor (kNN) algorithm to classify and detect fraudulent claims. Based on past claims data, we have built a training set on fraudulent claims. When a claim is submitted, our application will calculate the distance of the new claim in relation to all the claims that is already classified. Based on the nearest k - neighbours, the algorithm will classify the claim. As shown in the picture above, where k is 3, the new claim is classified as fraudulent as 2 out of the 3 neighbours is fraudulent.


Calculating distance:

We have used the following variables in calculating distance:

  • Claim amount
  • Income of claimer
  • Claim type
  • Department of claimer
  • Day of date incurred


Each variable is normalised to ensure that all variables would have equal weight and the distance will not be skewed by variables with large values. After normalising, each variables are given different weighs based on their significance in determining the possibility of claim fraud.


Quality of product

Design Considerations

  • We have chosen to use Twitter Bootstrap for our User Interface (UI) as users a familiar with the layout of the design.
  • Our team can move away from reinventing the wheel and focus on providing our users a more intuitive interface instead.
  • In the design of our UI, we use the Nielsen's 10 heuristics as our guideline
Nielsen's Heuristics Screenshot
  • Error prevention
  • Help users recognize, diagnose, and recover from errors
Zora midterm errorprevention.jpg
  • User control and freedom
Zora midterm redo.jpg

Security considerations

  • Password salting and hashing
    • Using PHpass library, each password is assigned a unique salt and hash
  • Cross Site Scripting Validation
    • Validation is done at input to prevent cross site scripting
  • Dynamic Access Control

Maintainability

  • Coding conventions & standards carefully adhered to. Our framework has a style guide that we follow.
  • We have 3 layers of abstraction within our application - Views, Controllers & Model


MVC Model:

Zora architecture.png



Architecture Model:

Zora architecture real.png

Project Deliverables:

Stage Specification Links
Project Management Meeting Minutes Meeting Minutes
Metrics Metrics
Requirement Gathering Business Requirements

Business Requirements

Analysis Use Case Business Requirements
System Sequence Diagram System Architecture
Business Process Diagram Business Requirements
UI Protoypes UI Prototypes
Design ER Diagram System Architecture
Class Diagram System Architecture
Testing Test Plans Testing
Handover Manuals User Manuals
Deployment Diagram System Architecture

Deployment:

  • Deployed on client's server on bluehost on 12 Apr 2014.
  • Deployed version consist of ALL modules that we have coded for the entire iteration.
  • Handover to our client Sterling Engineering completed.

Testing

User Test 3

User Test 3
Zora UT3 Participant 6.png
Zora UT3 Participant 2.JPG

Details

  • 21 & 22 March 2014, Friday & Saturday
  • 10am – 2pm
  • Sterling Engineering Pte Ltd (Client’s Office)
  • No of Participant: 9
  • Participant Profile: Business Development Manager (Administrator), HR Personnel, Contract Manager (Higher Management), Structural Draftsman (Line Manager), 2 x Quality Surveyor, Design Engineer, Work & Safety Health Officer, Student Intern

Objectives

  • Determine usability of application.
  • Obtain both qualitative and quantitative feedback from system users.
Scope of Test
Claims
  • Submit New Claim
  • Validate Submitted Claim
  • Edit Payment Method
  • Approve/Reject Submitted Claim by HR
  • Approve/Reject Submitted Claim by MD
  • Generate Claimslip
  • View Claim History
  • View Personal Claim Status
  • Generate Claim Report
Leave
  • Apply Annual Leave
  • Edit Leave
  • Apply Other Leave
  • Approve/Reject Leave
  • View Status of Leave & Cancel Leave
  • View Leave History
  • Record Medical Leave
  • Record Unpaid Leave & Approve Recorded Leave
  • Generate Leave Report
Remuneration
  • View Past Payment Record for Employees
  • View Personal Payment Record
  • Input Timesheet for Workers
  • Input OT Timesheet for Drivers
  • View Worker Costing
Performance Management & Appraisal
  • Create Employee Appraisal
  • Approve/Revise Salary Increment Request
  • Distribute Bonus
  • View Scheduled Increment/Bonus
Training & Development
  • Propose a Training
  • Approve/Reject Training by HR
  • Approve/Reject Training by MD
  • View Proposed Training Status
  • View Nominated Training
  • Manage External Training
System Administration
  • Create New Profile
  • Update Profile
  • Manage Default Number of Leave
Common Feedback (Before & After)
Claims Before
550


After
550
Leave Before
550


After
550
Training & Development Before
550


After
550
Quantitative Feedback - User Test 2 versus User Test 3
Ease of Use
Zora Ease of use analysis.png


Overall Layout
Zora overall layout analysis.png


Analysis for the same 5 participants from user test 2

This is the analysis done from user test 2:

Zora UT3 Before Analysis.png

Reasons for the time taken:

  • Validate Submitted Claim - Most users are not able to locate the "view" claim receipt link
  • Edit Payment Method - Confirmation message was not display thus user did not know the payment method had been updated
  • Apply Other Leave - Most users was unsure how to upload 2 files as no instruction was stated hence a huge amount of time was spent figuring it out


This is the analysis done for user test 3:

Zora UT3 After Analysis.png

Reasons for changes in timing:

  • Changes that we made and improved on the application was useful
  • Live Deployment + user interacting with the system before enables them to familiar with the system
User Test 3 Analysis

View Full Analysis.

Bug Log

Bug Log
Zora Final Log Metric.png
Click here to view the Bug Log & Metrics file.

Reflections

Team Reflection

Zora team photo.jpg

Throughout the course of the project, we experienced many ups and downs as a team. One of the key takeaways is the need for change management, the importance of documenting client changes along the way. Teamwork, in supporting and motivating each other during challenging and difficult times also proved to be especially critically in seeing the project to its completion.

Individual Reflections

Zora learning fiona.jpg
Zora learning kk.jpg
Zora learning yunxi.jpg
Fiona Woo Lim Ken Khoon Tan Yun Xi
  • Through IS480, I have learnt to be an independent learner by picking up good project management skills from projects done by our seniors.
  • Being a project manager made me understand the importance in seeking common concensus from my fellow groupmates in whatever decision I have made. I have also come to understand that maintaining the morale and camaraderie of the team is essential for the success of the team.
  • The challenge that I face the most is understanding the capabilities and schedule of each team member so as to give a realistic deadline to each tasks. The use of metrics and the weekly meetings to update project progress really aid for me to overcome this challenge.
  • IS480 gave me a chance to step out of my comfort zone. As a lead developer, I often had to be a trailblazer by researching on new technologies, weigh their cost and benefits in order to decide whether to implement them. As such, I am now more versatile as I become more receptive towards unexplored technologies.
  • I have also honed my mentoring skills as I not only have to introduce any new technologies that I have researched to my team members, I would also need to assist them in adopting the new technologies.
  • However, it is has not been a smooth journey throughout the IS480 journey. There was the time where I faced problems in implementing several technologies in data visualization for data analytics. This was solved by exploring other alternatives and close communication with the team, especially, project manager.
  • Due to the various project scopes, we took a substantial amount of time to gather business requirements. I learned the need to document business requirements properly which will allow both the developers and the client to understand better on how the project will turn out. Also, the hi-fidelity prototype in the business requirement made it easy for both parties to be on the same frequency and picture the upcoming system more easily.
  • I also learned that even though a business requirement document was prepared, the document serves just as a guideline. Throughout the development phrases, as the developers who have more expertise in developing a system, we should initiate some system changes that were not stated in the document if we foresee that it will aid the client in their business activities and is not hard to implement.
  • One of the toughest challenges was to meet the client’s changing/new requirements yet with the limited amount of time we have to develop. I learned the need to ensure our system is flexibility so that we would be able to cater these changes more effectively.
Zora learning yixian.jpg
Zora learning meizhen.jpg
Zora learning darryl.jpg
Lee Yi Xian Tan Mei Zhen Darryl Leong
  • Through IS480, I had learnt the important of building a system with flexible concept/design on the backend, to allow easy amendment to changes and new requirements and programming framework became very handy in such situation.
  • The challenge I faced the most is getting the missing piece of requirements into a workable system. As our project is built on the agile methodology, changes and new requirements come at different phase. Therefore, I have to ensure that the database design is flexible enough to capture the new data and also striking a balance between ease of accessing to data and minimize data redundancy.
  • Being a quality analyst, I had learnt that testing is an essential procedure that should not be eliminated or avoided when developing an application, especially user test. Without user test, there is no way the application that we built can be perfect because as developers, we can never fully understand the real needs of the user until they tried the system themselves and provide us feedbacks to improve accordingly.
  • The challenge that I faced the most is the dilemma I was in to choose between the quality of our system and to implement all the feedback provided by our users given our tight schedule. The use of a response plan and change tracker aids me in overcoming my challenge.
  • Learnt that system UI design requires deep, intimate understanding of the client’s business processes and environment .
  • I have also realized that prototyping plays an important part in being able to observe how users interact with the users.

-Watch this space-