Are you in the right course? Software Engineering 47 - PowerPoint PPT Presentation

1 / 66
About This Presentation
Title:

Are you in the right course? Software Engineering 47

Description:

Are you in the right course? Software Engineering 477 Software and Systems Project Management January 5, 2012 SE 477: Lecture 1 * of 66 January 5, 2012 * of 66 ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 67
Provided by: condorDep4
Category:

less

Transcript and Presenter's Notes

Title: Are you in the right course? Software Engineering 47


1
Are you in the right course?
  • Software Engineering 477
  • Software and Systems Project Management

2
SE 477 Software and Systems Project Management
  • Dennis Mumaugh, Instructor
  • dmumaugh_at_cdm.depaul.edu
  • Office CDM, Room 432
  • Office Hours Thursday, 400 530

3
Administrivia Introductions
  • Dennis Mumaugh
  • Undergraduate BSEE - University of California,
    Berkeley
  • MS Computer Science - University of Maryland
  • Ph.D. Studies - University of Maryland
  • Teaching at DePaul since September 2000
  • Work
  • Senior Engineer - National Security Agency
  • ARPANet Pioneer, Unix Pioneer and Technology
    Transfer,
  • Member of the Technical Staff - Bell Labs/Lucent
    Technologies
  • Unix Development - Current Engineering
  • ISR Systems - Knowledge Base Systems
  • Software Tools and OO Technology
  • Interests
  • Operating Systems and System Programming
  • Software Productivity, Compilers and Software
    Metrics
  • Software Engineering

4
Administrivia contact details
  • Contact Information
  • Email dmumaugh_at_cdm.depaul.edu
  • Phone 630-983-1221 (1000 am - 1100 pm) except
    just before class (After 3pm)
  • Office Hours
  • Thursday 400 pm to 530 pm, CDM, Room 432
  • By arrangement

5
Administrivia Basic Information
  • Class home pagehttp//condor.depaul.edu/dmumaugh
    /classes/SE477W12/, contains syllabus and
    schedule, lecture notes, homework, more reading
    material
  • About the Lecture Notes - look at notes section
    of the slides
  • Also look at the expanded readings
    pagehttp//condor.depaul.edu/dmumaugh/readings/
    SE477readings.html
  • Course On-line
  • Course materials, assignments, assignment
    submissions, assignment solutions, and grades
    will be available on the Course On Line (COL)
    site https//col.cdm.depaul.edu/
  • COL now provides the ability to download a
    podcast of the lecture
  • Desire2Learn
  • Examinations and quizzes will be given on
    Desire2learn https//d2l.cdm.depaul.edu/

6
Administrivia communications
  • Email
  • All students are expected to have a email
    address.
  • Please make sure it is valid and make sure Campus
    Connection has the current email address.
  • Course mailing list
  • se477_at_mailman.depaul.edu
  • To subscribe to the list or unsubscribe from it,
    go to http//mailman.depaul.edu/mailman/listinfo/s
    e477.
  • Ill bulk subscribe on Wednesday.
  • If necessary, update your spam filter to accept
    messages from the mailing list.
  • Unless your message is personal, send it to the
    course mailing list!
  • Last minute information will go to the mailing
    list.

7
Administrivia reading materials
  • Textbook
  • There is no assigned text book. Instead, the
    reading list has listed several that are useful.
    These are available using eBooks 24x7. All of
    these are available online at the DePaul
    Libraries Web site, http//library.depaul.edu.
  • The following might be a good choice if you
    need/want a hard copy.
  • PMP Project Management Professional Exam Study
    Guide, 6th Edition, Kim Heldman, Sybex, August
    2011, ISBN 987-1-1180-8321-5

8
Administrivia reading materials
  • Another book you may want
  • Ian Sommerville, Software Engineering, 9th
    Edition, Addison-Wesley, ISBN 0-13-703512-2.
  • This is one of the top two undergraduate software
    engineering texts.
  • Also look at the expanded readings
    pagehttp//condor.depaul.edu/dmumaugh/readings/
    SE477readings.html
  • Collateral reading these two books are ones that
    every practitioner in the field ought to read.
  • Frederick P. Brooks,  The Mythical Man-Month
    Essays on Software Engineering, Anniversary
    Edition (2nd Edition) (Paperback),
    Addison-Wesley, ISBN-10 0-201-83595-9.
  • Gerald M. Weinberg, The Psychology of Computer
    Programming Silver Anniversary Edition
    (Paperback), Dorset House, ISBN-10 0-932633-42-0

9
Administrivia reading materials
  • A note on reading list
  • You are not expected to read all of the material
    on the reading list.
  • Select one of the suggested textbooks, read it.
  • Look at the various articles as you have time.
  • Many say the same thing but with a different
    perspective.
  • Dont get overwhelmed in reading
  • A note on reading assignments
  • I will give the assignment for the PMP Guide. If
    you are using a different text use the assignment
    given in the reading list for the appropriate
    book.
  • Choose a book and stick with it. You do not have
    to read all the assignments, just the one for
    your chosen text.

10
Administrivia Course structure
  • Ten classes Midterm Exam Final Exam
  • Weekly reading
  • Graded assignments (5)
  • Team project
  • Journal
  • Class structure lecture (with short break near
    the middle).
  • Topics and reading assignments are on the class
    web page

11
Administrivia software
  • Access to MS Word
  • MicroSoft Project - if you have access, you may
    use it. You are entitled to one copy of Microsoft
    Project Professional (2010 edition) as part of
    DePaul CDMs MSDNAA agreement. Full information
    is available at https//my.cdm.depaul.edu/resourc
    es/msdnaa.asp to download a version for home
    use. You want to download Microsoft Project
    Professional 2010.
  • Also, check the computer labs, it should be
    available there.
  • Open Project an open source version of MicroSoft
    Project (http//openproj.org/)
  • Local source see notes for URL 
  • Windows install file
  • Macintosh install file
  • Documentation Getting Started with OpenProj

12
Administrivia Miscellany
  • Communications development
  • An essential part of this course is communicating
    your ideas in prose.
  • The ability to communicate clearly and
    effectively is a skill that will pay off both in
    and out of class.
  • Motivation from a recent NPR business report
  • Robert Half surveyed their corporate customers
    concerning resumes they had received.
  • Corporate reviewers spent about 10-15 seconds
    deciding whether to examine the resume further.
  • They instantly tossed the resume if they detected
    any grammatical or spelling errors.
  • Treat your coursework as if it were being
    reviewed by the manager who does your performance
    review and sets your salary.

13
Administrivia Miscellany
  • There will be a lot of ambiguity and lack of firm
    direction in the assignments and the information.
  • That is typical of much of project management.
  • This requires you to provide your own experience.
    Or to research and discover your information.
  • Understanding a problem (statement)
  • An essential part of this course is understanding
    written material, ideas in prose. The ability to
    understand a document, to "read between the
    lines", is a skill that will pay off both in and
    out of class.

14
Administrivia Miscellany
  • Intellectual property issues
  • All material in this course is property of the
    either the instructor or other authors.
  • You are permitted to download and print copies of
    the material.
  • You are not permitted to redistribute the
    material in any form.
  • Plagiarism
  • All individual assignments must represent your
    own work.
  • Its a great idea to get together in study groups
    to discuss the problems, but you should then do
    the assignments individually.
  • Plagiarism is to take and use as ones own, or
    copy without acknowledgement, the works of
    another person. The provider of such material can
    be ruled equally culpable.
  • If you hand in late homework with prior
    permission, it must be your own work, not a copy
    of the solutions presented in class.

15
Administrivia Support
  • Technical questions can be addressed during
    office hours or by email
  • Use the mailing list for all technical questions
  • Provide appropriate support to each other
  • I do not preview homework, but I will answer
    questions or make suggestions to generic problems
  • If you contact me by e-mail
  • Please include your name and the course number in
    all correspondence

16
Administrivia assessment
  • Regular assignments (5)
  • A reading Journal
  • Team Project
  • Midterm examination (on-line using Desire2Learn)
  • Final examination (on-line using Desire2Learn)
  • Each of the above will be weighted as follows
  • Homework 20
  • Project 30
  • Journal 10
  • Midterm Exam 20
  • Final Examination 20
  • Grading will be done on the usual 60/70/80/90
    bands but will be adjusted to account for
    clustering and banding of scores. Bands may be
    adjusted if there seems to be a systemic bias to
    the scores.

17
Homework logistics
  • Homework must be submitted via Course On-Line by
    1159 PM Chicago Time on the assignment due date.
  • Submit MS Word or Adobe PDF files only
  • All figures must be embedded in the file, not
    bundled in a .zip file
  • Exception, you may bundle files into a zip file
    if you have a MS project file as well as the
    document.
  • No extra credit assignments.

18
Surviving SE477
  • Make sure you read things, sometimes more than
    once. People do not seem to read assignments and
    web pages (or do not follow instructions).
  • Read the assignments carefully. Note special
    requirements, such as formats and use of
    predefined templates!
  • Start your assignments right after they are
    handed out (assigned). They will take some time
    and starting on the night before it is due is not
    a good strategy.
  • Reading list
  • Is it required? No.
  • Is it useful? Yes, especially if you are serious
    about a career in software development.
  • The articles are usually short but informative.
    Most are supplemental useful for understanding
    but the notes cover the major points.
  • Reading should be done in parallel with the
    lectures.
  • Pace yourself. Remember This too shall pass.

19
Introduction
  • Roll
  • On-line students you must send me an email
    confirming that you are taking the course. The
    email must include the magic word that is
    ______________
  • You must confirm attendance by January 11.
  • With the size of the class we wont have time to
    do introductions, but you are welcome to send a
    message to the mailing list with
  • Your Background
  • Day Job (if any)
  • Major
  • Project Management Experience
  • Industry Experience
  • Optional Expectations goals from the class

20
Surprise!
  • It's late Friday afternoon and you have just been
    told by your boss that you will be the project
    manager for a new software development project
    starting first thing on Monday morning.
    Congratulations!
  • Now, if only you had taken some project
    management training ...

21
Course Objective
  • To provide a thorough understanding of the basics
    of software project management that can be
    applied to systems projects as well.
  • Upon completion, students will be able to
    identify and apply industry proven techniques to
    manage successful software and systems
    development projects.
  • This course provides a fundamental understanding
    of project management concepts, tools, and
    techniques

22
SE 477 Class 1
  • Topics Introduction, Fundamentals, Classic
    Mistakes
  • Introduction
  • Roadmap for Software Project Management
  • Fundamentals
  • Software Process or What is a project?
  • Project characteristics
  • Classic Mistakes
  • Reading
  • Reports on project failures reasons and
    statistics
  • The Project Office Teams, Processes, and Tools,
    Gartner Research Strategic Analysis Report, Matt
    Light, 01 August
  • See others in reading list.
  • PMP Study Guide Chapter 1

23
Assignments
  • Assignment 1 due January 19, 2012
  • Read the Gartner Report, From the CIO Trenches
    Why Some Projects Fail and Others Succeed by
    David McClure (Gartner document ID G00151721),
    available on the DePaul Libraries Web site. See
    also mirror.
  • Read the FBI Virtual Case file papers. Read the
    FBI Virtual Case File project. IEEE Spectrum,
    "Who Killed the Virtual Case File?", September
    2005, (11 pages). lthttp//www.spectrum.ieee.org/s
    ep05/1455gt
  • See also commentary by the New York Times FBI
    Faces New Setback in Computer Overhaul
    http//www.nytimes.com/2010/03/19/us/19fbi.html
  • Write a three to four-page summary and analysis
    of the VCF project and its failure. Provide a
    summary of lessons learned. Use the Gartner
    report as a guideline of how projects ought to be
    managed and a guide for potential points of
    failure. Also use the lecture notes for guidance
    on possible mistakes and problems. Use the
    template specified!

24
Assignments
  • Journal Due at the end of the term
  • Students will keep a journal. This will cover
    collateral reading assigned, questions asked in
    class (also exercises at the end of each
    lecture), and your thoughts on course material.
    The journal entries will comment on the readings
    and the lessons learned.
  • While I may suggest topics (or questions) in
    class (see Exercises), do not restrict yourself
    to just those items.
  • If you do not have other entries, you will not
    receive 100.
  • Maximum size 12 pages!!
  • Format HTML or Text only. No PDF or MS Word!

25
Thought for the day
  • "The first 90 of a project takes 90 of the
    time, the last 10 takes the other 90."

26
Introduction
27
Software Crisis
  • Many software-related failures auto-pilot
    systems, air traffic control systems, banking
    systems, IRS.
  • On January 15, 1990, the ATT long-distance
    telephone network broke down, interrupting
    long-distance telephone services in US for over 8
    hours. Missing break in a switch statement.
  • On June 4, 1996, the maiden flight of the new
    and improved Ariane 5 rocket exploded 37 seconds
    after lift-off.
  • On June 8, 2001, a software problem caused the
    NYSE to shut down the entire trading floor for
    over an hour.
  • Many, many, many more.

28
What is the problem?
  • Software Projects have a terrible track record
  • A 1995 Standish Group study (CHAOS) see notes
    found that only 16.2 of IT projects were
    successful in meeting scope, time, and cost goals
    (on-time on-budget) Things have improved a bit
    since.
  • Over 31 of IT projects were canceled never
    seeing completion, costing over 81 billion in
    the U.S. alone
  • They never worked
  • Too late for the market window
  • Most projects are
  • Late in delivery
  • Missing functionality
  • Have major defects (bugs)
  • Did not do what the customer wanted
  • Hard to maintain and support

29
Chaos Report Standish Research Group
  • Project Success Type 1. The project is completed
    on-time and on-budget, with all features and
    functions as initially specified. (2000 28)
  • Project Challenged Type 2. The project is
    completed and operational but over-budget, over
    the time estimate, and offers fewer features and
    functions than originally specified. (2000
    49)
  • Project Impaired Type 3. The project is
    canceled at some point during the development
    cycle. (2000 23) (Are ALL impaired projects
    failures???)

30
What Went Right? Improved Project Performance
  • The Standish Groups CHAOS studies show
    improvements in IT projects in the past decade

31
Why the Improvements?
  • "The reasons for the increase in successful
    projects vary. First, the average cost of a
    project has been more than cut in half. Better
    tools have been created to monitor and control
    progress and better skilled project managers with
    better management processes are being used. The
    fact that there are processes is significant in
    itself.
  • The Standish Group, "CHAOS 2001 A Recipe
    for Success" (2001).

32
What is the problem?
  • Ever-Present Difficulties
  • Few guiding scientific principles
  • Few universally applicable methods
  • As much people problems as technological
  • managerial / psychological / sociological
  • Sponsors unwilling to spend money for supposedly
    unrewarding activities
  • Quality
  • Organizational rivalries
  • Time pressure
  • Cost pressure

33
Roadmap for Software Project Management
34
Getting organized
  • So, now what?
  • Who is involved?
  • Stakeholders
  • What do they want done?
  • Charter, vision, requirements
  • Who do we have available to do the work?
  • Resources and staffing
  • How do we do this?
  • Project planning, WBS
  • How much will it cost
  • Estimating
  • When will it be finished?
  • Scheduling
  • What can possibly go wrong?
  • Risk Management

35
Software Development Process
  • What is the software development process?
  • A process is a set of documented procedures,
    methods, practices, and tools used to produce a
    software product.
  • The process will answer the following
  • What to do? Tasks/activities
  • How to do it? Procedure/practice
  • When to do it? Sequence of activities
  • What are the artifacts? (input/output)

36
Software Project
  • If the programmer and designer follow the
    process, then the artifacts they produce will be
  • Predictable
  • Based on the requirements
  • Easy to maintain and control
  • Consistent with the writing style
  • Of acceptable quality
  • Within acceptable milestones
  • By following the process, we will be able to know
    precisely what/how/when/where it happened !

37
Software Processes
  • Software Process is an overloaded term
  • Metaprocess an organizations policies,
    procedures, and practices for pursuing a
    software-intensive line of business the focus is
    on organizational economics, and long-term
    strategies.
  • Macroprocess the projects policies, procedures,
    and practices for producing a complete software
    product within certain cost, schedule, and
    quality constraints.
  • Microprocess a project teams policies,
    procedures, and practices for achieving an
    artifact of the software process.

38
What is Project Management?
  • Project management is the application of
    knowledge, skills, tools and techniques to
    project activities to meet project requirements
    (PMBOK Guide, Third Edition, 2004, p. 8)
  • Software Project Management is the art to define,
    plan, execute, and monitor the activities that
    will bring software products to existence.
  • Project managers strive to meet the triple
    constraint by balancing project scope, time, and
    cost goals

39
What is a project?
  • Whats a project?
  • PMI definition
  • A project is a temporary endeavor undertaken to
    create a unique product or service
  • Progressively elaborated
  • With repetitive elements
  • A project manager
  • Analogy conductor, coach, captain
  • Better A sequence of connected and related
    activities (requirement engineering, system
    engineering, coding, testing, documentation,
    controlling, ) that must be completed by a
    specific time, within budget, and according to
    specification.

40
Project characteristics
  • Four characteristics of projects
  • finite time
  • people assigned
  • clear roles and responsibilities
  • things to deliver
  • Have you ever had this feeling about a project?
  • not enough time
  • too few people
  • people not sure what they should be doing
  • too much to do

41
How Are Software Projects Different?
  • Consists of hardware and software.
  • Software is usually custom written and
    one-of-a-kind.
  • Hard to determine progress. One can see how far
    the Calatrava Tower (Chicago Spire) has
    progressed.
  • Difficult to estimate schedule.
  • Difficult to determine cost.

42
Software Project
  • Quality Engineering Principle
  • The quality of the software system is controlled
    by the quality of the process used to produce
    that software.
  • Quality Management Principle
  • Document the process
  • Measure the process
  • Improve the process based on the measurement

43
Software Project
  • How to achieve this goal?
  • Follow the documented processes when executing
    the following phases of the software project
  • Define Scope the project
  • Plan Develop the project plan
  • Execute Launch the plan
  • Monitor Monitor/control project progress
  • Close Close out the project

44
Software Project Trade-offs
  • What is the goal?
  • Balance the main three (other 2 constraints scope
    and resource) in order to
  • Stay within the budget (cost)
  • Deliver on time to gain market share (time)
  • Exceed customer satisfaction (quality)
  • The time/scheduling hypocrisy
  • What can you tell me about the next project, you
    ask?
  • It is due on February 1st tells your manager
  • We hold deadlines too dearly. Of course, time to
    market is critical
  • But what generally happens on projects when you
    hit that deadline?

45
What makes a project successful?
  • Successful project management means meeting all
    three goals (scope, time, cost) and satisfying
    the projects sponsor.
  • Trade-off Triangle
  • Project constraints Fast, cheap, good. Choose
    two.Also stated as On-time, on-budget,
    high-quality. Choose two.
  • Reality often ignored in project planning
  • Know which of these are fixed variable for
    every project
  • Time
  • Scope (aka Cost)
  • Quality

46
Project vs. Program Management
  • Whats a program?
  • Mostly differences of scale
  • Often a number of related projects
  • Longer than projects
  • Definitions vary
  • Example Program Manager for MS Word

47
Why do IT projects fail?
  • 36 Classic Mistakes
  • Anti-Patterns see notes for citation
  • Seductive Appeal good reason for decisions at
    the time
  • Types
  • People-Related
  • Process-Related
  • Product-Related
  • Technology-Related
  • Gilligans Island

48
People-Related Mistakes Part 1
  • Undermined motivation
  • Weak personnel
  • Weak vs. Junior
  • Uncontrolled problem employees
  • Heroics
  • Adding people to a late project
  • Lack of match between people and needs
  • Incompetent or over competent
  • Culture clash

49
People-Related Mistakes Part 2
  • Noisy, crowded offices
  • Customer-Developer friction
  • Unrealistic expectations
  • Lack of user input
  • Politics over substance
  • Lack of effective project sponsorship
  • Lack of stakeholder buy-in
  • Wishful thinking

50
Process-Related Mistakes Part 1
  • Optimistic schedules
  • Omitting necessary tasks from estimates
  • Planning to catch-up later
  • Code-like-hell programming
  • Insufficient risk management
  • Contractor failure
  • Insufficient planning
  • Abandonment of plan under pressure

51
Process-Related Mistakes Part 2
  • Wasted time during fuzzy front end
  • Shortchanged upstream activities
  • Inadequate design
  • Shortchanged quality assurance
  • Insufficient management controls
  • Frequent convergence

52
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

53
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

54
Four Project Dimensions
  • Four Project Dimensions (The 4 Ps)
  • People the most important element of a
    successful project
  • Product the software to be built
  • Process the set of framework activities and
    software engineering tasks to get the job done
  • Project all work required to make the product a
    reality

55
People
  • Its always a people problem
  • Gerald Weinberg, The Secrets of Consulting
  • Developer productivity 10-to-1 range
  • Teams 3 (or 5) to 1 difference
  • Improvements
  • Team selection
  • Team organization
  • Motivation
  • Other success factors
  • Matching people to tasks
  • Career development
  • Balance individual and team
  • Clear communication

56
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
  • Goals
  • cut time-to-market
  • Improve quality

57
Product
  • The tangible dimension
  • Product size management
  • Product characteristics and requirements
  • Feature creep management

58
Technology
  • Often the least important dimension
  • Language and tool selection
  • Value and cost of reuse

59
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?

60
Measurements
  • To date and projected
  • Cost
  • Schedule
  • Effort
  • Product features
  • Alternatives
  • Earned value analysis
  • Defect rates
  • Productivity (ex SLOC)
  • Complexity (ex function points)

61
Technical Fundamentals
  • Assumed Software Development Life Cycle (SDL)
  • Requirements
  • Analysis
  • Design
  • Construction
  • Quality Assurance (aka Testing)
  • Deployment

62
Software Project Management
  • Fundamentals

63
Formal Project Management
  • Advantages of Using Formal Project Management
  • Better control of financial, physical, and human
    resources
  • Improved customer relations
  • Shorter development times
  • Lower costs
  • Higher quality and increased reliability
  • Higher profit margins
  • Improved productivity
  • Better internal coordination
  • Higher worker morale (less stress)
  • Less death marches
  • Less overworked personnel

64
What Helps Projects Succeed?
  • Executive support
  • User involvement
  • Experienced project manager
  • Clear business objectives
  • Minimized scope
  • Standard software infrastructure
  • Firm basic requirements
  • Formal methodology
  • Reliable estimates
  • Other criteria, such as small milestones, proper
    planning, competent staff, and ownership

The Standish Group, Extreme CHAOS, (2001).
65
Next Class
  • Topic
  • Projects System Development Life Cycles
    Software project management overview and Project
    organization Software process Phases for
    software project management Project management
    tools
  • Reading
  • Gartner Reports
  • Waterfalls, Products and Projects A Primer to
    Software Development Methods by Matthew Hotle
    (Gartner document ID G00155147)
  • 'Just Enough Process' for Applications by Matthew
    Hotle (Gartner document ID G00145561)
  • PMP Study Guide Chapter 1, 2
  • Assignment
  • Assignment 1 Three to four page case study of a
    project failure the FBI VCF.

66
Journal Exercises
  • Discuss the factors that lead to project success.
  • Just what is project success?
Write a Comment
User Comments (0)
About PowerShow.com