Project Management: Lecture Notes 2
Project Management: Lecture Notes 2
Lecture Notes 2
PROJECT MANAGEMENT
• Software Project Managements is an
umbrella activity within Software Engineering
• WHY IS IT IMPORTANT ?
Project Plan defines the Process and Tasks to be conducted, the People
who will do the work and the mechanism to assessing Risks, Controlling
Change and Evaluating Quality.
• The Manager who pays little attention to the Process runs the risk of
inserting competent technical Methods and Tools into a vacuum.
- Recruiting
- Selection
- Performance Management
- Training
- Compensation
- career Development
- Organization and work Design
- Team Culture Development
- Senior Mangers
- Project Managers
- Software Engineers (Practitioners)
- Customers or Clients
- End-users
• PROBLEM SOLVING
• MANAGERIAL IDENTITY
• ACHIEVEMENT
• INFLUENCE AND TEAM BUILDING
PROBLEM SOLVING
• Apply lessons learned from past Projects to new solutions and remain
flexible enough to change directions if initial attempt s are fruitless.
TEAM LEADERSHIP
CHARACTERISCTIC OF AN EFFECTIVE PROJECT MANMAGER
MANAGERIAL IDENTITY
ACHIEVEMENTS
.
THE SOFTWARE TEAM
The Best Project Team Structure depends on:
JELLED TEAM
• A Jelled Team is a group of people so strongly knit together that the whole is
greater than the sum of the parts…
– Once a team begins to jell, the probability of success goes way up. The team
can become unstoppable. A juggernaut for success… Team members do not
need to be managed in traditional way, and do not need to be motivated. They
have got momentum.
• Jelled Teams are significantly more productive and more motivated than average.
They share a common Goals, a common Culture, and in many cases a ‘’Sense of
eliteness’’ that make them unique.
THE SOFTWARE PROJECT TEAM
For one reason or another not all Project Teams Jell. Many teams suffer
from what is called “Team Toxicity”.
• To avoid A Frenzied work environment, the Project Manager should be certain that
the Team has access to all Information required to do the job:
• Software People often feel Frustration when there is a lack of Authority to control
their situation.
a) By understanding the Product to be built and the People doing the work.
• The Small, highly motivated Project team also called Agile Team , adopts
many characteristics of successful Project Teams and avoids many of the
toxins that create problems.
• Agile Team are Self-organized. A Self- Organizing team does not necessarily
maintain a single team structure but instead uses elements of random, open and
synchronous paradigms.
Agile Process models give the Agile Teams autonomy to make Project
Management and Technical decisions required to get the job done.
• As the Project proceeds, the Agile Team self organizes to focus individual
competency in a way that is most beneficial to the project at a given
point in time.
• To accomplish this:
– An Agile Team might conduct brief Daily Team meetings to coordinate and
synchronize the work that must be accomplished for the day.
• Based on information obtained from the daily meetings, the team adapts its
approach in a way that accomplishes an incremental of work.
• As each day passes, Continual Self-organizing and collaboration move the
team towards a completed Software Increment.
HUMAN TRAITS OF SOFTWARE TEAM
A Software Team often struggles with the differing ‘’HUMAN TRAITS’’ of its
Team members :-
• Some work hard to get things done well before the milestone date, thereby
avoiding stress as data approaches, while others are energized by the rush
to meet a last minute deadline.
A detailed analysis will provide all the solid information for Quantitaitive
Estimates and Project Plan . But Analysis often takes weeks or months to
complete
The ‘’Scope’’ of the Product must be established and bounded at the very
beginning of the Project.
SOFTWARE SCOPE
The first activity of Software Manager is to determine the Scope of Software.
- Software Context,
- Information Objectives
- Function and Performance of Software
• Software Context – How does the Software to be built fit into a larger System, Products
or Business Context, and what Constraints are imposed as a result
of the Context?
• Information Objectives – What Customer – visible Data Objectives are produced as Output
from the Software? What data objectives are required for Input?
• Function and Performance – What Functions does the Software Perform to transform
Characteristics to be addressed?
A Statement of Software Scope must be bounded. (i.e. Quantitative data must be stated explicitly)
Constraint and / or Limitations are noted and mitigating factors (e.g. desired algorithms
are well understood and available in C++) are described .
SOFTWARE SCOPE
PROBLEM DECOMPOSITION
Human beings tend to apply a Divide –and- conquer strategy when they
are confronted with a complex problem. A Complex Problem is partitioned
into smaller problems that are more manageable.
Software Functions described in the Scope, are evaluated and refined to provide more
detail prior to the beginning of Estimation. Since both Cost and Schedules are
Functionally oriented, some degree of Decomposition is often useful.
• Set of the Common Process Framework Activates are listed in the top row of
a matrix and the Software Engineering Work Tasks entered in the following
rows.
• The team members who work on the Product Function will apply each of the
Framework activities to it.
MELDING THE PRODUCT AND PROCESS
• The job of the Project Manager is to Estimate Resource requirements Start
Dates and End Dates for the tasks associated with each cell, and work
Products to be produced as a consequence of each task.
COMMUNICATION
CONSTRUCTION
DEPLOYMENT
MODELING
PLANNING
COMMON PROCESS
FRAMEWORK ACTIVITIES
• The Actual Software Engineering Tasks (i.e. Work Task) do actually vary.
For example: A small relatively simple Project might require the following ‘’Work
Tasks’’ for the ‘’Communication Activity’’:
The seeds that lead to the 90 – 90 rule are contained in the 10 Project
Jeopardy Signs.
90 – 90 RULE
– The last 10 % takes the other 90 % of the Allocared Effort and Time.
Many Project get off a good start and then slowly disintegrate. To maintain
momentum:-
The Project Team should emphasize quality in every task it performs.
The Project Manager must provide initiatives to keep ‘’Staff turnover’’ to an
absolute minimum.
Senior Management should do everything posssible to ‘’Stay out of the
Project Team’s way’’.
• (Management should reduce bureaucracy to a minimum, Eleminate
exraneaos meetings and eliminate dogmatic adherence to Project rules.
The Project team should be self-organizing and autonomous.
AVOIDING PROBLEMS SIGNED BY JEOPARDY
3. TRACK PROGRESS
In essence, the decisions of Project Manager and the Software Team should be
‘’keep ıt sımple”. Whenever possible decide to:-
• Project Objectives
• Milestones and Schedules
• Responsibilities
• Management and Technical approaches
• Required Resources
THE W5HH PRINCIPLE
W5HH (WWWWWHH) Principle is based on a series of questions that
leads to a definition of key Project Characteristics and the resulting
Project Plan.