Home | | Software Project Management | Software Project Management

Chapter: Software Project Management

Software Project Management

1 Project Definition 2 Contract Management 3 Activities Covered By Software Project Management 4 Overview Of Project Planning 5 Stepwise Project Planning

INTRODUCTION TO SOFTWARE PROJECT MANAGEMENT


1 Project Definition

2 Contract Management

3 Activities Covered By Software Project Management

4 Overview Of Project Planning

5 Stepwise Project Planning

 

 

1.What is a Project?

 

A project is a temporary endeavor undertaken to create a unique product or service

 

One time

 

Limited funds/time

 

Specific resources utilized

 

Performed by people - Single or multi-person team

 

Planned, controlled

 

Specific Deliverables

 

The Triple Constraint of Projects

 

On Time, Budget, Quality = Required Scope


Fundable Idea


Research

 

Potential Funding

 

Best Practices

 

Potential Partners

 

Define project


Alignment with institutional priorities


 

Activities

 

In support of GOAL

 

Realistic and Achievable Objectives

 

Identify Resources Required

 

Timeline for Implementation

 

Criteria for success

 

 

Evaluation Method/Instru ments

 

Budget Requirements

 

Required documents

 


 

Consider BUDGET

 

Going over budget

 

–  Will result in...

 

Having to get more mone y

 

Having to reorganize bud get

 

Adjusting budget due to scope change

 

Adjusting budget due to r esources change Consider SCOPE

 

Changing scope

 

Increasing scope

 

Decreasing scope

 

Changing direction

 

Consider TIMELINES

 

 

Extending deadlines

 

Hurrying deadlines

 

Changing deadlines for certain project components

 

Adjusting schedule due to scope change

 

Adjusting timelines due to resource change Consider RESOURCES

 

Losing resources

 

Having to replace resources

 

Running short on resources

 

 

 

2 Contract management

 

Contract management or contract administration is the management of contracts made with customers, vendors, partners, or employees. Contract management includes negotiating the terms and conditions in contracts and ensuring compliance with the terms and conditions, as well as documenting and agreeing on any changes or amendments that may arise during its implementation or execution. It can be summarized as the process of systematically and efficiently managing contract creation, execution, and analysis for the purpose of maximizing financial and operational performance and minimizing risk.

 

Common commercial contracts include employment letters, sales invoices, purchase orders, and utility contracts. Complex contracts are often necessary for construction projects, goods or services that are highly regulated, goods or services with detailed technical specifications, intellectual property (IP) agreements, and international trade.

 

A study has found that for "42% of enterprises...the top driver for improvements in the management of contracts is the pressure to better assess and mitigate risks" and additionally,"nearly 65% of enterprises report that contract lifecycle management (CLM) has improved exposure to financial and legal risk

 

contract is a written or oral legally-binding agreement between the parties identified in the agreement to fulfill the terms and conditions outlined in the agreement. A prerequisite requirement for the enforcement of a contract, amongst other things, is the condition that the parties to the contract accept the terms of the claimed contract. Historically, this was most commonly achieved through signature or performance, but in many jurisdictions - especially with the advance of electronic commerce - the forms of acceptance have expanded to include various forms of electronic signature.

 

 

CONTRACTS

 

Contracts      can      be      of       many       types,    e.g.          sales     contracts               (including  leases),         purchasing

contracts, partnership agreements, trade agreements, and intellectual property agreements.

 

A sales contract is a contract between a company (the seller) and a customer that where the company agrees to sell products and/or services. The customer in return is obligated to pay for the product/services bought.

 

A purchasing contract is a contract between a company (the buyer) and a supplier who is promising to sell products and/or services within agreed terms and conditions. The company (buyer) in return is obligated to acknowledge the goods / or service and pay for liability created.

 

A partnership agreement may be a contract which formally establishes the terms of a partnership between two legal entities such that they regard each other as 'partners' in a commercial arrangement. However, such expressions may also be merely a means to reflect the desire of the contracting parties to act 'as if' both are in a partnership with common goals. Therefore, it might not be thecommonlaw arrangement of a partnership which by definition creates fiduciary duties and which also has 'joint and several' liabilities.

 

 

 

 

3. Activities covered by software project

 

A Software project is concerned not only with the actual writing of software. In fact, where a software application is bought in ‘Off-the-self’, there might be no software writing as such. This

is still fundamentally a software project because so many of the other elements associated with this type of project are present.

 

Usually, there are three successive process that bring a new system into being · Feasibility Study

    Planning

    Program Execution

 

Let us understand what is the mean by ‘Feasibility Study’?

 

A feasibility study may be carried out before a project commences Its Purpose

To establish an outline of what users require

§   · To ensure it is feasible to meet their needs · Entirely   In part

To record initial impressions of how to meet the requirements

To give management a feel for costs and timescales of project

To provide as much information as possible to project manager for · Estimating

Purchasing and accommodation

To help management decide whether to proceed with the project Planning

Probably the most time-consuming project management activity

Continuous activity from initial concept through to system delivery.

Plans must be regularly revised as new information becomes available

 

Various different types of plan may be developed to support the main software project plan that is concerned with schedule and budget

 

3.1Project execution:

 

The project can now be executed. Individual projects are likely to differ considerably but a classic project life cycle is shown in fig.Requirementsanalysis .

 

This is finding out in detail what the users require of the system that the project is to implement.

 

Some work along these lines will almost certainly have been carried out when the project was evaluated but now the original information obtained needs to be updated and supplemented.

 

Several different approaches to the users’ requirements may be explored.


 

For example, a small system that satisfies some, but not all, of the users’ needs at a low price may be compared to a system with more functions but at a higher price. Specification Detailed documentation of what the proposed system is to do. Design A design that meets the specification has to be drawn

 

up. This design activity will be in two stages. One will be the external or user design. This lays down what the system is to look like to the users in terms of menus, screen and report layouts and so on. The next stage produces the physical design, which tackles the way in which the data and software procedures

 

are be structured internally.

 

3.2 Coding:

 

This might refer to writing code in a procedural language such as C or Ada, or might refer to the use of a high level application builder. Even where software is not being built from scratch, some modification to the base application might be required to meet the needs of the new application.

 

3.3 Verification and validation:

 

Whether software is developed specially for the current application or not, careful testing will be needed to check that the proposed system meets its requirements.

 

3.4 Implementation/installation:

Some system development practitioners refer to the whole of the project after design as ‘implementation’ (that is, the implementation of the design) while others insist that the term refers to the installation of the system after the software has been developed. In this case it encompasses such things as setting up data files and system parameters, writing user manuals and training users of the new system.

 

3.5 Maintenance and support:

 

Once the system has been implemented there will be a continuing need for the correction of anyerrors that may have crept into the system and for extensions and improvements to the system. Maintenance and support activities may be seen as a series of minor software projects. Inmany environments, most software development is in fact maintenance.

 

 

4. Stepwise: an overview of project planning

 

Planning is the most difficult process in project management This chapter describes a framework of basic steps in project planning. Many different techniques can be used but this chapter tells the overview of the steps and activities in each step of project planning

 

A major step in project planning is to plan in outline first and then in more detail.

 

4.1 StepwiseProjectPlanning

 

Step 0: Select project

 

Step 1: Identify project scope and objectives

 

Step 2: Identify project infrastructure

 

Step 3: Analyze project characteristics

 

Step 4: Identify project products and activities

 

Step 5: Estimate effort for each activity.

 

Step 6: Identify activity risks.

 

Step 7: Allocate resources

 

Step 8 Review / Publicize pl\an

 

Step 9 &10: Execute plan / lower level of planning

 

Each step of project planning has different activities to perform. Following the description of each step with its activities

 

4.1.1 Step 0: Select project

 

This is called step 0 because in a way of project planning, it is outside the main project planning process. Feasibility study suggests us that the project is worthwhile or not.

 

4.1.2 Step 1: Identify project scope and objectives

 

 

The activities in this step ensure that all parties to the project agree on the objectivesand are committed to the success of the project.

 

Step 1.1: Identify objectives and practical measures of the effectiveness in meeting those objectives

 

Step 1.2: Establish project authority

 

Step 1.3: Stakeholders analysis  Identify all stakeholders in the project and their interest.

 

Step 1.4: Modify objectives in the light of stakeholder analysis.

 

Step 1.5:  Establish method of communication

 

 

 

4.1.3 Step 2: Identify project infrastructure

 

Projects are rarely carried out in a vacuum. There is usually some kind of infrastructure into which the project must fit. Where the project manager are new to the organization , they must find out the precise nature of this infrastructure.

 

Step 2.1: Identify relationship between the project and strategic planning

 

Step 2.2: Identify installation standards and procedures.

 

Step 2.3: Identify project team organization.

 

4.1.4 Step 3: Analyze project characteristics.

 

The general purpose of this part of planning operation is to ensure that the appropriate methods are used for the project.

 

Step 3.1: Distinguish the project as either objective- product driven

 

Step 3.2:  Analyze other project characteristics (including quality –based ones)

 

Step 3.3:  Identify high level project risks

 

Step 3.4:  Take into account user requirement concerning implementation.

 

Step 3.5: Select development methodology and life cycle approach.

 

Step 3.6:     Review overall resources estimates

 

4.1.5 Step 4: Identify project products and activities

 

The more detailed planning of the individual activities now takes place. The longer term planning is broad and in outline, while the more immediate tasks are planned in some detail.

 

Step 4.1: Identify and describes project products (ordeliverables)

 

Step 4.2: Document generic product flows

 

 

Step 4.3: Record product instance

 

Step 4.4: produce ideal activity network

 

Step 4.5: Modify the ideal to take into account need for stages and checkpoints.

 

            Step 5:  Estimate effort for each activity.

 

Step 5.1: Carry out bottom-up estimates

 

Step 5.2: Revise plan to create controllable activities.

 

            Step 6: Identify activity risks.

 

Step 6.1: Identify and quantify activity based risks

 

Step 6.2: Plan risk reduction and contingency measures where appropriate

 

Step 6.3: Adjust overall plans and estimates to take account of the risks

 

4.1.8 Step 7: Allocate resources

 

Step 7.1: Identify and allocate resources

 

Step 7.2: Revise plans and estimates to take into account resource constraints

 

4.1.9Step 8: Review / Publicize plan

 

Step 8.1: Review quality aspects of the project plan.

 

Step 8.2: Document plans and obtain agreement.

 

4.1.10 Step 9 & 10: Execute plan / lower level of planning

 

Once the project is underway, plans will need to be drawn up in greater detail for each activity as it becomes due. Detailed and lower level of planning of the later stages will need to be delayed because more information will be available nearer the start of the stage.

 

Project planning is an iterative process. As the time approaches for the particular activities to be carried out they should be re-planned in more detail.

 

 

 

StepwiseProjectPlanning

 

Step Wise project planning framework

 

Preparation of a software project plan

 

Planning and scheduling the activities in software project management

 

Various approaches towards activity plan

 

Various scheduling techniques such as sequencing and CPM

 

Aside – When to plan

 

Planning is an on-going process of refinement

 

Planning at different stages of the project has different emphases and purposes

 

Project Vs Activity

 

A project is composed of a number of related activities

 

A project may start when at least one of its activities is ready to start

 

A project will be completed when all of its activities have been completed

 

An activity must have a clear start and a clear stop

 

An activity should have a duration that can be forecasted

 

Some activities may require that other activities are completed before they can begin

 

Activity Planning

 

A project plan is a schedule of activities indicating the start and stop for each activity

 

Also provide the project and resource schedules

 

The start and stop of each activity should be visible and easy to measure

 

Each activity should have some ‘deliverables’ for ease of monitoring

 

During planning, managers consider:

 

Resource availability

 

Resource allocation

 

Staff responsibility

 

Project Monitoring

 

Cash flow forecasting

 

Re-planning of the project towards the pre-defined goal

 

Other Objectives of Activity Planning

 

Feasibility assessment

 

Resource allocation

 

Detailed costing

 

Motivation

 

Co-ordination

 

Different Levels of Plans

 

Project Schedule: a plan that shows

 

1. the dates when each activity should start and stop

 

2. when and how much of the resources will be required

 

Activity Plan: a plan that describes

 

how each activity will be undertaken

 

Project Schedule in 4 Stages

 

Ideal Activity Plan

 

An activity plan without any constraints

 

Risk consideration for each activity

 

Resource consideration for whole project

 

Schedule production and publication

 

Various Approaches towardsIdentifying Activity

 

Activity-based approach

 

Product-based approach

 

Hybrid approach

 

Activity-based Approach

 

Use Work Breakdown Structure (WBS) to generate a task list

 

WBS involves

 

identifying the main tasks

 

break each main task down into subtasks

 

The subtasks can further be broken down into lower level tasks.

 

 

Advantages

 

More likely to obtain a task catalogue that is complete and is composed of non-overlapping tasks

 

WBS represents a structure that can be refined as the project proceeds

 

The structure already suggests the dependencies among the activities

 

Disadvantage

 

Very likely to miss some activities if  an  unstructured activity list is used

 

Product-based Approach

 

Product Breakdown Structure (PBS)

 

To show how a system can be broken down into different products for development

 

Product Flow Diagram (PFD)

 

To indicate, for each product, which products are required as ‘inputs’

 

Advantages

 

Less likely to miss a product unexpectedly from a PBS

 

Product-based Approach – An example

 

 


Hybrid Approach

 

A mix of the activity-based approach and the product-based approach

 

More commonly used approach

 

The WBS consists of

 

a list of the products of the project; and

 

a list of activities for each product

 


 

IBM in its MITP methodology suggests 5 levels

 

Level 1: Project

 

Level 2: Deliverables (software, manuals etc.)

 

Level 3: Components

 

Level 4: Work-packages

 

   Level 5: Tasks (individual responsibility)

 

Planning and Scheduling the Activities

 

Once we have a project plan (or, project schedule), we need to schedule the activities in a project taking into account the resource constraints

 

Scheduling Techniques

 

Simple sequencing

 

Suitable for small projects

 

Critical Path Method (CPM)

 

Suitable for large software projects

 

The most commonly used “networking” technique

 

Simple sequencing

 

A simple sequencing of the tasks and the responsible personnel taken into account of the resources

 

Easily presented in a simple bar chart

 

see figure 6.6 in Hughes book

 

Suitable for allocating individuals to particular tasks at an early stage

 

Critical Path Method (CPM)

Primary objectives:

 

Planning the project so that it can be completed as quickly as possible

 

Identifying those activities where their delays is likely to affect the overall project completion date

 

Developed by Du Pont Chemical Company and published in 1958

 

Capture the activities and their inter-relationships using a graph

 

Lines are used to represent the activities

 

Nodes are used to represent the startand stop of activities

 

Adding time dimension

 

The forward pass

 

Calculate the earliest start dates of the activities

 

To calculate the project completion date

 

The backward pass

 

Calculate the latest start dates for activities

 

Identify the critical path from the graph

 

Identifying critical path and critical event

 

Critical event:an event that has zero slack

 

Critical path: a path joining those critical events

 

Example to construct a CPM


 

Activity Float

 

Time allowed for an activity to delay 3 different types:

 

Total float (without affecting the completion of the project)

       latest start date – earliest start date

 

Free float (without affecting the next activity)

 

earliest start date of next activity – latest end date of previous activity

 

Interfering float (= total float - free float)

 

Significance of critical path

 

During planning stage

 

Shortening the critical path will reduce the overall project duration

 

During management stage

 

Pay more attention to those activities which fall in the critical path

 

Study Material, Lecturing Notes, Assignment, Reference, Wiki description explanation, brief detail
Software Project Management : Software Project Management |


Privacy Policy, Terms and Conditions, DMCA Policy and Compliant

Copyright © 2018-2024 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.