出版時(shí)間:2008-8 出版社:清華大學(xué)出版社 作者:李彤 頁數(shù):213
內(nèi)容概要
軟件演化是近年來軟件工程領(lǐng)域正逐步受到重視的研究方向,并將得到越來越多的關(guān)注。本書從軟件演化管理的角度,較為系統(tǒng)地討論了軟件演化過程的相關(guān)問題,包括軟件演化過程元模型、軟件演化過程描述語言、軟件演化過程框架、軟件演化過程建模方法、軟件演化過程改進(jìn)等。本書還給出了一個(gè)軟件演化過程的支撐工具,并提供了多個(gè)案例研究。 本書可以作為計(jì)算機(jī)專業(yè)研究生和高年級(jí)本科生的教材和教學(xué)參考書,也可供從事軟件工程的科技人員使用和參考。
書籍目錄
Preface ixList of Figures and Tablesxiii1 Introduction .1 Motivation 1.2 Contributions 1.3 Research Methods 1.4 Success Criteria 1.5 Validation Methods 1.6 Outline References 2 Overview of Software Processes and Software Evolution 8 2.1 Introduction 2.2 Software Processes 2.2.1 Concepts of Software Process 2.2.2 Software Process Modelling and Descriptions 2.2.3 Software Process Modelling and Description Languages 2.2.4 Software Process Improvement and CMM 2.2.5 Software Process Reuse 2.2.6 Process-Centred Software Engineering Environments 2.3 Software Evolution 2.3.1 Concepts of Software Evolution 2.3.2 Software Reengineering 2.3.3 Software Evolution 2.4 Summary References 3 Related Work 3.1 Introduction 3.2 Software Evolution Process 3.3 Concurrency in the Software Life Cycle 3.4 Petri Nets 3.5 Dependence Analysis 3.6 Formal Functional Decomposition 3.7 Summary References 4 Software Evolution Process Meta-Model EPMM 4.1 Introduction 4.2 Properties of Software Evolution Processes 4.3 Iteration in Software Evolution Processes 4.4 Concurrency in Software Evolution Processes 4.4.1 Version Concurrency 4.4.2 Process Concurrency 4.4.3 Sub-Process Concurrency 4.4.4 Phase Concurrency 4.4.5 Activity Concurrency 4.4.6 Task Concurrency 4.5 Static Component Definitions of EPMM 4.5.1 Task 4.5.2 Activity 4.5.3 Software Process 4.5.4 Example: Prototype Evolution Process Model 4.5.5 Global Model 4.6 Dynamic Component Definitions of EPMM 4.7 Supports for Software Evolution Processes 4.8 Summary References 5 Software Evolution Process Description Language EPDL 5.1 Introduction 5.2 Survey of EPDL 5.2.1 Design Goals 5.2.2 Characteristics 5.2.3 Program Structure 5.3 Task 5.4 Activity 5.5 Software Process 5.6 Global Model 5.7 EPDL Program 5.8 Example 5.9 Summary References 6 Framework of Software Evolution Processes 6.1 Introduction 6.2 Framework of Software Evolution Processes 6.3 Steps for Modelling Software Evolution Processes 6.4 Designing Global Models 6.5 Evolution Process Descriptions 6.6 Summary References 7 Designing Processes and Activities 7.1 Introduction 7.2 Designing Processes 7.2.1 Basic Blocks 7.2.2 Software Process Package 7.2.3 Procedure for Modelling Processes 7.3 Designing Activities 7.4 Reuse of Software Evolution Processes 7.4.1 Reuse by Inheritance 7.4.2 Reuse of Basic Blocks 7.4.3 Reuse of Process Packages 7.5 Summary References 8 Designing Tasks 8.1 Introduction 8.2 Procedure of Designing Tasks 8.3 Structures of Functional Decomposition 8.4 Decomposition Rules 8.4.1 Sequence Decomposition 8.4.2 Selection Decomposition 8.4.3 Repetition Decomposition 8.5 Structure of the Knowledge Base 8.5.1 The Case Base 8.5.2 The Segment Base 8.5.3 The Rule Base 8.6 Decomposition 8.6.1 The Decomposition Tree 8.6.2 Match Between Two 2-Assertions 8.6.3 The Decomposition Process 8.6.4 Supports by Modellers 8.7 Summary References 9 Efficiency Improvement of the Software Evolution Processes 9.1 Introduction 9.2 Procedure of Efficiency Improvement 9.3 Dependence Analysis Between Entities 9.3.1 Constructing a Dependence Graph 9.3.2 Localising Dependences 9.4 Reconstructing Process Segments 9.4.1 Preprocessing an ADG 9.4.2 Transformation Rules 9.4.3 Transformation Algorithm 9.4.4 Examples 9.5 Capturing Concurrency within an Activity 9.6 Analysing Dependences Between Partition Blocks 9.7 Extending Concurrency 9.8 Reconstructing Software Processes 9.9 Summary References 10 Support Environment EPT 10.1 Introduction 10.2 Architecture of EPT 10.3 File Depository 10.3.1 Data Structures of EPDL Object Codes 10.3.2 Other Data Structures 10.4 Process Server 10.4.1 Modelling Manager 10.4.2 EPDL Compiler 10.4.3 Runtime Manager 10.5 User Interface and Message Server 10.6 Summary References 11 Case Studies 11.1 Introduction 11.2 First Case Study: The Waterfall Model 11.3 Second Case Study: Three Software Processes Involved in Evolution 11.4 Third Case Study: An Evolution Process of an Information Security System 11.4.1 Background 11.4.2 The Process of Modelling 11.4.3 EPDL Program 11.4.4 White Box Approach 11.4.5 Black Box Approach 11.4.6 Efficiency Improvement 11.5 Fourth Case Study: The Maintenance Process of ISO/IEC 12207 11.5.1 Background 11.5.2 EPDL Program 11.5.3 Activity: Process Implementation 11.5.4 Activity: Problem and Modification Analysis 11.5.5 Activity: Modification Implementation 11.5.6 Activity: Maintenance Review/Acceptance 11.5.7 Activity: Migration 11.5.8 Activity: Software Retirement 11.6 Summary References 12 Conclusions 12.1 Success Criteria Revisited 12.2 Evaluations 12.2.1 Comparison with Osterweil's Approach 12.2.2 Comparison with Lehman's Approach 12.2.3 Evaluations 12.3 Summary 12.4 Future Work 12.4.1 Limitations 12.4.2 Directions for Future Work References Index
圖書封面
評(píng)論、評(píng)分、閱讀與下載