Date post: | 14-Dec-2014 |
Category: |
Technology |
Upload: | akashsaini8 |
View: | 1,135 times |
Download: | 1 times |
ASSISTANT PROFESSOR LPU, PUNJAB
Software Project Management
Till far we have studied
What’s a project?What makes software projects differentProject PerspectivesSoftware Management Basics
1.1 What is a Project?
Project is a temporary endeavor undertaken to create a unique product or service.
Project is a well defined set of tasks or activities that must be completed in order to meet the project’s 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
1.2 Project vs Programme
Project is a nonrepetitive set of activities leading to singular 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 many no of similar / dissimilar projects
Identify : project or programme ????putting a robot vehicle on Mars to search for
sign of life Writing an operating system
1.3 Project Success or Failure
A project success is usually measured in terms of whether it is completed within specified time and under stipulated budget
If it exceeds uncontrollably it is termed as a failure.
However there is more to a project’s success than just its completion within time and budget Meeting customer specifications Degree of customer satisfactions Level of success in the market place Result in greater revenue and profits
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 than other engineered artefacts.
Conformity, Software developers have to conform to the requirements of human clients
Flexibility, The ease with which software can be changed is usually seen as one of its strengths.
1.5 Type of Software
System Software Real time Software Business SoftwareEngg. N scientific SoftwareEmbedded SoftwarePC based SoftwareWeb based SoftwareAI based SoftwareOpen source Software
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.
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 to project delivery) with the limited input resource , managerial attention is needed.
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
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.
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/ publicizeplan
6. Identify activityrisks
7. Allocateresources
9. Execute plan
10. Lower levelplanning
Review
Lowerleveldetail
For each activity
0.Select project
A project scenario
LPU Shopping mall Project Where to setup .. Which brand Facilities Stakeholders Virtual money
Step 1 establish project scope and objectives
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?’
Step 2 Establish project infrastructure
2.1 Establish link between project and any strategic plan ‘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?’
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 based ones) 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?’
Step 4 Identify project products and activities
4.1 Identify and describe project products - ‘what do we have to produce?’ What will be the deliverables
19
Products
The result of an activityCould 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 deliverable or intermediate
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.
Project Products
System Project
Module Products
Management Projects
Progress Report
Module Code
Module Design doc
Tested integrated software
Overall specificatio
n
21
Product description (PD)
Product name/identity
Description - what is it?
Derivation - what is it based on?
Composition - what does it contain?
Format: form of the product
Relevant standardsQuality criteria
PDs can usually be re-used from one project to another.
Step 4 continued
4.2 Document Generic Product flows
Need of other product to exit first before their creation
Product flow diagram (PFD) Shows the order in which the products have to be
completed. Defines a method of working
22
User Requirement
Overall system SpecificationModule
designIntegrated system test
caseModule
code
Integrated software
23
Step 4.3 Recognize product instances
The project breakdown structure (PBS ) and Project flow diagram (PFD) will probably have identified 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
24
4.4. Produce ideal activity network
Identify the activities needed to create each product in the PFD
More than one activity might be needed to create a single product
Draw up activity network
25
An ‘ideal’ activity
Specify overall system
DesignModule A
Design Integration Test case
DesignModule B
Code module A
Test Integration software
Code module B
26
Step 4.5 Add check-points if neededDesign
module A
Designmodule B
Designsystem
Designmodule C
Codemodule A
Codemodule B
Codemodule C
Testsystem
Designmodule A
Designmodule B
Designsystem
Designmodule C
Codemodule A
Codemodule B
Codemodule C
Testsystem
Check-point
put in a check point
27
Step 5:Estimate effort for each activity
5.1 Carry out bottom-up estimates Estimation of staff effort required distinguish carefully between effort and elapsed time
Effort : Total number of staff-hours (or days etc) needed to complete 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
ones as we cant judge the status in long activities bundle up very short activities (create check lists)
28
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 contingency measures risk reduction: activity to stop risk occurring contingency: action if risk does occur
Eg : contracting staff
29
6.3 Adjust overall plans and estimates to take account of risks e.g. add new activities which reduce risks
associated with other activities e.g. training, pilot trials, information gathering
30
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 account resource constraints More than one task assigned to staff
e.g. staff not being available until a later date non-project activities
©The McGraw-Hill Companies, 200531
Gantt charts
Select subjects
Design questionnaire
Book machine
Conduct tests
Analyse results
Week commencing
5 12 19 26MARCH APRIL
9 16
Plan testing
2
Draft changes
LT
TA
LT
TA
LT
LT
TA
LT = lead tester
TA = testing assistant
32
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 plan and create lower
level plans
Step 9 &10: Execute plan/ low level of planning
Make provisional plan for distant taskExecute plan
34
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/ publicizeplan
6. Identify activityrisks
7. Allocateresources
9. Execute plan
10. Lower levelplanning
Review
Lowerleveldetail
For each activity
0.Select project
Draw up a product breakdown structure of a computer.
a product breakdown structure of a computer.
EXAMPLE
There is a garden shed in a garden. The project is to dismantle the shed and reassemble it in the garden of a close neighbour. The shed has some rotten pieces. When the shed has been dismantled, these rotten pieces must be identified and replacements ordered from the company that supplied the original shed. New fixtures and fittings (screws, nuts and bolts, glue etc.) for all pieces will be needed, so a list of the requirements is to be made as the shed is dismantled. The neighbour has said that he will prepare the site for the shed’s new location as part of his own, separate project.
product breakdown structure of the ‘old shed’
Product Flow Diagram
Develop a project planning for Course Scheduling System in LPU .
Proposed Plan
Course scheduling software is meant to create a schedule for courses in a department, given the preferences of professors and the information on available rooms and timeslots for courses