h

Friday, May 1, 2015

Introduction Fundamentals Classic Mistakes of software Project Mnagement

Software Project Management
Project Management Skills:
Leadership

Communications

Problem Solving

Negotiating

Influencing the Organization

Mentoring (Mentor=a wise and trusted guide and advisor, mentor;mentee)

Process and technical expertise
 Project Manager Positions:
Project Administrator / Coordinator

Assistant Project Manager

Project Manager / Program Manager

Executive Program Manager

V.P. Program Development

V.P=vice president; an executive officer ranking immediately below a president; may serve in the president's place under certain circumstances


Software Computer software, or just software, is the collection of computer programs and related data that provide the instructions telling a computer what to do


A project in business and science is a collaborative enterprise, frequently involving research or design, that is carefully planned to achieve a particular aim

Project Management
Project management is the application of
knowledge, skills, tools, and techniques to project activities in order to meet or exceed stakeholder needs and expectations from a project.

Collaboration=act of working jointly

 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.
 For small projects an email may be fine, but for large commercial projects you need:
Defined Processes, a degree of formality

Tested and Documented processes

To Secure the Quality of outcome
 What is a Process?
Technically, a process for a task comprises a sequence of steps that should be followed to execute the task.
 So, why we require Processes?
Processes represent collective knowledge. Using them increases your chances of success.
A process may have some extra steps, but you will not always know beforehand which ones are not needed, and hence you will increase your risks by taking shortcuts.
 Without processes, you cannot predict much about the outcome of your project.

 You and the organization cannot learn effectively without having defined processes. Learning and improvement are imperative in today's knowledge-based world
imperative=requiring attention or action

 Processes lower your anxiety level. The checklists inevitably cover 80 %  of what needs to be done. Hence, your task reduces to working out the remaining 20 percent.

 Inevitably=in such a manner as could not be otherwise;necessarily

PM Tools: Software:

Low-end

Basic features, tasks management, charting
 MS Excel, Milestones Simplicity

Mid-market

Handle larger projects, multiple projects, analysis tools
 MS Project (approx. 50% of market)

High-end

Very large projects, specialized needs,enterprise

AMS Realtime (Adv Mngt Solution)

Primavera Project Manager
  Four Project Dimensions:

People

Process

Product

Technology
Every project has 3 constrains
Scope goals: What work will be done?
Time goals: How long should it take to complete?
Cost goals: What should it cost?
 
Time constraint may lead to less quality because of ?

less time for analysis,
less time for planning,
less time for reviewing,
less time for checking,
less time for monitoring,
less time for control,
 Cost constraint may lead to less quality because of ?
 Hiring less skilled people,
 Getting less quality resources (HW, NW) Ignoring some customer requirements
 
 Scope limitations may lead to less quality because of ?

 •Scope limitations may lead to Ignore some customer requirements

shortcuts
 Process:
Is process stifling?

2 Types: Management & Technical

Development fundamentals

Quality assurance

Risk management

Lifecycle planning

Avoid abuse by neglect

Customer orientation

Process maturity improvement

Rework avoidance
 
 Product:
The “tangible” dimension

Product size management

Product characteristics and requirements

Feature creep management
 Technology:
Often the least important dimension

Language and tool selection

Value and cost of reuse
  Planning:
Determine requirements

Determine resources

Select lifecycle model

Determine product features strategy
Tracking:

Cost, effort, schedule

Planned vs. Actual

How to handle when things go off plan?
Measurements: 
 To date and projected
Cost
Schedule
Effort
Product features
Alternatives
Earned value analysis
Defect rates
Productivity (ex: SLOC)
Complexity (ex: function points)
 Technical Fundamentals:
Requirements

Analysis

Design

Construction

Quality Assurance

Deployment
Project Phases:

All projects are divided into phases
All phases together are known as the Project Life Cycle
Each phase is marked by completion of Deliverables
Identify the primary software project phases
  People-Related Mistakes:
Undermined motivation
Weak personnel
Weak vs. Junior
Uncontrolled problem employees
Heroics
Adding people to a late project

Noisy, crowded offices
Customer-Developer friction
Unrealistic expectations
Politics over substance
Wishful thinking
 Lack of effective project sponsorship
Lack of stakeholder buy-in
Lack of user input
Process-Related Mistakes :

•Optimistic schedules

•Insufficient risk management

•Contractor failure

•Insufficient planning

•Abandonment of plan under pressure

•Wasted time during fuzzy front end

•Shortchanged upstream activities

•Inadequate design

•Shortchanged quality assurance

•Insufficient management controls

•Frequent convergence

•Omitting necessary tasks from estimates

•Planning to catch-up later

•Code-like-hell programming
 Product-Related Mistakes:

Requirements gold-plating

Gilding the lily

Feature creep

Developer gold-plating

Beware the pet project

Push-me, pull-me negotiation

Research-oriented development
  Technology-Related Mistakes:

Silver-bullet syndrome

Overestimated savings from new tools and methods

Fad warning

Switching tools in mid-project

Lack of automated source-code control