Team08
Jian Lei:
Mu Bai:
Hanadi Mardah:
Xiaochen Wang:
Da Lu:
Cheng Cheng:
Garret Catron:
Project Manager/Builder
Requirements Engineer/Builder
Life Cycle Planner/ UML Modeler
Operational Concept Engineer/Builder
Prototyper/Software Architect
Feasibility Analyst/ Tester
IIV&V / Quality Focal Point
1
o
● o
●
Operational
Strong Desire to Succeed
Technical
Experienced in Web Development
2
o o
●
●
●
●
●
Team Weaknesses
Operational
Organization
Communication
Procrastination
Technical
Lack of Security Experience
Language Barrier
3
o
●
●
● o
●
●
Operational
Internal Deadlines and peer review
Conscious Effort to Record all Group Communication
Documentation
Technical
Budget Additional Time for Presentations and Meetings
Research Security Best Practice
4
●
●
●
All Win Conditions Agreed Upon
Moderate Complexity
Low Precedentedness
WeChat and Google Drive used between on-campus and off-campus team members
5
6
The e-Lockbox is a highly secured web application to help foster youth access their vital life documents whenever they need them.
7
8
Benefit Chain Diagram
9
Current Situation:
Implemented on Salesforce.com
It cannot generate their desired reports
Foster youth cannot view their documents through it
The system developed last year was not usable and secure enough
10
System Objectives - Capability Goals
11
System Objectives – Level of Service Goals
12
System Objectives – Organizational Goals
OG-1: Increased time savings
OG-2: Easier access for youth to their documents
OG-3: Improved security and usability
System Objectives – Constraints
CO -1: PHP as a Development Language
OC -2: MySQL as DBMS
OC -3: Amazon S3 as Storage for documents
13
Proposed New System
System Boundary and
Environment Diagram
14
Proposed New System
Element Relationship
Diagram
15
Proposed New System
Business Workflow
16
Proposed New System
Business Workflow
17
Requirements
18
19
20
21
22
• Security
• New Feature: Send Mass Email & Activity Code
23
E-lockbox
24
• Https connections (need SSL) protect the information in secure
• Verification code prevents login from a machine / robot
• Personal security questions provide a method for changing password
• Mobile & Email verification prevent login from other people
• Errors raised when login failed
25
Login failed once needs to input verification code
• Verification code protects against brute force attacks.
Youths can only access their own documents
Any user login the system has a session with expiration time
• Every login session has a timer which after a period of inactivity automatically logs the user out.
• Any access of information and documents should check the session validity and the user-id.
Youths can only view and set their own information
26
All life documents are stored on Amazon
S3
• Amazon S3 used as a safe file storage service.
• Deleting accounts on the system needs admin’s authorization.
Deleting Youth accounts needs admin’s authorization
27
Logs record all users’ activities of system and document access
• Administrator can access the
System Logs to view activities of all users: login, logout, documents upload / update / access.
• Deleting Case Manager accounts in the system needs confirmation.
Deleting Case
Manager accounts needs confirmation
28
E-lockbox
29
Description:
When Administrator & Case Manager Log in
The Menu has the Mass Email Feature
When they click the Email Menu, They System will show them step 1 of sending mass email(Specify the recipients to include) 30
Description:
When Create New Group, Users have to enter the group name, and specify filter criteria.
31
Group
32
Description:
Users can choose a default group or his own group
Click Go!
33
Description: Users choose the recipients 34
Description:
The step 2: select an email template and preview a template
35
Description:
Users can preview the template they will use when send a mass email
36
Description:
Users can also to Create and Edit the Email Template at the Setting menu
37
38
Description:
The step 3: Users enter the mass email name and choose a delivery option to review and confirm the email
39
Description:
The last step, the system will show them the result of sending mass email
40
• MCS-Worksource Centers
• FU-Follow up
• CR-Community Resource and Referral
• AD-Administrative Duties
• IC-Individual Counseling
• CM-Case Management
• WS-Workshop
• SV-School Visit
• HV-Home Visit
41
Activity
Code
42
Activity
Code
43
Activity
Code
44
Description:
Users can export the result into CSV formate and link to the specify case.
45
46
System Context Diagram
47
Artifacts & Information Diagram
48
Use Case Behavior Diagram
49
Life cycle is to improve the quality and quantity of the project and support client relationship. Also, it is to track project and minimize the risk exposure. strategy
● weekly meetings, email, wechat, and google drive sharing documents, ·
●
Progress report and Project plan are living documents that we can edit bi-weekly to correct them.
●
We also should submit our own effort report in the greenbay system. In addition, we use Bugzilla to record our process and bugs.
Foundations phase;
1.
To identify more clearly operational concepts, win agreements, architecture, feasibility evidences and life cycle.
2.
To use appropriate tool and strategies to remove defects, errors, and bugs from code.
3.
To implements the security prototype/ product demo
4.
To start test the security features in the prototype.
50
Client/case manager -administer
Key stakeholder responsibilities
Provide with feedback for requirements specification, prototype and interact with developers
Jian Lei (Jay)
Manager / Builder
Hanadi Mardah
UML modeler / Life cycle planer
Mu Bai (Charles)
Requirement Engineer / Builder
Xiaochen Wang (Tina)
Operational Concept Engineer /
Builder
Da Lu (Daniel)
Prototyper / Software Architect
Cheng Cheng (Darwen)
Feasibility Analyst / Tester
Garret Catron
IIV&V / Quality Focal Point
Provide detailed project plan and record project progress biweekly and Update meeting report on bugzilla
Provide a new version of LCP and Develop support plan and Help developer to understand code and Help team to mitigate any risks
Provide the first Define Interfaces for All Features Need to be Developed and Detailed
Designed the New System
Improve OCD and Help other teammates to better understand Operational Concepts
Prototype and evaluate various alternatives and ensure technology readiness for needed capabilities
Provide a new version of feasibility evidence description(FED) and Discover unexpected risks and defects through Bugzilla
Project Plan
●
One semester (13 weeks) working by 7 team members in each semester.
Total estimated effort
●
The project already developed from last semester so the rest of the development will be in next semester, which equals to three-four months
All modules will be implemented by PHP programming language.
We continue to use of PHP framework, laravel.
We continue to use of Amazon S3 to store vital documents.
52
Resource Estimation
53
Resource Estimation
54
Cheng Cheng
55
Assumptions
People will use the system & find it to be more usable and secure than before.
Stakeholders Initiatives Value Propositions Beneficiaries
∙
Developer
∙
Maintainer
∙
LivingAdvantage
∙
Develop the system
∙
Train admins, case managers about usage and maintenance
∙
Increased time savings
∙
Youth
∙
Easier access for youth
∙
Admins and case to their documents
∙
Improved security and managers usability
Cost (Cost factors)
∙
Money spent for web services and website
∙ Developers’ time
∙ Clients’ time
Benefits (Key performance indicators – KPIs)
∙
Admins and case managers save time using this system to manage documents.
∙
Youth kids are able to receive services and resources from the community on a consistent basis.
56
Personnel Costs
Activities
Valuation and Foundations Phases: Time invested
Client meeting via email, phone or other channels
Client Representatives: Meeting via email, phone, and other channels.
Architecture Review Boards
Development and Operation Phases: Time invested
Client meeting via email, phone or other channels
Client Representatives: Meeting via email, phone, and other channels.
Architecture Review Boards
Total
Maintenance (Yearly)
10hrs/month * 12 month
Time Spent (Hours)
2hrs/(week*person)
2hrs/(week*person)
2hrs/(week*person)
2hrs/(week*person)
2hrs/(week*person)
2hrs/(week*person)
72hrs
120hrs
57
Hardware and Software Costs
Type
Domain name
Hardware VPS hosting
SSL certificate
Amazon S3
Total
Maintenance
Total:
$36/year
$5/month Digital Ocean
Cost Rationale
Including mylaspace.com
mylaspace.net
mylaspace.org
Isolated hosting for the system to ensure security
Secure login and transport encryption $149/year*
Free for up to 25000 documents at ~200kb each
(4.7gb) for the first year. $6/year thereafter for 10gb of storage
Offsite secure file storage and/or backup
$35-$40/hr and 10hr/month
$251
Hire an IT engineer to maintain the system.
$4200-$4800
58
Current activities & resources used
Case creation and tracking(20hr/(week*person))
Document Management
Vital document upload(10hr/(week*person))
Report Generation
Custom reports(6hr/(week*person))
User Management
User management(4hr/(week*person))
Total
% Reduce
25
30
25
12.5
Time Saved (Hours/Year)
Case Management
260/person
152/person
78/person
26/person
520 /person
59
They have one administrator and five case managers.
One hour for the administrator worth $60 while one hour for a case manager worth $35.
Year
2014
2015
2016
2017
2018
Cost
(Money Spent)
Benefit
(Effort Saved)
(Money Saved)
Cumulative
Cost
7091
7524
8276.4
9104.04
10014.44
0
134420
147862
162648.2
178913
7091
14615
22891.4
31995.44
42009.88
Cumulative
Benefit
0
134420
282282
444930.2
623843.2
ROI
-1
8.1974
11.33136
12.90605
13.84992
60
Level of Service Feasibility
Level of Service Requirement Product Satisfaction
LOS-1: Usability: The system shall be Product Strategies: Interface Specification, UI Flexibility.
easy to use for kids and case managers.
Process Strategies: Prototyping, Usage Monitoring & Analysis
Analysis: Build a friendly interface for users offering high usability. Using prototyping, usage monitoring & analysis to guide the design process.
LOS-2: Data Size: This system should handle large data .
Product Strategies: Domain Architecture-driven
Process Strategies: Performance Analysis, Simulation, Test Plans & Tools.
Analysis: Define database in the Architecture and using test strategies to test the system.
LOS-3: Security: All the documents must be stored securely.
Product Strategies: Domain Architecture-driven.
Process Strategies: Prototyping, Performance Analysis, Simulation, Test Plans & Tools.
Analysis: Define security strategies in the Architecture and using test strategies to test the system.
61
Risk Exposure
Risks Potential
Magnitude
Probability
Loss
Team may fail to communicate properly leading to loss in productivity, etc.
3 2
Team may not have adequate skills for the tasks at hand.
Team may run out of time before finishing project
Users may have difficulty learning how to use the new system
Product delivered is not secure.
Exploit is discovered in the future.
The client’s definition of easy to use leads to scope creep through adding more features.
Security makes certain ease-of-use features impossible
5
8
8
10
10
8
9
4
3
3
4
2
5
4
Risk
Exposure
6
20
24
24
40
20
40
36
Risk Mitigations
Have weekly meetings and encourage open communication always.
Identify all required skills through analyzing project requirements and either negotiate scope such that those skills are no longer needed or start developing those skills.
Make a feasible and practical plan, negotiate an appropriate scope with the client
Provide extensive training on using the system, and receive feedback from users and clients while developing the system.
Active test for security exploits and check each other’s work for proper security methods.
Provide extensive documentation on the product and provide training to the client in order for them to be able to fix any security issues at a later date.
Clear communication with client to specifically define all desired features up front and negotiate which are most important to limit scope creep.
Once all features are defined ensure that they can be done securely in a reasonable timeframe and inform the client which features are too costly.
62
NDI/NCS Products
Apache/Nginx
MySQL
Amazon S3
Laravel
Purposes
Web server
Database server
File storage web service
PHP MVC framework
63
Basic Demographic:
Age: 42
Occupation: Administrator
Hometown: Los Angeles
Marital Status: Married
Description Information Sources
Michelle is the administrator of -Newspaper a foster youth organization.
She has five case managers working under her who actually interact with the
-Radio
-Online sources youths and refer difficult cases to her.
Attributes
-Busy
Goals & Aspirations
-Manage and audit
-Get information from reports to provide numbers to government agencies
64
Basic Demographic:
Age: 22
Occupation: Case
Manager
Hometown: Los Angeles
Marital Status: Single
Description
Mary is a new case manger at the firm. She routinely visits foster youth at their homes and collects information
Attributes
-Outgoing
-Has an iPad, cellphone and laptop she uses in the field.
Goals & Aspirations
-Access to devicefriendly interface
-Easy ability to take pictures and add current information about the youth she works with.
65
Basic Demographic:
Age: 20
Occupation: General User
Hometown: Los Angeles
Marital Status: Divorced
Description
Damien is a student taking a part time job and livingadvatage.
Attributes
-Not very good with technology
Goals & Aspirations
-Help case manager about the case.
66
Basic Demographic:
Age: 26
IT practitioner
Description
Chaz is a IT practitioner and take a part time job at livingadvantage.
Attributes
- Techie
Goals & Aspirations
-Ensure the system is on good condition
67
Basic Demographic:
Age: 17
Student
Description
Dana is a senior in high school looking to get into college. He also wants to get a driving license and scholarships.
Attributes
- Not very technologically savvy
Goals & Aspirations
-Easy access to printable documents
-Contact with case manager for possible scholarships and awards.
68
Basic Demographic:
Age: 42
Occupation: Administrator
Hometown: Los Angeles
Marital Status: Married
Description Information Sources
Michelle is the administrator of -Newspaper a foster youth organization.
She has five case managers working under her who actually interact with the
-Radio
-Online sources youths and refer difficult cases to her.
Attributes
-Busy
Goals & Aspirations
-Manage and audit
-Get information from reports to provide numbers to government agencies
69
Basic Demographic:
Age: 22
Occupation: Case
Manager
Hometown: Los Angeles
Marital Status: Single
Description
Mary is a new case manger at the firm. She routinely visits foster youth at their homes and collects information
Attributes
-Outgoing
-Has an iPad, cellphone and laptop she uses in the field.
Goals & Aspirations
-Access to devicefriendly interface
-Easy ability to take pictures and add current information about the youth she works with.
70
Basic Demographic:
Age: 20
Occupation: General User
Hometown: Los Angeles
Description
Damien is a student taking a part time job and Livingadvantage.
Attributes
-Not very good with technology
Goals & Aspirations
-Help case manager about the case.
71
Basic Demographic:
Age: 26
IT practitioner
Description
Chaz is a IT practitioner and take a part time job at
Livingadvantage.
Attributes
- Techie
Goals & Aspirations
-Ensure the system is on good condition
72
Basic Demographic:
Age: 17
Student
Description
Dana is a senior in high school looking to get into college. He also wants to get a driving license and scholarships.
Attributes
- Not very technologically savvy
Goals & Aspirations
-Easy access to printable documents
-Contact with case manager for possible scholarships and awards.
73
OCD
OC-1 Document
Management
Win-Win
WC_3332
WC_3331
WC_3325
WC_3330
OC-2 Case Management WC_3329
WC_3326
OC-3 Report Generation WC_3324
OC-4 User Management WC_3333
WC_3327
OC-5 Mass Email WC_3328
SSAD
UC_2
UC_6 UC_15
UC_7 UC_12
UC_4
UC_3
UC_1 UC_5 UC_10
UC_13 UC_9 UC_11 UC_14
UC_15
UC_8
Test Case
74
• All deliverables are submitted for peer review
• Feedback from the client is sought out for requirements
75
• Bugzilla used for defect tracking
• Weekly meeting for review of work
• Internal Deadlines used to provide time for review
• Google Drive used as repository for all project documents
• WeChat used as group messenger
• Revision control for source code not yet selected
76
77