Are you in the right course? Software Engineering 477 Software and Systems Project Management SE 477: Lecture 1
SE 477 Software and Systems Project Management Dennis Mumaugh, Instructor email@example.com Office: CDM, Room 432 Office Hours: Monday, 4:00 – 5:30 SE 477: Lecture 1
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 Unix™ Technology Transfer, ARPANet Pioneer Member of the Technical Staff - Bell Labs/Lucent Technologies Unix Development - Current Engineering IS&R Systems - Knowledge Base Systems Software Tools and OO Technology Interests Software Productivity and Compilers Software Engineering System Programming SE 477: Lecture 1
Administrivia: contact details SE 477: Lecture 1 • Contact Information: • Email: firstname.lastname@example.org • Phone: 630-983-1221 (10:00 am - 11:00 pm) except just before class (After 3pm) • Office Hours • Monday 4:00 pm to 5:45 pm, CDM, Room 432 • By arrangement
Administrivia: Basic Information SE 477: Lecture 1 • Class home pagehttp://condor.depaul.edu/~dmumaugh/classes/SE477S10/, 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 page:http://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
Administrivia: communications SE 477: Lecture 1 • 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: • email@example.com • To subscribe to the list or unsubscribe from it, go to http://mailman.depaul.edu/mailman/listinfo/se477. • 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.
Administrivia: reading materials SE 477: Lecture 1 • 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 Deluxe Edition, Second Edition, Kim Heldman, Claudia Baca and Patti Jansen, Sybex, 2007. ISBN: 9780470152515 • 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 page:http://condor.depaul.edu/~dmumaugh/readings/SE477readings.html
Administrivia: reading materials SE 477: Lecture 1 • 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
Administrivia: reading materials SE 477: Lecture 1 • 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. • Don’t get overwhelmed in reading
Administrivia: Course structure SE 477: Lecture 1 • Nine classes + Midterm Exam + Final Exam • Note the last class falls on Memorial Day. No lecture but assignments are still due. • We’ll compress the two lectures on Risk Management into one • Weekly reading • Graded assignments (5) • Team project • Journal • Class structure: lecture (with short break). • Topics and reading assignments are on the class web page
Administrivia: software SE 477: Lecture 1 • Access to MS Word • MicroSoft Project - if you have access, you may use it. You are entitled to one copy of Microsoft Project Professional (2007 edition) as part of DePaul CDM’s MSDNAA agreement. Full information is available at: https://my.cdm.depaul.edu/resources/msdnaa.asp to download a version for home use. You want to download Project Professional 2007. 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
Administrivia: Miscellany SE 477: Lecture 1 • 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.
Administrivia: Miscellany SE 477: Lecture 1 • 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.
Administrivia: Miscellany SE 477: Lecture 1 • 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. • It’s 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 one’s 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.
Administrivia: Support SE 477: Lecture 1 • 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
Administrivia: assessment SE 477: Lecture 1 • Regular assignments (5) • A reading Journal • Team Project • Midterm examination (on-line using Blackboard) • Final examination (on-line using Blackboard) • 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.
Homework logistics SE 477: Lecture 1 • Homework must be submitted via Course On-Line by 11:59 PM Chicago Time class 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.
Surviving SE477 SE 477: Lecture 1 • Make sure you read things, sometimes more than once. People do not seem to read assignments and web pages (or do not follow instructions). • 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.”
Introduction SE 477: Lecture 1 • Roll • With the size of the class we won’t 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
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 ... SE 477: Lecture 1
Course Objective SE 477: Lecture 1 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.
SE 477 – Class 1 Topics: Introduction, Fundamentals, Classic Mistakes • Introductions • 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, 2 SE 477: Lecture 1
Assignments SE 477: Lecture 1 Assignment 1 due January 14, 2010 • 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. • Two to three page summary and analysis of why projects fail – see assignment for reading list for articles. • Journal – Due at the end of the term • Students will keep a journal. This will cover collateral reading assigned, questions asked in class, 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 10 pages!!
Thought for the day "The first 90% of a project takes 90% of the time, the last 10% takes the other 90%." SE 477: Lecture 1
Introduction SE 477: Lecture 1
Software Crisis SE 477: Lecture 1 • Many software-related failures: auto-pilot systems, air traffic control systems, banking systems, IRS. • On January 15, 1990, the AT&T long-distance telephone network broke down, interrupting long-distance telephone services in US for over 8 hours. • 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.
What is the problem? SE 477: Lecture 1 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) 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
Chaos Report – Standish Research Group SE 477: Lecture 1 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???)
What Went Right? – Improved Project Performance • The Standish Group’s CHAOS studies show improvements in IT projects in the past decade SE 477: Lecture 1
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). SE 477: Lecture 1
What is the problem? SE 477: Lecture 1 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
Roadmap for Software Project Management SE 477: Lecture 1
Getting organized SE 477: Lecture 1 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?
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) SE 477: Lecture 1
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 ! SE 477: Lecture 1
Software Processes SE 477: Lecture 1 Software Process is an overloaded term Metaprocess: an organization’s policies, procedures, and practices for pursuing a software-intensive line of business; the focus is on organizational economics, and long-term strategies. Macroprocess: the project’s policies, procedures, and practices for producing a complete software product within certain cost, schedule, and quality constraints. Microprocess: a project team’s policies, procedures, and practices for achieving an artifact of the software process.
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 SE 477: Lecture 1
What is a project? SE 477: Lecture 1 What’s 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.
Project characteristics SE 477: Lecture 1 • 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
How Are Software Projects Different? SE 477: Lecture 1 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.
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 SE 477: Lecture 1
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 SE 477: Lecture 1
Software Project Trade-offs Time Cost Quality 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) SE 477: Lecture 1
What makes a project successful? SE 477: Lecture 1 Successful project management means meeting all three goals (scope, time, cost) – and satisfying the project’s sponsor. Trade-off Triangle Project constraints: Fast, cheap, good. Choose two.Also stated as: “On-time, on-budget, high-quality. Choose two.” Know which of these are fixed & variable for every project
Project vs. Program Management What’s a ‘program’? • Mostly differences of scale • Often a number of related projects • Longer than projects • Definitions vary • Example: Program Manager for MS Word SE 477: Lecture 1
Why do IT projects fail? SE 477: Lecture 1 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 • Gilligan’s Island
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 SE 477: Lecture 1
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 SE 477: Lecture 1
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 SE 477: Lecture 1
Process-Related Mistakes Part 2 • Wasted time during fuzzy front end • Shortchanged upstream activities • Inadequate design • Shortchanged quality assurance • Insufficient management controls • Frequent convergence SE 477: Lecture 1