Software Engineering Project Management - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Software Engineering Project Management

Description:

Ad hoc procedures are used in 70% of software development organizations. ... Set of goals, objective, policies, procedures, rules, work assignments, ... – PowerPoint PPT presentation

Number of Views:55
Avg rating:3.0/5.0
Slides: 31
Provided by: classes
Category:

less

Transcript and Presenter's Notes

Title: Software Engineering Project Management


1
Chapter 7
  • Software Engineering Project Management
  • Arnaldo Echevarria
  • Jorge Gonzalez
  • Hugo Occil

2
Software Engineering Project Management
  • Management functions and tasks necessary to
    manage any software engineering project.
  • Encapsulates
  • Management procedures
  • Practices
  • Technologies
  • Skills needed to successfully manage any software
    engineering project

3
Software Project Management
  • Software engineering projects are frequently part
    of larger more comprehensive projects.
  • Require
  • Hardware
  • Facilities
  • Personnel
  • Procedures
  • Managed by
  • One or more system (project managers)
  • One or more software project managers

4
Types of Software Project Management
  • Development Project Management
  • Deals with the managing software intensive
    system, from development to delivery.
  • Acquisition Project Management
  • Contractually obtain from a group or organization
    a software intensive system to be used by another
    group or organization.
  • Similarities
  • Organization, staffing, directing, and problem
    resolution.
  • Either type must understand the other.

5
Acquisition Development Project Management
6
Acquisition Development Project Management
7
Acquisition Development Project Management
8
Major Issues Of Software Engineering
  • Ad hoc procedures are used in 70 of software
    development organizations.
  • Proven techniques are only used when project
    falls behind in cost, schedule, and or costumer
    demands more functionality without budget
    increase.
  • Management plays a major role in software and
    system development and support.
  • The difference success and failure is often a
    function of managers effectiveness D.O.D. SW
    Initiative 83

9
Classical Management Model
10
Major Functions of Management
11
Major Issues in Planning
  • Deciding in advance what to do, how to do it,
    when to do it, and who is to do it.
  • Involves specifying objectives for a project and
    the strategies, policies, plans and procedures
    for attaining them.
  • Every project needs to start with a good plan.
  • Uncertainties and unknowns, make planning
    necessary.

12
Major Issues in Planning
  • Complete, correct and clear requirements are
    extremely important.
  • Vagueness in objectives can result in poor cost
    and scheduling estimates.
  • Major requirement changes will change cost an
    scheduling estimates, yet most of the time they
    remain the same.
  • Accurate budgets and schedules are hard to
    prepare.
  • Most realistic cost estimates are based on past
    histories of cost and scheduling, of similar
    project.

13
Major Issues in Planning
  • Most project managers do make a realistic attempt
    to create an accurate cost and schedule estimate.
  • Ok to take risks as long as problems are known.
  • Most times when risks become problems it catches
    every one by surprise.

14
Planning Activities
  • Set Project Objectives and Goals
  • Determine the desired outcome for the project.
  • Develop project strategies
  • Decide major goals, and develop actions for
    meeting goals.
  • Develop project policies
  • Make decisions to provide guide for decision
    making.
  • Forecast future situations
  • Anticipate future events or make assumptions
    about the future. Predict future expectations
    from course of action.
  • Conduct project risk assessment
  • Anticipate possible problems, state assumptions,
    predict results and possible courses of action.

15
Planning Activities
  • Determine possible courses of action
  • Develop, analyze, and evaluate different project
    plans.
  • Make project planning decisions
  • Evaluate and select a course of action from among
    alternatives.
  • Set project procedures and rules
  • Establish methods, guides, and limits for
    accomplishing project activity.
  • Develop a software project plan
  • Establish Policies, procedures, rules, tasks,
    schedules, and resources needed to complete the
    project.

16
Planning Activities
  • Prepare project budgets
  • Allocate estimated costs to project functions,
    activities, and tasks.
  • Document Project Plans
  • Recommend policy decisions, course of action,
    budget, program plans, and contingency plans.

17
Types of Plans
  • Objectives
  • The project goals toward which activities are
    directed.
  • Strategic
  • Guidance for placing emphasis and project
    resources.
  • Policies
  • Limit the freedom in making the decisions but
    allow for some discretion.
  • Procedures
  • Customary methods for handling activities, allow
    very little discretion.

18
Types of Plans
  • Rules
  • Requirements for specific for taken or not taken
    with respect to particular project situations.
  • Plans
  • Set of goals, objective, policies, procedures,
    rules, work assignments, resources, and other
    elements used to conduct the software project.
  • Budget
  • Constraint on resources, quantitative expressed
    in staff hours or dollars.

19
Organization of S/W Project
  • Involves developing an effective and efficient
    organizational structure for assigning and
    completing project tasks and establishing
    responsibility and relationship among tasks
  • Major Issues
  • Functional Format
  • Distributes authority among functional elements
  • Matrix Format
  • Two-Boss phenomenon.
  • Project Format
  • Centralized control

20
Organizing Activities
  • Identify and group project function, activities
    and tasks.
  • Select organizational structures
  • Create organizational positions
  • Define responsibilities and authority
  • Establish position qualifications
  • Document organizational decisions

21
Organizational Structures
  • Line Organization p239
  • Functional Project Organization p243
  • Project Organization p243
  • Matrix Project Organization p244
  • Mostly used in aerospace industry.
  • Software Project teams
  • Team leader should not be expected to carry any
    share of technical work.

22
Organizational Positions
  • Project Manager
  • Software systems engineer
  • Scientific/engineering programmers,
    programmer-analysis
  • Software verification and validation engineers.
  • Software quality assurance engineers

23
Staffing a Software Project
  • Fill positions defined in project organization
    structure.
  • Filled throw selection, training and development
    of personnel.
  • Ensure roles are filled by qualified personnel.
  • Major Issue
  • Development skills vary from individual to
    individual, can vary from 4 to 1.
  • U.S. Universities turn out Theoretical computer
    scientist at best, or mere programmers at worst.
  • Staffing Activities p246

24
Directing a Software Project
  • Consists of management activities that involve
    motivational and interpersonal aspects, used to
    achieve project goals.
  • Major Issues
  • Most software engineers are high in the ladder of
    satisfied needs p253 so money alone is not a
    strong motivator.
  • Leadership may not introduce unfamiliar methods
    and tools because it raises risk.
  • Unfamiliar methods make it harder for cost and
    scheduling estimates.
  • SW Engineers may eventually burn out.

25
Directing the Project team
  • Provide leadership
  • Supervise personnel
  • Delegate authority
  • Motivate personnel(X,Y, Z theories) p252
  • X - dislike work, need to be controlled, dont
    like responsibility.
  • Y rewards associated with achievement, seek
    responsibility.
  • Z People need goals, both positive and negative
    reinforcement, motivation is essential.

26
Directing the Project team
  • Motivate personnel
  • Theories, Needs, management, job factors p254.
  • Build teams
  • Coordinate activities
  • Facilitate communication
  • Resolve conflicts
  • Manage changes
  • Document Direct decisions

27
Controlling a Software Project
  • Collection of management activities used to
    ensure that the project goes according to plan.
  • Major Issues
  • Status based on resources expanded.
  • Problem lies in that resources used and work done
    is only a rough estimate at best, wrong at worst.
  • Progress Matricides
  • Costly and hard to implement.

28
Controlling a Software Project
  • Develop standards of performance
  • Standards, Quality Assurance, Software
    Configuration Management, Process and product
    metrics.
  • Establish monitoring and reporting systems
  • Formal Reviews, Budget reviews, Independent
    Auditing, binary tracking system, Software
    quality assurance, Configuration management,
    testing verification and validation, walkthrough
    inspections.

29
Controlling a Software Project
  • Initiate corrective actions
  • Measure and analyze results
  • Reward and discipline
  • Document controlling methods

30
Conclusion
  • Software engineering procedures and techniques do
    not alone guarantee a successful project.
  • Good project manager can work around deficiencies
    in a portion of the project.
  • Poor manager stumbles over any problem.
  • Techniques shown can improve probability of
    success with competent project manager.
Write a Comment
User Comments (0)
About PowerShow.com