83
Are you in the right Are you in the right course? course? Software Engineering 477 Software and Systems Project Management March 30, 2015 SE 477: Lecture 1 1 of 83

Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Embed Size (px)

Citation preview

Page 1: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Are you in the right course?Are you in the right course?

Software Engineering 477

Software and Systems Project Management

March 30, 2015 SE 477: Lecture 1 1 of 83

Page 2: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

SE 477 SE 477 Software and Systems Project ManagementSoftware and Systems Project Management

Dennis Mumaugh, Instructor

[email protected]

Office: CDM, Room 432

Office Hours: Monday, 4:00 – 5:30

March 30, 2015 SE 477: Lecture 1 2 of 83

Page 3: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: IntroductionsAdministrivia: IntroductionsDennis Mumaugh

Undergraduate: BSEE - University of California, BerkeleyMS Computer Science - University of MarylandPh.D. Studies - University of MarylandTeaching at DePaul since September 2000

WorkSenior Engineer - National Security Agency

ARPANet Pioneer, Unix™ Pioneer and Technology Transfer, Member of the Technical Staff - Bell Labs/Lucent Technologies

Unix Development - Current EngineeringIS&R Systems - Knowledge Base SystemsSoftware Tools and OO Technology

InterestsOperating Systems and System ProgrammingSoftware Productivity, Compilers and Software MetricsSoftware Engineering

March 30, 2015 SE 477: Lecture 1 3 of 83

Page 4: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: contact detailsAdministrivia: contact details Contact Information:

Email: [email protected] 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 432 By arrangement

March 30, 2015 SE 477: Lecture 1 4 of 83

Page 5: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: Basic Information Administrivia: Basic Information Class home page

http://condor.depaul.edu/dmumaugh/classes/SE477S15/, 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

Desire2Learn: Course materials, assignments, assignment submissions,

assignment solutions, examinations and quizzes and grades will be available on the Desire2learn – https://d2l.depaul.edu/

D2L provides the ability to download a podcast of the lecture, but is by special arrangement: let me know if you need it.

March 30, 2015 SE 477: Lecture 1 5 of 83

Page 6: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: communications 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: [email protected] 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 30, 2015 SE 477: Lecture 1 6 of 83

Page 7: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: reading materialsAdministrivia: reading materials Textbooks Required

Software Extension to the PMBOK® Guide, Fifth Edition, Project Management Institute,  2013 (291 pages), ISBN:9781628250138, available at http://library.books24x7.com.ezproxy.depaul.edu/toc.aspx?site=XOBDU&bookid=62558

Deemer, P., Benefield, G., Larman, C., and B. Vodde (2012). The Scrum Primer: A Lightweight Guide to the Practice of Scrum, Version 2.0. Available at: http://www.infoq.com/minibooks/Scrum_Primer.

The definitive text book is: A Guide to the Project Management Body of Knowledge ( PMBOK®

Guide )—Fifth Edition, Project Management Institute, 2013.  ISBN:  9781935589679, available at <http://library.books24x7.com.ezproxy.depaul.edu/toc.aspx?site=XOBDU&bookid=51356> [You don't have to buy this, you can use it on-line.]

March 30, 2015 SE 477: Lecture 1 7 of 83

Page 8: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: reading materialsAdministrivia: reading materials Textbooks Required

A note on the SWE-PMBOK: the text references the PMBOK copiously. You will need to look at the PMBOK for much of the information. We recommend you access it on-line through the library:http://library.books24x7.com.ezproxy.depaul.edu/toc.aspx?site=XOBDU&bookid=51356

March 30, 2015 SE 477: Lecture 1 8 of 83

Page 9: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: reading materialsAdministrivia: reading materials Textbooks Recommended texts and supplemental reading

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-1-118-53182-2

» Note the new edition!

March 30, 2015 SE 477: Lecture 1 9 of 83

Page 10: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: reading materialsAdministrivia: 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: 0-932633-42-0

March 30, 2015 SE 477: Lecture 1 10 of 83

Page 11: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: reading materialsAdministrivia: 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 page:

http://condor.depaul.edu/dmumaugh/readings/SE477readings.html Gartner reports are available though the library and also on

D2L > Documents

March 30, 2015 SE 477: Lecture 1 11 of 83

Page 12: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: reading materialsAdministrivia: reading materials A note on reading list

You are not expected to read all of the material on the reading list. 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

March 30, 2015 SE 477: Lecture 1 12 of 83

Page 13: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: Course structureAdministrivia: Course structure Ten classes + Midterm Exam + Final Exam

☛ For the Spring Quarter, classes are on Monday and week 9 falls on Memorial Day. Hence no class, but the lecture notes will be available

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 30, 2015 SE 477: Lecture 1 13 of 83

Page 14: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: softwareAdministrivia: 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 (2013 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 2013.

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/) use only if you do not have Java 7 or later.» Local source [see notes for URL]: • Windows install file• Macintosh install file

» Documentation: Getting Started with OpenProjMarch 30, 2015 SE 477: Lecture 1 14 of 83

Page 15: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: MiscellanyAdministrivia: 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 30, 2015 SE 477: Lecture 1 15 of 83

Page 16: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: MiscellanyAdministrivia: 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 30, 2015 SE 477: Lecture 1 16 of 83

Page 17: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: MiscellanyAdministrivia: 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 30, 2015 SE 477: Lecture 1 17 of 83

Page 18: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: SupportAdministrivia: 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 30, 2015 SE 477: Lecture 1 18 of 83

Page 19: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: Feedback/ParticipationAdministrivia: 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 30, 2015 SE 477: Lecture 1 19 of 83

Page 20: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Administrivia: assessmentAdministrivia: 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 30, 2015 SE 477: Lecture 1 20 of 83

Page 21: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Homework logisticsHomework logistics Homework must be submitted via Desire2Learn 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 30, 2015 SE 477: Lecture 1 21 of 83

Page 22: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Surviving SE477Surviving 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 30, 2015 SE 477: Lecture 1 22 of 83

Page 23: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

IntroductionIntroduction 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 5.

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 30, 2015 SE 477: Lecture 1 23 of 83

Page 24: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Surprise!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 30, 2015 SE 477: Lecture 1 24 of 83

Page 25: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Course ObjectivesCourse Objectives Students will understand the motivation for, basic principles of, and

terminology of project management. Students will understand how development and project management

concerns relate and how they may be integrated with one another. Students will understand the activities and responsibilities of the

project management team in a software development project. Students will understand some of the reasons for IT project failures

and how they might be averted. Students will understand and carry out an essential subset of the

activities associated with project planning, execution, monitoring and control, and close-out.

March 30, 2015 SE 477: Lecture 1 25 of 83

Page 26: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

TopicsTopics1. Introduction and Overview: Software Process or What is a project?

Project characteristics; Classic Mistakes;

2. 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

3. System Development Processes: SDLC; Agile Project Management; Project Planning – Initial Phase: The Project Management Plan; Scope Management; Creating the Work Breakdown Structure (WBS)

4. Project Planning: Activity Definition; WBS details; Activity Sequencing; Estimating size and complexity,

5. 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 30, 2015 SE 477: Lecture 1 26 of 83

Page 27: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

TopicsTopics6. 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. Miscellaneous: Anti-patterns, Agile Project Management [if time allows]

10. Managing the Project Team: Project and Team Organization; Project Management Context; Managing the Project Team; Shaping project culture

March 30, 2015 SE 477: Lecture 1 27 of 83

Page 28: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

SE 477 – Class 1SE 477 – Class 1Topics: 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. PMBOK-SWE Ch. 1

March 30, 2015 SE 477: Lecture 1 28 of 83

Page 29: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

AssignmentsAssignmentsAssignment 1 due April 13, 2015 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 D2L.]

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-may-2012/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.doc>

March 30, 2015 SE 477: Lecture 1 29 of 83

Page 30: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

AssignmentsAssignmentsJournal – 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 30, 2015 SE 477: Lecture 1 30 of 83

Page 31: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Thought for the dayThought for the day

"The first 90% of a project takes 90% of the time, the last 10% takes the other 90%."

March 30, 2015 SE 477: Lecture 1 31 of 83

Page 32: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

IntroductionIntroduction

March 30, 2015 SE 477: Lecture 1 32 of 83

Page 33: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What is a project?What is a project?What’s a project? PMI definition

A project is a temporary endeavor undertaken to create a unique product or service

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.

Progressively elaborated With repetitive elements

A project manager Analogy: conductor, coach, captain

March 30, 2015 SE 477: Lecture 1 33 of 83

Page 34: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Project vs. Program ManagementProject vs. Program ManagementWhat’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 30, 2015 SE 477: Lecture 1 34 of 83

Page 35: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Project characteristics 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 30, 2015 SE 477: Lecture 1 35 of 83

Page 36: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Project characteristics 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 30, 2015 SE 477: Lecture 1 36 of 83

Page 37: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Projects Projects vs. operations/production vs. operations/production

March 30, 2015 SE 477: Lecture 1 37 of 83

Page 38: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Characteristics of IT (Information Technology)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 30, 2015 SE 477: Lecture 1 38 of 83

Page 39: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

How do IT projects differ from How do IT projects differ from ‘‘ordinaryordinary’’ projects? 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’ 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 30, 2015 SE 477: Lecture 1 39 of 83

Page 40: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Project characteristicsProject 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 30, 2015 SE 477: Lecture 1 40 of 83

Page 41: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

How Are Software Projects Different?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 30, 2015 SE 477: Lecture 1 41 of 83

Page 42: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What is Project Management?What is Project Management? Project management is “the application of knowledge,

skills, tools and techniques to project activities to meet project requirements” (PMBOK® Guide, Fifth Edition, 2013)

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 30, 2015 SE 477: Lecture 1 42 of 83

Page 43: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Project management processes 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 30, 2015 SE 477: Lecture 1 43 of 83

Page 44: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software ProjectSoftware ProjectQuality 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 30, 2015 SE 477: Lecture 1 44 of 83

Page 45: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software Development ProcessSoftware 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 30, 2015 SE 477: Lecture 1 45 of 83

Page 46: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software ProjectSoftware 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 30, 2015 SE 477: Lecture 1 46 of 83

Page 47: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software ProcessesSoftware ProcessesSoftware 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 30, 2015 SE 477: Lecture 1 47 of 83

Page 48: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Core project management activities 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 30, 2015 SE 477: Lecture 1 48 of 83

Page 49: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software Project Trade-offsSoftware Project Trade-offsWhat 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 June 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 30, 2015 SE 477: Lecture 1 49 of 83

Page 50: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What makes a project successful?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 Cost Scope

March 30, 2015 SE 477: Lecture 1 50 of 83

Page 51: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Success MetricsSuccess Metrics1. 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 30, 2015 SE 477: Lecture 1 51 of 83

Page 52: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Factors in Project Success & Factors in Project Success & FailureFailure

March 30, 2015 SE 477: Lecture 1 52 of 83

Page 53: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software CrisisSoftware 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 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.

March 30, 2015 SE 477: Lecture 1 53 of 83

Page 54: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What is the problem?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 30, 2015 SE 477: Lecture 1 54 of 83

Page 55: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

The Standish GroupThe Standish Group’’s CHAOS Report (2001) 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 30, 2015 SE 477: Lecture 1 55 of 83

Page 56: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Chaos Report 2012Project Success: Type 1. The project is completed on-time and on-

budget, 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%)

March 30, 2015 SE 477: Lecture 1

Project Impaired: Type 3. The project is canceled at some point during the development cycle. (2012: 18%) (Are ALL impaired projects failures???)

56 of 83

Page 57: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What Went Right? – Improved Project What Went Right? – Improved Project PerformancePerformance

The Standish Group’s CHAOS studies show improvements in IT projects in the past decade

March 30, 2015 SE 477: Lecture 1 57 of 83

Page 58: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Why the Improvements?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 30, 2015 SE 477: Lecture 1 58 of 83

Page 59: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What is the problem?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 30, 2015 SE 477: Lecture 1 59 of 83

Page 60: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Why do IT projects fail?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 30, 2015 SE 477: Lecture 1 60 of 83

Page 61: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Why do IT projects fail? 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 30, 2015 SE 477: Lecture 1 61 of 83

Page 62: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Why do IT projects fail?Why do IT projects fail?36 Classic Mistakes AntiPatterns [see lecture 9] Seductive Appeal: good reason for decisions at the time Types

People-Related Process-Related Product-Related Technology-Related

Gilligan’s Island

March 30, 2015 SE 477: Lecture 1 62 of 83

Page 63: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

People-Related Mistakes Part 1People-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 30, 2015 SE 477: Lecture 1 63 of 83

Page 64: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

People-Related Mistakes Part 2People-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 30, 2015 SE 477: Lecture 1 64 of 83

Page 65: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Process-Related Mistakes Part 1Process-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 30, 2015 SE 477: Lecture 1 65 of 83

Page 66: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

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

March 30, 2015 SE 477: Lecture 1 66 of 83

Page 67: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Product-Related MistakesProduct-Related Mistakes Requirements gold-plating

Gilding the lily Feature creep Developer gold-plating

Beware the pet project Push-me, pull-me negotiation

Slip schedule + add features Research-oriented development

March 30, 2015 SE 477: Lecture 1 67 of 83

Page 68: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Technology-Related MistakesTechnology-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 30, 2015 SE 477: Lecture 1 68 of 83

Page 69: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

What Helps Projects Succeed?*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

March 30, 2015 SE 477: Lecture 1

*The Standish Group, “Extreme CHAOS,” (2001).

69 of 83

Page 70: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Four Project DimensionsFour Project DimensionsFour 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 30, 2015 SE 477: Lecture 1 70 of 83

Page 71: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

PeoplePeople“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 30, 2015 SE 477: Lecture 1 71 of 83

Page 72: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

ProcessProcess 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 30, 2015 SE 477: Lecture 1 72 of 83

Page 73: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

ProductProduct The “tangible” dimension Product size management Product characteristics and requirements Feature creep management

March 30, 2015 SE 477: Lecture 1 73 of 83

Page 74: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

TechnologyTechnology Often the least important dimension Language and tool selection Value and cost of reuse

March 30, 2015 SE 477: Lecture 1 74 of 83

Page 75: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

PlanningPlanning 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 30, 2015 SE 477: Lecture 1 75 of 83

Page 76: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

MeasurementsMeasurements To date and projected

Cost Schedule Effort Product features

Alternatives Earned value analysis Defect rates Productivity (ex: SLOC) Complexity (ex: function points)

March 30, 2015 SE 477: Lecture 1 76 of 83

Page 77: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Technical FundamentalsTechnical FundamentalsAssumed Software Development Life Cycle (SDLC) Requirements Analysis Design Construction Quality Assurance (aka Testing) Deployment

March 30, 2015 SE 477: Lecture 1 77 of 83

Page 78: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Software Project ManagementSoftware Project Management

Fundamentals

March 30, 2015 SE 477: Lecture 1 78 of 83

Page 79: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Formal Project ManagementFormal Project ManagementAdvantages 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 30, 2015 SE 477: Lecture 1 79 of 83

Page 80: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Getting organizedGetting organizedSo, … 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 ManagementMarch 30, 2015 SE 477: Lecture 1 80 of 83

Page 81: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Summary of essential points 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

reasonably well-known This course discusses ways to achieve project success

factors

March 30, 2015 SE 477: Lecture 1 81 of 83

Page 82: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Next ClassNext ClassTopic:

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)

PMBOK-SWE Ch. 2;  Scrum Primer (all)

Assignment: Assignment 1: Three to four page case study of a project failure: the

FBI VCF.

March 30, 2015 SE 477: Lecture 1 82 of 83

Page 83: Are you in the right course? Software Engineering 477 Software and Systems Project Management March 30, 2015SE 477: Lecture 11 of 83

Journal ExercisesJournal Exercises Discuss the factors that lead to project success. Just what is project success?

March 30, 2015 SE 477: Lecture 1 83 of 83