HeaderSIS.jpg

IS480 Team wiki: 2014T1 Team Xcellence Midterm

From IS480
Jump to navigation Jump to search
TeamXcellence Logo.png


TeamXcellence Icon H.png

HOME

  TeamXcellence Icon G.png

ABOUT US

  TeamXcellence Icon PO.png

PROJECT OVERVIEW

  TeamXcellence Icon PM.png

PROJECT MANAGEMENT

  TeamXcellence Icon PD.png

PROJECT DOCUMENTATION

 


TeamXcellence midterm logo.jpg

Project Progress Summary

Download our Mid-Term slides here!

Visit our current deployed site with various login credentials:

  • myCSISG Web Portal: http://54.179.141.102/mycsisg/
    • Client:
      • Username: TeamXcellence
      • Password: 123
      • Note: Please do not end any of the ongoing projects!
    • Admin:
      • Username: admin
      • Password: 123
  • myCSISG Survey App: http://54.179.141.102/SurveyApp
    • Surveyor Admin:
      • Username: surveyor39_admin
      • Password: cX@u6fBE
    • Surveyor:
      • Username: surveyor39_2
      • Password: 123

Project Highlights:

  • Till end of iteration 7, we have completed 70% of our project.
  • We are confident of completing the project and deliver the applications on time.
  • Scope changes
    • Flag fraud response functionality has been dropped due to large variations, deep technical complexity and time constraints.
    • View predictive analysis functionality has been dropped due to no access to ISES Statistical Model and time constraint even if given the access.
    • With the dropped functionalities, we have expanded the project scope to enable administrator to upload new set of questions in future. This has not impacted us much because we have already ensured that the applications and database structure are flexible to accommodate to such changes.
  • We were challenged by the loading of questionnaire with rules and logic. The following are a brief summary of the challenges on this question logic functionality (refer to our technical complexity section for more details):
    • First, we have to ensure that the questionnaire rules and logic is correct when the administrator uploads the set of questionnaire into the system. Moreover, we have to ensure that it is as simple as possible for the administrator.
    • Second, in the Survey App, we have to ensure that the question logic works. The app should automatically jump to a specific question based on certain inputs and rules. Also, the app should allow user to return back to the previous question based on the rules too.
  • Deployment in ISES server were delayed due to hardware upgrade by ISES. There are more configurations needed before we can deploy in ISES server. This risk has also been mitigated.
  • We conducted User Acceptance Test on 17 September 2014 at ISES office with 10 participants who are the actual users.

Project Management

Project Status:

Below is the summary of our project status:

Task/function/features, etc Status Confident Level (0-1) Comment
Survey App: Authentication Module

Fully deployed and tested 100%

1

-

Survey App: Surveyor Admin Module

Fully deployed and tested 100%

1

-

Survey App: Questionnaire Module

Fully deployed and tested 100%

1

-

Survey App: Offline Module

Fully deployed and tested 100%

1

-

Survey App: FAQ Module

0%

1

Scheduled to complete

myCSISG Portal: Authentication Module

Fully deployed and tested 100%

1

-

myCSISG Portal: Project Module

Fully deployed and tested 100%

1

-

myCSISG Portal: Project Visualization Module

60%

1

Scheduled to complete. Benchmarking visualization changed to comparison visualization

myCSISG Portal: Admin Module

Fully deployed and tested 100%

1

-

myCSISG Portal: Notification Module

Fully deployed and tested 100%

1

-

myCSISG Portal: FAQ Module

0%

1

Scheduled to complete

myCSISG Portal: Questionnaire Module

20%

1

Scope expansion. Scheduled to complete

myCSISG Portal: Token Module

Fully deployed and tested 100%

1

-

myCSISG Portal: Client Account Module

Fully deployed and tested 100%

1

-

myCSISG Portal: Surveyor Admin Module

0%

1

Schedule to complete

myCSISG Portal: Flag Module (Flag incomplete)

0%

0.5

To develop after question logic is done

myCSISG Portal: Flag Module (Flag fraud response)

Dropped

0

Decided to drop due to large variations, deep technical complexity and time constraints

myCSISG Portal: Project Visualization Module (View predictive analysis)

Dropped

0

Dropped due to no access to ISES Statistical Model and time constraints even if given the access.

Click to view our project scope in more details!

Project Schedule (Plan Vs Actual):


TeamXcellence planned vs actual v3.jpg


Brief summary of Plan Vs Actual per iteration:

  • Iteration 1
    • Everything went as planned. This was because iteration 1 focused mainly on documentation, research and prototyping.
  • Iteration 2
    • Everything went as planned. Similar to iteration 1, iteration 2 focused mainly on research and prototyping.
  • Iteration 3
    • Half of the team completed their internship during iteration 3. Therefore, development started from iteration 3 onwards.
    • There were delay for iteration 3 due to several reasons:
      • Reason: There were initial issue with deployment where our REST web service were being blocked and we took longer than planned to resolved.
      • Reason: Development work such as starting a project took longer than expected.
      • Reason: It took us quite a long time to resolve the critical bug found in the iteration.
      • Reason: There were 4 bugs with "High" severity and were also affecting some of the functionalities. It took us more than what we planned for to debug, redeploy and re-test.
  • Iteration 4
    • Most of the members had completed internship and were able to commit more time for development since it was still summer break.
    • There were no major hiccups within iteration 4 because we have made several adjustments such as giving more development days/time for each module after the delay in iteration 3.
  • Iteration 5
    • There was a day delay because there was initial issue loading questionnaire in the survey app which ultimately leads to the challenge of implementing question rules and logic in the questionnaire.
  • Iteration 6
    • After receiving feedback from the sponsor and ISES's director on what we have presented during acceptance, there were refinements needed on the report visualization. We evaluated the feedback given and unanimously agreed to make the refinements as the suggestions indeed improved the project as a whole.
    • As stated in iteration 5, we are faced with the challenge of implementing the question rules and logic in the questionnaire. Hence, the delay was caused by this because there were a need for Wei Xiong to do some research before developing.
  • Iteration 7
    • Everything went as planned while conducting UAT 1.
    • Initially, we wanted to develop some of the questionnaire module functionalities. However, after UAT 1, there were large number of refinements that we have to do basing on the UAT results. Therefore, we shifted questionnaire module to future iteration while we concentrate on the UAT refinements.
    • There were issues with deploying up to ISES server (eventually was resolved but still require some configurations). Hence, we were not able to liaise with ISES to develop the connector for ISES Statistical Model. This has been pushed to future iteration and hopefully ISES is able to develop the connector by iteration 8 or 9.


After understanding our brief summary of Plan Vs Actual, click the below link to view our project timeline overview. Please take note that as of mid-term, we are currently in iteration 8.
Click to view our project timeline overview

Project Metrics:

Click to view our Schedule and Bug metrics

Points to take note for project metrics leading up to mid-term:

  • Both schedule and bug metrics are only tracked till iteration 7 since we are currently in iteration 8 for our mid-term.
  • Data collection for bug metrics only started in iteration 3. This was because we started on development from iteration 3 onwards.


Highlights:

  • Delay in iteration 3 (as shows in schedule metrics)
    • Reason: There were initial issue with deployment where our REST web service were being blocked and we took longer than planned to resolved.
    • Reason: Development work such as starting a project took longer than expected.
    • Reason: It took us quite a long time to resolve the critical bug found in the iteration.
    • Reason: There were 4 bugs with "High" severity and were also affecting some of the functionalities. It took us more than what we planned for to debug, redeploy and re-test.
  • Iteration 4 to 7 lies within the safe zone in the schedule metrics as we have adjusted the effort required for each module/functionality.


Project Risks:

Click to view our full project risk assessment

Past Risk:

Risk Likelihood Impact Category Mitigation Plan
Sponsor may not have the hosting specification, or are not able to provide us with hosting resources and access

Medium

High

A

• Liaise with Prof Marcus and ISES to get hosting specification and access to hosting server

• If they are not able to provide hosting resources and access, team has to find alternative free hosting services like Amazon Web Services free tier or loan VM from SMU

  • This risk has been mitigated. Although ISES has managed to provide us with hosting resources, there are still configurations needed to be done over at their end. Hence, our team is still currently hosting our applications on AWS EC2 for the time being. Once the configurations are done over at ISES, our team will shift over to host the applications on their server.


Current Risk

Risk Likelihood Impact Category Mitigation Plan
The system could fail if there is no connection to the ISES statistical model since the visualizations are dependent on the calculated results

Medium

High

A

• Discuss and plan out how to develop the connection

• Or else, find alternative way through the system where the admin can pull out the responses for their calculation


Technical Complexity:

Offline Mode
We have to understand why is offline mode for the survey app required in the first place. The problem that we are solving is "how to ensure that surveyors can conduct survey even if there is no data connection?". Hence, to enable surveyors to conduct survey even without data connection, offline mode for the Survey App is necessary to resolve this problem. Let's look at the technical aspect and implementation on a high level view.

  • In a normal situation with data connection - online mode, the surveyor can access the Survey App as per normal. After the surveyor has been authenticated, the Survey App will download the required data such as questions, question logic and the data structure. After which, the surveyor can completes a survey and submit the survey response straight away. The response will be captured into the back-end database via a REST web service exposed by the back-end server. Below is the illustration.
    TeamXcellence midterm tech offline 1.jpg
  • In a situation without data connection - offline mode, the surveyor who has already been authenticated before, can still continue to conduct survey. When the surveyor completes a survey, the responses will be captured in the localStorage of the mobile device (example, iPad). Therefore, the surveyor can continue to conduct survey without having to worry of data loss. Below is the illustration.
    TeamXcellence midterm tech offline 2.jpg
  • In a situation where there are responses stored in the localStorage and the Survey App comes online from offline mode, the surveyor can submit the responses. The Survey App will retrieve all the responses from the localStorage and send it back to the back-end server for storing. Hence, there is no data loss even when switch from offline to online mode in between. Below is the illustration.
    TeamXcellence midterm tech offline 3.jpg


Question Logic
When surveyors conduct survey, they tend to make errors when evaluating which questions to be done. For example, if question 1 answer is "Yes", proceed to question 2, else if answer is "No", proceed to question 3. In such situation, surveyors have to mentally evaluate which questions to skip, which is prone to error. Hence, the problem would be "how to guide the surveyor to answer all required questions with minimal effort? E.g. skipping questions that are not required". Therefore, question logic implementation is required to resolve this problem.

  • Firstly, in the illustration below, you can see that question 3 is a branching question. If the answer for Q3 is <=3, then go to Q4a, else if answer is between 4 to 7, go to Q5, else go to Q7. This illustration clearly depicts that there are 3 different paths that one can take to reach the end of the survey. You could imagine there are more paths in a real questionnaire.
    TeamXcellence midterm tech logic 1.jpg
  • Secondly, in the event the surveyor chooses answer <=3, the Survey App will automatically jumps to Q4a and show this particular question only. The Survey App will also know which path to continues on from Q4a.
    TeamXcellence midterm tech logic 2.jpg
  • Thirdly, there are also situations where the respondent wants to change the previous question's answer. Hence, the Survey App must have the capability to return back to previous question based on the path it took and display the question's answer also. In the illustration below, you can see that moves from Q4a back to Q3.
    TeamXcellence midterm tech logic 3.jpg
  • Lastly, if at Q3, the respondent changes the answer to 5, the surveyor will be automatically brought to Q5 based on the question logic. At the same time, it will invalidate Q4a answer to prevent any response data conflict.
    TeamXcellence midterm tech logic 3.jpg

Hence, with this implementation, the surveyor will now only need to be concerned with entering the correct response and not be concerned with which question to go next.

However, to be able to achieve the question logic in the Survey App, it depends on the questionnaire uploaded by ISES Admin. So the second problem to this question logic is "how to allow ISES to upload new questionnaire that encompasses branching logic?".

  • In the portal, ISES admin is empowered to upload new questionnaire. This uploading is very crucial for the question logic to work. As shown below, it is the template for ISES to enter their question, rules and input, and which is the proceeding question based on the rules and input. In this format, our applications will be able to capture the question logic and feed automatically to the Survey App.
    TeamXcellence midterm tech logic 5.jpg


Data transformation to accommodate multiple models

Quality of product

Intermediate Deliverables:

Stage Specification Modules
Project Management Minutes Internal & Sponsor & Supervisor Minutes
Metrics Schedule & Bug Metrics
Requirements Personas & Scenarios Personas & Scenarios
Prototype Low-Fi Prototype
Business requirements Project Overview
Project scope Project Scope
Analysis and Design Use case Use Case Diagram & Use Case Description
ER Diagram ER Diagram
Architecture Diagram Architecture Diagram
Flow Diagram Flow Diagram
Testing UAT 1 UAT 1

Deployment:

Visit our current deployed site with various login credentials:

  • myCSISG Web Portal: http://54.179.141.102/mycsisg/
    • Client:
      • Username: TeamXcellence
      • Password: 123
      • Note: Please do not end any of the ongoing projects!
    • Admin:
      • Username: admin
      • Password: 123
  • myCSISG Survey App: http://54.179.141.102/SurveyApp
    • Surveyor Admin:
      • Username: surveyor39_admin
      • Password: cX@u6fBE
    • Surveyor:
      • Username: surveyor39_2
      • Password: 123

Testing:

We have conducted 1 User Acceptance Test on 17 Sept 2014.

For this UAT, there are a total of 10 participants. The participants are as follow:

  • 4 ISES clients
  • 4 Surveyors
  • 2 ISES Administrator

These are the objectives that we had set for UAT 1:

  • Align ISES’s expectation with our current product
  • Better understand our users’ needs
  • Identify area to enhance user’s experience

Click to view details about UAT 1!

Reflection

Team Reflection:

Communication: Communication plays a huge role in the success of this project. Internal communication between members is required to ensure that the project is making good progress. Communication with supervisor helps the team to better align the goals and produce a better project. Lastly, communicating with sponsor is necessary to ensure that we are on the right track while managing their expectations.

Actual users needs: By conducting UAT and listening to actual users, it allows us to make legit improvements to the systems to enable the users to work more efficiently. This is one of the best ways to understand if the application that we have built really solve business needs.

Teng Rui Jie Andy Reflection:

I have learned the importance of managing expectations. It is never an easy task to align our goals with sponsor expectations while reviewing actual users' needs. This indeed is essential as it will greatly affect the project progress given the limit time.

Tan Si Yu Reflection:

Murphy’s law- What can go wrong will go wrong. Throughout the course of this FYP, I’ve learn to better manage all the issues that crops out along the way and not let little setbacks affect my attitude for entire project.

Wong Wei Xiong Reflection:

Learn to say “No”. Don’t take on more than you can handle. Learn to give a firm no or defer it to a later period.

Weng Xinyong Reflection:

It is challenging to come up with graphs that suit everybody needs as everyone got their own perspective. Designing using paper and pen is indeed very different from the output due to certain limitations. Lastly, learning to adapt and conveying changes is important in the success of the project.

Lek Guan Zhou Reflection:

Through the execution of the project, especially with external meeting with client and their customer, I have learnt to align the expectation of the team and various stakeholders. One other important thing that I have learnt is to learn how to say “No” and try not to take on more than what I can handle.

Chua Zhen Ling Reflection:

I have learnt and am still learning the knowledge to tackle realistic problems as they would be solved in the real world.