Are you in the right course? Software Engineering 477 Software and Systems Project Management March 31, 2014 SE 477: Lecture 1 1 of 81 SE 477 Software and Systems Project Management Dennis Mumaugh, Instructor dmumaugh@cdm.depaul.edu Office: CDM, Room 429 Office Hours: Monday, 4:00 – 5:30 March 31, 2014 SE 477: Lecture 1 2 of 81 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 IS&R Systems - Knowledge Base Systems Software Tools and OO Technology Interests Operating Systems and System Programming Software Productivity, Compilers and Software Metrics Software Engineering March 31, 2014 SE 477: Lecture 1 3 of 81 Administrivia: contact details Contact Information: Email: dmumaugh@cdm.depaul.edu Phone: 630-983-1221 (10:00 am - 11:00 pm) except just before class (After 3pm) Office Hours Monday, 4:00 pm to 5:30 pm, CDM, Room 429 By arrangement March 31, 2014 SE 477: Lecture 1 4 of 81 Administrivia: Basic Information Class home page http://condor.depaul.edu/dmumaugh/classes/SE477S14/, 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 Desire2Learn Examinations and quizzes will be given on Desire2learn – https://d2l.cdm.depaul.edu/ March 31, 2014 SE 477: Lecture 1 5 of 81 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@mailman.depaul.edu To subscribe to the list or unsubscribe from it, go to http://mailman.depaul.edu/mailman/listinfo/se477. » I’ll bulk subscribe on Sunday. 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. March 31, 2014 SE 477: Lecture 1 6 of 81 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, 7th Edition, Kim Heldman, Wiley (Sybex), July 2013, ISBN: 978-1118-53182-2 » Note the new edition! March 31, 2014 SE 477: Lecture 1 7 of 81 Administrivia: reading materials 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: 0932633-42-0 March 31, 2014 SE 477: Lecture 1 8 of 81 Administrivia: reading materials Another book you may want Ian Sommerville, Software Engineering, 9th Edition, AddisonWesley, 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 Gartner reports are available though the library and also on COL > Documents March 31, 2014 SE 477: Lecture 1 9 of 81 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. Don’t 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. March 31, 2014 SE 477: Lecture 1 10 of 81 Administrivia: Course structure Nine classes + Midterm Exam + Final Exam Memorial day is a holiday and thus no class. 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 March 31, 2014 SE 477: Lecture 1 11 of 81 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 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 Microsoft Project Professional 2010. Also, check the computer labs, it should be available there. ProjectLibre [an open source version of MicroSoft Project] (http://www.projectlibre.org/) [Uses Java 7] OpenProject [an open source version of MicroSoft Project] and older, (http://openproj.org/) » Local source [see notes for URL]: • Windows install file • Macintosh install file » Documentation: Getting Started with OpenProj March 31, 2014 SE 477: Lecture 1 12 of 81 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. March 31, 2014 SE 477: Lecture 1 13 of 81 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. March 31, 2014 SE 477: Lecture 1 14 of 81 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. 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. March 31, 2014 SE 477: Lecture 1 15 of 81 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 March 31, 2014 SE 477: Lecture 1 16 of 81 Administrivia: Feedback/Participation Feedback/Participation Share your thoughts Ask questions – wave your hand forcefully to get my attention Speak loudly so all can hear Give me verbal and non-verbal feedback Don’t just sit there . . . nod, smile, frown, shake your head Make sure your email address is correct and works March 31, 2014 SE 477: Lecture 1 17 of 81 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. March 31, 2014 SE 477: Lecture 1 18 of 81 Homework logistics Homework must be submitted via Course On-Line by 11:59 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. March 31, 2014 SE 477: Lecture 1 19 of 81 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.” March 31, 2014 SE 477: Lecture 1 20 of 81 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 April 7. 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 March 31, 2014 SE 477: Lecture 1 21 of 81 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 ... March 31, 2014 SE 477: Lecture 1 22 of 81 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 March 31, 2014 SE 477: Lecture 1 23 of 81 Topics 1. Introduction and Overview: Software Process or What is a project? 2. 3. 4. 5. Project characteristics; Classic Mistakes; Software project management overview: Project managers; Project organization; Putting a process in place; Software process; Phases for software project management; Defining the project; Project management tools System Development Processes: SDLC; Agile Project Management; Project Planning – Initial Phase: The Project Management Plan; Scope Management; Creating the Work Breakdown Structure (WBS) Project Planning: Activity Definition; WBS details; Activity Sequencing; Estimating size and complexity, Project Planning: Activity Resource and Duration Estimating; Schedule Development: Scheduling: Gantt Chart and PERT and Critical Path Method (CPM); Schedule compression; Resource leveling; Mythical Man Month; March 31, 2014 SE 477: Lecture 1 24 of 81 Topics 6. Risk Management: Planning, risk identification, quantification and prioritization; Risk analysis, response planning, avoidance, mitigation, monitoring 7. Project Processes: Execution; Monitoring, control and tracking; Project velocity; Earned Value Analysis; 8. Miscellaneous: Quality Control, Planning and Assessment; Change control and project tracking; Final stages: Project Recovery; Project closeout; Project Success 9. Managing the Project Team: Project and Team Organization; Project Management Context; Managing the Project Team; Shaping project culture March 31, 2014 SE 477: Lecture 1 25 of 81 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 March 31, 2014 SE 477: Lecture 1 26 of 81 Assignments Assignment 1 due April 14, 2014 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 COL.] 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)]. <http://www.spectrum.ieee.org/sep05/1455> 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 And also FBI delays Sentinel rollout to May 2012 http://www.fiercegovernmentit.com/story/fbi-delays-sentinel-rollout-may2012/2012-01-03 Write a three to four-page summary and analysis of the VCF project and its failure. Provide a summary of lessons learned. Use the template specified! <http://condor.depaul.edu/dmumaugh/se477/assignments/HW1Template.do c> March 31, 2014 SE 477: Lecture 1 27 of 81 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! March 31, 2014 SE 477: Lecture 1 28 of 81 Thought for the day "The first 90% of a project takes 90% of the time, the last 10% takes the other 90%." March 31, 2014 SE 477: Lecture 1 29 of 81 Introduction March 31, 2014 SE 477: Lecture 1 30 of 81 What is a project? 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. March 31, 2014 SE 477: Lecture 1 31 of 81 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 Office Includes projects: Spelling, drawing, Word, Xcel, PowerPoint, etc. March 31, 2014 SE 477: Lecture 1 32 of 81 Project characteristics A project is unique A Project creates unique deliverables: product, service, or result Even technically-identical projects are distinctly unique, due to internal or external contingent factors Projects are temporary Every project has a definite beginning and a definite end Project end may be reached through success, qualified success, failure, or redundancy Projects need not be of short duration, but they are of finite duration March 31, 2014 SE 477: Lecture 1 33 of 81 Project characteristics Projects have customer-specified performance criteria ☛ The customer defines these criteria in the form of requirements We will see that requirements are one of the most critical characteristics of a project that contributes to its success or failure Projects consume resources Personnel resources Physical resources Monetary resources March 31, 2014 SE 477: Lecture 1 34 of 81 Projects vs. operations/production March 31, 2014 SE 477: Lecture 1 35 of 81 Characteristics of IT (Information Technology) IT encompasses all forms of technology used to create, store, exchange, and use information in various forms ‘Information’ includes conventional data, voice, images, multimedia, etc. Of central importance are computer, software, and communications technologies Virtually all significant projects are now distributed: networks of computers communicate only via message passing Distribution poses additional challenges in IT projects: reliability, availability, security, and information synchronization March 31, 2014 SE 477: Lecture 1 36 of 81 How do IT projects differ from ‘ordinary’ projects? IT products and services possess greater complexity IT products and services are intrinsically complex by nature Computing + communication + diverse data ⇒ complexity IT projects have tight schedules Tight schedules are the norm in IT development Scheduling is aggravated by a pervasive ‘rush to market’ mentality IT is an integral part of enterprise infrastructure IT is no longer an auxiliary element of the enterprise A business’s success is often critically dependent upon IT support IT is permeated by quickly-changing technology Technology evolves (and may even become obsolete) during the lifetime of a major project March 31, 2014 SE 477: Lecture 1 37 of 81 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 March 31, 2014 SE 477: Lecture 1 38 of 81 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 Freedom Tower (World Trade Center) has progressed. One cannot see how far a piece of software has progressed] Difficult to estimate schedule. Difficult to determine cost. March 31, 2014 SE 477: Lecture 1 39 of 81 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 March 31, 2014 SE 477: Lecture 1 40 of 81 Project management processes Regardless of the type of project lifecycle, project management encompasses the following process groups, shown with some representative tasks: 1. Initiating/Define – Scope the project; Charter the project; identify stakeholders 2. Planning – Develop the project plan. Collect requirements; identify schedule; plan scope, cost, quality, human resource, risk, and procurement management 3. Executing – Launch the plan. Direct and manage project work; perform quality assurance; manage and develop project team; conduct procurements 4. Monitoring and Controlling – Monitor project progress. Monitor and control project work; manage scope change; monitor and control schedule; control quality; control risks; control procurements 5. Closing – Close out the project: Close project; close procurements See note below. March 31, 2014 SE 477: Lecture 1 41 of 81 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 March 31, 2014 SE 477: Lecture 1 42 of 81 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) March 31, 2014 SE 477: Lecture 1 43 of 81 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 ! March 31, 2014 SE 477: Lecture 1 44 of 81 Software Processes 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. March 31, 2014 SE 477: Lecture 1 45 of 81 Core project management activities Identify requirements Address the various needs, concerns, and expectations of the stakeholders in the project Establish active, effective, collaborative communications among the stakeholders Manage stakeholders towards meeting project requirements and creating project deliverables Balance the competing project constraints, including: scope, quality, schedule, budget, resources, and risks Paraphrased from: A Guide to the Project Management Body of Knowledge (PMBOK® Guide)–Fifth Edition Project Management Institute, 2013. March 31, 2014 SE 477: Lecture 1 46 of 81 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? March 31, 2014 SE 477: Lecture 1 47 of 81 What makes a project successful? 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.” Reality often ignored in project planning Know which of these are fixed & variable for every project Time Scope (aka Cost) Quality March 31, 2014 SE 477: Lecture 1 48 of 81 Success Metrics 1. On schedule Requires good: plan; estimation; control 2. Within budget Again: planning, estimation & control 3. According to requirements Importance of good requirements Perception & negotiation critical 4. High quality. May or may not be same as item 3 Only real measure: Is the customer happy? Customer satisfaction!! March 31, 2014 SE 477: Lecture 1 49 of 81 Factors in Project Success & Failure March 31, 2014 SE 477: Lecture 1 50 of 81 Software Crisis 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. [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 liftoff. 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. March 31, 2014 SE 477: Lecture 1 51 of 81 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 March 31, 2014 SE 477: Lecture 1 52 of 81 The Standish Group’s CHAOS Report (2001) Standish compiles and publishes a periodic survey on the success and failure rates of IT projects These statistics date from 2001–however, based on more recent complementary reports, these numbers have remained fairly stable over the years: Average IT project schedule overrun: 163% Average IT project cost overrun: 145% Actual deliverable functionality compared to plan: 67% IT projects judged a success: 26% Lost value from marginal and failed projects: $75 billion March 31, 2014 SE 477: Lecture 1 53 of 81 Chaos Report 2012 Project Success: Type 1. The project is completed on-time and onbudget, with all features and functions as initially specified. (2012: 39%) 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. (2012: 43%) Project Impaired: Type 3. The project is canceled at some point during the development cycle. (2012: 18%) (Are ALL impaired projects failures???) March 31, 2014 SE 477: Lecture 1 54 of 81 What Went Right? – Improved Project Performance The Standish Group’s CHAOS studies show improvements in IT projects in the past decade March 31, 2014 SE 477: Lecture 1 55 of 81 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). March 31, 2014 SE 477: Lecture 1 56 of 81 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 March 31, 2014 SE 477: Lecture 1 57 of 81 Why do IT projects fail? Requirements, requirements, requirements Requirements are unclear, incomplete, or the project management methodology does not accommodate changing requirements effectively Lack of user involvement A disengaged or absentee user (~customer) is an invitation for project problems or outright failure Often the result of a lack of business and IT integration Unrealistic expectations (including unrealistic time frame expectations) Closely related to/result of ‘Lack of user involvement’ “How hard can it be?” attitude of business and technical management Overly optimistic ‘can do’ attitude at all levels ☛ It is the project management team’s responsibility to educate users in the realities of the project March 31, 2014 SE 477: Lecture 1 58 of 81 Why do IT projects fail? Lack of planning You cannot achieve any goal without planning Proper approach to planning in a complex project must be adaptive: big planning up front is a waste of time and gives a false sense of security Related issues: Perceived rush to get started; overconfidence Unclear (or lack of) vision and/or objectives The project vision must be established as one of the first steps in project planning The vision for a project should be short, concise, and laser-sharp: the ‘elevator statement’ format is most effective March 31, 2014 SE 477: Lecture 1 59 of 81 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 Gilligan’s Island March 31, 2014 SE 477: Lecture 1 60 of 81 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 March 31, 2014 SE 477: Lecture 1 61 of 81 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 March 31, 2014 SE 477: Lecture 1 62 of 81 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 March 31, 2014 SE 477: Lecture 1 63 of 81 Process-Related Mistakes Part 2 Wasted time during fuzzy front end Shortchanged upstream activities Inadequate design Shortchanged quality assurance Insufficient management controls Frequent convergence March 31, 2014 SE 477: Lecture 1 64 of 81 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 March 31, 2014 SE 477: Lecture 1 65 of 81 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 March 31, 2014 SE 477: Lecture 1 66 of 81 What Helps Projects Succeed?* 1. Executive support 2. User involvement 3. Experienced project manager 4. Clear business objectives 5. Minimized scope 6. Standard software infrastructure 7. Firm basic requirements 8. Formal methodology 9. Reliable estimates 10.Other criteria, such as small milestones, proper planning, competent staff, and ownership *The Standish Group, “Extreme CHAOS,” (2001). March 31, 2014 SE 477: Lecture 1 67 of 81 Four Project Dimensions Four Project Dimensions (The 4 P’s) 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 March 31, 2014 SE 477: Lecture 1 68 of 81 People “It’s 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 March 31, 2014 SE 477: Lecture 1 69 of 81 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 March 31, 2014 SE 477: Lecture 1 70 of 81 Product The “tangible” dimension Product size management Product characteristics and requirements Feature creep management March 31, 2014 SE 477: Lecture 1 71 of 81 Technology Often the least important dimension Language and tool selection Value and cost of reuse March 31, 2014 SE 477: Lecture 1 72 of 81 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? March 31, 2014 SE 477: Lecture 1 73 of 81 Measurements To date and projected Cost Schedule Effort Product features Alternatives Earned value analysis Defect rates Productivity (ex: SLOC) Complexity (ex: function points) March 31, 2014 SE 477: Lecture 1 74 of 81 Technical Fundamentals Assumed Software Development Life Cycle (SDLC) Requirements Analysis Design Construction Quality Assurance (aka Testing) Deployment March 31, 2014 SE 477: Lecture 1 75 of 81 Software Project Management Fundamentals March 31, 2014 SE 477: Lecture 1 76 of 81 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 March 31, 2014 SE 477: Lecture 1 77 of 81 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 March 31, 2014 SE 477: Lecture 1 78 of 81 Summary of essential points Projects and operations have both similarities and differences Complex projects exhibit highly contingent behavior, are unpredictable, and face complex risks Virtually all IT projects should be considered complex projects Complex project management requires integration of significant sociological, psychological, and technical skills The factors contributing to project success and failure are reasonable well-known This course discusses ways to achieve project success factors March 31, 2014 SE 477: Lecture 1 79 of 81 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. March 31, 2014 SE 477: Lecture 1 80 of 81 Journal Exercises Discuss the factors that lead to project success. Just what is project success? March 31, 2014 SE 477: Lecture 1 81 of 81