effort estimation, requirement analysis
TRANSCRIPT
-
7/27/2019 Effort Estimation, Requirement Analysis
1/44
A S S I S T A N T P R O F E S S O R
L P U , P U N J A B
Software Project Management
-
7/27/2019 Effort Estimation, Requirement Analysis
2/44
Till far we have studied
Whats a project?
What makes software projects different
Project Perspectives
Software Management Basics
-
7/27/2019 Effort Estimation, Requirement Analysis
3/44
1.1 What is a Project?
Project is a temporary endeavor undertaken to create aunique product or service.
Project is a well defined set of tasks or activities thatmust be completed in order to meet the projects goal.
Non routine tasks : Planning reqd. Sp. Objective to be met/ sp. Products to be created Predetermined time span Work is done for others Work is carried out in several phases Resource constraints Projects could be large and/or complex
-
7/27/2019 Effort Estimation, Requirement Analysis
4/44
1.2 Project vs Programme
Project is a nonrepetitive set of activities leading tosingular product or service and gets over in a limited /finite time frame Great wall of China Suez Canal
Taj Mahal Programme is a repetitive array of activities carried out
on a longer/ indefinite time frame to accomplish manyno of similar / dissimilar projects
Identify : project or programme ???? putting a robot vehicle on Mars to search for sign of
life Writing an operating system
-
7/27/2019 Effort Estimation, Requirement Analysis
5/44
1.3 Project Success or Failure
A project success is usually measured in terms ofwhether it is completed within specified time and understipulated budget
If it exceeds uncontrollably it is termed as a failure.
However there is more to a projects success than just itscompletion within time and budget
Meeting customer specifications Degree of customer satisfactions
Level of success in the market place
Result in greater revenue and profits
-
7/27/2019 Effort Estimation, Requirement Analysis
6/44
1.4 Software project vs other project
Invisibility,A bridge or road can actually be seen.With software, progress is not immediately visible.
Complexity,Per dollar, pound or euro spent,
software products contain more complexity thanother engineered artefacts.
Conformity,Software developers have toconform to the requirements of human clients
Flexibility,The ease with which software can bechanged is usually seen as one of its strengths.
-
7/27/2019 Effort Estimation, Requirement Analysis
7/44
1.5 Type of Software
System Software
Real time Software
Business Software
Engg. N scientific Software Embedded Software
PC based Software
Web based Software AI based Software
Open source Software
-
7/27/2019 Effort Estimation, Requirement Analysis
8/44
1.6 Problem with software project
poor estimates and plans;
lack of quality standards and measures;
lack of guidance about making organizational
decisions; lack of techniques to make progress visible;
poor role definition who does what?
incorrect success criteria.
-
7/27/2019 Effort Estimation, Requirement Analysis
9/44
1.7 Why Projects need to be Managed ?
Because resources are limited
Because project has to be delivered within time and budget
Therefore in order to maximise output (with regard toproject delivery) with the limited input resource ,managerial attention is needed.
-
7/27/2019 Effort Estimation, Requirement Analysis
10/44
1.8 Project Management (Defn.)
PMI defines Project Management as the Art of directing
and coordinating human and material resources through
out the life of a project by using modern management
techniques to achieve predetermined objectives of scope,
cost, time, quality and participant satisfaction
-
7/27/2019 Effort Estimation, Requirement Analysis
11/44
1.9 Activities in Software Project Management
There are four broad phases in any project life cycle
1. Preplanning--- Conceptualization, Formulation and Selection(Project feasibility study, Project Scoping)
2. Planning--- Task definition and break ups, resource estimation
3. Scheduling and Control--- Resource allocation, task execution,feedback and review
4. Implementation and Termination--- Project completion,closure and hand over.
-
7/27/2019 Effort Estimation, Requirement Analysis
12/44
-
7/27/2019 Effort Estimation, Requirement Analysis
13/44
13
1.10 Step Wise Project planning
1. Identify
project objectives
2. Identify projectinfrastructure
3. Analyseproject
characteristics
4. Identify products
and activities
5. Estimate effort
for activity
8. Review/ publicize
plan
6. Identify activity
risks
7. Allocate
resources
9. Execute plan
10. Lower level
planning
Review
Lowerleveldetail
For eachactivity
0.Selectproject
-
7/27/2019 Effort Estimation, Requirement Analysis
14/44
A project scenario
LPU Shopping mall Project Where to setup ..
Which brand
Facilities
Stakeholders Virtual money
-
7/27/2019 Effort Estimation, Requirement Analysis
15/44
Step 1 establish project scope andobjectives
1.1 Identify objectives and measures of effectiveness how do we know if we have succeeded?
1.2 Establish a project authority who is the boss?
1.3 Identify all stakeholders in the project and their interests who will be affected/involved in the project?
1.4 Modify objectives in the light of stakeholder analysis do we need to do things to win over stakeholders?
1.5 Establish methods of communication with all parties how do we keep in contact?
-
7/27/2019 Effort Estimation, Requirement Analysis
16/44
Step 2 Establish project infrastructure
2.1 Establish link between project and any strategicplan
why did they want the project?
2.2 Identify installation standards and procedures what standards do we have to follow?
Software life cycle??
2.3. Identify project team organization where do I fit in?
-
7/27/2019 Effort Estimation, Requirement Analysis
17/44
Step 3 Analysis of project characteristics
3.1 Distinguish the project as either objective or product-based. Is there more than one way of achieving success?
3.2 Analyse other project characteristics (including quality basedones) what is different about this project?
Identify high level project risks what could go wrong? what can we do to stop it?
Take into account user requirements concerning implementation
Select development methodology and life cycle approach waterfall? Increments? Prototypes?
Review overall resource estimates does all this increase the cost?
-
7/27/2019 Effort Estimation, Requirement Analysis
18/44
Step 4 Identify project productsand activities
4.1 Identify and describe project products - whatdo we have to produce? What will be the deliverables
-
7/27/2019 Effort Estimation, Requirement Analysis
19/44
19
Products
The result of an activity
Could be (among other things) physical thing (installed pc),
a document (logical data structure)
a person (trained user)
a new version of an old product (updated software)
The following are NOT normally products: activities (e.g. training, design, testing )
events (e.g. interviews completed)
Products CAN BE deliverableor intermediate
-
7/27/2019 Effort Estimation, Requirement Analysis
20/44
Product breakdown structure(PBS)
Main product have sets of component products Product are grouped into those relating to the system
as whole and those related to individual module.
ProjectProducts
SystemProject
ModuleProducts
ManagementProjects
ProgressReport
Module CodeModuleDesign doc
Testedintegratedsoftware
Overallspecification
-
7/27/2019 Effort Estimation, Requirement Analysis
21/44
21
Product description (PD)
Product name/identity Description - what is it?
Derivation - what is itbased on?
Composition - what doesit contain?
Format: form of theproduct
Relevant standards Quality criteria
PDs can usually be re-used from one project toanother.
-
7/27/2019 Effort Estimation, Requirement Analysis
22/44
Step 4 continued
4.2 Document Generic Product flows
Need of other product to exit first before theircreation
Product flow diagram (PFD) Shows the order in which the products have to be completed. Defines a method of working
22
User
Requirement
Overall systemSpecificationModule
design
Integratedsystem test case
Module code
Integrated
software
-
7/27/2019 Effort Estimation, Requirement Analysis
23/44
23
Step 4.3 Recognize product instances
The project breakdown structure (PBS ) andProject flow diagram(PFD) will probably haveidentified generic products e.g. software modules
It might be possible to identify specific instances e.g.module A, module B
But in many cases this will have to be left to later,
more detailed, planning
-
7/27/2019 Effort Estimation, Requirement Analysis
24/44
24
4.4. Produce ideal activity network
Identify the activities needed to create each productin the PFD
More than one activity might be needed to create a
single product Draw up activity network
-
7/27/2019 Effort Estimation, Requirement Analysis
25/44
25
An ideal activity
Specify overall
systemDesign
Module A
Design Integration
Test case
DesignModule B
Code module
A
Test Integration
software
Code moduleB
-
7/27/2019 Effort Estimation, Requirement Analysis
26/44
-
7/27/2019 Effort Estimation, Requirement Analysis
27/44
-
7/27/2019 Effort Estimation, Requirement Analysis
28/44
-
7/27/2019 Effort Estimation, Requirement Analysis
29/44
-
7/27/2019 Effort Estimation, Requirement Analysis
30/44
30
Step 4.5 Add check-points if neededDesign
module A
Designmodule B
Designsystem
Design
module C
Codemodule A
Codemodule B
Code
module C
Testsystem
Designmodule A
Designmodule B
Designsystem
Designmodule C
Codemodule A
Codemodule B
Codemodule C
Testsystem
Check-point
put in a
check point
-
7/27/2019 Effort Estimation, Requirement Analysis
31/44
31
Step 5:Estimate effort for each activity
5.1 Carry out bottom-up estimates Estimation of staff effort required
distinguish carefully between effortand elapsedtime
Effort : Total number of staff-hours (or days etc) needed tocomplete a task
Elapsed: time between the start and end of the task.
5.2. Revise plan to create controllable activities
break up very long activities into a series of smaller onesas we cant judge the status in long activities
bundle up very short activities (create check lists)
-
7/27/2019 Effort Estimation, Requirement Analysis
32/44
32
Step 6: Identify activity risks
6.1.Identify and quantify risks for activities damage if risk occurs (measure in time lost or money)
likelihood if risk occurring
Identify the assumptions : client requirement is clear
6.2. Plan risk reduction and contingencymeasures
risk reduction: activity to stop risk occurring
contingency: action if risk does occur Eg : contracting staff
-
7/27/2019 Effort Estimation, Requirement Analysis
33/44
33
6.3 Adjust overall plans and estimates to takeaccount of risks
e.g. add new activities which reduce risks associated withother activities e.g. training, pilot trials, information
gathering
-
7/27/2019 Effort Estimation, Requirement Analysis
34/44
34
Step 7: Allocate resources
7.1 Identify and allocate resources to activities Eg staff need for each activities
7.2 Revise plans and estimates to take into accountresource constraints More than one task assigned to staff
e.g. staff not being available until a later date
non-project activities
LT = lead tester
-
7/27/2019 Effort Estimation, Requirement Analysis
35/44
The McGraw-Hill Companies, 200535
Gantt charts
Select subjects
Design
questionnaire
Book machine
Conduct tests
Analyse results
Weekcommencing
5 12 19 26MARCH
APRIL
9 16
Plan testing
2
Draft changes
LT
TA
LT
TA
LT
LT
TA
TA = testing assistant
-
7/27/2019 Effort Estimation, Requirement Analysis
36/44
36
Step 8: Review/publicise plan
8.1 Review quality aspects of project plan
Each task should have quality criteria
Quality check has to be passed
8.2 Document plan and obtain agreement Proper documentation
Agreement of all parties
Step 9 and 10: Execute planand create lower level plans
-
7/27/2019 Effort Estimation, Requirement Analysis
37/44
Step 9 &10: Execute plan/ low levelof planning
Make provisional plan for distant task
Execute plan
S Wi P j l i
-
7/27/2019 Effort Estimation, Requirement Analysis
38/44
38
Step Wise Project planning
1. Identify
project objectives
2. Identify projectinfrastructure
3. Analyseproject
characteristics
4. Identify products
and activities
5. Estimate effort
for activity
8. Review/ publicize
plan
6. Identify activity
risks
7. Allocate
resources
9. Execute plan
10. Lower level
planning
Review
Lowerleveldetail
For eachactivity
0.Selectproject
-
7/27/2019 Effort Estimation, Requirement Analysis
39/44
Draw up a product breakdown structure ofa computer.
d t b kd t t f
-
7/27/2019 Effort Estimation, Requirement Analysis
40/44
a product breakdown structure ofa computer.
-
7/27/2019 Effort Estimation, Requirement Analysis
41/44
Scenario
There is a garden shed in a garden. The project is todismantle the shed and reassemble it in the gardenof a close neighbour. The shed has some rottenpieces. When the shed has been dismantled, theserotten pieces must be identified and replacementsordered from the company that supplied the originalshed. New fixtures and fittings (screws, nuts and
bolts, glue etc.) for all pieces will be needed, so a listof the requirements is to be made as the shed isdismantled. The neighbour has said that he willprepare the site for the sheds new location as part of
his own, separate project.
-
7/27/2019 Effort Estimation, Requirement Analysis
42/44
product breakdown structure of the old shed
-
7/27/2019 Effort Estimation, Requirement Analysis
43/44
Product Flow Diagram
-
7/27/2019 Effort Estimation, Requirement Analysis
44/44
Develop a project planning for Course SchedulingSystem in LPU .
Course scheduling software is meant to create aschedule for courses in a department, given thepreferences of professors and the information on
available rooms and timeslots for courses