Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
Life Cycle Plan (LCP)
Data Information Analytics - Managed Online Network Database:
DIAMOND
Team 01
Samantha Cote Project Manager, Life Cycle Planner
Haiwen Chen Requirements Engineer
Danny Diaz Ayon Verification & Validation, Quality Focal Point
Shijie Ding Software Architect/UML Modeler
Meghana Kolasani Prototyper
Dzung Phan Software Architect/UML Modeler, Prototyper
Derek Wang Feasibility Analyst
Drew Webb Operational Concept Engineer
Life Cycle Plan (LCP) Version 2.0
October 21st, 2020
LCP_FCP_F20a_T01_V2.0.docx Version Date: 10/21/20
Version History
Date
Author
Version
Changes made
Rationale
10/15/20
Samantha Cote
1.0
· initialized template for project
· added team members, roles
· completed section 1
Initialize the document for further completion
10/17/20
Samantha Cote
1.2
· completed sections 2 & 3
· added tables for COCOMO scale drivers and cost drivers
To keep the document consistent with our COCOMO estimation
10/20/20
Samantha Cote
1.3
· Completed sections 4 & 5
Maintain consistency with FC Package expectations
10/21/20
Samantha Cote
2.0
· updated stakeholders to be consistent with other team members’ artifacts
To comply with ARB Presentation Feedback; Final version to be submit for FC Package
Table of Contents
Life Cycle Plan (LCP)Version History1Table of Contents2Table of Tables3Table of Figures41.Introduction51.1Purpose of the LCP51.2Status of the LCP51.3Assumptions52.Milestones and Products72.1Overall Strategy72.2Phases 72.3 Project Deliverables93.Responsibilities123.1Project-specific stakeholder’s responsibilities123.2Responsibilities by Phase123.3Skills154.Approach164.1Monitoring and Control164.2Methods, Tools and Facilities175.Resources18
Life Cycle Plan (LCP) Version 2.0
LCP_FCP_F20a_T01_V2.0.docx Version Date: 10/21/20
Table of Tables
Table 1: Artifacts Deliverables in Exploration Phase9Table 2: Artifact deliverable in Valuation Phase9Table 3: Artifact deliverable in Foundations Phase10Table 4: Artifact deliverable in Development Phase11Table 5: Stakeholder's Responsibilities in each phase12Table 6: Skills Required for Each Role16Table 7: Methods, Tools and Facilities17Table 8: Modules and Estimated SLOC19Table 9: COCOMO-II Scale Drivers19Table 10: COCOMO-II Cost Drivers for Module 120Table 11: COCOMO-II Cost Drivers for Module 2 22Table 12: COCOMO-II Cost Drivers for Module 324Table 13: COCOMO-II Cost Drivers for Module 426
Life Cycle Plan (LCP) Version 2.0
Table of Figures
Figure 1: COCOMO Estimation Result with 4 Modules 28Figure 2: Most Likely Estimated Person-Months 29
1. Introduction
1.1 Purpose of the LCP
The purpose of the Life Cycle Plan (LCP) for the DIAMOND project is to plan for each phase of the project’s timeline, monitor the project’s compliance with the Win-Win Negotiations, and adapt if needed to ensure that the project will succeed within its available effort and schedule. The document is currently at the Foundations Commitment (FC) Package state.
1.2 Status of the LCP
The status of the LCP document is currently at Foundations Commitment (FC) Package version 2.0. This is the version that was presented at the ARB FCR presentation and will be submitted as part of the FC Package for the Foundations phase. Major changes from the previous version include:
· Edits in the list of stakeholders that were provided as feedback at the ARB FCR presentation.
· Contains content for LCP sections 1-5 as requested for the FC Package.
There are no differences between the contents of the LCP and the Win-Win Negotiations.
1.3 Assumptions
The assumptions are the following:
1. The Client will respond within at most 2-3 days when approvals or answers to team questions are required.
2. There will be no drastic changes to project requirements after win-win negotiation has been completed.
3. The duration of the project lifecycle is 24 weeks; 12 weeks in Fall 2020, 12 weeks in Spring 2021.
4. The Client will deliver sample data, table structures, and forms to the development team early in the fall so that prototypes can align with the client’s desired data structures.
5. The Client will purchase a production Salesforce license at the start of the Spring 2021 semester.
6. 5 of the 8 team members will be able to continue on to 577B, allowing us to keep the majority of the team the same.
7. Software Availability: Salesforce will remain available 24/7.
8. The Client will meet regularly with the team to discuss progress and give desired feedback on progress.
9. Team members will complete work and artifacts that align with their project roles by the time that it is due.
2. Milestones and Products
2.1 Overall Strategy
The overall ICSM strategy for the DIAMOND project is a NCS-Driven process model, due to the fact that the Salesforce platform is a net-centric web service that offers us a development environment and many custom libraries to help the team build out the system. The majority of our early efforts therefore rely on rigorously prototyping both the Salesforce system itself and the libraries we would like to use for other capabilities to ensure that all will be compatible with one another and to ensure that the system will be buildable using these different tools within the schedule and effort that has been allocated for the project.
The project also depends on the Schedule As Independent Variable concept, due to the fact that it is being built as part of a university course, and the schedule resources are therefore limited for team members.
Our process includes the following milestones:
1. Valuation Commitment Review (VCR)
2. Top Risk Prototype
3. Foundations Commitment Review (FCR)
4. Prototype Progress Presentation
5. Development Commitment Review (DCR)
6. Re-baselined Development Commitment Review (RDCR)
7. Core Capability Drivethrough (CCD)
8. Transition Readiness Review (TRR)
9. Operational Commitment Review (OCR)
2.2 Phases
· Exploration Phase
· Duration: 8/2020 - 9/14/2020
· Concept: Form teams, meet client, understand basic project scope and requirements, determine stakeholder win conditions
· Deliverables: Client Interaction Report, Win Conditions Report, Team Website, Bi-Weekly Package
· Milestone: Valuation Commitment Review (VCR)
· Valuation Phase
· Duration: 9/14/2020 - 10/23/2020
· Concept: Begin prototyping, perform resource estimation, prioritize win conditions, develop initial feasibility evidence, develop operational concept, explore architecture options
· Deliverables: OCD, SSAD, LCP, & FED (FC Package), Top Risk Prototype, Bi-Weekly Package
· Milestones: Top Risk Prototype, Foundations Commitment Review (FCR)
· Foundations Phase
· Duration: 10/23/2020 - 2/19/2021
· Concept: Continue risk-driven prototyping, finalize architecture decisions, further develop the life cycle plan, prepare for development
· Deliverables: Larger prototype, DC Package, Bi-Weekly Package, Re-baselined DC Package
· Milestones: Prototype Progress Presentation, Development Commitment Review (DCR), Re-baselined Development Commitment Review (RDCR)
· Development Phase
· Duration: 2/19/2021 - 5/07/2021
· Concept: Develop the system, integrate, testing, and preparation for transition to operation within the client’s environment
· Deliverables: Updated OCD, FED, SSAD, & LCP, CCD Report, TP, SP, ATPR, UM, Bi-Weekly Package
· Milestones: Core Capability Drivethrough (CCD), Transition Readiness Review (TRR)
· Operation Phase
· Duration: 5/07/2021 - 5/15/2021
· Concept: Install the product, execute the transition plan, receive client feedback
· Deliverables: Close Out Report, Client Evaluations, Final Deliverables
· Milestones: Operational Commitment Review (OCR)
2.3 Project Deliverables
Project type: 2-semester NCS-Driven Project
2.3.1 Exploration Phase
Table 1: Artifact deliverables in Exploration Phase
Artifact
Due date
Format
Medium
Client Interaction Report
9/14/20202
.doc(x), .pdf
soft copy
Win Conditions List
9/16/2020
.doc(x)
soft copy
Team Website
9/18/2020
website
website
Project Plan
every other Friday
.mpp, .pdf
soft copy
Progress Report
every other Friday
.xls
soft copy
Trello Board Document
every other Friday
soft copy
Project Risk and Defect Report
every other Friday
.xls
soft copy
2.3.2 Valuation Phase
Table 2: Artifact deliverables in Valuation Phase
Artifact
Due date
Format
Medium
OCD (FC-Draft)
10/12/2020
.doc(x), .pdf
soft copy
FED (FC-Draft)
10/12/2020
.doc(x), .pdf
soft copy
LCP (FC-Draft)
10/12/2020
.doc(x), .pdf
soft copy
SSAD (FC-Draft)
10/12/2020
.doc(x), .pdf
soft copy
Top Risk Prototype
9/25/2020
code
soft copy
Top Risk Prototype Presentation Material
9/25/2020
.pptx
soft copy
OCD (FC-Package)
10/23/2020
.doc(x), .pdf
soft copy
FED (FC-Package)
10/23/2020
.doc(x), .pdf
soft copy
LCP(FC-Package)
10/23/2020
.doc(x), .pdf
soft copy
SSAD (FC-Package)
10/23/2020
.doc(x), .pdf
soft copy
Project Plan
every other Friday
.mpp, .pdf
soft copy
Progress Report
every other Friday
.xls
soft copy
Trello Board Document
every other Friday
soft copy
Project Risk and Defect Report
every other Friday
.xls
soft copy
Technical Debt Report
every other Friday
.xls
soft copy
2.3.3 Foundations Phase
Table 3: Artifact deliverables in Foundations Phase
Artifact
Due date
Format
Medium
Acceptance Criteria & Definition of Done
10/26/2020
soft copy
Team Retrospective Analysis
10/30/2020
soft copy
Prototype Progress Report
11/13/2020
.doc(x), .pdf
soft copy
OCD (DC-Draft)
11/16/2020
.doc(x), .pdf
soft copy
FED (DC-Draft)
11/16/2020
.doc(x), .pdf
soft copy
SSAD (DC-Draft)
11/16/2020
.doc(x), .pdf
soft copy
LCP (DC-Draft)
11/16/2020
.doc(x), .pdf
soft copy
OCD (DC-Package)
11/24/2020
.doc(x), .pdf
soft copy
FED (DC-Package)
11/24/2020
.doc(x), .pdf
soft copy
SSAD (DC-Package)
11/24/2020
.doc(x), .pdf
soft copy
LCP (DC-Package)
11/24/2020
.doc(x), .pdf
soft copy
Project Plan
every other Friday
.mpp, .pdf
soft copy
Progress Report
every other Friday
.xls
soft copy
Trello Board Document
every other Friday
soft copy
Project Risk and Defect Report
every other Friday
.xls
soft copy
Technical Debt Report
every other Friday
.xls
soft copy
2.3.4 Development Phase
Table 4: Artifact deliverables in Development Phase
Artifact
Due date
Format
Medium
Updated OCD
2/19/2021
.doc(x), .pdf
soft copy
Updated FED
2/19/2021
.doc(x), .pdf
soft copy
Updated LCP
2/19/2021
.doc(x), .pdf
soft copy
Updated SSAD
TBD Spring 2021
.doc(x), .pdf
soft copy
CCD Report
3/13/2021
.doc(x), .pdf
soft copy
Transition Plan
4/16/2021
.doc(x), .pdf
soft copy
SP
4/16/2021
.doc(x), .pdf
soft copy
ATPR
4/16/2021
.doc(x), .pdf
soft copy
UM
4/16/2021
.doc(x), .pdf
soft copy
Project Plan
every other Friday
.mpp, .pdf
soft copy
Progress Report
every other Friday
.xls
soft copy
Trello Board Document
every other Friday
soft copy
Project Risk and Defect Report
every other Friday
.xls
soft copy
Technical Debt Report
every other Friday
.xls
soft copy
3. Responsibilities
3.1 Project-specific stakeholder’s responsibilities
This project does not have any project-specific stakeholders other than the project’s client, users, maintainer, developers, and IIV&V engineer.
3.2 Responsibilities by Phase
Table 5: Stakeholder's Responsibilities in each phase
Team Member / Role
Primary / Secondary Responsibility
Exploration
Valuation
Foundations
Development- Construction Iteration
Development- Transition Iteration
Samantha Cote
Project Manager,
Life Cycle Planner
Primary Responsibility
Coordinate meeting with clients
Secondary Responsibility
Organize team meetings and contact
Primary Responsibility
Maintain a project plan that the team will follow, and coordinate meetings with client
Secondary Responsibility
Review artifacts and ensure all team assignments are delivered on time
Primary Responsibility
Coordinate with team members and client, schedule necessary meetings, maintain a project plan
Secondary Responsibility
Review artifacts and ensure all team assignments are delivered on time
Primary Responsibility
Coordinate with team members and client, schedule necessary meetings, maintain a project plan
Secondary Responsibility
Review artifacts and ensure all team assignments are delivered on time
Primary Responsibility
Coordinate with team members and client, schedule transition training
Secondary Responsibility
Provide the transition training
Haiwen Chen
Requirements Engineer
Primary Responsibility
Organize win conditions and maintain list of stakeholder requirements
Secondary Responsibility
Ensure all project progress is in line with requirements
Primary Responsibility
Prioritize win conditions
Secondary Responsibility
Ensure all project progress is in line with requirements
Primary Responsibility
Direct prototypers to follow top-risk requirements
Secondary Responsibility
Ensure all project progress is in line with requirements
Primary Responsibility
Re-prioritize win conditions if necessary
Secondary Responsibility
Ensure all project progress is in line with requirements
Primary Responsibility
Ensure that final system deliverable meets all requirements
Secondary Responsibility
Ensure all project progress is in line with requirements
Danny Diaz Ayon
IIV&V, Quality Focal Point
Primary Responsibility
Determine best tools to use for team communication
Secondary Responsibility
Set up a Trello board to track team tasks
Primary Responsibility
Manage Trello board to ensure team is following tasks
Secondary Responsibility
Verify that any progress on different parts of the project are consistent with others
Primary Responsibility
Manage Trello board to ensure team is following tasks
Secondary Responsibility
Verify that any progress on different parts of the project are consistent with others
Primary Responsibility
Determine best testing strategy and implement a test suite
Secondary Responsibility
Verify that any progress on different parts of the project are consistent with others
Primary Responsibility
Final verification that system works as specified
Secondary Responsibility
Verify that project is consistent across the board
Drew Webb
Operational Concept Engineer, Developer
Primary Responsibility
Develop initial win conditions
Secondary Responsibility
Begin to outline use cases and benefits of the proposed system
Primary Responsibility
Develop the benefits chain diagram and Operational Concept
Secondary Responsibility
Contribute to top-risk prototype
Primary Responsibility
Continually update the operational concept as project requirements change
Secondary Responsibility
Contribute to top-risk prototypes
Primary Responsibility
Develop system features
Secondary Responsibility
Ensure that all development is in line with operational concept
Primary Responsibility
Contribute to transition plan
Secondary Responsibility
Help with transition training
Meghana Kolasani
Prototyper, Developer
Primary Responsibility
Explore NCS/NDI choices
Secondary Responsibility
Help to develop initial win conditions
Primary Responsibility
Build top risk prototype
Secondary Responsibility
Ensure that prototypes are following project’s top risks
Primary Responsibility
Develop further top risk prototypes
Secondary Responsibility
Ensure that prototypes are following project’s top risks
Primary Responsibility
Develop system features
Secondary Responsibility
Ensure that all development is in line with project requirements
Primary Responsibility
Contribute to transition plan
Secondary Responsibility
Help with transition training
Dzung Phan
Prototyper, Developer
Primary Responsibility
Explore NCS/NDI choices
Secondary Responsibility
Help to develop initial win conditions
Primary Responsibility
Build top risk prototype
Secondary Responsibility
Ensure that prototypes are following project’s top risks
Primary Responsibility
Develop further top risk prototypes
Secondary Responsibility
Ensure that prototypes are following project’s top risks
Primary Responsibility
Develop system features
Secondary Responsibility
Ensure that all development is in line with project requirements
Primary Responsibility
Contribute to transition plan
Secondary Responsibility
Help with transition training
Shijie Ding
System Architect/UML Modeler,
Tester
Primary Responsibility
Explore system architecture options
Secondary Responsibility
Identify stakeholders, users, etc.
Primary Responsibility
Determine architecture to prototype, build UML diagrams
Secondary Responsibility
Work with prototypers to ensure prototypes are consistent with the architecture design
Primary Responsibility
Continue to refine architecture diagrams
Secondary Responsibility
Work with prototypers to ensure prototypes are consistent with the architecture design
Primary Responsibility
Develop tests for system features
Secondary Responsibility
Work with IIV&V to ensure system components work as intended
Primary Responsibility
Contribute to transition plan
Secondary Responsibility
Help with transition training
Derek Wang
Feasibility Analyst,
Developer
Primary Responsibility
Analyze potential NDI choices
Secondary Responsibility
Help to develop initial win conditions
Primary Responsibility
Analyze chosen NDI choices, compute benefit, ROI
Secondary Responsibility
Work with prototypers to decide what is top-risk
Primary Responsibility
Analyze chosen NDI choices, update benefit, ROI as needed
Secondary Responsibility
Work with prototypers to decide what is top-risk
Primary Responsibility
Develop system features
Secondary Responsibility
Ensure that all development is in line with project requirements
Primary Responsibility
Contribute to transition plan
Secondary Responsibility
Help with transition training
Dr. Darin Gray
Client/STEM Center Director
Primary Responsibility
Meet with team and give project overview
Secondary Responsibility
Communicate desired system functionality to team
Primary Responsibility
Provide team with sample data and forms
Secondary Responsibility
Meet with team frequently to give feedback and attend all team presentations
Primary Responsibility
Provide team with any updated sample data and forms; prioritize capabilities
Secondary Responsibility
Meet with team frequently to give feedback and attend all team presentations
Primary Responsibility
Meet with team frequently to give feedback on system development
Secondary Responsibility
Re-prioritize system features as necessary
Primary Responsibility
Prepare for system transition
Secondary Responsibility
Attend transition training
TBD (To be hired by STEM Center)
Maintainer
Primary Responsibility
N/A
Secondary Responsibility
N/A
Primary Responsibility
N/A
Secondary Responsibility
N/A
Primary Responsibility
N/A
Secondary Responsibility
N/A
Primary Responsibility
N/A
Secondary Responsibility
N/A
Primary Responsibility
Meet with team to understand system functionality and get admin account
Secondary Responsibility
Attend transition training to prepare for the system’s life cycle maintenance.
3.3 Skills
Table 6: Skills Required for each Role
Team members
Role
Skills
Samantha Cote
Project Manager, Life Cycle Planner
Project management, organization, communication skills, good time management, good understanding of MS Project and COCOMOII
Haiwen Chen
Requirements Engineer
Organization, Negotiation skills
Danny Diaz Ayon
IIV&V, QFP
Quality Management, Testing experience, Trello/JIRA
Drew Webb
Operational Concept Engineer, Prototyper
Good understanding of benefit chains and use cases, good organization,
JS, XML, Salesforce, HTML, database systems
Meghana Kolasani
Prototyper
JS, XML, Salesforce, HTML, database systems
Dzung Phan
Prototyper
JS, XML, Salesforce, HTML, database systems
Shijie Ding
System Architect/ Prototyper
Good understanding of UML diagrams, system architecture. JS, XML, Salesforce, HTML, database systems
Derek Wang
Feasibility Analyst
good organizational skills, good understanding of ROI, risk and risk management
New Member
Developer
JS, XML, Salesforce, HTML, database systems
New Member 2 (Potentially)
Tester
Salesforce testing capabilities, general software testing methods
4. Approach
4.1 Monitoring and Control
Each team member is responsible for the artifacts assigned to their role, but we have monitoring and control methods that we use as a team to track project progress, manage risk, identify defects, and plan for the project life cycle. Some of the methods of monitoring and control that our team are using are:
1. Progress Reports: A bi-weekly report that tracks the project size (SLOC), keeps track of the COTS being used, and any new ones that have been recently considered, and tracks the work that has been done for the past two weeks and the work that is planned to get done in the following two weeks.
2. Project Plans: A bi-weekly MS Project Plan (Gantt chart) that outlines what work will be done by which team member over the upcoming two weeks. It outlines how long each task should take and when it should be completed by.
3. Risk & Defect Reports: A bi-weekly report that tracks all risks that the project has and their current P(L) and S(L) values, therefore tracking which are the highest risks for the project at any given time. This document also identifies any defects that the project has and the team’s plan for how to mitigate those defects.
4. Technical Debt Reports: bi-weekly reports that track any technical debt that the team has and how they plan to mitigate that.
5. Trello board: A team Trello board is used for task management to make sure that tasks are assigned to team members and that they get done on time.
6. Software Cost Estimation: COCOMOII Tool. This tools allows us to perform effort estimation for the project so that we can ensure that we have enough team members and schedule time to complete the project’s requirements.
7. Team Meetings: The team meets once a week to discuss what each team member is working on, and so that team members can give each other feedback.
4.1.1 Closed Loop Feedback Control
The team uses a Slack channel to give immediate feedback to each other on documents, prototypes, or other project work. Team members are distributed across different time zones but the Slack channel allows us to give each other immediate feedback on work being done.
4.1.2 Reviews
There are different kinds of reviews across the project’s lifecycle.
1. Team Reviews: The team meets once a week so that each member can demo what they’ve been working on that week. This allows other team members to give immediate feedback and review their work and also ensures that all work being done by different team members is consistent with all other work. Our shared Google Drive also allows all team members to view other team members’ artifacts and give feedback.
2. Review Boards: Throughout the project’s lifecycle, there are many review boards that provide the stakeholders and instructors to provide any feedback and to determine whether or not the project is ready to move on to the next phase. These review boards include:
a. Valuation Commitment Review
b. Foundations Commitment Review
c. Development Commitment Review
d. Transition Readiness Review
3. Top Risk Prototype, Prototype Progress, and Core Capability Drivethrough: These are milestones within the project life cycle that allow for stakeholder feedback of project features and developed prototypes. Users can get hands-on experience with the developed features so that if they would like to suggest any changes or improvements, they can do so while there is still time for the development team to change them.
4.2 Methods, Tools and Facilities
Table 7: Methods, Tools and Facilities
Tools
Usage
Provider
Slack
Provides a messaging tool that allows team members to communicate throughout the week and quickly get answers to questions.
Open source
Trello
A task management online platform that allows the team to manage who is doing what task and when.
Open source
Google Drive
The team is utilizing a shared drive which serves as a spot where we can store all team artifacts so that anyone on the team can contribute to them.
Open source
Salesforce
The cloud platform that we are using to build our remote data management system; Includes many built-in libraries for data objects, querying, and front-end widgets that are helping us to build out our platform.
Client will pay for the prod license
Einstein OCR API
An API within Salesforce that allows for Optical Character Recognition. The team uses this to build the OCR Engine, which is one of the project’s desired capabilities.
Open source
5. Resources
This section outlines the use of the COCOMO-II tool for effort estimation for the project. Due to the fact that we are using SAIV (Schedule As Independent Variable), we used COCOMO for effort estimation but not schedule estimation.
Estimated 577a Effort: 8 team members at 12hrs/week for 12weeks.
Total estimated effort: 1152 hours
Estimated 577b Effort: 6 team members at 12hrs/week for 12 weeks
Total estimated effort: 864 hours
Conditions applied for estimating effort cost for DIAMOND:
1. Project schedule is fixed: 12 weeks in Fall 2020 (Exploration, Valuation, Foundation) and 12 Weeks in Spring 2021 (Development, Transition, Operation).
2. Budget for the Salesforce production license will be supplied by the client.
3. Eight members in 577A and 6 members in 577B.
4. There are 4 modules in this project:
a. Salesforce Database - backend object and table storage in the cloud.
b. Data Management Dashboard - Front-end interactive capabilities for the data management system.
c. Query System - System for building and executing custom SQL queries.
d. OCR Engine - System for Optical Character Recognition from a .pdf or .jpeg
5. All modules use a combination of JavaScript, XML, HTML, and CSS.
Modules & Estimated SLOC
Table 8: Modules and Estimated SLOC
No.
Module Name
Brief Description
SLOC
1
Salesforce DB
backend object and table storage in the cloud
3000
2
Data Management Dashboard
Front-end interactive capabilities for the data management system
1500
3
Query System
System for building and executing custom SQL queries
800
4
OCR Engine
System for Optical Character Recognition from a .pdf or .jpeg
1000
Scale Drivers
The values for each of the scale drivers and the rationale for choosing those values is shown below:
Table 9: COCOMOII Scale Drivers
Scale Driver
Value
Rationale
PREC
Nominal
The team is familiar with database systems, but not in the cloud and not using the Salesforce NCS. Development within the platform is largely unprecedented for the team members.
FLEX
Low
The team has been given rigorous requirements as to how data input must be done, and what the table schema needs to be, but implementation details of queries is left up to the team.
RESL
VHigh
The team has made it a priority (due to risk-driven ICSM principles) to reduce risk early and eliminate where possible. Trade studies and prototypes have been created for areas of risk within the architecture and team members feel largely comfortable moving forward into development that the large risks have been mitigated.
TEAM
VHigh
Team members, clients, and stakeholders have been highly attentive, cooperative, and prompt with their assignments and expected contributions.
PMAT
Nominal
The team is adhering to guidelines from the ICSM principles, using a set of standard processes that are defined. Processes are suited for this specific project. CMM Level 3 - Defined.
Cost Drivers (Module 1)
Table 10: COCOMOII Cost Drivers for Module1
Cost Driver
Value
Rationale
RELY
Nominal
Though the data being stored in the system is important to the operation of the K-12 STEM Center, Salesforce provides great support for backups and recovery, so any data losses are easily recoverable.
DATA
Nominal
The ratio of database size to SLOC of the project is estimated to be more than 10, but less than 100. Data will be stored for participants, parents, programs, and survey data.
DOCU
Nominal
Salesforce documentation for the platform itself is plentiful, and the documentation we are writing during development will cover the life-cycle needs of the system without going overboard.
CPLX
Nominal
This project relies heavily on Data Management Operations (Nominal), User Interface Management (High), and Computational Operations (Nominal). It will support complex database queries, and will work on customizing the Salesforce widget library for the front-end. Nominal computational operations will be done in the processing of the data.
RUSE
Low
This system is not intended to be reused for other projects.
TIME
Nominal
The system will be used when STEM Center staff members are entering new data to the system, or querying current data, but otherwise will be mostly idle, simply storing data objects in the cloud, using expectedly <50% of the available execution time.
STOR
Very High
The STEM Center has years worth of historical program data that they would like to store in the system, and the size of the database will grow each year as new programs begin and new participants join existing programs.
PVOL
Nominal
Salesforce releases a major product update with new features and enhancements 3 times a year (in the Spring, Summer, and Winter). They commit to this schedule, and new changes can be expected at these three milestones each year. Browser updates will typically only be once/yr.
ACAP
VHigh
Our project’s analysts and designers communicate well and promptly, are very thorough, and follow project requirements when making design decisions.
PCAP
VHigh
Though collectively unfamiliar with Salesforce and its development console at the start of the project, the programmers have gained much experience with the platform through prototyping and are feeling very capable with it as we approach the Development phase.
PCON
Nominal
We have 8 members currently working on the project in 577A and it is estimated that ~5 of those will continue on to 577B. It is likely that 1-2 new members will join the team in 577B.
APEX
Nominal
The experience of the project team with cloud data management systems is low, ~6mos. for most team members, however many have experience with database systems and data management systems in general.
PEXP
Low
The project team has some experience working with SQL databases, but no experience working with the Salesforce platform before, which is the main platform of this system.
LTEX
High
The team will be developing the cloud data management system with XML, CSS, and JavaScript, and many team members have lots of experience with those languages and tools.
TOOL
Nominal
Our project will be moderately integrated, both frontend and backend will be integrated in the cloud and basic life-cycle tools and documentation for said tools will be available from the Salesforce NCS.
SITE
Low
Teammates are distributed internationally (because of COVID), across 5 different time zones, and often have completely opposite waking hours. We do have a Slack messaging system that allows us to retain sufficient communication, however video conferences are limited because there aren’t many times that everyone can make due to time zone issues.
SCED
Nominal
The schedule is fixed; 12 weeks in fall semester, 12 weeks in spring semester.
Cost Drivers (Module 2)
Table 11: COCOMOII Cost Drivers for Module 2
Cost Driver
Value
Rationale
RELY
Low
The front-end will not cause drastic problems if it is temporarily unavailable as it just provides widgets to access tables.
DATA
Nominal
The ratio of database size to SLOC of the project is estimated to be more than 10, but less than 100. Data will be stored for participants, parents, programs, and survey data.
DOCU
Nominal
Salesforce documentation for the front-end aspects of the platform itself is plentiful, and the documentation we are writing during development will cover the life-cycle needs of the system without going overboard.
CPLX
Low
This module relies heavily on User Interface Management (High), and Computational Operations (Low). This module will include high levels of interface management, including customizing the Salesforce widget library.
RUSE
Low
This system is not intended to be reused for other projects.
TIME
Nominal
The system will be used when STEM Center staff members are entering new data to the system, or querying current data, but otherwise will be mostly idle, simply storing data objects in the cloud, using expectedly <50% of the available execution time.
STOR
Low
The front-end module does not require much storage at all.
PVOL
Nominal
Salesforce releases a major product update with new features and enhancements 3 times a year (in the Spring, Summer, and Winter). They commit to this schedule, and new changes can be expected at these three milestones each year. Browser updates will typically only be once/yr.
ACAP
VHigh
Our project’s analysts and designers communicate well and promptly, are very thorough, and follow project requirements when making design decisions.
PCAP
VHigh
Though collectively unfamiliar with Salesforce and its development console at the start of the project, the programmers have gained much experience with the platform through prototyping and are feeling very capable with it as we approach the Development phase. We have one prototyper who has gotten very familiar with front-end capabilities in Salesforce.
PCON
Nominal
We have 8 members currently working on the project in 577A and it is estimated that ~5 of those will continue on to 577B. It is likely that 1-2 new members will join the team in 577B.
APEX
VHigh
The experience of the project team with building front-end user interface systems is very high, and the team feels comfortable building the front-end module.
PEXP
Nominal
The project team has experience building front-end UIs but never within the Salesforce platform.
LTEX
High
The team will be developing the front-end with XML, CSS, and JavaScript, and many team members have lots of experience with those languages and tools.
TOOL
Nominal
Our project will be moderately integrated, both frontend and backend will be integrated in the cloud and basic life-cycle tools and documentation for said tools will be available from the Salesforce NCS.
SITE
Low
Teammates are distributed internationally (because of COVID), across 5 different time zones, and often have completely opposite waking hours. We do have a Slack messaging system that allows us to retain sufficient communication, however video conferences are limited because there aren’t many times that everyone can make due to time zone issues.
SCED
Nominal
The schedule is fixed; 12 weeks in fall semester, 12 weeks in spring semester.
Cost Drivers (Module 3)
Table 12: COCOMOII Cost Drivers for Module 3
Cost Driver
Value
Rationale
RELY
Low
The query system going down would have no effect on the stored data itself, so data loss would not occur if the query system went down temporarily.
DATA
Nominal
The ratio of database size to SLOC of the project is estimated to be more than 10, but less than 100. Data will be stored for participants, parents, programs, and survey data.
DOCU
Nominal
Salesforce documentation for the platform itself is plentiful, however we will be writing the query system from scratch, so Salesforce documentation will not be as helpful here.
CPLX
Nominal
This module relies heavily on Data Management Operations (Nominal), and Computational Operations (Nominal). It will perform complex database queries. Nominal computational operations will be done in the processing of the data.
RUSE
Low
This system is not intended to be reused for other projects.
TIME
Nominal
The system will be used when STEM Center staff members are entering new data to the system, or querying current data, but otherwise will be mostly be idle, simply storing data objects in the cloud, using expectedly <50% of the available execution time.
STOR
Low
This module is very small and will not require much storage at all.
PVOL
Nominal
Salesforce releases a major product update with new features and enhancements 3 times a year (in the Spring, Summer, and Winter). They commit to this schedule, and new changes can be expected at these three milestones each year. Browser updates will typically only be once/yr.
ACAP
VHigh
Our project’s analysts and designers communicate well and promptly, are very thorough, and follow project requirements when making design decisions.
PCAP
VHigh
Though collectively unfamiliar with Salesforce and its development console at the start of the project, the programmers have gained much experience with the platform through prototyping and are feeling very capable with it as we approach the Development phase.
PCON
Nominal
We have 8 members currently working on the project in 577A and it is estimated that ~5 of those will continue on to 577B. It is likely that 1-2 new members will join the team in 577B.
APEX
VHigh
The experience of the project team with database systems and querying databases is very high.
PEXP
Nominal
The project team has lots of experience working with SQL queries but no experience integrating them in Salesforce.
LTEX
VHigh
The team will be developing the queries using SQL, and many team members have lots of experience with SQL.
TOOL
Nominal
Our project will be moderately integrated, both frontend and backend will be integrated in the cloud and basic life-cycle tools and documentation for said tools will be available from the Salesforce NCS.
SITE
Low
Teammates are distributed internationally (because of COVID), across 5 different time zones, and often have completely opposite waking hours. We do have a Slack messaging system that allows us to retain sufficient communication, however video conferences are limited because there aren’t many times that everyone can make due to time zone issues.
SCED
Nominal
The schedule is fixed; 12 weeks in fall semester, 12 weeks in spring semester.
Cost Drivers (Module 4)
Table 13: COCOMOII Cost Drivers for Module 4
Cost Driver
Value
Rationale
RELY
Low
This module is not essential to project operation and can be seen as a “would like to have” capability. Therefore, if it were ever temporarily unavailable, there wouldn’t be a large effect on the system.
DATA
Nominal
The ratio of database size to SLOC of the project is estimated to be more than 10, but less than 100. Data will be stored for participants, parents, programs, and survey data.
DOCU
High
The Einstein OCR API offers lots of documentation and samples of its use, so we have a lot we can reference.
CPLX
Low
Though the API itself performs Computational Operations (High), the developers on our team do not have to build out any of that complex functionality ourselves.
RUSE
Low
This system is not intended to be reused for other projects.
TIME
Nominal
The system will be used when STEM Center staff members are entering new data to the system, or querying current data, but otherwise will be mostly idle, simply storing data objects in the cloud, using expectedly <50% of the available execution time.
STOR
Low
The OCR module will not require much storage at all.
PVOL
Nominal
Salesforce releases a major product update with new features and enhancements 3 times a year (in the Spring, Summer, and Winter). They commit to this schedule, and new changes can be expected at these three milestones each year. Browser updates will typically only be once/yr.
ACAP
VHigh
Our project’s analysts and designers communicate well and promptly, are very thorough, and follow project requirements when making design decisions.
PCAP
High
Though collectively unfamiliar with the Einstein OCR API when we began this project, the programmers have gained much experience with the API through prototyping and are feeling more comfortable with it.
PCON
Nominal
We have 8 members currently working on the project in 577A and it is estimated that ~5 of those will continue on to 577B. It is likely that 1-2 new members will join the team in 577B.
APEX
Nominal
The experience of the project team with OCR is low, however we have much more experience using other Vision APIs.
PEXP
Nominal
The project team has some experience working with Computer Vision APIs, but not this Salesforce API in particular, so we are less sure of how it interacts with the Salesforce platform.
LTEX
High
The team will be developing the OCR system with XML, CSS, and JavaScript, and many team members have lots of experience with those languages and tools.
TOOL
Nominal
Our project will be moderately integrated, both frontend and backend will be integrated in the cloud and basic life-cycle tools and documentation for said tools will be available from the Salesforce NCS.
SITE
Low
Teammates are distributed internationally (because of COVID), across 5 different time zones, and often have completely opposite waking hours. We do have a Slack messaging system that allows us to retain sufficient communication, however video conferences are limited because there aren’t many times that everyone can make due to time zone issues.
SCED
Nominal
The schedule is fixed; 12 weeks in fall semester, 12 weeks in spring semester.
COCOMO-II Resource Estimation Result
Figure 1: COCOMOII Resource Estimation Result with Four Modules
Analysis
Assuming:
· 12 hrs/week of effort per person
· 10 of the 12 weeks of the spring semester contribute to the Construction Phase (72% of total)
· 100 hrs/person-month for COCOMO Estimates
1 577B team member effort = (10 weeks)(12 hrs/week) = 120 hrs
1.67(estimated hrs/person-month COCOMO-II) = (1.67)(100 hrs)(0.72) = 120 hrs
One 577B team member effort = 1.67 CII person-months
If we only have 5 team members for 577B:
5 * 1.67 = 8.35 CII person-months
If we have 6 team members for 577B (the expected scenario):
6 * 1.67 = 10.02 CII person-months
Figure 2: Most Likely Estimated Person-Months
As can be seen in our estimation, the most-likely estimate for effort for the Construction piece of our project is 10.0 CII person-months, and as identified above, with 6 team members for 577B (the expected scenario), we will meet that estimate.