| 作 者: | Ian Sommerville |
| 出版社: | 机械工业出版社 |
| 丛编项: | 经典原版书库 |
| 版权说明: | 本书为公共版权或经版权方授权,请支持正版图书 |
| 标 签: | 暂缺 |
| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
Part 1 Overview
Chapter 1 Introduction
1.1 FAQs about software engineering
1.2 Professional and ethical responsibility
Chapter 2 Computer-based System Engineering
2.1 Emergent system properties
2.2 Systems and their environment
2.3 System modelling
2.4 The system engineering process
2.5 System procurement
Chapter 3 Software Processes
3.1 Software process models
3.2 Process iteration
3.3 Software specification
3.4 Software design and implementation
3.5 Software validation
3.6 Software evolution
3.7 Automated process support
Chapter 4 Project Management
4.1 Management activities
4.2 Project planning
4.3 Project scheduling
4.4 Risk management
Part 2 Requirements
Chapter 5 Software Requirements
5.1 Functional and non-functional requirements
5.2 User requirements
5.3 System requirements
5.4 The software requirements document
Chapter 6 Requirements Engineering Processes
6.1 Feasibility studies
6.2 Requirements elicitation and analysis
6.3 Requirements validation
6.4 Requirements management
Chapter 7 System Models
7.1 Context models
7.2 Behavioural models
7.3 Data models
7.4 Object models
7.5 CASE workbenches
Chapter 8 Software Prototyping
8.1 Prototyping in the software process
8.2 Rapid prototyping techniques
8.3 User interface prototyping
Chapter 9 Formal Specification
9.1 Formal specification in the software process
9.2 Interface specification
9.3 Behavioural specification
Part 3 Design
Chapter 10 Architectural Design
10.1 System structuring
10.2 Control models
10.3 Modular decomposition
10.4 Domain-specific architectures
Chapter 11 Distributed Systems Architectures
11.1 Multiprocessor architectures
11.2 Client-server architectures
11.3 Distributed object architectures
11.4 CORBA
Chapter 12 Object-oriented Design
12.1 Objects and object classes
12.2 An object-oriented design process
12.3 Design evolution
Chapter 13 Real-time Software Design
13.1 System design
13.2 Real-time executives
13.3 Monitoring and control systems
13.4 Data acquisition systems
Chapter 14 Design with Reuse
14.1 Component-based development
14.2 Application families
14.3 Design patterns
Chapter 15 User Interface Design
15.1 User interface design principles
15.2 User interaction
15.3 Information presentation
15.4 User support
15.5 Interface evaluation
Part 4 Critical Systems Engineering
Chapter 16 Dependability
16.1 Critical systems
16.2 Availability and reliability
16.3 Safety
16.4 Security
Chapter 17 Critical Systems Specification
17.1 Software reliability specification
17.2 Safety specification
17.3 Security specification
Chapter 18 Critical Systems Development
18.1 Fault minimisation
18.2 Fault tolerance
18.3 Fault tolerant architectures
18.4 Safe system design
Part 5 Verification and Validation
Chapter 19 Verification and Validation
19.1 Verification and validation planning
19.2 Software inspections
19.3 Automated static analysis
19.4 Cleanroom software development
Chapter 20 Software Testing
20.1 Defect testing
20.2 Integration testing
20.3 Object-oriented testing
20.4 Testing workbenches
Chapter 21 Critical Systems Validation
21.1 Formal methods and critical systems
21.2 Reliability validation
21.3 Safety assurance
21.4 Security assessment
Part 6 Management
Chapter 22 Managing People
22.1 Limits to thinking
22.2 Group working
22.3 Choosing and keeping people
22.4 The people capability maturity model
Chapter 23 Software Cost Estimation
23.1 Productivity
23.2 Estimation techniques
23.3 Algorithmic cost modelling
23.4 Project duration and staffing
Chapter 24 Quality Management
24.1 Quality assurance and standards
24.2 Quality planning
24.3 Quality control
24.4 Software measurement and metrics
Chapter 25 Process Improvement
25.1 Process and product quality
25.2 Process analysis and modelling
25.3 Process measurement
25.4 The SEI process capability maturity model
25.5 Process classification
Part 7 Evolution
Chapter 26 Legacy Systems
26.1 Legacy system structures
26.2 Legacy system design
26.3 Legacy system assessment
Chapter 27 Software Change
27.1 Program evolution dynamics
27.2 Software maintenance
27.3 Architectural evolution
Chapter 28 Software Re-engineering
28.1 Source code translation
28.2 Reverse engineering
28.3 Program structure improvement
28.4 Program modularisation
28.5 Data re-engineering
Chapter 29 Configuration Management
29.1 Configuration management planning
29.2 Change management
29.3 Version and release management
29.4 System building
29.5 CASE tools for configuration management
Key points
Further reading
Exercises
References
Index