Software Project Management

Views:
 
Category: Education
     
 

Presentation Description

software project management presentation

Comments

Presentation Transcript

SOFTWARE PROJECT MANAGEMENT CONCEPTS:

SOFTWARE PROJECT MANAGEMENT CONCEPTS

Outline:

Outline Basic Questions The Management Spectrum The People The Product The Process The Project The W5HH Principle Reference Queries

BASIC QUESTIONS:

BASIC QUESTIONS

What is Software Project Management?:

What is Software Project Management? It involves the planning, monitoring and control of the people, process and events that occur as software evolves from a preliminary concept to an operational implementation

Who does it?:

Who does it? Everyone manages to some extent but scope varies with the person doing it. S/W Engineer manages her day to day activities, planning, monitoring and controlling tasks Project managers plan, monitor, and control the work of a team of software engineers Senior managers co-ordinate the interface between the business and the software professionals

Why is it Important?:

Why is it Important? Building computer software is a complex undertaking, particularly if it involves many people working over a relatively long time

What are the steps?:

What are the steps? People must be organized to perform software work effectively Communication with the customer must occur so that the product scope and requirements are understood A process must be selected that is appropriate for the people and the product

Steps (contd…):

Steps (contd…) The project must be planned by estimating effort and calendar time to accomplish work tasks, defining work products, establishing quality checkpoints, and establishing mechanisms to monitor and control work defined by the plan

What is the work product?:

What is the work product? A project plan is produced as management activities commence The plan defines the process and tasks to be conducted, the people who will do the work, and the mechanisms for assessing risks, controlling change, and evaluating quality

How do I ensure that I’ve done it right?:

How do I ensure that I’ve done it right? A project plan is right when you have delivered a high quality product on time and within budget However, a project manager does it right when he encourages software people to work together as an effective team, focusing their attention on customer needs and product quality

The Management Spectrum (4 Ps):

The Management Spectrum (4 Ps) P eople P roduct P rocess P roject

People:

P eople

People:

People The most important factor in success of software project. People in this context are all those who influence project. Cultivation of motivated and highly skilled software people has always been important for software organizations.

People Management Capability Maturity Model:

People Management Capability Maturity Model It defines the following key practice areas for software people: Recruiting Selection Performance Management Training Compensation Career Development Organization and work design Team/culture Development

People Classification:

People Classification Players Team Leader Software Team

Players:

Players Senior Managers – define the business issues Project Managers – plan, motivate, organize and control the practitioners who do software work Practitioners – deliver the technical skills that are necessary to engineer a product Customers – specify the requirements for software to be engineered End Users – interact with the software once it is released for production use

Team Leaders:

Team Leaders MOI Model of Leadership M otivation O rganization I nnovative Ideas Traits of an effective Project Manager Problem Solving Decision Making Reward achievement Influence and Team building

Software Team:

Software Team Three generic team organization Democratic decentralized (DD) – no permanent leader, task coordinators are appointed for short durations and then replaced by others who may coordinate different tasks. Decisions on problems and approach are made by group agreement. Controlled decentralized (CD) – defined leader who coordinate specific tasks, secondary leaders have responsibilities for subtasks. Implementation of solution is partitioned among subgroups by the team leader. Controlled centralized (CC) – Top level problem solving and internal team coordination are managed by a team leader.

What factors should we consider while structuring a software team?:

What factors should we consider while structuring a software team ? The difficulty of the problem to be solved The size of the resultant programs The time that the team will stay together The degree to which the problem can be modularized The required quality and reliability of the system to be built The rigidity of the delivery date The degree of sociability (communication) required for the project

PowerPoint Presentation:

Four organizational paradigms for software development teams Closed paradigm – traditional hierarchy of authority; works well when producing software similar to past efforts; members are less likely to be innovative Random paradigm – depends on individual initiative of team members; works well for projects requiring innovation or technological breakthrough; members may struggle when orderly performance is required Open paradigm – hybrid of the closed and random paradigm; works well for solving complex problems; requires collaboration, communication, and consensus among members Synchronous paradigm – organizes team members based on the natural pieces of the problem; members have little communication outside of their subgroups

Product:

P roduct

Product:

Product Software and its scope. Before a Product can be Planned:- - Product Objectives and Scope should be Planned - Alternative solutions should be considered - Technical and Management Constraints should be identified. Without the PRODUCT Plan it is not possible to define:- - Reasonable and accurate Estimates of Cost and Effective Risk Management - Realistic breakdown of Project tasks (WBS) - Project Schedule that provides a meaningful indication of progress.

PowerPoint Presentation:

Product Software Scope Problem Decomposition

(I) Software scope:

(I) Software scope Scope is defined by Context Functional location of the software product into a large system, product or business context Constraints involved Information Objectives What data objects are required as i/p or o/p Function and Performance What function does the software system perform on i/p to produce o/p What level of performance is required

(II) Problem Decomposition:

(II) Problem Decomposition A Complex Problem is partitioned into smaller problems that are more manageable. D ecomposition is applied in two major areas : - The Functionality that must be delivered The Process that will be used to deliver it

Process:

P rocess

Process :

Process Software Process provides the Framework from which a comprehensive Plan for Software Development can be established. A small number of Framework activities are applicable to all Software Projects regardless of Project size or complexity. A number of Different Task set however, such as :- - Tasks - Milestones - Work Product (Deliverables) - Quality Assurance points enables the Framework activities to be adapted to the characteristics of the Software Project and the requirements of the Project team.

PowerPoint Presentation:

Process Melding the Product and Process Process Decomposition

(I) Melding the Product and Process:

(I) Melding the Product and Process P roject Planning begins with the melding of Product and the Process. Each Product F unction to be engineered by the Software Team must pass through the ‘’S et of Framework Activities ’’ that has been defined f or a Software organization. The team members who work on the Product Function will apply each of the framework activities to it.

Process decomposition:

Process decomposition The way a process is decomposed depends on project complexity Decomposition involves outlining of work tasks involved in each process framework activity Example :- Small Project might require the following tasks for the customer communication activity. - Develop list of clarification issues. - Meet with customer to address clarification issues. - Jointly develop a statement of scope. - Review the statement of scope with all concerned. - Modify the statement of scope as required.

Project:

P roject

Project :

Project We conduct Planned set of inter related tasks to be executed over a period and within certain cost and other limitations.

Problem signs in a project :

Problem signs in a project Software people don’t understand their customer needs The product scope is poorly defined Changes are managed poorly The chosen technology changes Business needs change (or are ill defined) Deadlines are unrealistic

Signs (contd…):

Signs (contd…) Users are resistant The project team lacks people with appropriate skills Managers (and practitioners) avoid best practices and lessons learned

Five-part commonsense approach to avoid problems:

Five-part commonsense approach to avoid problems Start on the right foot Maintain momentum Track progress Make smart decisions Conduct a postmortem analysis

W5HH Principle:

W5HH Principle It is an approach that addresses Project objectives Milestones Schedules Responsibilities Management approaches Technical approaches Required resources

W5HH (contd…):

W5HH (contd…) W hy is the system being developed? W hat will be done, by w hen? W ho is responsible for a function? W here are they organizationally located? H ow will the job be done technically and managerially? H ow much of each resource is needed?

Reference:

Reference Software Engineering, A Practitioner’s Approach, by Roger S. Pressman

Any Queries??:

Any Queries??

Thanks a lot:

Thanks a lot

authorStream Live Help