TEAM LINKAGE IS480 MID TERM PRESENTATION...Our Application will: Eliminate the need for paper based...

Post on 21-Sep-2020

0 views 0 download

Transcript of TEAM LINKAGE IS480 MID TERM PRESENTATION...Our Application will: Eliminate the need for paper based...

TEAM LINKAGE

IS480 MID TERM PRESENTATION

Supervisor: Dr Chris BOESCH

Client: Meryl Kwek &

Doris Soh, Associate | IT Risk Consulting, Advisory, PricewaterhouseCoopers

Team: LOW Ying Lin | LIANG Yahui |

LIU Huan | LI Lu | Jerome CHING |

ZHONG Zhenyu

Content

Introduction

Project Overview

Demo

Testing

Technical Complexity

Risks

Schedule

Metrics

Bugs

X Factor

Stakeholder Management

Learning outcomes

Our Client & Sponsor

PricewaterhouseCoopers (PwC)

World's largest professional services firm

Largest of the “Big Four” accountancy firms

IT Risk Consulting, Advisory Department

Conducts system assessments

Recommends threat and vulnerability solutions to their clients

Current Process(As – Is)

Client

engages PWC

IT Consulting

Department

Project

Manager

goes through

requirements

PM creates a list of

tasks and assigns them

manually to the project

members

Member

carries out

assigned task

Member fills up

the issue sheet

regarding his/her

task

Members writes a report

about and submits it back

to their managers

1 2 3 4

5 6 7

Manager presents

completed report

back to client

Hm… Who should be assigned to this new project?

Who is doing which project at what stages?

What will be my team members Schedule for next week?

Issues (Project Managers)

Manual assignment of tasks does not cater for effective resource management

Difficulty in ascertaining if member is the best candidate to perform the task

Difficulty in tracking member’s progress and due dates for assigned tasks

May create a situation of imbalanced workload among members

It is so troublesome to type same issues every time.

It is a headache to format the reports.

Why are there no user friendly applications to help us manage our

process?

Issues (Members)

High error rate due to multiple manual processes

Difficulty in tracking own schedule since they are normally assigned multiple tasks with different due dates

Member has to duplicate the same information twice (on the issue sheet and again in the project report)

Difficulty in managing different versions of documents sent to manager for review

Most appropriate team member may not be assigned to the task

Our client is in trouble, it is time for action!

Expected Process (To Be)

Client

engages PWC

1 Manager creates project , review

skillsets and current workload to

decide the most suitable member for

the task, and allocate tasks. Manager

track project progress – all is done

through the application

2

Member uses the schedule

function to track his

deadlines and reports his

findings by auto populate

function. Analytics function to

tracks data

3 4

Our Application will:

Eliminate the need for paper based documents

Allow for Effective Resource Management

Through skillset and schedule matching

Serve as a centralized platform for managers and members

to perform their jobs

Increase efficiency

Auto generation of reports cuts down time spent by members’ on projects

significantly

Provide the department with insights on periodic and industry

trends

Data Analytics

Functionalities

- View Project

- View Tasks

- Edit Report

- Edit Own Profile

- View Member Details

- Issues

- Message

- Notification

- Data Analytics

- Generate Report

- Schedule

- Create, Edit, Delete Project

- Assign Member

- Create, Edit, Delete Tasks

- Mark Task Complete

- Mark Project Complete

- Submit Task

- View Own Tasks

- Indicate Leave

MANAGER

MEMBER

- Denotes incomplete functionalities

Framework

Model–View–Controller

{ }

Project.html ProjectController.js Project Json Object

Technologies

AngularJS

Twitter Bootstrap

Python

Google App Engine

(Cloud Hosting)

MS Project

(Scheduling & Tracking)

JSON

JQuery UI JQuery

Demo

http://pwclinkage.appspot.com

Testing

User Test

15 Feb 2013, PWC Building

Load Testing to follow in upcoming iterations

Objectives

Ensure that completed functionalities work according to client’s specifications

Align team and sponsor’s vision of user-friendliness

Gather feedback to identify areas of shortcomings for improvement

Tester Profiles

PWC Staff (Actual End Users)

7 testers (3 male, 4 female)

IT proficient

Used own PCs for the test

Mix of Project Managers and Team Members

Functionality Tests

Functionality Tests

1. All testers given hard copy of test script to follow

2. Tester followed steps in test script

3. Tester compares actual output vs expected output

4. Fills in whether test passes / fails

186 out of 189 test cases passed (98.4%)

Usability Tests

1. Testers given 15-20 mins time to navigate the different sections of our application

2. At the end of it, they were presented with an online survey form with a scale of 1-5 (5 being the best) which focused on the following criteria:

a) Match between system & real world

b) User Control & Freedom

c) Consistency & Standards

d) Error Prevention Features

e) Focus on recognition instead of recall

f) Flexibility & Efficiency of Use

g) Aesthetics and Minimal Design

h) Help and Documentation

Usability Tests Results

3.33

3

3.67

3

3.83

3.6

4

3.6

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5

Match between System & Real World

User Control & Freedom

Consistency & Standards

Error Prevention

Recognition rather than Recall

Flexibility & Efficiency of Use

Aesthetic & Minimal Design

Help & Documentation

Open Ended User Feedback

Area Suggestion

Aesthetics • More colors should be used to enhance the interface

• Preferred Log Out button instead of icon

Functionality • Old password should not be allowed to be reused

when user changes password

• Audit history should be created for each project

• Wanted search function as alternative to drag and

drop feature

Open Ended User Feedback

Area Suggestion

Access Control • Only managers should be allowed to delete projects

• Members only able to mark tasks as submitted before

being sent to managers for checking

Error Checking • Task date should coincide with project date

• Error message too specific during failed login situation

Post User Testing Changes

Area Changes

Login • Error message less specific for failed login cases

• Manager / Member role made more obvious

Add Tasks • Drag and drop box moved closer to field to reduce

unwanted scrolling

Project • Only Managers allowed to edit / delete projects

• Added icons to button for better visual experience

Tasks • Member only allowed to submit task while manager has

ability to mark it as complete

Help &

Feedback

• Created these 2 new sections for increased user-friendliness

and evaluation

Future User Testing

Area Future Expectations

Functionality

Tests

• At least 98% of test cases passed

Usability • Aim for a survey rating of 4 for all 8 usability criteria

Time • Measure time taken for testers to complete each test

case

Video • Take videos of testers during their user testing to

understand non-intuitive areas

Before & After (Register Page)

Before & After (Add Tasks)

Before & After (Tasks)

Technical Complexity #1

Report Editor Function

Difficulty in:

Saving the design format into database

Generating same output for the user in a word document

Technical Solution:

Convert entire format into a string and save it to database

For output, dynamically generate a .html file formatted with

CSS

Force this file to be downloaded as a Word document

Technical Complexity #2

Responsive Design

Difficulty in:

Making our application viewer – friendly on mobile interfaces

Technical Solution:

Manually design the interface for different devices

Technical Complexity #3

Task Allocation

Difficulty in:

Dynamically creating and deleting information within multiple tabs

Technical Solution:

AngularJS can be embedded within <html> code to make it dynamic

No need to remove code from html

Technical Complexity #4

Wanted a reduction on back-end reliance

Difficulty in:

Making the application less dependent on the client’s server

Finding alternatives if client server cannot support JSP/PHP

pages

Technical Solution:

Controller logic is programmed using JavaScript and

AngularJS, server is contacted only to retrieve information

Risks

Risk Probability Impact Mitigation Strategies

Deployment

• Unpredictability in

deploying application on

client’s environment

Medium Medium • Focus on front – end

development

• Deployed copy on the cloud

(have at least 1 working copy)

Miscommunication /

Misalignment between team

and sponsor

Medium High • Have regular correspondences

with sponsor

• Conduct frequent usability tests

Change of frameworks /

languages

Medium Medium • Address concerns with

supervisors early

• Plan thoroughly before

implementation

PROJECT MANAGEMENT

Schedule-Iterative

5 days (Mon-Fri)

Weekends (Buffer)

Documentation Review

Development Codes

Development Design

Metrics Review

Test Case

Debugging

Schedule (Tracked with MS Project)

Milestones

Iteration Dates Milestone

2 22 Oct 2012-26 Oct12012 FYP Acceptance Proposal

4 5 Nov 2012- 9 Nov 2012 FYP Acceptance Demo

12 11 Feb 2013 -15 Feb 2013 UAT 1

13 18 Feb 2013 -22 Feb 2013 FYP Midterm Evaluation

14 25 Feb 2013 -1 Mar 2013 Deployment

16 18 Marc 2013-22 Mar 2013 UAT 2

18 1Apr 2013- 5 Apr 2013 UAT 3

20 15 Apr 2013 -19 Apr 2013 FYP Final Presentation

21 22 Apr 2013-26 Apr 2013 FYP Poster Day

Schedule

Current Iteration 13

Completed 4 milestones

Deploying at Sponsors’ site (Iteration 14)

2 out of 13 Iterations : ‘Behind Schedule’

Task Level Breakdown : Mixture of Indicators

Schedule Metrics Calculation

Schedule Index (per iteration) = Estimated Hours

Actual Hours

Status Indicator Index Action

Ahead Schedule > 1.2 Reschedule and allocate less time for similar tasks.

On Schedule 0.8-1.2 No re-adjustment needed on the schedule.

Behind Schedule < 0.8 Allocate more time for similar tasks.

Reschedule and split into smaller tasks.

eg. Schedule Index (iteration 13) = 26

30

= 0.87

Schedule Metrics

0

2

4

6

8

Frequency

Ahead Schedule

On Schedule

Behind Schedule

0

1

2

3

4

Frequency

Ahead Schedule

On Schedule

Behind Schedule

Schedule Metrics- Per Iteration

2 1 1

2

3

5 4

5 5

3 4 4

1 3

6

3

4

3

3 2 2

4 2

0

1

2

3

4

5

6

7

8

9

1 2 3 4 5 6 7 8 9 10 11 12 13

Behind Schedule

On Schedule

Ahead Schedule

No of Tasks

Iteration

Project Status

Iterations Planned Actual Comments

1 FYP Acceptance Proposal

2 FYP Acceptance Demo

Prototypes

3 FYP Acceptance Demo

Prototypes Phase 2

4 Project Management Phase 1

5 Acceptance Clean-up Dropped IT Audit function

Dropped voice chatting function

Dropped auto members to tasks

6 Project Management Phase 2

7 Project Management Phase 3

8 Project Management + Report

Management Phase 1

Project Status

Iterations Planned Actual Comments

9 Project Management +

Report Management

Phase 2

10 Project Management +

Report Management

Phase 3

Project Management

UI Front End

Deployment was being put to a hold till

sponsors’ server had to finish maintenance

11 UAT Preparation

Wrap up on :

Profile Page & Project

Management

UAT was shifted to Iteration 12 as sponsors’

schedule did not allowed for it

12 Report Management &

Schedule Management

Heuristic & UAT Heuristic & UAT Feedback collection

Changes done to UI from UAT feedback

13 FYP Midterm Preparation Report Management & Schedule Management

Phase 1 is shifted to Iteration 14

14 Schedule Management

Phase 1

Deployment is to be scheduled in recess week

Bug Metrics Calculation

Scoring = 1 x num (low) + 5 x num (high) + 10 x num (critical) Severity Description

Low ( 1 point) Non Critical . Application able to run normally. Core functions are working.

Editing on small amendments to the codes.

High (5 points) System runs but not functioning properly. Some core functions working.

Critical (10 points) Application is unstable or crashes. Unable to continue without troubleshooting.

Scoring Action

0-5 Fix during buffer time

5-10 Debug during debugging session set aside at each iteration

11 or more Resolve bug immediately. Stop developing project

eg. Bug Scoring (Iteration 13) = 1X 0(low) + 5 x 4(high) + 10 x 0 (critical)

=20

Bug Metrics

Points : 20 Action : Resolve bugs immediately. Stop development of project.

Iteration Date of

bugs

Description Severity Status Date solved

13 19/2/2013 Logic of password High completed 19/2/2013

13 19/2/2013 Repeated view of project name

on Schedule at profile page

High completed 19/2/2013

13 19/2/2013 Logic that member can submit

only for their tasks

High completed 19/2/2013

13 19/2/2013 Logic that dragged and dropped

member once to a task

High completed 19/2/2013

Scoring = 1 x num (low) + 5 x 4 (high) + 10 x num (critical) = 20

Bug Metrics- Per Iteration

2

5

7 6

5

10

2

9

22

20

0

5

10

15

20

25

Iteration 2 Iteration 4 Iteration 6 Iteration 7 Iteration 8 Iteration 9 Iteration 10 Iteration 11 Iteration 12 Iteration 13

Our Focus

Usability of the Application

Strive for a quality user experience by ensuring intuitive use of the application

Conduct frequent usability tests for interim evaluation

X Factor

Estimated to save up to 10 man hours per project

Equivalent to $3,000 per project

Up to $90,000 per year (based on current trend of

around 30 projects per year)

Stakeholder Management

Value to Sponsors

Keep up-to-date of team’s progress

Aligning to sponsors’ needs

Member’s responsibilities & load

Split by functionalities

Allocation tracked in MS Project

Team’s Issues

Conflicting schedule

Internal Stakeholders-communication

Collaborate & Sharing

Dropbox

For documents

Github & SVN

For minimizing conflicts in the code

Adoption of Best Coding Practices

Meaningful Names

Comments in code

Lessons Learnt

Always have a back up plan (especially for single

points of failure)

Design from user perspective

Cater for large amount of buffer time

Plan to integrate application at earliest time

possible

Importance of Feedback