Presentation is loading. Please wait.

Presentation is loading. Please wait.

August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved.

Similar presentations


Presentation on theme: "August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved."— Presentation transcript:

1 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 1 CSE 7315 PLANNING AND MANAGING A SOFTWARE PROJECT

2 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 2 CSE 7315 BUNGLING AND MANGLING A SOFTWARE DISASTER

3 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 3 COPYRIGHT NOTICE NOTICE: This material is copyrighted and may be copied or downloaded ONCE ONLY by students who are registered in this course at Southern Methodist University or National Technological University.

4 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 4 Warning from Dilbert “If you’re not on a ‘project,’ then you probably have a thankless, boring, repetitive job.... But if you are working on a project, life is very different.... you spend much of your waking hours fantasizing about how great it would be to have a thankless, boring, repetitive job.” Adams, The Dilbert Principle

5 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 5 Chapter 1 Software Management Overview Humphrey, chapters 1-2

6 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 6 Contents 1 - The Course 2 - Process - The Framework for Software Engineering 3 - Facts and Myths about Software 4 - Overview of the Planning Process

7 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 7 1.1 The Course The Course is focused on the PROCESS by which software is developed The Management Principles are designed to deal with the process Software Risk Management Software Project Management Software Engineering Process

8 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 8 People - Those who Perform the Software Development Methods and Procedures -- How we Do the Work – Design methods, testing procedures, configuration control, etc. Other Elements of Software Project Management

9 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 9 Resources - What we Need to Do the Work – Computers, Software, Test Equipment, Facilities, etc. Artifacts - Things Produced During the Course of the Work Communication - Within and without Other Elements of Software Project Management

10 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 10 The Course Combines These Elements Planning what to do – Understanding the customer & requirements – Selecting the lifecycle and the process – Work breakdown structure – Estimating the effort, size, and schedule – Documenting the plans

11 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 11 The Course Combines These Elements Managing the execution – Managing risk – Metrics – Configuration management Improving – Quality engineering – Continuous process improvement

12 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 12 Warning from Dilbert “... the biggest obstacle to the success of any project is management itself.” “... management... will support [the project] in the following ways: Demand frequent status reports... to explain why the team doesn’t have enough time to meet deadlines...” Adams, The Dilbert Principle

13 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 13 Student Assignments #Due By Class # Description % of Grade 13 Find a Library (see SOW) (*) 25 Find an example of an alternative lifecycle model 1% 37 Proposal for paper/SDP (see SOW) (*) 410 Size Estimation Spreadsheet 14% 513 Cost Estimation Spreadsheet 10% 615 Research paper or SDP (see SOW) 25% (*) Assignments 1, 3, and 6 are all combined into one grade.

14 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 14 Research Paper (Student Project option 1) Write a Research Paper Topic Must be Related to the Course – Project Management – Software Process – Any related topic Goal: To Gain Insight into an Area of Specialization – Identify key issues or problems, or – Compare two or more approaches or theories, or – Apply principles to a new application, or – Identify & discuss important literature on a given topic

15 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 15 SOW for Research Paper Tasks: – Select Topic (Assignment 1 gives a start) – Research Topic – Develop a Thesis or Idea – Submit a Proposal (Assignment 3) – Write it Up – Submit to Professor (Assignment 6) Deliverables – Paper, in Specified Format – Annotated Bibliography

16 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 16 SW Development Plan (SDP) (Student Project, option 2) Write a SW Development Plan For the “Mr. Television” Project – Project Organization – Software Development Process – Etc, etc. Goal: To apply what was learned in the course to a typical project – Identify key issues – Plan the project – Define risk management and metrics – etc.

17 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 17 SOW for SDP Tasks: – Study the topics of the course – Submit a plan proposal/outline (Assignment 3) – Complete the plan – Submit to professor (Assignment 6) Deliverables – Plan, in Specified Format

18 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 18 Maxim Start on the project right away The second half of the course involves a lot more homework assignments The sooner you get behind, the longer you have to catch up.

19 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 19 Requirements for Research Paper or Plan Size: 20-40 pages for body, including bibliography (if paper is chosen) 1 1/2 space (leave room between lines for comments and such) Format - Given in SOW Proposal: Must be Approved Approach and Format: See the SOW

20 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 20 Annotated Bibliography A collection of bibliographic entries including comments on each entry Smith, George A., “Software Engineering Lacks a Decent Process,” International Journal of Obscure Academic Topics (June, 1989), pp 27-32. This paper explains why software engineering needs a good process model and why the author believes no such model exists. Smith cites four primary reasons why such a model is important: because Watts Humphrey says so, because Smith thinks it is a good idea, because the SEI says so, and because the software process modeling society says so. The required features of such a model include..... (etc., etc.)

21 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 21 Assignment 1 - Find a Library Purpose: To start the research process To help you learn where relevant materials can be found To show what an annotated bibliography is To prove that you are alive

22 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 22 Helpful Tools for Research Science Citation Index - Comes Out Each Year 1988198919901991199219931994 Watts Humphrey 1987 All papers written in 1993 that reference Humphrey’s Paper This is a very valuable research aid that helps you find more recent papers that are related to a paper of interest. All papers written in 1990 that reference Humphrey’s Paper

23 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 23 More Helpful Tools ACM Computing Reviews - published monthly – Reviews of Recent Publications ACM Guide to Computing Literature - comes out each year – Complete list of items published in a given year – Key Word in Context (KWIC) Index, by topic – Index by Author – Also lists where the items is reviewed, if it was reviewed You may be able to read the review to decide whether to get the paper This is very helpful for obscure, hard to find items

24 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 24 Books & Notes This course has one textbook And several reference books There is no single book that covers all of the material You must take good notes Preprinted class notes are not a substitute for taking good written notes!

25 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 25 Textbook Humphrey, Watts. Managing the Software Process. Reading, Mass.: Addison-Wesley Publishing Company, 1989. ISBN 0-201- 18095-2. (This is the classic book on the subject. Ed Yourdon recommends as a “must buy” for software developers.)

26 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 26 Reference Books & Papers Brooks, Frederick, The Mythical Man-Month. Reading, Mass.: Addison-Wesley Publishing Company, 1975. Department of Defense, Cross Talk - The Journal of Defense Software Engineering, Ogden ALC/TISE, Hill AFB, Utah 84056-5205 Department of Defense, Defense System Software Development, Dod-STD 2167A, 29 Feb. 1988, Department of Defense, Washington D.C., 20201.

27 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 27 Reference Books & Papers Humphrey, W.S., "Characterizing the Software Process: A Maturity Framework," IEEE Software, Vol. 5 #2 (March, 1988), pp. 73-79. Also available as a technical report from SEI: CMU/SEI-87-TR- 23 IEEE, Standard for Developing Software Life-Cycle Processes, IEEE-STD-1074-1991. IEEE Computer Society, New York.

28 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 28 References - II Paulk, Mark, et. al., Capability Maturity Model for Software, Version 1.1, Software Engineering Institute, CMU/SEI-93-TR-2, February, 1993. Reifer, Donald, Tutorial: Software Management (third edition), IEEE Computer Society, order # 678, ISBN 0-8186-0678-9, IEEE catalog # EH0243-6 United States Air Force, Software Management Guide. Software Technology Support Center, OO- ALC/TISE, Hill AFB, Utah 84056.

29 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 29 1.2 Process - The Framework for Software Engineering A process is a set of tools, methods and practices used to produce a product. -- Humphrey, Managing the Software Process A process is THAT WHICH HAPPENS when you perform a task. -- Dennis Frailey

30 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 30 A Process is Something that Happens Over a Period of Time It involves activity – Eg., swimming or walking or computing It is dynamic – If it happens twice, that is two different processes – Or two different instances of the same process model It can be described in words, pictures, diagrams, etc. – The description is called a process model or description or representation

31 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 31 Process Description vs. Process Computer Program (process description) FOR I = 1 TO 10 DO IF A > B THEN CASE J OF ETC ELSE DO SOMETHING ENDIF Computer in Execution (process)... as the computer executes the program, things happen (variables change, data are communicated, devices operate, etc.)...

32 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 32 Uniprocessing Processor or agent Program: xxxxxxx A process happens when a processor executes a process description

33 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 33 Multiprocessing Program (process model): xxxxxxx Process # 1 Process # 2 Process # 3 Process # 4 Processor or agent

34 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 34 Examples of Processes Process Description Computer Program Roadmap Recipe Set of instructions for how to put up wallpaper Process Program Execution Take a Trip Cook a Meal Put up Wallpaper

35 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 35 Several Interpretations of “Software Process” A Software Process Description is a definition -- it tells you what process to follow when producing software Executing the Software Development Process is an activity that produces programs Programs are Computer Process Descriptions which tell the computer what process to follow when executing the program Executing the Program produces some desired outcome

36 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 36 A Process has a Beginning and an End in Time Starting point - when the process starts........ something happens.... Ending point - when the process finishes (or it could be indefinite) When the process is happening, we say the process is being instantiated or enacted or executed.

37 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 37 A Process Description or Model exists before and/or after the process is enacted Process Description (prescriptive) -- What is Supposed to Happen Wallpaper Hanging Process Description (descriptive) -- What Actually Happened Process (something happens)

38 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 38 Process, Methods and Tools A Map -- WHAT to do PROCESS (description) METHODS TOOLS Detailed Instructions - HOW to Do It AUTOMATION - Do it Efficiently Eg. - Design, then Review - Plan Tests with Requirements Eg. - Object Oriented Analysis - Structured Walkthroughs Eg. - Compiler, - CASE, - Test Generator, - Measurement Tool “If you automate without a process, you screw up more efficiently” -- Anonymous INCREASING KNOWLEDGE

39 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 39 Why Process is Important Tools without Processes or Methods are like a Fast Car with an Inexperienced Driver – You may drive fast – But who knows where you will end up? – Wrecks are likely Methods tell you how to drive - like giving driving lessons

40 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 40 Why Process is Important But Methods without Processes are like a Good Driver who Doesn’t know Where He Is or Where He is Going – You may eventually get there – And you may go fast – But you won’t get to the right place very soon

41 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 41 Process Gives Knowledge Where to Go How to Get There Which Shortcuts will work Which Shortcuts will NOT work Risks of Each Option Why, not just What

42 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 42 How to Describe or Document a Process It depends on who will use the description and for what purpose But there are three essential elements of a process description: -- Tasks or Activities to be Performed -- Artifacts (inputs needed and outputs produced) -- Relationships and Sequences among these

43 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 43 Process Descriptions Include... Tasks or Activities -- What to do Sequencing and Information Flow -- When to do what Information or Data (Artifacts) (compare with a computer program) Executable Statements Statement Sequence; Conditional Statements; Loops; Go To; other Flow of Control constructs Data Declarations; Procedure Parameters

44 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 44 Optional Information Additional information depends on the purpose of the process description Examples of additional information include: – Comments and Documentation – Entry and/or Exit Criteria – Why – Who – What and When to Measure – Risks – References –...

45 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 45 Representing a Process It Depends on Who will Enact the Process Process Description Agent Process

46 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 46 Alternative Representations Process Description Computer Program RoadmapRecipe AgentComputerDriverCook Process Enaction A Specific Invocation of the Program A Specific Trip Preparation of A Specific Dish Data Flow or Petri Nets or English, etc. SW Developer Development of Software

47 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 47 Possible Exam Question  Fill in the chart on the previous page (assuming some parts are blank)

48 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 48 Goals of a Process Representation Specific Enough to Enable a Correct Outcome – A map should be accurate Flexible Enough to Allow Judgment – A good map: Shows alternate routes Does not dictate speed, type of car, or other excessive details that can vary Does not have to be to scale or precise so long as it serves its purpose

49 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 49 Compare with a Good Recipe Specific Enough to Enable a Correct Outcome – Lists all ingredients – Indicates the proper sequence and procedures for preparing Flexible Enough to Allow Judgment – Allows some variation in ingredients without total failure – Warns about which steps must be followed precisely

50 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 50 Flexibility vs. Exactness Staying in the Lane Without Constant Correction (Experienced Driver vs. Novice) A computer program needs precise instructions with no room for variation -- because a computer cannot exercise judgment A human being needs a degree of latitude

51 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 51 Human Processes Rely on Flexibility A process to be executed by humans (such as software development) relies on human judgment -- because of the large number of variables in the environment and the application But too much latitude can result in chaos

52 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 52 Some Approaches to Representing a Process Computer Program – Specific and Exact – Translates to Machine Language – (but more than one possible translation) English or Other Natural Language – Usually Vague – Subject to Interpretation – Assumes Judgment and Experience by Agent Recipe example: Take 3 Bananas[ripe?] Add 1 TB Cinnamon[ground?] etc. [etc...]

53 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 53 Some Formal Methods that are In Between the Previous Two Flow Charts – Strong on control/sequencing but weak on data flow – Little support for parallel processing Data Flow Diagrams – Strong on data flow but weaker on control – Good support for parallel processing – Weak on iteration

54 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 54 Some Formal Methods that are In Between the Previous Two Petri Nets and Similar Systems – Very precise control and data flow – Parallel processing – Non-intuitive for human interpretation – Too precise for many human processes

55 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 55 Data Flow Elements Task or Procedure Flow of Data Data Repository Typical Data Flow Diagram DO X DO Y DO Z DO Q STORAGE A C D B B

56 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 56 Example Process Description: Frailey’s Possibly Good Chicken Ingredients: One Chicken One Can of Cream of Chicken Soup 1/2 Pound of Mushrooms 3 Tablespoons of Flour 1 teaspoon of Paprika 1 Tablespoons of Butter Salt and Pepper

57 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 57 Tools Tools: One Oven One Mixing Bowl Mixing Spoon Shallow Pan Knife (to cut up chicken) Paper or Plastic Bag

58 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 58 Procedures or Tasks Procedure: Preheat Oven to 425° Place Butter in shallow pan and put in oven to melt Meanwhile, unwrap, wash and cut up the chicken Mix Flour and paprika and then shake chicken pieces (in bag) to coat

59 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 59 Tasks (continued) Remove pan from oven and place chicken in pan, skin side down Put back into oven and turn down to 350° Meanwhile, wash and slice mushrooms Mix mushrooms, soup, salt & pepper Pour over chicken (in pan in oven) Cook for 45 minutes, turn, cook 1/2 hr Serve

60 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 60 Notes about the Recipe The sequencing of steps and data is implied by the order of the recipe commands The recipe includes: – Parallel Processing ("Meanwhile...") – Repeated Subroutine Calls ("shake chicken pieces")

61 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 61 Student Challenge Draw a flow chart or data flow model of the recipe Compare with the English recipe for accuracy, ease of comprehension, etc.

62 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 62 Here is Another Description Dallas, Texas, 1995. David Zichtermann's house caught fire last night while he was cooking dinner. According to David, he turned on his oven to cook a new chicken recipe, put in a pan with some butter according to the recipe, and then started washing and cutting up the chicken. After he was finished he cut up some mushrooms and mixed them with chicken soup and spices. As he was finishing this task, the oven "burst into flame". The fire marshal is trying to determine whether the cause of the fire was leftover grease in the oven or the butter in the pan. In either case, he believes the oven was set at too high a temperature.

63 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 63 Two Types of Errors Errors in Following the Process: – Did not put chicken into oven before cutting up mushrooms, thus leaving the butter in alone too long – Did not reduce temperature to 350° Errors or Flaws in the Process Model: – Did not specify that the oven should be clean This is an IMPLICIT REQUIREMENT – Might have had too high a temperature for melting the butter – or perhaps should warn not to keep at 425° so long BOTH of these kinds of errors can be corrected by improving the process

64 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 64 Some Kinds of Process Improvements Correct Fundamental Process Errors that Result in Incorrect Results – Lower oven temperature? – Specify a clean oven? Improve the Description so that the Agent is Less Likely to Make a Mistake -- I.e., make the process fault tolerant. (in this case, the cook is the agent) – Warn not to leave the butter in the oven at 425° for more than 15 minutes Note: the recipe may have additional flaws not yet detected.

65 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 65 Additional Process Problems and Improvements The recipe, as corrected, might produce edible chicken, but it might not taste as good as it might – Flavor too spicy or not spicy enough – Chicken too tough (cooked at too high a temperature or did not specify type of chicken to use) – Undercooked or overcooked – etc. These are quality improvements that are made by changing the recipe (improving the process)

66 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 66 Further Possible Recipe Improvements Speed (cycle time) and Cost (mushrooms) – Use cream of mushroom soup instead of cream of chicken and cut out the mushroom processing STUDENT CHALLENGE: Find other improvements to the recipe

67 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 67 Why All the Attention to Process? Software Disasters are Costing Lots of Money and Getting More Attention as Software Becomes a Larger Part of Almost Every Manufactured Product Process management is being Recognized as the Core Issue behind Software Development Problems

68 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 68 Some Types of Software Project Management Problems Software development costs more time/money/resources than anticipated – Business plans new data base for $250K and 9 months – After $2.5 Million and Two years, they still need $1M to complete – Program is canceled (1) Software development costs more time/money/resources than it should – Who knows how much it should cost? – Different contractors often give very different estimates (1) McFarlan, F.W. "Portfolio Approach to Information Systems," Harvard Business Review (January, 1974)

69 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 69 More Problems Fails to meet requirements – System delivers only half of promised features (Functional requirements -- what it is supposed to do) – CAD system operates so slowly that it is unusable (Performance requirements -- speed, space, etc.) (1) (1) Frailey, Dennis, Private Communication with CAD system programmers who were fired as a result

70 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 70 More Problems Fails to meet standards of quality or safety – X-ray machine gives 10,000X dose of radiation to patient due to faulty software (2) – Buggy software is constantly crashing – Microsoft Windows calculator has bug in second digit (2) ACM/Corporation for Public Broadcasting, "The Machine that Changed the World," (volume 5), PBS program available on video tape.

71 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 71 More Problems Software causes unanticipated results – Insurance software for claims processing sends $60M in double payments. 35,000 policy holders quit. (3) We could go On and On The basic message is that Software Must be Better Managed in Order to Produce Acceptable Products (3) Rothfeder, Jeffery, "It's Late, Costly, Incompetent - But Try Firing a Computer System." Business Week (November 7, 1988).

72 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 72 Software is No Exception to the Basic Principles of Quality Management We have Learned that Process is the Proper Focus of Attention for Effective Quality Improvement Although this is NOT a course in quality engineering, we do need to be aware of certain basic principles of quality management

73 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 73 Some Basic Principles of Quality Management Quality Engineering Principle: The quality of a product is determined by the quality of the process used to develop and produce the product.

74 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 74 Some Basic Principles of Quality Management Quality Management Principle: The way to improve quality is to: - Define (document) the process - Measure and evaluate the process as it is executed - Improve the process based on these measurements and evaluations Consider the process of cooking and the application of these principles.

75 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 75 Possible Exam Question  Explain the Basic Principle of Quality Management (i.e., the way to improve quality).

76 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 76 Principles of Productivity and Process Automation Process Automation Principle: If you automate the wrong process, you simply do the wrong thing more efficiently In other words, you must know what process to follow before automating that process.

77 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 77 Principles of Productivity and Process Automation Productivity Principle: If you design a process for perfect people, it will fail when executed by human beings -- Design the process for real people -- Automate the parts that people do not do well.

78 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 78 Possible Exam Questions  Explain why automation alone is not likely to improve a company’s real productivity and quality  Give an example in the software process where automation is a good idea; give an example where automation does not work very well and people should be charged with doing the job.

79 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 79 But.... Software is Not a Manufacturing Process! Does this apply to Software? Isn’t Software Different? One of the most insidious problems with improving anything is the PERCEPTION OF UNIQUENESS Example: almost every small town thinks its sports teams are the best because they are unique Nevertheless, software does have some special characteristics that must be dealt with

80 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 80 1.3 Facts and Myths about Software We will examine a few myths that have developed about software

81 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 81 The “Super Programmer” Myth Software is a creative and artistic endeavor. All you need to do it right are highly creative individuals (the GURUs & Super Programmers), whom you leave alone.

82 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 82 The “Creative Genius” Myth Creative people (like myself) need freedom, not constraints and “discipline”

83 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 83 Fact: The Essence of Art is Working in a Disciplined Manner within the Constraints of a Medium Sculptor - chisels statues out of stone, not putty – The characteristics of the stone make it a challenge for the artist rather than a hobby for everyone

84 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 84 Fact: The Essence of Art is Working in a Disciplined Manner within the Constraints of a Medium The strength of the stone is what makes statues possible and what makes them valuable when the artist is complete “The granite is my enemy and my friend.”

85 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 85 All Artistic Media have Constraints Painter - works with a specific painting medium (oils, watercolors, charcoal, etc.) – Each medium has its challenges, possibilities and limitations Musician - works with a specific instrument – A trumpet is hard to play well and it cannot replicate the sound of a piano – But a really accomplished trumpeter can make wonderful music

86 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 86 All Artistic Media have Constraints We measure an artist both by CREATIVITY and by TECHNICAL SKILL Producing beauty within the constraints of the medium

87 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 87 Promising Young Artists “... have technical skills but have not yet developed insight...” “... have brilliantly creative ideas but cannot bring them to fruition because of a lack of discipline...”

88 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 88 Established, Respected Artist “... plays effortlessly, with deep insight, yet with the control and discipline that can only come with experience and extraordinary talent” “... has defied the traditional rules in a brilliant display of creativity, yielding wonderful new possibilities for the medium.... [He] has devised a new technique that brings forth the depth of color of oils in the watercolor medium.”

89 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 89 Fact: Structure and Discipline Produce the Best Results Cost-effective systems result from applying creativity and discipline to both the design of the product and the design of the system used to produce it Extending this to the process used to design the systems is a focal point for software, since the production of software is largely a matter of design Discipline enables you to focus on the things that matter (the critical few) rather than the things that don’t (the trivial many)

90 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 90 Example - Airplane Flight Crews Very well defined process Extensive training Can handle unexpected, emergency situations Can function well when individuals are replaced on short notice (illness, etc.)

91 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 91 Note This does not mean that they are not highly qualified This does not mean that they are poorly paid This does not mean that they are non-heroes

92 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 92 Another Example Professionals vs. Amateurs Professional Baseball vs. Sandlot Baseball Professional Drivers vs. Average Drivers Professional Software Developers vs. Amateurs? The difference is: – Process well defined – Extensive training – Skill and determination Consider highly skilled sports teams that never win the championships

93 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 93 The “Development Tools” Myth The best development tools are the main thing you need to get high productivity. Super Mega Hyper Workstation

94 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 94 The “Development Tools” Myth My grades will be higher if you get me a computer

95 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 95 The “Development Tools” Myth Facts Lack of tools is rarely the root cause of a problem. – If you don’t know what to do, a tool will not help you – Data from real programs show that knowledge & procedures are more important than tools

96 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 96 The “Development Tools” Myth Facts A good musician can make a poor instrument sound wonderful But a poor musician cannot make a good instrument sound right

97 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 97 The “Development Tools” Myth Conclusion Good tools can make a big difference when used by people who know what to do with them – But you have to use the right tool at the right time and in the right place – Which means you have to know what you are doing and where a tool can help you –... and why it can help you

98 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 98 The Gunslinger Myth: Planning Wastes Time – Just Do It! Do you want me to plan or to build software? Do you want a plan or a product? This is e-commerce – we don’t have a long time to do the job! This example is taken from Cusumano and Yoffie, Competing on Internet Time, 1998.

99 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 99 The Gunslinger Myth: Another Opinion “This is sheer b*** s*** … The way you hit the bull’s eye the first time is by planning things [properly]…” David Stryker, shared component software manager at Netscape in 1996-97

100 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 100 Planning: Netscape’s Stryker Continues “You can’t plan everything down to the atoms. The art of planning is articulating your goals and nongoals … really clearly and picking the things that have to be planned down to the atoms … goals [must be] measurable and concrete.”

101 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 101 More on Goals and Nongoals: Netscape’s Stryker Continues “The nongoals are more important than the goals because, when you’re doing midcourse correction, which you do on a 72-hour basis, the best guidance you can get is to remember what you weren’t trying to do.”

102 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 102 Some Facts about Software Fact #1: Software Products are Increasingly More Complex and Therefore Must be Managed Accordingly Armies of people or expensive tools will not suffice. – Studies show that complexity and management problems grow disproportionately as size increases – Consider biological systems -- the larger the organism, the more complex it must be in order to function – This stems from fundamental laws of physics

103 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 103 Some Facts about Software Talented people can only handle so much – Picasso and DaVinci could not paint the world trade center – Do you want your company’s success to depend on a few talented but temperamental heroes?

104 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 104 Strawberry Shortcake Example Strawberry Shortcake Recipe Makes 4 Servings Easy to modify for 2 or 8 servings But what do you do for 20,000 servings? –acquisition of strawberries, cream, flour, etc. –adequate tools for baking, mixing, keeping cold, etc. –proper procedures for production –storage and serving facilities –etc. Good Management Essential Good Management Nonessential

105 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 105 Ford Clutch Story Assignment: write a manual on how to design a clutch Problem: there is only one person in the company who can design a clutch, and he is in failing health - ought to be retiring Additional Problem: “Mr. Clutch” has always been treated as a hero, and he does not want to lose his stature by giving away his secrets “The first task of a new manager should be to identify all the people you cannot live without and fire them.”

106 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 106 More Software Facts Fact #2: Software has Unique Characteristics that Make it More Difficult to Develop than Many Other Technical Artifacts Software has no natural physical laws – Example: with a mechanical device, increased force will have results within specifiable limits – But software can be made to behave in any fashion Discontinuities are the rule in software, whereas they are the exception in other disciplines – Interpolation, Extrapolation, etc. do not always apply to software

107 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 107 How to Deal with Software’s Lack of Physical Constraints Must understand the architecture and design of the software in order to understand the impact of changes Must preserve accurate design descriptions when the software is in a maintenance mode

108 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 108 Possible Exam Question  Cite and explain at least one aspect of software that makes it harder to develop correctly than other technical artifacts

109 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 109 More Software Facts Fact #3: Software Development is Fun Finding an elusive bug Figuring out how to gain access to obscure files Adding an attractive feature to a new product that is under development

110 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 110 More Software Facts It is too easy for software to end up costing a lot more money, taking a lot more time, and having a lot of excess baggage (unwanted features) The manager must focus the developers’ creativity on the parts that really need creative input

111 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 111 More Software Facts Fact #4: Change is A Constant in Software Development The hardware capabilities change constantly – Memory capacity doubles roughly every 2 years – Processor speed does roughly the same – 1950’s - Mainframe; Assembly Language – 1960’s - Time Sharing; Cobol and Fortran – 1970’s - Minicomputer; Pascal – 1980’s - Personal Computer & Workstations; Lisp and C – 1990’s - Laptops; Information Highway; Object Oriented – 2000’s - ??? (it probably won’t be like today)

112 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 112 Fact #4 (change) - continued The infrastructure for software development changes with a 5-10 year horizon – languages (Assembly-Fortran-Pascal-Ada- Lisp-C-C++-??) GUIs and 4GLs are becoming the dominant languages today – tools (assembler, compiler, linker, CASE, integrated tools) – design methods (flow chart, data flow, information engineering, object oriented methods,...???)

113 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 113 Fact #4 (change) - continued The infrastructure for software development changes with a 5-10 year horizon – recommended procedures and methods – debugging methods – testing approaches Technical obsolescence occurs roughly every 5 years, according to Yourdon and others

114 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 114 Dealing with Change The software manager must keep abreast of change and avoid getting left behind – Alternative -- a career spent maintaining 30 year old Cobol programs But must also avoid change for change sake – Fads are common in software – Programmers like to be pioneers, but pioneers get a lot of arrows in their backs - and their managers get crucified!

115 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 115 Dealing with Change Some fundamental principles do not change – Human nature – Basic theory of computer science – Principles of management – The nature of software (?)

116 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 116 1.4 - Overview of the Planning Process

117 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 117 Notes on Planning “Plans are nothing, planning is everything.” -- Dwight Eisenhower “Plans are nothing” because: -- they represent a best guess based on incomplete knowledge -- they are obsolete as soon as they are complete This does not mean plans should not be used.

118 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 118 Plans Provide a Framework A consistent starting point for all participants – What to do – How to work together – What to expect A basis for organizing – Who needs to be involved A basis for allocating resources A basis for deciding whether or not to go ahead

119 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 119 Golf Analogy The first shot is aimed at the pin It usually moves you in the right direction, but it seldom gets you all the way there That’s why you need a second shot And a third And a fourth And.... And a few extra golfballs

120 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 120 Planning is Everything Planning forces you to understand the issues KNOWLEDGE Knowledge helps you make better decisions EXPECTED DEVELOPMENTS UNEXPECTED PROBLEMS With knowledge, you know when NOT to follow the plan, and why

121 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 121 A Model of the Management Process Plan Monitor Do Assess Software Development

122 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 122 Another Model Software Development Management Process

123 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 123 Another Model Management Risk Management Software Development

124 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 124 Another Model Software Development Risk Management Management

125 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 125 A Model that focuses on Planning Manage Risks Define the Approach Generate Detailed Plans Understand the Need Monitor Execution Note that the cycle continues throughout the software development process

126 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 126 Relationship to Course Manage Risks -- CHAPTER 9 Define the Approach 3.3-3.5 Generate Detailed Plans 4,5,6,7,8 Understand the Need 3.2 Monitor Execution CHAPTERS 10, 11, 12

127 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 127 Summary of Chapter Process is the framework for software engineering and the proper focus of management – the process of developing software – the process of managing software development Risk management is a key part of the total management process

128 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 128 Summary of Chapter (continued) The course combines three elements – Planning – Managing execution – Improving The process is what happens; the process description is how the process is documented

129 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 129 Summary of Chapter (continued) Tools without processes and Methods without processes are insufficient Process representation or documentation must include three key elements: – tasks – artifacts – relationships or sequencing among the above

130 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 130 Summary of Chapter (continued) Human processes must allow flexibility and judgment - that’s what the humans are there for Errors occur in two ways: – Errors in following the process – Errors in the process model

131 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 131 Summary of Chapter (continued) Process improvements can be of several kinds: – Improve the process so that it produces fewer errors or performs more efficiently – Improve the process description so that the agent(s) are less likely to make mistakes The basic principles of quality management – Product quality depends on process quality – Quality improvement comes from process improvements

132 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 132 Summary of Chapter (continued) A process that requires perfect people will fail Automation of the wrong process just does the wrong thing more efficiently There are many myths and facts about software

133 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 133 Summary of Chapter (continued) True artists work with discipline and within the constraints of a medium – The same is true for true artists in the field of software development Software management grows exponentially with the size of the software to be built Software has unique characteristics – Lack of physical constraints – Does not need to follow laws of physics – Discontinuities are common Change is part of the software environment

134 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 134 Summary of Chapter (continued) Plans provide a framework for management Planning is more important than the actual plans Plans must be updated and revised

135 August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved Slide # 135 End of CHAPTER 1


Download ppt "August 13, 2000 CSE 7315 - SW Project Management / Chapter 1 – Software Management Overview Copyright © 1995-2000, Dennis J. Frailey, All Rights Reserved."

Similar presentations


Ads by Google