SOFTWARE PROJECT MANAGEMENT By DR.S.Santhosh baboo
PROJECT: The dictionary definition put a clear emphasis on the project being a planned activity The characteristic which distinguish project as • Non routine task are involved • Planning is required • Specific objectives are to be met
Work is carried out for someone other than yourself • Work involves several specialisms • Work is carried out in several phases • The project is large • The resources are available for use on the project are constrained
MANAGEMENT: Management involves following activities: • Planning –deciding what to be done • Organizing-making arrangement • Staffing-selecting right people for right job • Directing-giving instruction • monitoring-checking on progress • Controlling-taking action to remedy hold-ups
Innovating-coming up with new solution • Representing-liasing with clients, users, developers, suppliers and stakeholders
MANAGING SOFTWARE PRODUCT: Worldwide, some half a million project managers execute about a million software projects each year, producing software worth $600 billion. Many of these projects fail to fulfill customers‘ quality expectations or fail to deliver the software within budget and on schedule. One analysis suggests that1about one-third of projects have cost and schedule overruns of more than 125%.
Why do so many software projects fail? Although there are many reasons, one of the most important is improper management of the project.
PROCESS AND MANAGEMENT CONCEPTS: A software project has two main activity dimensions: engineering and project management. The engineering dimension deals with building the system and focuses on issues such as how to design, test, code, and so on. The project management dimension deals with properly planning and controlling the engineering activities to meet project goals for cost, schedule, and quality.
PROJECT MANAGEMENT PROCESS: For a project team to successfully execute a project, it must perform hundreds of tasks, many of them interdependent. Effectively managing this process is extremely important for success. At software companies, the set of activities executed by a project manager is specified in the project management process.
It is fairly standard, having three main stages: • Project planning • Project execution • Project closure
PROBLEM WITH SOFTWARE PROJECT: • Poor estimation and plain • Lack of quality of standard and measurement • Lack of guidance about making organizational decisions • Lack of techniques to make process visible • Poor roll definition
STAKEHOLDERS: people who are having a stake or interest in the project. It is important that they be identified as possible, be cause you need to communicate channel with right from the start.
REQUIRED SPECIFICATION: • Functional requirement • Quality requirement • Resource requirement
STEP WISE PROJECT PLANNING: 0.Select Project 1.Identify scope and objectives 2.Identify project infrastructure 3.Analyse project characteristics 4.Identify products and activities
5.Estimate effort for each activity 6.Identify activity risks 7.Allocate resources 8.Review plan 9.Execute plan
STEP 0: • select the project
Step 1: • Identify the project scope and objectives. • identify the object and measurement of effectiveness in meeting them. • establish a project authority • identify stake holders
Step 2: • Identify the project infrastructure • Establish relationship between project and strategic planning • Identify installation standards and procedure • Identify the project team organization
Step 3: • Analyses the project characteristic • Distinguish the project as either objective or product driven • Analyses other project characteristic • Identify the high level project risk • Take into account user requirements concerning implementation
Select general life cycle approach • Review overall resource estimation
Step 4: • identify the product and the activities • Identify and describe project products • Document the generic product flows • Recognize the product instance • Product deal activities network • Modify deal to take into account need for stages and check point
Step 5: • estimate effort for each activities • Carryout the bottom up estimation • Revise plan to create controllable activities
Step 6: • identify the activity risk • Identify and describe quantify activity based risks • Plan risk reduction and contingency measures where appropriate • Adjust plans and estimates to take account of risks
Step 7: • Allocate resources • Identify and allocate resources • Revise plans and estimates to take account of resource constraints
Step 8: • Review/publicize plan • Review quality aspects of project plan • Document plans and obtain agreement
Step 9/10: • Execute plan/lower level of planning • This may require the reiteration of the planning process at a lower level.
SELECT THE PROJECT: • Deciding whether the project can be taken up or not • Technical,Organizational and Financial Feasibility is considered • Programme Management Group of projects managed in a coordinated way to gain benefits.
DIFFERENT FORM OF PROGRAMME: • Strategic Programmes • Business cycle programmes • Research and development programmes
PROGRAM MANAGEMENT AND PROJECT EVALUATION : • Program management • Managing the allocation of resources within programs • Strategic program management • Creating a program • Aids to programme management • Beneficial management
Technical assessment • Evaluation of individual projects Cast-benefit analysis • Cash flow forecasting • Cost benefit evaluation techniques • Risk evaluation
STRATEGIC PROGRAMMES: • Several projects implement single strategy] • Two Organizations Unified Payroll • The Projects are coordinated and done according to the strategy
BUSINESS CYCLE PROGRAMMES: • Specific budget for the projects • If one project is delayed, staff from other team can be used and resources also can be used
RESEARCH AND DEVELOPMENT PROGRAMMES: • New innovative ideas to develop new products • High risk if successful result is good
CREATING A PROGRAMME: • The Programme Mandate • The Programme Brief • The Vision Statement • The Blue Print
THE PROGRAMME MANDATE: Formal document describing New services programme should deliver How organization will be improved by new services Programme director provides initial leadership
THE PROGRAMME BRIEF: • Information sufficient to decide about project(vision statement) • Estimates cost,performance and risk
BLUE PRINT: • Organizational structure(staffs and skills) • Resources • Data and information requirements
IDENTIFY PROJECT SCOPE AND OBJECTIVES: Scope and Objectives of the project are Constraints Meet requirements Cost control Identify stake holders and their interest Communication
IDENTIFY PROJECT INFRASTRUCTURE: • Project should fit in existing infrastructure • Project manager should have full control over the project • Project Manager should be aware of Project planning and control
SELECTION OF AN APPROPRIATE PROJECT APPROACH: • Choosing technologies • Technical plan contents list • Choice of process models • Structure versus speed of delivery • The waterfall model • Spiral model • Software prototyping • Incremental delivery
Dynamic system development • Extreme programming • Managing iterative processes • Selecting a most appropriate process model
PROJECT ANALYSIS: • Outcome of analysis will be selection of most appropriate methodologies and technologies • Methodologies(Unified Software Development Process (USDP), Structured system analysis and design methods (SSADM)) • Technologies(Environments , Software etc)
STEPS IN PROJECT ANALYSIS: Identify project as either objective driven or product driven Analyses Project Characteristics Data driven or Process driven General tool or application specific Specific tools available(Graphics etc) Hardware and software environment Entertaining games or servicing
CHOICE OF PROCESS MODELS: • The activities can be organized in different ways known as models(Process Models) • The various models are • Waterfall Model • V Process Model • Spiral Model
WATER FALL MODEL: Feasibility study User Requirements Analysis System design Program design Coding Testing Operation
V-PROCESS MODEL: User acceptance Feasibility study User acceptance User requirements System design System testing Program design Program testing Code
SOFTWARE EFFORT ESTIMATION: • The definition of successful project is delivering the project on correct time within the budget at good quality • Hence estimation such as Lines of Code,Number of months have to be done • Estimates are carried out at various stages of the project
BASIS FOR SOFTWARE ESTIMATION: • Need of historical data(past projects) • Measure of work(Lines of code) • Complexity(varies with the project)
EFFORT ESTIMATION TECHNIQUES: • Function point method • Empirical model method