Translator's order
order
The first part is the introduction of object-oriented software engineering.
Chapter 65438 +0 The category of object-oriented software engineering 3
1. 1 historical aspect 4
1.2 Economic aspects 6
1.3 Maintenance aspect 6
1.3. 1 modern software maintenance viewpoint 8
1.3.2 Importance of post-delivery maintenance 9
1.4 requirements, analysis and design 10
1.5 team development 1 1
1.6 reasons for not having a planning stage 12
1.7 Why is there no testing phase 12?
1.8 Why is there no document stage 13?
1.9 object-oriented paradigm 13
1. 10 Term 15
1. 1 1 moral issues 17
Review of this chapter 18
Extended reading materials 18
Exercise 19
Reference 20
Chapter 2 Software Life Cycle Model 23
2. 1 ideal software development 23
2.2 Weinberg Small Case Study 23
2.3 Weinberg Small Case Study Experience 25
2.4 Small Case Study of Tractor Company 25
2.5 Iteration and Increment 26
2.6 Weinberg Small Case Study Re-exploration 28
2.7 Iterative and incremental risks and others 29
2.8 Management Iteration and Increment 3 1
2.9 Other life cycle models 3 1
2.9. 1 Writing and changing the life cycle model 32
2.9.2 Waterfall Life Cycle Model 32
2.9.3 Rapid Prototyping Lifecycle Model 33
2.9.4 Open Source Lifecycle Model 34
Agile process 35
2.9.6 Synchronous and stable life cycle model 37
2.9.7 Spiral Life Cycle Model 38
2. 10 life cycle model comparison 40
Comments on this chapter 4 1
Extended reading material 4 1
Exercise 42
Reference 43
Chapter 3 Software Process 46
3. 1 unified process 47
3.2 Iteration and Increment 48
3.3 Requirements Workflow 49
3.4 Analysis workflow 50
3.5 Design workflow 5 1
3.6 Implementing Workflow 52
3.7 Test Workflow 52
3.7. 1 demanded products 53
Analysis product 53
Design products 53
The realization of the product 53
3.8 Maintenance after delivery 54
3.9 Retirement 55
3. 10 stage of the unification process 55
3. 10. 1 initial stage 56
3. 10.2 refinement stage 57
3. 10.3 tectonic stage 58
3. 10.4 handover phase 58
3. 1 1 Comparison of one-dimensional and two-dimensional life cycle models 59
3. 12 improving software flow 60
3. 13 Capability Maturity Model 60
3. 14 Other aspects of software process improvement 62
3. 15 Cost and benefit of software process improvement 62
This chapter reviews 64
Extended reading material 64
Exercise 65
Reference 65
Chapter 4 Software Team 68
4. 1 team organization 68
4.2 Democratic Team Method 69
4.3 Master Programmer Team Mode 70
New york Times Project 7 1
4.3.2 Unrealistic ways of the main programmer team 72
4.4 Beyond Chief Programmer and Democratic Team 72
4.5 Synchronization-Stabilizing the Team 73
4.6 Agile Process Team 74
4.7 Open Source Programming Team 74
4.8 Human Resource Capability Maturity Model 75
4.9 Choosing the Right Team Organization 75
This chapter reviews 76
Extended reading material 76
Exercise 77
Reference 77
Chapter 5 Software Engineering Tools 79
5. 1 Gradual refinement 79
5.2 Cost-benefit analysis method 82
5.3 Software indicators 83
5.4 Case 84
5.5 Classification of Case 85
5.6 Scope of Case 86
5.7 Software Version 88
5.7. 1 version 89
Variant 89
5.8 Configuration Control 89
5.8. 1 Configuration control during post-delivery maintenance 9 1
Baseline 9 1
5.8.3 Configuration control in product development 9 1
5.9 Construction Tools 92
5. 10 using CASE technology to improve productivity 93
Review of this chapter 93
Extended reading material 93
Exercise 94
Reference 95
The sixth chapter test 97
6. 1 quality problem 97
6. 1. 1 software quality assurance 98
6. 1.2 Management independence 98
6.2 Non-execution-based testing 99
Exercise 99
Management drill 100
6.2.3 Review 100
6.2.4 Comparison between walk-through and review 102
6.2.5 advantages and disadvantages of reviewing 102
6.2.6 Review of measurement methods 102
6.3 Testing based on 103
6.4 What should be tested 103
6.4. 1 practicality 104
Reliability 104
6.4.3 Robustness 104
6.4.4 Performance 105
Correctness 105
6.5 Test and correctness clauses 106
6.5. 1 example of correctness clause 106
6.5.2 Small Case Study of Correctness Clause 108
6.5.3 Correctness Proof and Software Engineering 109
6.6 Who will complete the execution-based test 1 1 1?
6.7 When will the test stop 1 12
Review of this chapter 1 12
Extended reading materials 1 12
Exercise 1 13
Reference 1 14
Chapter 7 From Module to Object 1 17
7. 1 What is a module 1 17?
7.2 Cohesion 1 19
7.2. 1 unexpected connection 1 19
Logical coherence 120
7.2.3 Time consistency 120
7.2.4 program connection 12 1
7.2.5 Communicative cohesion 12 1
7.2.6 Functional cohesion 12 1
7.2.7 Information connection 12 1
7.2.8 Cohesion Example 122
7.3 coupling 122
7.3. 1 content coupling 122
7.3.2 coupling with external thread * * * 123
Control coupling 124
7.3.4 Impression coupling 125
Data coupling 125
7.3.6 coupling example 126
7.3.7 Importance of coupling 126
7.4 data encapsulation 127
7.4. 1 data packaging and development 128
7.4.2 Data Packaging and Maintenance 129
7.5 Abstract data type 133
7.6 Information Hiding 134
7.7 Object 135
7.8 Inheritance, Polymorphism and Dynamic Binding 137
7.9 Object-oriented paradigm 139
Review of this chapter 140
Extended reading materials 14 1
Exercise 14 1
Reference 142
Chapter 8 Reusability and Portability 144
8. The concept of1multiplexing 145
8.2 multiplexing obstacle 146
8.3 reuse case study 147
8.3. 1 Raytheon Missile Systems Department 147
European Space Agency 148
8.4 Object and Multiplexing 149
8.5 Reuse in Design and Implementation 149
8.5. 1 design reuse 149
8.5.2 Application Architecture 150
8.5.3 Design pattern 15 1
Software architecture 152
8.5.5 Component-based Software Engineering 153
8.6 More information about design patterns 153
8. 6. 1 small case study 153
8.6.2 Adapter design mode 154
8.6.3 Bridging design mode 154
8.6.4 Iterator design pattern 155
8.6.5 abstract factory design pattern 156
8.7 Categories of Design Patterns 159
8.8 Advantages and disadvantages of design pattern 159
8.9 Reuse and maintenance after delivery 160
8. 10 portability 16 1
Hardware incompatibility 16 1
8. 10.2 Incompatibility of operating system 162
8. 10.3 Incompatibility of numerical calculation software 162
8. Incompatibility of10.4 compiler 163
8. 1 1 Why do you need portability 165?
8. 12 technology to achieve portability 166
8. 12. 1 portable system software 5438+066
8. 12.2 portable application software 166
8. 12.3 portable data 167
8. 12.4 network application 167
Review of this chapter 168
Extended reading materials 168
Exercise 169
Reference 170
Chapter 9 Planning and Estimation 174
9. 1 planning activities and software processes 174
9.2 Estimate the project cycle and cost 175
9.2. 1 measurement standard of product scale 176
9.2.2 Cost estimation technology 178
9.2.3 Intermediate Cocoa 180
9. 2. 4 Computer Information 182
9.2.5 Tracking Cycle and Cost Estimation 183
9.3 Discussion on Estimation 183
9.4 Composition of Software Project Management Plan 184
9.5 Software Project Management Plan Framework 185
9.6IEEE Software Project Management Plan 186
9.7 planned test 188
9.8 Training Requirements 188
9.9 document standard 189
9.65438+ Case Tools for Planning and Evaluation 189
9. 1 1 test software project management plan 190
Review of this chapter 190
Extended reading materials 190
Exercise 19 1
Reference 192
The second part is the software life cycle workflow
Chapter 10 Requirements Workflow 196
Determine what customers need 196
10.2 overview of required workflow 197
Understanding of 10.3 domain 197
10.4 business model 198
10.4. 1 interview 198
10.4.2 other technologies
10.4.3 use case 199
10.5 initial demand 200
10.6 preliminary understanding of application fields: case study of MSG Foundation 200
10.7 initial business model: case study of MSG foundation 202
10.8 initial requirements: MSG Foundation 204 case study.
10.9 continuation of requirement workflow: a case study of MSG Foundation 205
10. 10 Revision Requirements: Case Study of MSG Foundation 206
10. 1 1 testing workflow: MSG foundation case study 2 1 1
10. 12 what is object-oriented requirement 2 17
10. 13 rapid prototyping 2 18
10. 14 Human factors 2 18
10. 15 Multiplex Rapid Prototyping 2 19
10. 16 Case Tool for Requirements Workflow 220
10. 17 Requirements Measurement Workflow 220
10. 18 Demand Challenge Workflow 220
Comments on this chapter 22 1
Extended reading material 222
Exercise 222
Reference 223
Chapter 1 1 Analysis Workflow 224
1 1. 1 specification file 224
1 1.2 informal specification 225
1 1.3 Review the correctness of the small case study 226
1 1.4 analysis workflow 227
1 1.5 Extract Entity Class 228
1 1.6 elevator problem 228
1 1.7 functional modeling: a case study of elevator problems 229
1 1.8 entity class modeling: case study of elevator problem 230
1 1.8. 1 noun extraction 230
1 1. 8. 2 RC card 232
1 1.9 dynamic modeling: a case study of elevator problems 233
1 1. 10 testing workflow: a case study of elevator problems 235
11.11extract boundary class and control class 237
1 1. 12 initial function modeling: a case study of MSG Foundation 238
1 1. 13 initial class diagram: MSG basic case study 239
1 1. 14 Initial Dynamic Modeling: Case Study of MSG Foundation 240
1 1. 15 modify the entity class: a case study of MSG Foundation 242.
1 1. 16 extracting boundary class: a case study of MSG Foundation 243.
1 1. 17 extraction control category: monosodium glutamate basic case study 243
1 1. 18 use case realization: a case study of MSG Foundation 243.
11.18.1Estimated funds can be used for weekly use case 244.
1 1. 18.2 Manager Collection Use Case 248
1 1. 18.3 Update the use case of estimated annualized operating expenses 25 1
1 1. 18.4 producer report use case 252
1 1. 19 class diagram increment: MSG basic case study 256
1 1.20 software project management plan: case study of MSG foundation 257
1 1.2 1 Testing Workflow: Case Study of MSG Foundation 257
1 1.22 specification documents in the process of unification 257
1 1.23 More information about participants and use cases 258
1 1.24 case tools supporting analysis workflow 259
1 1.25 Analyze workflow challenges 259
This chapter reviews 259
Extended reading material 260
Exercise 260
Reference 262
Chapter 12 Design workflow 264
Object-oriented design 264
12.2 object-oriented design: a case study of elevator problems 268
12.3 object-oriented design: a case study of MSG Foundation 270
12.4 design flow 272
12.5 test flow: design 273
12.6 testing workflow: MSG basic case 273
12.7 Formal Technology of Detailed Design 273
12.8 real-time design technology 274
12.9 Case Tools for Design 274
12. 10 design index 275
Challenges in designing workflow 276
This chapter reviews 277
Extended reading material 277
Exercise 277
Reference 278
Chapter 13 Implementing Workflow 280
Select the programming language 280
13.2 good programming practices 282
13.2. 1 Use a consistent and meaningful variable name of 282.
13.2.2 self-recording code problem 283
13.2.3 Use parameter 284
13.2.4 readability code arrangement 284
13.2.5 nested if statement 285
13.3 coding standard 286
13.4 code multiplexing 286
13.5 integration 286
13.5. 1 top-down integration 287
13.5.2 bottom-up integration 288
13.5.3 mezzanine integration 288
13.5.4 integration technology 289
Integrated management 290
13.6 Implementing workflow 290
13.7 Implementing Workflow: A Case Study of MSG Foundation 290
13.8 test workflow: implement 290
13.9 test case selection 290
Specification testing and code testing 29 1
The specification 13.9.2 illustrates the feasibility of testing 29 1
13.9.3 code testing feasibility 29 1
13. 10 black box unit testing technology 293
Equivalence test and boundary value analysis of13.10.64438+0.50000.00000000605
13. 10.2 function test 294
13. 1 1 black box test case: MSG foundation case study 294
13. 12 glass box unit testing technology2996
13. 12. 1 structural test: statement, branch and path coverage 296
13. 12.2 complexity metric 297
13. 13 code drill and review 298
On the comparison of 13. 14 unit testing technology30000.00000000015
13. 15 clean room 298
13. 16 Problems in the test 299
Unit test management 30 1
When to rewrite code product 30 1
13. 19 comprehensive test 302
13.20 product testing 303
13.2 1 acceptance test 303
13.22 Test Process: MSG Basic Case Study 304
13.23 implementation tool 304
13. 23. 65438+ CASE tool used in the whole process of software development/kloc-0 /5666.6666666666866
Integrated development environment 304
Business application environment 305
13.23.4 public tool infrastructure 305
Potential problems of the environment
13.24 CASE tool for testing workflow 306
Implementation of workflow indicators 306
13.26 challenges of implementing workflow 307
This chapter reviews 307
Extended reading material 308
Exercise 309
Reference 3 10
Chapter 14 Maintenance after Delivery 3 13
Development and maintenance of 3 13
14.2 Why do you need post-delivery maintenance 3 14
14.3 What do maintenance programmers need after delivery 3 14
14.4 Small case of after-sales maintenance 3 16
14.5 post-delivery maintenance management 3 17
14.5. 1 defect report317
14.5.2 authorized product modification 3 18
Ensure maintainability.
14.5.4 repeated maintenance problem 3 19
14.6 maintenance problem 3 19
14.7 maintenance skills and development skills after delivery 32 1
14.8 reverse engineering 32 1
14.9 Testing during maintenance after delivery 322
14.65438+ Chassis tool for post-delivery maintenance 323
14. 1 1 maintenance measurement after delivery 323
14. 12 Maintenance after delivery: Case study of MSG Foundation 323
14. 13 challenges of post-delivery maintenance 323
This chapter reviews 323
Extended reading material 324
Exercise 324
Reference 325
Further discussion on UML in chapter 15 327
15. 1UML is not a methodology.
15.2 class diagram 327
15.2. 1 polymerization 328
15.2.2 Multiply 329
15.2.3 combination 329
15.2.4 Summary 330
15.2.5 Association 330
15.3 Note 330
15.4 Use Case Diagram 330
15.5 structure type 33 1
15.6 Interaction Diagram 33 1
15.7 state diagram 333
15.8 Activity Diagram 335
15.9 a pack of 335 PCs.
15. 10 Component Diagram 336
15. 1 1 Deployment Diagram 336
Review of UML diagram 336
15. 13UML and iteration 336
This chapter reviews 337
Extended reading material 337
Exercise 337
Reference 337
Appendix 338
Appendix A Term Project: Project 338 of Aosili Office Supplies and Decoration Company
Appendix B Software Engineering Resources 340
Appendix C Requirements Workflow: MSG Foundation Case Study 34 1
Appendix D Analysis Workflow: MSG Foundation Case Study 34 1
Appendix E Software Engineering Management Plan: MSG Foundation Case Study 34 1
Appendix F Design Workflow: Case Study of MSG Foundation 345
Appendix G Implementing Workflow: Case Study of MSG Foundation (C++ Edition) 349
Appendix H Realizing Workflow: Case Study of MSG Foundation (Java Edition) 349
Appendix I Testing Workflow: Case Study of MSG Foundation 350
……