Upload
sheikh-khawar-qayyum
View
86
Download
0
Embed Size (px)
Citation preview
Software Project Management
Four Project Dimensions
Sheikh Khawar Qayyum
People in Software Management
The most important contributor to a successful software project.
Selection of smart people is crucial.
Associate real good people, grow good people and provide an environment in which good people can produce.
The Players (People in Software Management)
Senior Managers (Define business issues that have significant influence on project)
Project Managers (Plan, organize, motivate and control the practitioners)
Practitioners (Deliver the technical skills require to engineer a product or application)
Customers (Specify the requirements for the software or stakeholders who have interest in outcomes)
End Users (The users who interact with the software)
People Management Capability Maturity Model (PM-CMM)
It defines following key practice areas for software people
Recruiting
Selection
Performance Management
Training
Compensation
Career Development
Organization & Work Design
Team Building
Culture Development
Organization with high level of maturity gains effective software engineering practices.
Software Process
A roadmap to create a timely & high quality software (result).
This process varies from software to software.
It provides frame work to establish a comprehensive plan for software development.
Software plan includes requirement gathering, tasks, milestones & deliverables.
In last umbrella activities are also part of software process such as quality assurance, configuration management & maintenance. Umbrella activities are independent of any framework and occur throughout the process.
Product
Pareto Principal 80/20
80% of defects arise from 20% of the processes issues.
20% of sales force produces 80% of your company revenue.
80% of delays in schedule arise from 20% of your possible causes of the delays.
Work on 20% that is really important, don’t just work, work smart on right things.
If something in the schedule has to slip, if something isn’t going to get done, make sure that it is not part of that 20%.
This rules help you to keep focus on 20% that matters. Those 20% produce 80% of your result so identify and focus on these things.
While gathering requirements, portioning, positioning and delivering the work always plan as per this rule.
Software Project
Divide into several phases known as software phases to improve management, and control.
Collectively software phases are project life cycle.
Initiation (Vision, establishment of goals & expectations, team building & scope)
Planning (Refine scope, identify tasks, define schedule and budgeting)
Execution (Goal accomplishment, leading team, solving problems, engineering project)
Controlling (Monitor changes, corrections, adjustments in budget & schedule or expectations & goals)
Closing (Deliver project to end users, acknowledge results, and accessing success)
Development point of view it is referred as software development life cycle.
Project Phases
Each phases has one or more deliverables.
Deliverable is a verifiable work product and by reviewing which a phase can be concluded.
Upon conclusion of each phase review of following is completed;
Determine to move project to next phase.
Detect & correct errors, and cost effectiveness.
Phase end reviews are phase exits, stage gates or kill points.
Deliverables from preceding phase are usually approved before work starts on next phase. However sometimes subsequent phase is begun prior approval when the risks involved are deemed acceptable. This overlapping of phases is called fast tracking.
Project Life Cycle
It defines the start and end of a project and the activities that used to link the associative processes i.e., requirements to design, design to manufacturing, or constructions to operations.
It also explains; What should be done in each phase?
Who should be involved in each phase?
It’s description may be general or detailed. Detailed approaches are called Project Management Methodologies that includes numerous forms, charts, & checklists.
Cost, staffing level and probability of success are lower at the start.
Cost & staffing level drop rapidly towards the end of the project. Probability to success gets higher as the project continues.
Risk, uncertainty, stakeholder influence on project’s product and cost is highest at start and gets progressively lower in the end.
Cost of changes and error correction generally increases as the project continues.
Software Development Life Cycle
It may vary from organization to organization and includes following activities;
Concept Phase
Requirement Phase
Design Phase
Development Phase
Operation Phase