PROJECT MANAGEMENT CONCEPTS INTRODUCTION Project management involves the

  • Slides: 18
Download presentation
PROJECT MANAGEMENT CONCEPTS INTRODUCTION: Project management involves the planning, monitoring, and control of the

PROJECT MANAGEMENT CONCEPTS INTRODUCTION: Project management 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? q A software engineer manages day-to-day activities, planning, monitoring, and controlling

Who does it? q A software engineer manages day-to-day activities, planning, monitoring, and controlling technical tasks. q Project managers plan, monitor, and control the work of a team of software engineers. q Senior managers coordinate the interface between the business and the software professionals.

What are the steps? Understand the four P’s— q q People, Product, Process, and

What are the steps? Understand the four P’s— q q People, Product, Process, and Project.

The Four P’s q People must be organized to perform software work effectively. q.

The Four P’s q People must be organized to perform software work effectively. q. A process must be selected that is appropriate for the people and the product. q The project must be planned by estimating effort and calendar time to accomplish work tasks.

How do I ensure that I’ve done it right? o You’re never completely sure

How do I ensure that I’ve done it right? o You’re never completely sure that the project plan is right until you’ve delivered a high-quality product on time and within budget. o 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 The People The “people factor” is so important that the Software

THE MANAGEMENT SPECTRUM The People The “people factor” is so important that the Software Engineering Institute has developed a people management capability maturity model (PM-CMM), The people management maturity model defines the following key practice areas for software people: recruiting, selection, performance management, training, compensation, career development, organization and work design, and team/culture development.

The Product Before a project can be plannedØ Product objectives and scope should be

The Product Before a project can be plannedØ Product objectives and scope should be established, Ø Alternative solutions should be considered, and Ø Technical and management constraints /limitations should be identified.

The Process q A software process provides the framework from which a comprehensive plan

The Process q A software process provides the framework from which a comprehensive plan for software development can be established. q A small number of framework activities are applicable to all software projects, regardless of their size or complexity.

The Project In order to avoid project failure, a software project manager and the

The Project In order to avoid project failure, a software project manager and the software engineers who build the product must§ understand the critical success factors that lead to good project management, and § develop a commonsense approach for planning, monitoring and controlling the project.

The Project In order to manage a successful software project, they must understand :

The Project In order to manage a successful software project, they must understand : § what can go wrong (So that problems can be avoided) and § how to do it right

The Players The software process (and every software project) is populated by players who

The Players The software process (and every software project) is populated by players who can be categorized into one of five constituencies: 1. Senior managers who define the business issues that often have 2. Project (technical) managers who must plan, motivate, organize, and control the practitioners who do software work.

The Players 3. Practitioners who deliver the technical skills that are necessary to engineer

The Players 3. Practitioners who deliver the technical skills that are necessary to engineer a product or application. 4. Customers who specify the requirements for the software to be engineered and other stakeholders who have a peripheral interest in the outcome. 5. End-users who interact with the software once it is released for production use significant influence on the project.

Team Leaders Jerry Weinberg suggests a MOI model of leadership: Ø Motivation: The ability

Team Leaders Jerry Weinberg suggests a MOI model of leadership: Ø Motivation: The ability to encourage technical people to produce to their best ability. Ø Organization: The ability to modify existing processes (or invent new ones) that will enable the initial concept to be translated into a final product. Ø Ideas or innovation. The ability to encourage people to create and feel creative even when they must work within bounds established for a particular software product or application.

Team Organizations Mantei suggests three generic team organizations: q Democratic decentralized (DD) q Controlled

Team Organizations Mantei suggests three generic team organizations: q Democratic decentralized (DD) q Controlled decentralized (CD) q Controlled Centralized (CC)

Democratic Decentralized q This software engineering team has no permanent leader. Ø Task coordinators

Democratic Decentralized q This software engineering team has 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 consensus (agreement). Ø Communication among team members is horizontal.

Controlled Decentralized q This software engineering team has a defined leader who coordinates specific

Controlled Decentralized q This software engineering team has a defined leader who coordinates specific tasks q Secondary leaders that have responsibility for subtasks. q Problem solving remains a group activity, but implementation of solutions is partitioned among subgroups by the team leader q Communication among subgroups and individuals is horizontal. q Vertical communication along the control hierarchy also occurs.

Controlled Centralized q Top-level problem solving and internal team coordination are managed by a

Controlled Centralized q Top-level problem solving and internal team coordination are managed by a team leader q Communication between the leader and team members is vertical.

Coordination and Communication Issues: To accomplish the work, mechanisms formal and informal communication among

Coordination and Communication Issues: To accomplish the work, mechanisms formal and informal communication among team members and between multiple teams must be established. q Formal Communication: It is accomplished through “writing, structured meetings, and other relatively noninteractive and impersonal communication channels”. q Informal Communication: It is more personal. Members of a software team share ideas on an ad hoc basis, ask for help as problems arise, and interact with one another on a daily basis.