fe2c41618d344cb34f70d349b654a52b.ppt
- Количество слайдов: 20
CHC-3 Consulting, Inc. Software Process Improvement Chuck Connell www. chc-3. com 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com)
Healing Sick Software Or, What to Do When Your Software Project Is In Trouble… 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com)
Long-term Improvements Much attention lately to strategic improvements in software process CMM (from Carnegie Mellon) and ISO 9001 are prime examples Can have a big payoff, over many projects Can take a long time (18+ months common) 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 3
This Is Great, But… Won’t help when a particular software project is in trouble now Can’t wait a year to solve this week’s crisis (This caveat is stated explicitly in the CMM publications. ) 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 4
For Short-term Crisis We Need… A method to analyze and fix a particular project Must be fast (2 -10 days) Should not interfere with long-term improvements 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 5
Our Method… Look at the qualities a software project must have to stay healthy Identify effort and benefit of each area Use this analysis to develop numerical “snapshot” of project health Take snapshot of troubled project to guide short-term actions 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 6
A. Shared End-Goals What are the long-term plans for this project? What will it do? What will it look like? Should have fairly specific detail Should include all major players If projects lacks this, all other work may be a waste Some projects only have one constituent (the visionary) but this is rare 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 7
B. Modest, Stable Goals for Next Version A short list of specific features for next milestone Should use known methods Should be the same, more or less, every morning Other features broken into equally manageable sets (not forgotten) Common failing of software projects, especially in organizations with lots of $$ Usually requires good (strong) management 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 8
C. Good Internal Design All routines and code should be clean, simple, maintainable, modifiable, and scalable Make it right, don’t just make it work Requires a top-notch, senior engineer For large projects, can be difficult to fix But, fix made easier by cleaning up #A and #B 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 9
D. Realistic Schedule for Next Version Realistic means realistic – include specification, design, coding, testing, debugging, external testing, documentation, training, sick time, personnel changes, etc. Assumes good quality Also requires strong management 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 10
E. Source Control & Automatic Builds A. k. a. configuration management Should be able easily to retrieve and build any previous version Not a technical problem – solvable with existing tools and procedures 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 11
F. Efficient Process to Track and Fix Bugs Bug reporting should be simple and understood by everyone involved No need for bugs to be lost or fixed twice Not a technical problem – solvable with existing tools and procedures 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 12
Impact 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 13
Effort to Improve 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 14
Taking a Project’s Temperature Numerical “snapshot” of a software project’s health Subjective -- but helpful in focusing repair efforts Each item given a value of 1 to 5 (5 is best) with factors at front of list weighted more heavily Overall score is 0 to 100 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 15
Taking a Temperature Example Formula is…. ((A-1)*6 + (B-1)*5 + (C-1)*4 + (D 1)*3 + (E-1)*2 + (F-1)) * (100/84) Not as complex as it looks Equation just weights initial items more heavily and stretches score from 0 to 100 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 16
Example #1 (from audience) A (lt plan), B (st plan) C (design), D (schedule) E (builds), F (bugs) ((A-1)*6 + (B-1)*5 + (C-1)*4 + (D-1)*3 + (E-1)*2 + (F-1)) * (100/84)…. Key point -- results of making improvements… 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 17
Example #2 (from audience) A (lt plan), B (st plan) C (design), D (schedule) E (builds), F (bugs) ((A-1)*6 + (B-1)*5 + (C-1)*4 + (D-1)*3 + (E-1)*2 + (F-1)) * (100/84)…. Key point -- results of making improvements… 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 18
What To Do As shown in the examples, use the snapshot to guide you to trouble spots. Most likely…. Fix #E (source/builds) and #F (bug tracking) – big gain for little work. Then, Fix #A (lt plan), #B (st plan), and #D (schedule) – with help from strong management. Then, Fix #C (design), over several releases 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 19
What To Do Use this model of a healthy project to guide your next project (so it does not get into trouble) Continue long-term, strategic improvements to your organization’s software processes (CMM, ISO) 1/18/00 Copyright 2000 CHC-3 Consulting, Inc. (www. chc-3. com) 20


