Guidelines for MBASE

Guidelines for
Lean Model-Based (System) Architecting and
Software Engineering (LeanMBASE)

Sections

Sections ii

Version History iv

Table of Contents v

Table of Figures xiii

Table of Tables xiv

General Guidelines 1

Operational Concept Description (OCD) 6

System and Software Requirements Definition (SSRD) 19

System and Software Architecture Description (SSAD) 31

Life Cycle Plan (LCP) 51

Feasibility Rationale Description (FRD) 60

Construction, Transition, & Support (CTS) 81

Iteration Plan 87

Iteration Assessment Report 89

Release Description 91

Quality Management Plan (QMP) 93

Test Plan and Cases 98

Test Procedures and Results 103

Peer Review Plan 106

Peer Review Report 112

Transition Plan 115

Software User's Manual 117

System and Software Support Plan (SSSP) 119

Training Plan 122

Description 122

Sources and References 123

Appendices 125

Appendix A. Suggested Win–Win Taxonomy for MBASE 126

Appendix B. Level of Service Requirements 128

Appendix C. COMMON DEFINITION LANGUAGE (CDL) for MBASE 133

Appendix D. Status Reports 139

Index 143

LeanMBASE_Guideline_V1.1 iii Version Date: 9/17/2005

Guidelines for MBASE Guidelines for MBASE

Version History

Date / Author / Version / Changes made /
08/20/05 / Dr.Barry Boehm, David Klappholz, Ed Colbert, Prajakta Puri, Apurva Jain, Jesal Bhuta, Hasan Kitapci / 1.0 / ·  Initial version
09/17/05 / Dr.Barry Boehm, Prajakta Puri / 1.1 / ·  Updated CTS documents

LeanMBASE_Guideline_V1.1 iii Version Date: 9/17/2005

Guidelines for MBASE Table of Contents

Table of Contents

Sections ii

Version History iv

Table of Contents v

Table of Figures xiii

Table of Tables xiv

General Guidelines 1

A. Overview of LeanMBASE 1

B. General Formatting Guidelines 5

C. Final Remark 5

Operational Concept Description (OCD) 6

A. Description of the OCD 6

1. Purpose of the OCD 6

2. OCD Life Cycle Process 6

3. Completion Criteria for the OCD 7

3.1 Inception Readiness 7

3.2 Life Cycle Objectives (LCO) 7

3.3 Life Cycle Architecture (LCA) 7

3.4 Initial Operational Capability (IOC) 7

B. Sections of the OCD Document 8

1. OCD Overview 8

1.1 Introduction to the OCD 8

1.2 References 8

2. Shared Vision 9

2.1 System Capability Description 9

2.2 Expected Benefits 10

2.3 Benefits Chain (Initiatives, Expected Outcomes, and Assumptions) 10

2.4 Success Critical Stakeholders 12

2.5 System Boundary and Environment 12

3. System Transformation 13

3.1 Capability Goals 13

3.2 Proposed New Operational Concept 14

3.3 Organizational and Operational Implications 17

4. Easy Win-Win Results 18

System and Software Requirements Definition (SSRD) 19

A. Description of the SSRD 19

1. Purpose of the SSRD 19

2. Completion Criteria for the SSRD 19

2.1 Life Cycle Objectives (LCO) 21

2.2 Life Cycle Architecture (LCA) 21

2.3 Initial Operational Capability (IOC) 21

B. Sections of the SSRD Document 21

1. SSRD Overview 22

1.1 Status of the SSRD 22

1.2 References 22

2. Project Requirements 22

2.1 Budget and Schedule 23

2.2 Development Requirements 23

2.3 Deployment Requirements 24

2.4 Transition Requirements 25

2.5 Support Environment Requirements 25

3. Capability (Functional/Product) Requirements 25

4. System Interface Requirements 26

4.1 User Interface Standards Requirements 27

4.2 Hardware Interface Requirements 27

4.3 Communications Interface Requirements 27

4.4 Other Software Interface Requirements 27

5. Level of Service (L.O.S.) Requirements 28

6. Versions, States and Modes 29

7. Evolutionary Requirements 29

8. Appendices 30

System and Software Architecture Description (SSAD) 31

A. Description 31

1. Purpose 31

2. Completion Criteria 31

2.1 Life Cycle Objectives (LCO) 31

2.2 Life Cycle Architecture (LCA) 31

2.3 Initial Operational Capability (IOC) 32

B. Document Sections 32

1. Introduction 32

1.1 Purpose of the SSAD Document 32

1.2 Standards and Conventions 32

1.3 References 33

2. System Analysis 33

2.1 Structure 33

2.2 Artifacts & Information 34

2.3 Behavior 34

3. Platform Independent Model 35

3.1 Structure 35

3.2 Data Model 40

3.3 Behavior 41

3.4 Architectural Styles, Patterns & Frameworks 41

4. Platform Specific Model 42

4.1 Structure 42

4.2 Behavior 49

4.3 Patterns & Frameworks 50

4.4 Project Artifacts 50

5. Glossary for System Analysis and Design 50

6. Appendices 50

Life Cycle Plan (LCP) 51

A. Description of the LCP 51

1. Purpose 51

2. LCP Life Cycle Process 51

3. Completion Criteria 52

3.1 Life Cycle Objectives (LCO) 52

3.2 Life Cycle Architecture (LCA) 53

3.3 Initial Operational Capability (IOC) 53

B. Sections of the LCP Document 53

1. Introduction 53

1.1 Status of the LCP Document 53

1.2 Assumptions 53

1.3 References 54

2. Milestones and Products 54

2.1 Overall Strategy 54

2.2 Phases 55

2.3 Project Deliverables 55

3. Responsibilities 56

3.1 Overall Summary 56

3.2 By Phase / Stage 57

4. Approach 58

5. Resources 58

6. Appendix 59

Feasibility Rationale Description (FRD) 60

A. Description of the FRD 60

1. Purpose 60

2. FRD Life Cycle Process 60

3. Completion Criteria 61

3.1 Life Cycle Objectives (LCO) 61

3.2 Life Cycle Architecture (LCA) 61

3.3 Initial Operational Capability (IOC) 61

B. Sections of the FRD Document 61

1. Introduction 61

1.1 Status of the FRD Document 61

1.2 References 62

2. Business Case Analysis 62

3. Requirements Traceability 63

4. Level of Service Feasibility 65

5. Process Feasibility 66

6. Risk Assessment 67

7. Analysis Results 68

7.1 Introduction 69

7.2 System Structure 70

7.3 COTS, Legacy, Custom Components and Connectors Description 72

7.4 Component Interaction Evaluation 76

7.5 Evaluation Summary 79

8. Appendix 80

Construction, Transition, & Support (CTS) 81

A. General Construction Process Guidelines 81

B. Guidelines for the Deliverables 83

C. General Guidelines for Plans and Reports 85

Iteration Plan 87

A. Description 87

1. Purpose 87

2. High-Level Dependencies 87

B. Document Sections 87

1. Iteration Overview 87

1.1 Capabilities to be Implemented 87

1.2 Capabilities to be Tested 88

1.3 Capabilities not to be tested 88

2. Plan 88

2.1 Schedule and Resources for Activities 88

2.2 Team Responsibilities 88

3. Assumptions 88

Iteration Assessment Report 89

A. Description 89

1. Purpose 89

2. Additional Information 89

B. Document Sections 89

1. Overview 89

1.1 Capabilities Implemented 89

1.2 Summary of Test Results 89

2. Adherence to Plan 89

3. External Changes Occurred 90

4. Suggested Actions 90

Release Description 91

A. Description 91

1. Purpose 91

2. High-Level Dependencies 91

B. Document Sections 91

1. About This Release 91

1.1 Physical Inventory of materials released 91

1.2 Inventory of software contents 91

2. Compatibility Notes 91

3. Upgrading 91

4. New Features and Important Changes 92

4.1 New Features 92

4.2 Changes since previous release 92

4.3 Upcoming Changes 92

5. Known Bugs and Limitations 92

Quality Management Plan (QMP) 93

A. Description 93

1. Purpose 93

2. Quality Focal Point 93

3. Additional Information 93

4. High-Level Dependencies 93

B. Document Sections 94

1. Purpose 94

1.1 Overview 94

1.2 References 94

2. Quality Guidelines 94

2.1 Design Guidelines 94

2.2 Coding Guidelines 94

2.3 Quality Assessment Methods 94

2.4 Process Assurance 95

2.5 Product Assurance 95

2.6 Problem Reporting and Tracking System 96

2.7 Configuration Management 96

Test Plan and Cases 98

A. Description 98

1. Purpose 98

2. High-Level Dependencies 98

B. Document Section 99

1. Introduction 99

1.1 Purpose of the Test Plan 99

1.2 References 99

2. Environment Preparation 99

2.1 Hardware preparation 99

2.2 Software preparation 99

2.3 Other pre-test preparations 100

3. Test Identification 100

3.1 Test Identifier 100

4. Resources 101

4.1 Responsibilities 101

4.2 Staffing and Training Needs 101

4.3 Other resource allocations 102

5. Test Completion Criteria 102

Test Procedures and Results 103

A. Description 103

1. Purpose 103

2. High Level Dependencies 103

B. Document Sections 103

1. Introduction 103

1.1 Purpose 103

1.2 References 103

2. Test Preparation 104

3. Test Case Description 104

4. Test Incident Reports 104

4.1 Incident Description 104

4.2 Impact 104

5. Test Log 104

6. Test Summary 105

6.1 Overall assessment of the software tested: 105

6.2 Impact of test environment: 105

6.3 Recommended improvements: 105

7. Operational Test and Evaluation 105

7.1 Evaluation Criteria 105

7.2 Outline of Operational Test and Evaluation Report 105

Peer Review Plan 106

A. Description 106

1. Purpose 106

2. High-Level Dependencies 106

B. Document Sections 106

1. Purpose 106

1.1 Overview 106

1.2 References 106

2. Peer Review Items, Participants and Roles 106

3. Peer Review Process 106

4. Classification of Defects 107

4.1 Priority and Criticality 107

4.2 Classification 107

5. Appendices: Forms for Peer Review Data Gathering 107

Peer Review Report 112

A. Description 112

1. Purpose 112

B. Document Sections 112

1. Purpose 112

1.1 Overview 112

1.2 References 112

2. Individual Inspection-like Peer Reviews 112

2.1 Participants and Roles 112

2.2 Peer Review Items 112

2.3 Pre-Peer Review Meeting Defect Data 112

2.4 Peer Review Meeting Defect Data 113

2.5 Post-Peer Review Meeting Defect Data 113

2.6 Peer Review Statistics 113

2.7 Defect Correction and Rework 113

3. Peer Review Summary Information 114

3.1 Peer Reviews' Performed 114

3.2 Peer Review Results 114

4. Appendix 114

Transition Plan 115

A. Description 115

1. Purpose 115

2. High-Level Dependencies 115

B. Document Sections 115

1. Transition Strategy 115

1.1 Transition Objectives 115

1.2 Transition Process Strategy 115

2. Preparing for Transition 116

2.1 Hardware Preparation 116

2.2 Software Preparation 116

2.3 Site Preparation 116

3. Stakeholder Roles and Responsibilities 116

Software User's Manual 117

A. Description 117

1. Purpose 117

2. High-Level Dependencies 117

B. Document Sections 117

1. Introduction 117

1.1 System Overview 117

1.2 System Requirements 117

2. Operational Procedures 117

3. Installation Procedures 117

3.1 Initialization Procedures 118

3.2 Re-installation 118

3.3 De-installation 118

4. Troubleshooting 118

4.1 Frequently Asked Questions 118

4.2 Error Codes and Messages 118

5. Notes 118

System and Software Support Plan (SSSP) 119

A. Description 119

1. Purpose 119

2. High-Level Dependencies 119

B. Document Sections 119

1. Support Objectives and Assumptions 119

1.1 Support Objectives 119

1.2 Support 119

2. Support Strategy 120

3. Support Environment 120

4. Support Responsibilities 121

Training Plan 122

Description 122

1. Purpose 122

B. Document Sections 122

1. Schedule and Participants 122

1.1 Training Schedule 122

1.2 Measure of Success 122

1.3 Training of Others 122

2. Tutorial and Sample Data 122

3. Training Feedback 122

Sources and References 123

A. Overall 123

B. Operational Concept Description 123

C. System and Software Requirements Definition 124

D. System and Software Architecture Description 124

E. Life Cycle Plan 124

Appendices 125

Appendix A. Suggested Win–Win Taxonomy for MBASE 126

Appendix B. Level of Service Requirements 128

Appendix C. COMMON DEFINITION LANGUAGE (CDL) for MBASE 133

Appendix D. Status Reports 139

Index 143

Table of Figures

Figure 1: Benefits Chain Notation 11

Figure 2: Example Sierra Mountainbikes Order Processing Benefits Chain 11

Figure 3: Notation to be used for System Boundary and Context 12

Figure 4: Example System Boundary and Context 13

Figure 5: Example Entity Relationship Diagram 15

Figure 6: Example Business Workflow 16

Figure 7: Architecture 1: Images stored on FTP Server: 71

Figure 8: Architecture 2: Image stored in the database: 72

Figure 9: Sequence diagram for Java business logic, Java-Mysql database connector, and Mysql database. 78

Figure 10: Area of Concern Log Form 108

Figure 11: Problems/Issuer Log Cover Sheet Form 109

Figure 12: Field Descriptions for the Areas of Concern Log 110

Figure 13: Field Descriptions for Artifact Review Problem List 111

Table of Tables

Table 1: Differences between Current and Proposed System 14

Table 2: Table of Level of Service Goals 16

Table 3: Requirements Attributes Documentation Overview 20

Table 4: Project Requirement 23

Table 5: Capability Requirement 26

Table 6: System Interface Requirement 26

Table 7: Level of Service Requirement 28

Table 8: MARS 29

Table 9: Stakeholder responsibilities during software life cycle 57

Table 10: Tracibility Matrix 63

Table 11: Level of Service Product and Process Strategies 65

Table 12: Process Model Decision Table 66

Table 13: Conditions for Additional Complementary Process Model Options 67

Table 14: Software Risk Management Techniques 68

Table 15: COTS Description 73

Table 16: MySQL Database Management System Component Description 74

Table 17: MSAccess Database Management System Component Description 74

Table 18: MySQL- JDBC Database Connector Description 75

Table 19: Test Table 76

Table 20: Test Table for a test of the interaction of Java Business Logic, MySQL-JDBC Database Connector, and MySQL database 78

Table 21: Example of Evaluation Summary 79

Table 22: Test Cases 100

Table 23: Test Completion Criteria 102

Table 24: Test Procedure Template 104

Table 25: Training Schedule 122

LeanMBASE_Guideline_V1.1 iii Version Date: 9/17/2005

Guidelines for MBASE General Guidelines

General Guidelines

Every CS577a student, regardless of which system definition element’s writing (OCD, SSRD, SSAD, LCP, FRD) s/he is going to concentate on, should read this document, through the end of the section entitled Feasibility Rationale Description, before starting to write anything. The reason is that consistency among the various elements is critical to project success, and it’s hard to maintain consistency if you don’t know what type of information will appear in all the elements. Additionally, each student should read these general guidelines carefully before proceeding to the guidelines for the individual software system definition elements that must be produced and delivered by each CS577 team.

A.  Overview of LeanMBASE

“Lean Model-based System Architecting and Software Engineering” (LeanMBASE) is an approach to the development of software systems that integrates the system’s process (PS), product (PD), property (PY) and success (SS) models, models that are documented in the following system definition elements (also referred to as “artifacts” or “deliverables”):

·  Operational Concept Description (OCD)

·  System and Software Requirements Definition (SSRD)

·  System and Software Architecture Description (SSAD)

·  Life Cycle Plan (LCP)

·  Feasibility Rationale Description (FRD)