SlideShare a Scribd company logo
1 of 70
VETWorking Project
NOTE: THIS FILE CONTAINS ARTIFACTS OF THE VETWORKING PROJECT.
NORMAN K. MA, PH.D.
COPYRIGHT © 2015 NORMAN K. MA
project overview
 Vetworking will be developed using the eXtreme programming
methodology in which Norman has (1) taught as a graduate
teaching assistant (software project laboratory), (2) followed the
process as a software engineer at Nortel Networks, (3) followed the
process as a software engineer at Raytheon, and (4) as a DOD Air
Force proposal reviewer subject matter expert (SME) at the MITRE
Corporation.
 This is a de facto industry standard process with tailoring to specific
domains. Norman will use the methodology to generate sufficient
artifacts for the future of the project, which is implementation using
specific programming language, middleware, in a specific
platform.
design artifacts
 The scope of this project is to create design artifacts for the purpose to
hand off to a programming team. The design artifacts that will be
produced are:
 User Stories (a prose description of the project)
 Class Diagrams (data structures for object-oriented implementation)
 Sequence Diagrams (description of interaction activities between system
objects)
 Option: State Diagrams if artificial intelligence or machine intelligence
constructs are deemed of value.
 In commercial industry, the above software artifacts will be sufficient for
programmers to develop an initial prototype to begin the
programming-level activities of the Agile system development
methodology.
eXtreme Programming Processes that
Connect Requirement and Programming
Capabilities to Enable Result
Requirement
Activities
Programming
Activities
eXtreme Agile
Processes
Enables
agile methodology
In 2001, 12 Agile software development principles were developed in Utah,
think in context of Acquisition PMO (users), Contractor Managers, and
Contractor Developers:
1. Availability of software to government for in-process evaluation
2. Flexibility in editing requirements
3. Software delivery frequency
4. Communication approaches between government and contractor
5. Quality of software developers and their development environment
6. Communication approach amongst software developers
7. Clear articulation of software development progress
8. Sustainability of software development tempo
9. Awareness and guidance with regard to technical excellence
10. Simplicity of development process
11. Software Developers' understanding of government requirements
12. Software development team self-evaluation approach
Norman’s tailored Agile
Norman’s tailored Agile
approach and guidance
approach and guidance
presented to an Air
presented to an Air
Force sponsor to
Force sponsor to
support evaluation
support evaluation
Graphical Description of the eXtreme
Approach (optional)
 <show rapid iteration of all project tasks>
Vetworking Level Of Effort Analysis
Vetworking Level Of Effort and Work Items
 Approach to LOE
 Identified Level-0 and Level-1 design work items.
 Contacted MITRE for existing LOE of Vetworking project.
 Proceed to use historic project data for LOE estimate
 Facts
 Evidence has shown that Cloud services can be efficient and resourceful (database, availability,
security, low development overhead, direction of existing application development approach).
 Collected 5-person, 100-day, web-based application projects used for hour estimation.
 Software phase allocation
 Reconcile 11 software project measurement with software system development phases to derive
Design phase LOE estimate
 Initial Consideration
 Cloud-based web services based on HHS/CMS Surge Team software team experience. Cloud services
are scalable, economical, secure, and resourceful.
 Work estimation based on
 Estimation
Vetworking Level Of Effort
Support Raw Data
1 Software Project Manager
1 Software Designer
2 Software programmers
1 Software Tester
Non-silo activities, web-application with user
interface and database persistence
•Graduate computer science/engineering
students
•2 to 6 years of commercial product
development experience
•Master degree programmers
•Employers: Oracle, Google, Microsoft, etc.
•5 to 6 teams per semester
•9 semesters
Vetworking Level Of Effort
Support Data 2
1 Software Project Manager
1 Software Designer
2 Software programmers
1 Software Tester
Non-silo activities, web-application with user
interface and database persistence
•Graduate computer science/engineering
students
•2 to 6 years of commercial product
development experience
•Master degree programmers
•Employers: Oracle, Google, Microsoft, etc.
•5 to 6 teams per semester
•9 semesters
Vetworking Level Of Effort
History project estimation approach
1 Software Project Manager
1 Software Designer
2 Software programmers
1 Software Tester
Non-silo activities, web-application with user
interface and database persistence
•Graduate computer science/engineering
students
•2 to 6 years of commercial product
development experience
•Master degree programmers
•Employers: Oracle, Google, Microsoft, etc.
•5 to 6 teams per semester
•9 semesters
A 5-member team work one-third time for 100 days to
complete a web-application with user interface and
database persistence.
eXtreme programming recommends work at most 8
hours per 24 hours to assure continuous performance
and prevent burn-out.
7 days a week.
Per person per day = 10 X (1/3) = 3 1/3
Per team per day = 5 X 3 1/3 = 16 2/3
Total project hours = 16 2/3 X 100 = 1666 2/3
Vetworking Level Of Effort
History project estimation approach
1 Software Project Manager
1 Software Designer
2 Software programmers
1 Software Tester
Non-silo activities, web-application with user
interface and database persistence
•Graduate computer science/engineering
students
•2 to 6 years of commercial product
development experience
•Master degree programmers
•Employers: Oracle, Google, Microsoft, etc.
•5 to 6 teams per semester
•9 semesters
Allocation of 1,667 hours among work.
Level-0 phases: Management, Design, Code, Test
Project Artifacts: Requirement Count, Lines of
Code, File Count, Issue Count, Design Objects,
Test Cases, Unique Operator Count, Unique
Operand Count, Operator Count, Operand Count,
and Database Table Count WORKFACTS
Vetworking Level Of Effort
Application of work hours to Level-0 tasks based on project
evidential facts
Allocation of 1,667 hours among work.
Level-0 phases: Management, Design, Code, Test
Project Artifacts: Requirement Count, Lines of
Code, File Count, Issue Count, Design Objects,
Test Cases, Unique Operator Count, Unique
Operand Count, Operator Count, Operand Count,
and Database Table Count
WORKFACTS
<Allocate 1,667
hours to Level-0
tasks to support
LOE for Vetworking
design hours>
Vetworking LOE Estimation Support
1. Collected project
artifacts 2. Total hours worked to
produce product
3. Assigned artifacts according
to project phases4. Computed proportion and hours
spent per project phase
5. Arrived via fact-based hour estimate
per Vetworking phase products
Vetworking
Deliverable
s and
Hours
Estimate
Necessary
Activities
to build usable
Vetworking
product
Requirement Analysis
Program Performance Metrics
While initially provided requirements are Kite-Level business requirements pertaining to technical activities, system engineering thinking indicates a need to frame the project for the purpose of meeting possible unspoken longer-term program needs.
Recommend considering the possibility of engaging with the Northern Virginia Technology Council (NVTC) to consider program accountability and performance metrics.
Suggested measurements for consideration:
•Extended veteran employment status data
•Financial and managerial accountability measurement
•Feedback to role performance
•Plan to improve role performance
•Committee for business process and activity review and improvement
Roles
Veteran: The focus of this program. The goal of the program is to place
each veteran into permanent work.
Career Coach/Facilitator: Qualified subject matter expert whom is
effective in placing veteran-type clients into permanent work.
Mentor: A veteran’s personal confidant who assist veteran in adjusting to
civilian life.
Donor: People who gives money to NVTC to administer for the purpose of
help veteran to obtain permanent work.
Facility Host: A facility manager that is able to provide a venue to host
Boot Camp activities.
Caterer: People who provide food and refreshment during Boot Camp.
NVTC Administrator: Program management office that oversees and
responsible to effectively provide veteran with permanent work.
Kite-Level Data Flow
Coach
Caterer
NVTC Administrator
and other Classes
Design Analysis and Artifacts
artifact count
User stories:11
Test cases: 11
State diagrams: 3
Algorithms and rule sets: 5
Classes: 39
Class diagrams: 1
Sequence diagrams: 1 (Initial Meet)
PMO-level performance metrics: 5
High Level User Story
 VETworking is a program operated by the Northern Virginia
Technology Council (NVTC) designed to help veterans apply their
skills in the workforce and be exposed to job opportunities. This
computational solution will support continual administration of this
program to coordinate all participants, majority volunteers, for the
propose of matching veterans to permanent work.
Business Process Analysis for User Stories
Business Process Analysis for User Stories
User Story #1
 Name: Provide portals for all users.
 Each of the seven roles (Veteran, Mentor, Donor, Career
Coach/Facilitator, Facilities Host, Caterer, and NVTC Administrator)
will be able to log into the VETworking system from various
computing devices for the first time to establish an account and re-
login to the system to work their role’s activities.
User Story #2
 Name: Entering role-specific information.
 Each of the six roles (Veteran, Mentor, Donor, Career Coach,
Facilities Host, and NVTC Administrator) will be able to enter role-
specific information into the system. A minimum set of information is
sufficient to establish an account to prevent repeated entering of
same information. The system will prompt and help user to
complete unfilled information or required role-specific activities.
User Story #3
 Name: Donor functions
 A donor visits the website and is directed to a link which enable the
donor to give money to NVTC.
User Story #4
 Name: Facilities Hosts Information
 A Facilities Host (FH) logs onto the system and sees a display of Boot
Camp dates. The FH selects date(s) to indicate the availability of
the facility to host a Boot Camp. FH then continues to fill out
tailoring information such as Need a Caterer (Y/N), Maximum
Participants, Address, Preferred Contact, etc.) If FH has already
filled out such information on previous visit, this question sheet will
be pre-filled with the stored information.
User Story #5
 Name: Facilitators functions
 A Facilitator, aka qualified Career Coach, logs on to the system and
enters choices for the Boot Camp date(s). A visual display will show
the status of chosen dates and the next steps of the procedure.
When a Boot Camp pre-conditions are met, notice will be sent to all
participants to confirm the event.
User Story #6
 Name: Caterers functions
 A Caterer logs on to the system and enters choices for the Boot
Camp date(s) for which to provide services. The Caterer can view
number of participants, location, and other information to make a
decision. A visual display will show the status of chosen dates and
the next steps of the procedure. When a Boot Camp pre-conditions
are met, notice will be sent to all participants to confirm the event.
User Story #7
 Name: Event Business Process
 The system checks the pre-conditions of each Boot Camp. After the
venue has been selected, a facilitator has been identified, and
other pre-conditions satisfied, the system will notify all participant of
the successful arrangement of the date and move on to the pre-
event preparation activities. If time is within 24 hours of the event
date and event pre-conditions are still not satisfied, then a message
will be send to participants and they are prompted to register for
another event.
User Story #8
 Name: Veteran and Mentor Match
 The system will generate veteran and mentor matching report
based on the likelihood of long-term (greater than 12 months) total
benefit estimate for each veteran. The report will be provided to
the NVTC administrator. The veteran report will have that veteran
and also a top-five matching mentors list for that veteran. There will
be reason(s) and an action list for veterans who has no matches.
Similarly, the mentor report will have that mentor and a top-five
matching veterans for that mentor. There will be reason(s) and an
action list for mentors who has no matches. Each action item is
added to a to-do list which is tracked. The NVTC administrator is
responsible for the management of follow-up actions after
receiving the reports.
User Story #9
 Name: Event Selection
 After an initial meeting and if the veteran and mentor decided to
continue their relationship to work together to match the veteran a
permanent work, the veteran and the mentor will register for a Boot
Camp event. The mentor and veteran will complete all pre-event
activities, including creating an on-line plan to find permanent
work.
User Story #10
 Name: Event Rules
 The users of the system will receive alternative and other options
during all activities including scheduling of event dates for each
participants, matching mentors to veterans, and useful report and
suggestions that can improve program performance metrics. This
automation optimization capability shall be available for review
and for tailoring by the NVTC administrator.
User Story #11
 Name: Administrator Functions
 The system has full range of control regarding information disclosure
of all participants. The system administrator is responsible for setting
the flexible privacy options. An designated NVTC administrator will
work with a designated MITRE system administrator to configure all
system functions for the purpose of conformance to U. S. Code and
for the purpose of optimizing all resources for the purpose of placing
veterans into permanent work.
classes
classes from user stories
Mentor
-
<attributes>
-
<methods>
Donor
-
<attributes>
-
<methods>
CCoach/Facil
-
<attributes>
-
<methods>
Facility Host
-
<attributes>
-
<methods>
Caterer
-
<attributes>
-
<methods>
Veteran
-
<attributes>
-
<methods>
NVTC Admin
-
<attributes>
-
<methods>
VETWorking
System
-
<attributes>
-
<methods>
-
<attributes>
-
<methods>
Access Device
-
<attributes>
-
<methods>
Account
-
<attributes>
-
<methods>
Role Behavior
-
<attributes>
-
<methods>
Role Info.
-
<attributes>
-
<methods>
NVTC
-
<attributes>
-
<methods>
Money
-
Type
-
<methods>
Billing Sys.
-
<attributes>
-
<methods>
Facility
-
Address, Max Cap.,
POC,
-
<methods>
Camp Event
-
<attributes>
-
<methods>
Schedule
-
<attributes>
-
<methods>
Camp Rules
-
Event_Pre_Condition
-
<methods>
Food and Drink
-
<attributes>
-
<methods>
Event Display
-
<attributes>
-
<methods>
Event
Confirmation
-
<attributes>
-
<methods>
NVTC VETworking
Program
-
<attributes>
-
<methods>
Roles
-
<attributes>
-
<methods>
1
*
39 classes identified from User Stories
classes from user stories
-
<attributes>
-
<methods>
Pre-Event
Activity
-
<attributes>
-
<methods>
Event Re-Register
-
<attributes>
-
<methods>
Veteran Match
List
-
Top Five Match
Reasons
Action List
-
<methods>
Mentor Match
List
-
Top Five Match
Reasons
Action List
-
<methods>
Match List Action
-
Top Five Match
Reasons
Action List
-
<methods>
Initial Meeting
-
<attributes>
-
<methods>
Veteran Interaction
Event
-
<attributes>
-
<methods>
Job Opening
-
Filled
-
<methods>
Job Plan
-
Filled
-
<methods>
Event Report
-
Filled
-
<methods>
Training
Document
-
Filled
-
<methods>
Program
Performance
Metrics
-
Filled
-
<methods>
Sys. Admin.
Document
-
<attributes>
-
<methods>
MITRE POC
-
<attributes>
-
<methods>
Job
-
Filled
-
<methods>
39 classes identified from User Stories
class diagram 1
Veteran
-
<attributes>
-
<methods>
Job Opening
-
<attributes>
-
<methods>
Job Plan
-
<attributes>
-
<methods>
Mentor
-
<attributes>
-
<methods>
1 *
NVTC VETworking
Program
-
<attributes>
-
<methods>
Donor
-
<attributes>
-
<methods>
*
VETWorking
System
-
<attributes>
-
<methods>
“1” is the default Multiplicity value
Consider open UML tool
Billing Sys.
-
<attributes>
-
<methods>
Administer
*
Camp Event
-
<attributes>
-
<methods>
*
*
*
CCoach/Facil
-
<attributes>
-
<methods>
Roles
-
<attributes>
-
<methods>
Register
Program
Performance
Metrics
-
<attributes>
-
<methods>
Applies
Caterer
-
<attributes>
-
<methods>
*
*
Job
-
<attributes>
-
<methods>
*
*
NVTC Admin
-
<attributes>
-
<methods>
Access Device
-
<attributes>
-
<methods>
*
class diagram 2
1 *“1” is the default Multiplicity value
Additional class diagrams as needed to describes the VETworking system at various detail levels and
focusing on various project perspectives.
Sequence diagram 1, Complete Initial Meeting (1/3)
A-Veteran A-Mentor
The-VETworking
System
An-Initial
Meeting (IM)
Pre-condition:
A Mentor has been
matched to the
Veterian.
This sequence diagram
(a type of Interaction
diagrams) describes
the interaction
between objects that
results in the end
result of a successful
Initial Meeting
between a Veteran and
the Mentor.
Result:
Successful completion
of Initial Meeting and
continue to Boot Camp
activity.
Veteran initial login Matched Mentor
initial login
Create get veteran job()
Create Initial Meeting()
Object creation
get IM assessment info()
Notify Mentor pre-IM tasks()
Notify Veteran pre-IM tasks()
IM assessment info()
Process status
Suggest venue and time()
confirmation
Meeting reminder
To-do (on-line) Check Activities
On-line real-time facilitation
IM facilitation rules
IM data exchange
IM exchange record
IM record
IM assessmentPost Event Actions
Persistence
Requirement
Consider
Transactional
Pattern
*Consider open UML tool
Sequence diagram 1, Complete Initial Meeting (2/3)
Error Condition List
A-Veteran A-Mentor
The-VETworking
System
An-Initial
Meeting (IM)
Error and Fail Conditions:
The goal of this sequence diagram is to have both the Veteran and the Mentor prepared for the next VETworking step for the
final goal of matching the veteran to a permanent work. As you are programming this user story, keep in mind of the following
error/failing conditions and write code for the purpose of support the completing of the Initial Meeting. (note: verify specific
numbers)
C1. The veteran did not respond to initial meeting invite within 36 hours
C2. The mentor did not respond to initial meeting invite within 36 hours
C3. Initial Meeting object failed to update
C4. Initial Meeting object failed to create
C5. Pre-meeting work not completed within 48 hours of initial meeting (this should not block Initial Meeting)
C6. Veteran not in record
C7. Mentor not in record
C8. <TBD>
Sequence diagram 1, Complete Initial Meeting (3/3)
Error Condition Remedy
A-Veteran A-Mentor
The-VETworking
System
An-Initial
Meeting (IM)
Pre-condition:
Plan anomaly has been
detected by system.
Result:
Successful completion
of Initial Meeting by
the veteran with the
Mentor and continue
to Boot Camp activity.
NVTC Admin
Schedule Error
C3, C4
To-do Item
Alternative Channels
Plan Anomaly
Prompt
C1
To-do Item
Alternative Channels
Plan Anomaly
Prompt
C2
Inform
Plan Anomaly
Notice
C5
Inform
Plan Anomaly
Init Provide Portal user story
C6, C7
Provide Portal interaction
algorithms and rules
Veteran and Mentor Matching Algorithm
 <Algorithm supports matching of a mentor to a veteran for the
purpose of resultant team would have high likelihood of placing the
veteran into permanent work >
 Algorithm 1: First Match
 Algorithm 2: Maximum Commonality Match
 Algorithm 3: Big Data Match
 Algorithm 4: Human in the loop
 Algorithm 5: Neural Net Learning
 Note: Collect Performance Data
Veteran Assessment Algorithm
 <Algorithm supports Coaches and mentors to build veterans’
resumes based on VETworking veteran record and following
information>
 Talent Sort
 HBDI
 Career Anchors
 Strength Finder
 Myers Briggs
 Communication Style
Veteran and Job Matching Algorithm
 <Algorithm supports Coaches and mentors to identify probable job
matches to initiate the job application process>
Event Rules
 Boot Camp event rules that are codified for automation.
VETworking Program Rules
 VETWoring rules codified for automation.
state diagrams
Veteran Employment Status State Diagram
Boot Camp Event Status State Diagram
Architectural Analysis of Alternatives
 Computational Resources
 On-premise (Y/N)
 IaaS (Y/N)
 PaaS (Y/N)
 SaaS (Y/N)
test cases
validate to User Stories
test case #1
 Name: Provide portals for all users.
test case #2
 Name: Entering role-specific information.
test case #3
 Name: Donor functions
test case #4
 Name: Facilities Hosts Information
test case #5
 Name: Facilitators functions
test case #6
 Name: Caterers functions
test case #7
 Name: Event Business Process
test case #8
 Name: Veteran and Mentor Match
test case #9
 Name: Event Selection
test case #10
 Name: Event Rules
test case #11
 Name: Administrator Functions
architecture consideration
architecture consideration
 Analysis of alternatives amongst On-premise, IaaS, PaaS, or SaaS
backup
Software system design sample
Software system design sample

More Related Content

What's hot

Software Engineering- Observations about Testing
Software Engineering-  Observations about TestingSoftware Engineering-  Observations about Testing
Software Engineering- Observations about TestingTrinity Dwarka
 
Ast 2012 - Practices for Test Automation in Scrum Projects
Ast 2012 - Practices for Test Automation in Scrum ProjectsAst 2012 - Practices for Test Automation in Scrum Projects
Ast 2012 - Practices for Test Automation in Scrum ProjectsEliane Collins
 
SDPM - Lecture 3 - Selecting an appropriate software development approach.pdf
SDPM - Lecture 3 - Selecting an appropriate software development approach.pdfSDPM - Lecture 3 - Selecting an appropriate software development approach.pdf
SDPM - Lecture 3 - Selecting an appropriate software development approach.pdfOpenLearningLab
 
Abhishek_Resume_Latest
Abhishek_Resume_LatestAbhishek_Resume_Latest
Abhishek_Resume_LatestAbhishek Singh
 
Kusuma_Resume_5+
Kusuma_Resume_5+Kusuma_Resume_5+
Kusuma_Resume_5+kusuma T
 
Sunetra banerjee-sr-qa-engineer-project-lead resume
Sunetra banerjee-sr-qa-engineer-project-lead resumeSunetra banerjee-sr-qa-engineer-project-lead resume
Sunetra banerjee-sr-qa-engineer-project-lead resumeSunetra Banerjee
 
Sunetra Banerjee-Sr-QA-Engineer-Project-Lead Resume
Sunetra Banerjee-Sr-QA-Engineer-Project-Lead ResumeSunetra Banerjee-Sr-QA-Engineer-Project-Lead Resume
Sunetra Banerjee-Sr-QA-Engineer-Project-Lead ResumeSunetra Banerjee
 
Sivakumar Ganapathy_Test Manager Profile
Sivakumar Ganapathy_Test Manager ProfileSivakumar Ganapathy_Test Manager Profile
Sivakumar Ganapathy_Test Manager ProfileSivakumar Ganapathy
 
DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...
DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...
DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...cscpconf
 

What's hot (19)

Pradeep.CL
Pradeep.CLPradeep.CL
Pradeep.CL
 
Mohini
MohiniMohini
Mohini
 
Software Engineering- Observations about Testing
Software Engineering-  Observations about TestingSoftware Engineering-  Observations about Testing
Software Engineering- Observations about Testing
 
Ast 2012 - Practices for Test Automation in Scrum Projects
Ast 2012 - Practices for Test Automation in Scrum ProjectsAst 2012 - Practices for Test Automation in Scrum Projects
Ast 2012 - Practices for Test Automation in Scrum Projects
 
SE Unit 1
SE Unit 1SE Unit 1
SE Unit 1
 
Deepanshu_Resume
Deepanshu_ResumeDeepanshu_Resume
Deepanshu_Resume
 
SDPM - Lecture 3 - Selecting an appropriate software development approach.pdf
SDPM - Lecture 3 - Selecting an appropriate software development approach.pdfSDPM - Lecture 3 - Selecting an appropriate software development approach.pdf
SDPM - Lecture 3 - Selecting an appropriate software development approach.pdf
 
Abhishek_Resume_Latest
Abhishek_Resume_LatestAbhishek_Resume_Latest
Abhishek_Resume_Latest
 
Kusuma_Resume_5+
Kusuma_Resume_5+Kusuma_Resume_5+
Kusuma_Resume_5+
 
Sunetra banerjee-sr-qa-engineer-project-lead resume
Sunetra banerjee-sr-qa-engineer-project-lead resumeSunetra banerjee-sr-qa-engineer-project-lead resume
Sunetra banerjee-sr-qa-engineer-project-lead resume
 
project_details
project_detailsproject_details
project_details
 
Sunetra Banerjee-Sr-QA-Engineer-Project-Lead Resume
Sunetra Banerjee-Sr-QA-Engineer-Project-Lead ResumeSunetra Banerjee-Sr-QA-Engineer-Project-Lead Resume
Sunetra Banerjee-Sr-QA-Engineer-Project-Lead Resume
 
GVL.Naidu_CV_QA
GVL.Naidu_CV_QAGVL.Naidu_CV_QA
GVL.Naidu_CV_QA
 
CV_latest_22_07_15
CV_latest_22_07_15CV_latest_22_07_15
CV_latest_22_07_15
 
Praveen_resume
Praveen_resumePraveen_resume
Praveen_resume
 
Sivakumar Ganapathy_Test Manager Profile
Sivakumar Ganapathy_Test Manager ProfileSivakumar Ganapathy_Test Manager Profile
Sivakumar Ganapathy_Test Manager Profile
 
Vibhor Raman
Vibhor RamanVibhor Raman
Vibhor Raman
 
jmstrang01
jmstrang01jmstrang01
jmstrang01
 
DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...
DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...
DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO...
 

Similar to Software system design sample (20)

Resume
ResumeResume
Resume
 
Prasanth_CV
Prasanth_CVPrasanth_CV
Prasanth_CV
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
 
Bikram kishor rout
Bikram kishor routBikram kishor rout
Bikram kishor rout
 
Navin Latest
Navin LatestNavin Latest
Navin Latest
 
9 Yrs Manual and Selenium Testing Profile
9 Yrs Manual and Selenium Testing Profile9 Yrs Manual and Selenium Testing Profile
9 Yrs Manual and Selenium Testing Profile
 
biswajit
biswajitbiswajit
biswajit
 
Neha_Maggu
Neha_MagguNeha_Maggu
Neha_Maggu
 
Resume_.Net_3+Yr
Resume_.Net_3+YrResume_.Net_3+Yr
Resume_.Net_3+Yr
 
Atish_Gaikwad_Dot_Net_9_4_Years_Exp
Atish_Gaikwad_Dot_Net_9_4_Years_ExpAtish_Gaikwad_Dot_Net_9_4_Years_Exp
Atish_Gaikwad_Dot_Net_9_4_Years_Exp
 
Babu_Resume
Babu_ResumeBabu_Resume
Babu_Resume
 
Preliminry report
 Preliminry report Preliminry report
Preliminry report
 
Arnab Chakraborty CV
Arnab Chakraborty CVArnab Chakraborty CV
Arnab Chakraborty CV
 
Vivek_MK
Vivek_MKVivek_MK
Vivek_MK
 
Neal Schrauf_Resume
Neal Schrauf_ResumeNeal Schrauf_Resume
Neal Schrauf_Resume
 
HemantKumarSharma_v1.1
HemantKumarSharma_v1.1HemantKumarSharma_v1.1
HemantKumarSharma_v1.1
 
kishore
kishorekishore
kishore
 
Musharraf_Syed_Resume
Musharraf_Syed_ResumeMusharraf_Syed_Resume
Musharraf_Syed_Resume
 
Darpangupta resume
Darpangupta resumeDarpangupta resume
Darpangupta resume
 
Venkatesan Profile.docx
Venkatesan Profile.docxVenkatesan Profile.docx
Venkatesan Profile.docx
 

Recently uploaded

Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 

Recently uploaded (20)

Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 

Software system design sample

  • 1. VETWorking Project NOTE: THIS FILE CONTAINS ARTIFACTS OF THE VETWORKING PROJECT. NORMAN K. MA, PH.D. COPYRIGHT © 2015 NORMAN K. MA
  • 2. project overview  Vetworking will be developed using the eXtreme programming methodology in which Norman has (1) taught as a graduate teaching assistant (software project laboratory), (2) followed the process as a software engineer at Nortel Networks, (3) followed the process as a software engineer at Raytheon, and (4) as a DOD Air Force proposal reviewer subject matter expert (SME) at the MITRE Corporation.  This is a de facto industry standard process with tailoring to specific domains. Norman will use the methodology to generate sufficient artifacts for the future of the project, which is implementation using specific programming language, middleware, in a specific platform.
  • 3. design artifacts  The scope of this project is to create design artifacts for the purpose to hand off to a programming team. The design artifacts that will be produced are:  User Stories (a prose description of the project)  Class Diagrams (data structures for object-oriented implementation)  Sequence Diagrams (description of interaction activities between system objects)  Option: State Diagrams if artificial intelligence or machine intelligence constructs are deemed of value.  In commercial industry, the above software artifacts will be sufficient for programmers to develop an initial prototype to begin the programming-level activities of the Agile system development methodology.
  • 4. eXtreme Programming Processes that Connect Requirement and Programming Capabilities to Enable Result Requirement Activities Programming Activities eXtreme Agile Processes Enables
  • 5. agile methodology In 2001, 12 Agile software development principles were developed in Utah, think in context of Acquisition PMO (users), Contractor Managers, and Contractor Developers: 1. Availability of software to government for in-process evaluation 2. Flexibility in editing requirements 3. Software delivery frequency 4. Communication approaches between government and contractor 5. Quality of software developers and their development environment 6. Communication approach amongst software developers 7. Clear articulation of software development progress 8. Sustainability of software development tempo 9. Awareness and guidance with regard to technical excellence 10. Simplicity of development process 11. Software Developers' understanding of government requirements 12. Software development team self-evaluation approach Norman’s tailored Agile Norman’s tailored Agile approach and guidance approach and guidance presented to an Air presented to an Air Force sponsor to Force sponsor to support evaluation support evaluation
  • 6. Graphical Description of the eXtreme Approach (optional)  <show rapid iteration of all project tasks>
  • 7. Vetworking Level Of Effort Analysis
  • 8. Vetworking Level Of Effort and Work Items  Approach to LOE  Identified Level-0 and Level-1 design work items.  Contacted MITRE for existing LOE of Vetworking project.  Proceed to use historic project data for LOE estimate  Facts  Evidence has shown that Cloud services can be efficient and resourceful (database, availability, security, low development overhead, direction of existing application development approach).  Collected 5-person, 100-day, web-based application projects used for hour estimation.  Software phase allocation  Reconcile 11 software project measurement with software system development phases to derive Design phase LOE estimate  Initial Consideration  Cloud-based web services based on HHS/CMS Surge Team software team experience. Cloud services are scalable, economical, secure, and resourceful.  Work estimation based on  Estimation
  • 9. Vetworking Level Of Effort Support Raw Data 1 Software Project Manager 1 Software Designer 2 Software programmers 1 Software Tester Non-silo activities, web-application with user interface and database persistence •Graduate computer science/engineering students •2 to 6 years of commercial product development experience •Master degree programmers •Employers: Oracle, Google, Microsoft, etc. •5 to 6 teams per semester •9 semesters
  • 10. Vetworking Level Of Effort Support Data 2 1 Software Project Manager 1 Software Designer 2 Software programmers 1 Software Tester Non-silo activities, web-application with user interface and database persistence •Graduate computer science/engineering students •2 to 6 years of commercial product development experience •Master degree programmers •Employers: Oracle, Google, Microsoft, etc. •5 to 6 teams per semester •9 semesters
  • 11. Vetworking Level Of Effort History project estimation approach 1 Software Project Manager 1 Software Designer 2 Software programmers 1 Software Tester Non-silo activities, web-application with user interface and database persistence •Graduate computer science/engineering students •2 to 6 years of commercial product development experience •Master degree programmers •Employers: Oracle, Google, Microsoft, etc. •5 to 6 teams per semester •9 semesters A 5-member team work one-third time for 100 days to complete a web-application with user interface and database persistence. eXtreme programming recommends work at most 8 hours per 24 hours to assure continuous performance and prevent burn-out. 7 days a week. Per person per day = 10 X (1/3) = 3 1/3 Per team per day = 5 X 3 1/3 = 16 2/3 Total project hours = 16 2/3 X 100 = 1666 2/3
  • 12. Vetworking Level Of Effort History project estimation approach 1 Software Project Manager 1 Software Designer 2 Software programmers 1 Software Tester Non-silo activities, web-application with user interface and database persistence •Graduate computer science/engineering students •2 to 6 years of commercial product development experience •Master degree programmers •Employers: Oracle, Google, Microsoft, etc. •5 to 6 teams per semester •9 semesters Allocation of 1,667 hours among work. Level-0 phases: Management, Design, Code, Test Project Artifacts: Requirement Count, Lines of Code, File Count, Issue Count, Design Objects, Test Cases, Unique Operator Count, Unique Operand Count, Operator Count, Operand Count, and Database Table Count WORKFACTS
  • 13. Vetworking Level Of Effort Application of work hours to Level-0 tasks based on project evidential facts Allocation of 1,667 hours among work. Level-0 phases: Management, Design, Code, Test Project Artifacts: Requirement Count, Lines of Code, File Count, Issue Count, Design Objects, Test Cases, Unique Operator Count, Unique Operand Count, Operator Count, Operand Count, and Database Table Count WORKFACTS <Allocate 1,667 hours to Level-0 tasks to support LOE for Vetworking design hours>
  • 14. Vetworking LOE Estimation Support 1. Collected project artifacts 2. Total hours worked to produce product 3. Assigned artifacts according to project phases4. Computed proportion and hours spent per project phase 5. Arrived via fact-based hour estimate per Vetworking phase products
  • 17. Program Performance Metrics While initially provided requirements are Kite-Level business requirements pertaining to technical activities, system engineering thinking indicates a need to frame the project for the purpose of meeting possible unspoken longer-term program needs. Recommend considering the possibility of engaging with the Northern Virginia Technology Council (NVTC) to consider program accountability and performance metrics. Suggested measurements for consideration: •Extended veteran employment status data •Financial and managerial accountability measurement •Feedback to role performance •Plan to improve role performance •Committee for business process and activity review and improvement
  • 18. Roles Veteran: The focus of this program. The goal of the program is to place each veteran into permanent work. Career Coach/Facilitator: Qualified subject matter expert whom is effective in placing veteran-type clients into permanent work. Mentor: A veteran’s personal confidant who assist veteran in adjusting to civilian life. Donor: People who gives money to NVTC to administer for the purpose of help veteran to obtain permanent work. Facility Host: A facility manager that is able to provide a venue to host Boot Camp activities. Caterer: People who provide food and refreshment during Boot Camp. NVTC Administrator: Program management office that oversees and responsible to effectively provide veteran with permanent work.
  • 19. Kite-Level Data Flow Coach Caterer NVTC Administrator and other Classes
  • 20. Design Analysis and Artifacts
  • 21. artifact count User stories:11 Test cases: 11 State diagrams: 3 Algorithms and rule sets: 5 Classes: 39 Class diagrams: 1 Sequence diagrams: 1 (Initial Meet) PMO-level performance metrics: 5
  • 22. High Level User Story  VETworking is a program operated by the Northern Virginia Technology Council (NVTC) designed to help veterans apply their skills in the workforce and be exposed to job opportunities. This computational solution will support continual administration of this program to coordinate all participants, majority volunteers, for the propose of matching veterans to permanent work.
  • 23. Business Process Analysis for User Stories
  • 24. Business Process Analysis for User Stories
  • 25. User Story #1  Name: Provide portals for all users.  Each of the seven roles (Veteran, Mentor, Donor, Career Coach/Facilitator, Facilities Host, Caterer, and NVTC Administrator) will be able to log into the VETworking system from various computing devices for the first time to establish an account and re- login to the system to work their role’s activities.
  • 26. User Story #2  Name: Entering role-specific information.  Each of the six roles (Veteran, Mentor, Donor, Career Coach, Facilities Host, and NVTC Administrator) will be able to enter role- specific information into the system. A minimum set of information is sufficient to establish an account to prevent repeated entering of same information. The system will prompt and help user to complete unfilled information or required role-specific activities.
  • 27. User Story #3  Name: Donor functions  A donor visits the website and is directed to a link which enable the donor to give money to NVTC.
  • 28. User Story #4  Name: Facilities Hosts Information  A Facilities Host (FH) logs onto the system and sees a display of Boot Camp dates. The FH selects date(s) to indicate the availability of the facility to host a Boot Camp. FH then continues to fill out tailoring information such as Need a Caterer (Y/N), Maximum Participants, Address, Preferred Contact, etc.) If FH has already filled out such information on previous visit, this question sheet will be pre-filled with the stored information.
  • 29. User Story #5  Name: Facilitators functions  A Facilitator, aka qualified Career Coach, logs on to the system and enters choices for the Boot Camp date(s). A visual display will show the status of chosen dates and the next steps of the procedure. When a Boot Camp pre-conditions are met, notice will be sent to all participants to confirm the event.
  • 30. User Story #6  Name: Caterers functions  A Caterer logs on to the system and enters choices for the Boot Camp date(s) for which to provide services. The Caterer can view number of participants, location, and other information to make a decision. A visual display will show the status of chosen dates and the next steps of the procedure. When a Boot Camp pre-conditions are met, notice will be sent to all participants to confirm the event.
  • 31. User Story #7  Name: Event Business Process  The system checks the pre-conditions of each Boot Camp. After the venue has been selected, a facilitator has been identified, and other pre-conditions satisfied, the system will notify all participant of the successful arrangement of the date and move on to the pre- event preparation activities. If time is within 24 hours of the event date and event pre-conditions are still not satisfied, then a message will be send to participants and they are prompted to register for another event.
  • 32. User Story #8  Name: Veteran and Mentor Match  The system will generate veteran and mentor matching report based on the likelihood of long-term (greater than 12 months) total benefit estimate for each veteran. The report will be provided to the NVTC administrator. The veteran report will have that veteran and also a top-five matching mentors list for that veteran. There will be reason(s) and an action list for veterans who has no matches. Similarly, the mentor report will have that mentor and a top-five matching veterans for that mentor. There will be reason(s) and an action list for mentors who has no matches. Each action item is added to a to-do list which is tracked. The NVTC administrator is responsible for the management of follow-up actions after receiving the reports.
  • 33. User Story #9  Name: Event Selection  After an initial meeting and if the veteran and mentor decided to continue their relationship to work together to match the veteran a permanent work, the veteran and the mentor will register for a Boot Camp event. The mentor and veteran will complete all pre-event activities, including creating an on-line plan to find permanent work.
  • 34. User Story #10  Name: Event Rules  The users of the system will receive alternative and other options during all activities including scheduling of event dates for each participants, matching mentors to veterans, and useful report and suggestions that can improve program performance metrics. This automation optimization capability shall be available for review and for tailoring by the NVTC administrator.
  • 35. User Story #11  Name: Administrator Functions  The system has full range of control regarding information disclosure of all participants. The system administrator is responsible for setting the flexible privacy options. An designated NVTC administrator will work with a designated MITRE system administrator to configure all system functions for the purpose of conformance to U. S. Code and for the purpose of optimizing all resources for the purpose of placing veterans into permanent work.
  • 37. classes from user stories Mentor - <attributes> - <methods> Donor - <attributes> - <methods> CCoach/Facil - <attributes> - <methods> Facility Host - <attributes> - <methods> Caterer - <attributes> - <methods> Veteran - <attributes> - <methods> NVTC Admin - <attributes> - <methods> VETWorking System - <attributes> - <methods> - <attributes> - <methods> Access Device - <attributes> - <methods> Account - <attributes> - <methods> Role Behavior - <attributes> - <methods> Role Info. - <attributes> - <methods> NVTC - <attributes> - <methods> Money - Type - <methods> Billing Sys. - <attributes> - <methods> Facility - Address, Max Cap., POC, - <methods> Camp Event - <attributes> - <methods> Schedule - <attributes> - <methods> Camp Rules - Event_Pre_Condition - <methods> Food and Drink - <attributes> - <methods> Event Display - <attributes> - <methods> Event Confirmation - <attributes> - <methods> NVTC VETworking Program - <attributes> - <methods> Roles - <attributes> - <methods> 1 * 39 classes identified from User Stories
  • 38. classes from user stories - <attributes> - <methods> Pre-Event Activity - <attributes> - <methods> Event Re-Register - <attributes> - <methods> Veteran Match List - Top Five Match Reasons Action List - <methods> Mentor Match List - Top Five Match Reasons Action List - <methods> Match List Action - Top Five Match Reasons Action List - <methods> Initial Meeting - <attributes> - <methods> Veteran Interaction Event - <attributes> - <methods> Job Opening - Filled - <methods> Job Plan - Filled - <methods> Event Report - Filled - <methods> Training Document - Filled - <methods> Program Performance Metrics - Filled - <methods> Sys. Admin. Document - <attributes> - <methods> MITRE POC - <attributes> - <methods> Job - Filled - <methods> 39 classes identified from User Stories
  • 39. class diagram 1 Veteran - <attributes> - <methods> Job Opening - <attributes> - <methods> Job Plan - <attributes> - <methods> Mentor - <attributes> - <methods> 1 * NVTC VETworking Program - <attributes> - <methods> Donor - <attributes> - <methods> * VETWorking System - <attributes> - <methods> “1” is the default Multiplicity value Consider open UML tool Billing Sys. - <attributes> - <methods> Administer * Camp Event - <attributes> - <methods> * * * CCoach/Facil - <attributes> - <methods> Roles - <attributes> - <methods> Register Program Performance Metrics - <attributes> - <methods> Applies Caterer - <attributes> - <methods> * * Job - <attributes> - <methods> * * NVTC Admin - <attributes> - <methods> Access Device - <attributes> - <methods> *
  • 40. class diagram 2 1 *“1” is the default Multiplicity value Additional class diagrams as needed to describes the VETworking system at various detail levels and focusing on various project perspectives.
  • 41. Sequence diagram 1, Complete Initial Meeting (1/3) A-Veteran A-Mentor The-VETworking System An-Initial Meeting (IM) Pre-condition: A Mentor has been matched to the Veterian. This sequence diagram (a type of Interaction diagrams) describes the interaction between objects that results in the end result of a successful Initial Meeting between a Veteran and the Mentor. Result: Successful completion of Initial Meeting and continue to Boot Camp activity. Veteran initial login Matched Mentor initial login Create get veteran job() Create Initial Meeting() Object creation get IM assessment info() Notify Mentor pre-IM tasks() Notify Veteran pre-IM tasks() IM assessment info() Process status Suggest venue and time() confirmation Meeting reminder To-do (on-line) Check Activities On-line real-time facilitation IM facilitation rules IM data exchange IM exchange record IM record IM assessmentPost Event Actions Persistence Requirement Consider Transactional Pattern *Consider open UML tool
  • 42. Sequence diagram 1, Complete Initial Meeting (2/3) Error Condition List A-Veteran A-Mentor The-VETworking System An-Initial Meeting (IM) Error and Fail Conditions: The goal of this sequence diagram is to have both the Veteran and the Mentor prepared for the next VETworking step for the final goal of matching the veteran to a permanent work. As you are programming this user story, keep in mind of the following error/failing conditions and write code for the purpose of support the completing of the Initial Meeting. (note: verify specific numbers) C1. The veteran did not respond to initial meeting invite within 36 hours C2. The mentor did not respond to initial meeting invite within 36 hours C3. Initial Meeting object failed to update C4. Initial Meeting object failed to create C5. Pre-meeting work not completed within 48 hours of initial meeting (this should not block Initial Meeting) C6. Veteran not in record C7. Mentor not in record C8. <TBD>
  • 43. Sequence diagram 1, Complete Initial Meeting (3/3) Error Condition Remedy A-Veteran A-Mentor The-VETworking System An-Initial Meeting (IM) Pre-condition: Plan anomaly has been detected by system. Result: Successful completion of Initial Meeting by the veteran with the Mentor and continue to Boot Camp activity. NVTC Admin Schedule Error C3, C4 To-do Item Alternative Channels Plan Anomaly Prompt C1 To-do Item Alternative Channels Plan Anomaly Prompt C2 Inform Plan Anomaly Notice C5 Inform Plan Anomaly Init Provide Portal user story C6, C7 Provide Portal interaction
  • 45. Veteran and Mentor Matching Algorithm  <Algorithm supports matching of a mentor to a veteran for the purpose of resultant team would have high likelihood of placing the veteran into permanent work >  Algorithm 1: First Match  Algorithm 2: Maximum Commonality Match  Algorithm 3: Big Data Match  Algorithm 4: Human in the loop  Algorithm 5: Neural Net Learning  Note: Collect Performance Data
  • 46. Veteran Assessment Algorithm  <Algorithm supports Coaches and mentors to build veterans’ resumes based on VETworking veteran record and following information>  Talent Sort  HBDI  Career Anchors  Strength Finder  Myers Briggs  Communication Style
  • 47. Veteran and Job Matching Algorithm  <Algorithm supports Coaches and mentors to identify probable job matches to initiate the job application process>
  • 48. Event Rules  Boot Camp event rules that are codified for automation.
  • 49. VETworking Program Rules  VETWoring rules codified for automation.
  • 51. Veteran Employment Status State Diagram
  • 52. Boot Camp Event Status State Diagram
  • 53. Architectural Analysis of Alternatives  Computational Resources  On-premise (Y/N)  IaaS (Y/N)  PaaS (Y/N)  SaaS (Y/N)
  • 54. test cases validate to User Stories
  • 55. test case #1  Name: Provide portals for all users.
  • 56. test case #2  Name: Entering role-specific information.
  • 57. test case #3  Name: Donor functions
  • 58. test case #4  Name: Facilities Hosts Information
  • 59. test case #5  Name: Facilitators functions
  • 60. test case #6  Name: Caterers functions
  • 61. test case #7  Name: Event Business Process
  • 62. test case #8  Name: Veteran and Mentor Match
  • 63. test case #9  Name: Event Selection
  • 64. test case #10  Name: Event Rules
  • 65. test case #11  Name: Administrator Functions
  • 67. architecture consideration  Analysis of alternatives amongst On-premise, IaaS, PaaS, or SaaS

Editor's Notes

  1. Briefly describe each of the agile principles and its instantiation in the development process.
  2. Laboratory project is a web application in the consumer remote transaction process domain requiring both user interfaces and database. The Vetworking project is more complicated because of scheduling, planning, and persistence of business process requirements.
  3. Laboratory project is a web application in the consumer remote transaction process domain requiring both user interfaces and database. The Vetworking project is more complicated because of scheduling, planning, and persistence of business process requirements.
  4. S-curve describe the productivity of each the identified 11 software engineering project artifacts. A S-curve is described by the readiness and the generation parameters.
  5. 10 hours a day average graduate student daily hours. Full-time graduate students takes 3 courses. 5 members to each Software Engineering laboratory project The time duration is about 100 days, or 3 months
  6. Laboratory project is a web application in the consumer remote transaction process domain requiring both user interfaces and database. The Vetworking project is more complicated because of scheduling, planning, and persistence of business process requirements.
  7. Laboratory project is a web application in the consumer remote transaction process domain requiring both user interfaces and database. The Vetworking project is more complicated because of scheduling, planning, and persistence of business process requirements.
  8. Red-colored circles identify Initial Meeting user story classes.
  9. Red-colored circles identify Initial Meeting user story classes.
  10. The red-colored circles highlight central classes.