Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 2.1 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Object-Oriented and Classical Software Engineering Fifth Edition, McGraw-Hill,

Similar presentations


Presentation on theme: "Slide 2.1 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Object-Oriented and Classical Software Engineering Fifth Edition, McGraw-Hill,"— Presentation transcript:

1 Slide 2.1 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Object-Oriented and Classical Software Engineering Fifth Edition, McGraw-Hill, 2002

2 Slide 2.2 ©Center for Research in Electronic Commerce, Xiamen University, 2004 CHAPTER 2 THE SOFTWARE PROCESS

3 Slide 2.3 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Overview l Client, Developer, and User l Requirements Phase l Specification Phase l Design Phase l Implementation Phase l Integration Phase l Maintenance Phase l Retirement l Problems with Software Production: Essence and Accidents l Improving the Software Process

4 Slide 2.4 ©Center for Research in Electronic Commerce, Xiamen University, 2004 The Software Process l The life-cycle model l CASE tools l The individuals

5 Slide 2.5 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Terminology l Systems analysis –Requirements + specifications phases l Operations mode –Maintenance l Design –Architectural design, detailed design l Client, developer, user l Internal software development/contract software

6 Slide 2.6 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Testing Phase? l There is NO testing phase l Testing is an activity performed throughout software production l Verification –Performed at the end of each phase l Validation –Performed before delivering the product to the client

7 Slide 2.7 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Documentation Phase? l There is NO documentation phase l Every phase must be fully documented before starting the next phase –Postponed documentation may never be completed –The responsible individual may leave –The product is constantly changing—we need the documentation to do this –The design (for example) will be modified during development, but the original designers may not be available to document it

8 Slide 2.8 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Requirements Phase l Assumption –The software being considered is economically justifiable l Concept exploration –Determine what the client needs, not what the client wants l Moving target problem

9 Slide 2.9 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Requirements Phase Testing l Rapid prototyping

10 Slide 2.10 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Requirements Phase Documentation l Rapid prototype, or l Requirements document

11 Slide 2.11 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Specification Phase l Specifications document (“specifications”) –Legal document –Must not have phrases like “optimal,” or “98% complete” –Specifications must not be »Ambiguous »Incomplete »Contradictory

12 Slide 2.12 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Specification Phase (contd) l Once the specifications have been signed off –The software product management plan (SPMP) is drawn up –This is the earliest possible time for the SPMP

13 Slide 2.13 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Specification Phase Testing l Traceability l Review l Check the SPMP

14 Slide 2.14 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Specification Phase Documentation l Specification document (specifications) l SPMP

15 Slide 2.15 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Design Phase l Specification—what l Design—how l Retain design decisions –When a dead-end is reached –For the maintenance team –Ideally, the design should be open-ended l Architectural design –Decompose the product into modules l Detailed design –Design each module: data structures, algorithms

16 Slide 2.16 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Design Phase Testing l Traceability l Review

17 Slide 2.17 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Design Phase Documentation l Design –Architectural design –Detailed design

18 Slide 2.18 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Implementation Phase l Implement the detailed design in code

19 Slide 2.19 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Implementation Phase Testing l Review l Test cases –Informal testing (desk checking) –Formal testing (SQA)

20 Slide 2.20 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Implementation Phase Documentation l Source code –Test cases (with expected output)

21 Slide 2.21 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Integration Phase l Combine the modules and check the product as a whole

22 Slide 2.22 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Integration Phase Testing l Product testing l Acceptance testing

23 Slide 2.23 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Integration Phase Documentation l Commented source code l Test cases for the product as a whole l User manual l Operation manual l Database manual l Other Manual

24 Slide 2.24 ©Center for Research in Electronic Commerce, Xiamen University, 2004 COTS Software l “Shrink-wrapped software” 收缩薄膜包装软件 l Commercial off-the-shelf (COTS) 商用现货 l Nowadays, COTS software is often downloaded l “Click-wrapped software” 点击包装软件 从互联网上直接下载得到 –Alpha testing –Beta testing

25 Slide 2.25 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Maintenance Phase l Maintenance –Any change once the client has accepted the software l The most money is devoted to this phase l The problem of lack of documentation

26 Slide 2.26 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Maintenance Phase Testing l Regression testing

27 Slide 2.27 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Maintenance Phase Documentation l Record of all changes made, with reasons l Regression test cases

28 Slide 2.28 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Retirement l Good software is maintained l Sometimes software is rewritten from scratch –Software is now unmaintainable because »A drastic change in design has occurred »The product must be implemented on a totally new hardware/operating system »Documentation is missing or inaccurate »Hardware is to be changed—it may be cheaper to rewrite the software from scratch than to modify it l True retirement is a rare event

29 Slide 2.29 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Process-Specific Difficulties l Does the product meets the user’s real needs? l Is the specification document free of ambiguities, contradictions, and omissions?

30 Slide 2.30 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Inherent Problems of Software Production l Hardware has inherent limits l So does software l No Silver Bullet –Complexity –Conformity –Changeability –Invisibility l Aristotelian categories –Essence –Accidents

31 Slide 2.31 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Complexity l Software is far more complex than hardware –Traditional abstraction will not work –We cannot understand the whole, so we cannot understand any part –Management is difficult –Maintenance is a nightmare (documentation, too)

32 Slide 2.32 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Conformity l Type 1: Existing gold refinery l Type 2: New gold refinery

33 Slide 2.33 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Changeability l Software is easier to change than hardware l Pressure to change –Reality –Useful software –Easier to change –Software has a long lifetime (~15 yrs) compared to hardware (~4 yrs)

34 Slide 2.34 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Invisibility l Software is invisible and unvisualizable l Complete views are incomprehensible l Partial views are misleading l However, all views can be helpful

35 Slide 2.35 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Is There a Silver Bullet? l What about –High-level languages –Time sharing –CASE tools l These did not solve the intrinsic problems l We have experienced –6% annual productivity increase l But, no “silver bullet” (order-of- magnitude increase) is possible

36 Slide 2.36 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Improving the Software Process l U.S. Department of Defense initiative l Software Engineering Institute (SEI) l The fundamental problem with software –The software process is badly managed

37 Slide 2.37 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Improving the Software Process (contd) l Software process improvement initiatives –Capability maturity model (CMM) –ISO 9000-series –ISO/IEC 15504

38 Slide 2.38 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Capability Maturity Model l Not a life-cycle model l Set of strategies for improving the software process –SW–CMM for software –P–CMM for human resources (“people”) –SE–CMM for systems engineering –IPD–CMM for integrated product development –SA–for software acquisition l These strategies are being unified into CMMI (capability maturity model integration)

39 Slide 2.39 ©Center for Research in Electronic Commerce, Xiamen University, 2004 SW–CMM l A strategy for improving the software process –Put forward in 1986 by the SEI –Fundamental idea: –Improving the software process leads to »Improved software quality »Delivery on time, within budget –Improved management leads to »Improved techniques l Five levels of “maturity” are defined –Organization advances stepwise from level to level

40 Slide 2.40 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Level 1. Initial Level l Ad hoc approach –Entire process is unpredictable –Management consists of responses to crises l Most organizations world-wide are at level 1

41 Slide 2.41 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Level 2. Repeatable Level l Basic software management –Management decisions should be made on the basis of previous experience with similar products –Measurements (“metrics”) are made –These can be used for making cost and duration predictions in the next project –Problems are identified, immediate corrective action is taken

42 Slide 2.42 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Level 3. Defined Level l The software process is fully documented –Managerial and technical aspects are clearly defined –Continual efforts are made to improve quality, productivity –Reviews are performed to improve software quality –CASE tools are applicable now (and not at levels 1 or 2)

43 Slide 2.43 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Level 4. Managed Level l Quality and productivity goals are set for each project –Quality, productivity are continually monitored –Statistical quality controls are in place

44 Slide 2.44 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Level 5. Optimizing Level l Continuous process improvement –Statistical quality and process controls –Feedback of knowledge from each project to the next

45 Slide 2.45 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Summary

46 Slide 2.46 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Key Process Areas l There are key process areas (KPAs) for each level l Level 2 KPAs include: –Requirements management –Project planning –Project tracking –Configuration management –Quality assurance l Compare –Level 2: Detection and correction of faults –Level 5: Prevention of faults

47 Slide 2.47 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Experience l It takes: –3 to 5 years to get from level 1 to level 2 –1.5 to 3 years from level 2 to level 3 –SEI questionnaires highlight shortcomings, suggest ways to improve the process l Original idea: Defense contracts would be awarded only to capable firms

48 Slide 2.48 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Experience (contd) l Profitability –Hughes Aircraft (Fullerton, CA) spent $500K (1987–90) »Savings: $2M per year, moving from level 2 to level 3 –Raytheon moved from level 1 in 1988 to level 3 in 1993 »Productivity doubled »Return of $7.70 per dollar invested in process improvement

49 Slide 2.49 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Other SPI Initiatives l Other software process improvement (SPI) initiatives: –ISO 9000-series –ISO/IEC 15504

50 Slide 2.50 ©Center for Research in Electronic Commerce, Xiamen University, 2004 ISO 9000 l Set of five standards for industrial activities –ISO 9001 for quality systems –ISO 9000-3, guidelines to apply ISO 9001 to software –There is an overlap with CMM, but they are not identical –Not process improvement –Stress on documenting the process –Emphasis on measurement and metrics –ISO 9000 is required to do business with the E.U. –Also by many U.S. businesses, for example, GE –More and more U.S. businesses are ISO 9000 certified

51 Slide 2.51 ©Center for Research in Electronic Commerce, Xiamen University, 2004 ISO/IEC 15504 l Original name: Software Process Improvement Capability dEtermination (SPICE) –International process improvement initiative –Started by British Ministry of Defence (MOD) –Includes process improvement, software procurement –Extends and improves CMM, ISO 9000 –Framework, not a method »CMM, ISO 9000 conform to this framework –Now referred to as ISO/IEC 15504 –Or just 15504 for short

52 Slide 2.52 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Process Improvement Data l SEI report on 13 organizations in the original study l They used a variety of process improvement techniques, not just SW–CMM

53 Slide 2.53 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Process Improvement Data (contd) l Results of 34 Motorola projects

54 Slide 2.54 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Q A &


Download ppt "Slide 2.1 ©Center for Research in Electronic Commerce, Xiamen University, 2004 Object-Oriented and Classical Software Engineering Fifth Edition, McGraw-Hill,"

Similar presentations


Ads by Google