Project Planning - KU-SKE17/Software-Process GitHub Wiki
- CMMI: Planning steps
- Pain Curve
- Step 1: Establish Estimates
- Step 2: Develop a Plan
- Step 3: Obtain Commitment to the Plan
CMMI: Planning steps
- Step 1: Establish
Estimates
- Step 2: Develop a
Plan
- Step 3: Obtain
Commitment
to the Plan
Pain Curve
good planning
- plan heavily at first
- no planning 18%-36% before the deadline
Step 1: Establish Estimates
-
Identify the Scope of the Project (output -> WBS)
- Develop a
WBS
(W
orkB
reakdownS
tructure) - Define the work packages in detail
- after has user stories
- Identify products and components from external Identify work products to be reused
- Develop a
-
Identify Work Product
- decide database, tools, language, etc.
- think about Attributes
Inputs
anOutputs
-> What it want to beFunctions
-> What methods to be use- Volume of
Data
-> How large of the data Performance
Load -> ...ability
-
Define Project Lifecycle Phases
Traditional Lifecycle
Scope
-> Develop and gain approval of a general statement of the goal and business value of the project.Plan
-> Identify work to be done and estimate time, cost, and resource requirements, and gain approval.Launch
-> Recruit the team and establish team operating rules.Monitor
-> Respond to change requests and resolve problem situations to maintain project progress.Close
-> Assure attainment of client requirements and install deliverables.
Agile Lifecycle
Software Development Life Cycle (
SDLC
)Requirements
- (IU ->)
Development
Testing
Delivery
Feedback
5 Levels of Agile Planning Onion
vision
(update least freq, heavy involvement)roadmap
- should have multi goal for each release, but step to the final goal
- slicing story to tasks -> slicing to handle outputs (ex.login -> re-pwd, success, fail-> wrong-username, wrong-pwd)
release
-> contain Iterationsiteration
-> contain User Stories, Tasks, or Bugsdaily
(update most freq, minimal involvement)
-
Estimate Effort and Cost
- in reality do this step first
will focus in week5
Step 2: Develop a Plan
-
Establish the
Budget
andSchedule
- Gantt Chart [Horizontal Bar Chart]
- Tasks (first lists all Tasks)
- Horizontal time axis
- The start and finish dates of each task (bar area)
- Dependencies !important
- Status
- Ownership of that task
- Milestone -> end of the phase
- Dependencies in Agile
- table of Task lists vs Iteration#
- with dependencies line (do task step-to-step)
- Status (card color?)
- Gantt Chart [Horizontal Bar Chart]
-
Identify Project
Risks
-
Plan
Data
Management- How to manage data
-
Plan the Project’s
Resources
-
Plan Needed
Knowledge and Skills
- Subpractices
- Identify the knowledge and skills needed to perform the project
- skills to use tools (management tools)
- Assess the knowledge and skills available
- Select mechanisms for providing needed knowledge and skills
- Incorporate selected mechanisms into the project plan
- Identify the knowledge and skills needed to perform the project
- Example Work Products
- Inventory of skill needs
- Staffing and new hire plans
- Knowledge &
Skill Datasheet
-> to know/use people in team to teach/work for others- how to use sheet (backup, load, ...)
- how to network working
- Training Plans
- Subpractices
-
Plan for
Stakeholder
Involvement -
Establish the
Project Plan
Step 3: Obtain Commitment to the Plan
-
Review Plans that Affect the Project
- Example Work Products
- Record of the reviews of plans that affect the project
- Example Work Products
-
Reconcile Work and Resource Levels
- Example Work Products
- Revised methods and corresponding estimating parameters
- Renegotiated budgets
- Revised schedules
- Revised requirements list
- Renegotiated stakeholder agreements
- Example Work Products
-
Obtain Plan Commitment
- Subpractices
- Identify needed support and negotiate commitments with relevant stakeholders
- Document all organizational commitments, both full and provisional, ensuring the appropriate level of signatories
- Review internal commitments with senior management as appropriate
- Review external commitments with senior management as appropriate
- Identify commitments regarding interfaces between project elements and other projects and organizational units so that these commitments can be monitored
- Example Work Products
- Documented requests for commitments
- Documented commitments
- Subpractices