How to Engineer Software
Wiley-Blackwell (Verlag)
978-1-119-54662-7 (ISBN)
How to Engineer Software is a practical, how-to guide that explores the concepts and techniques of model-based software engineering using the Unified Modeling Language. The author—a noted expert on the topic—demonstrates how software can be developed and maintained under a true engineering discipline. He describes the relevant software engineering practices that are grounded in Computer Science and Discrete Mathematics.
Model-based software engineering uses semantic modeling to reveal as many precise requirements as possible. This approach separates business complexities from technology complexities, and gives developers the most freedom in finding optimal designs and code. The book promotes development scalability through domain partitioning and subdomain partitioning. It also explores software documentation that specifically and intentionally adds value for development and maintenance. This important book:
Contains many illustrative examples of model-based software engineering, from semantic model all the way to executable code
Explains how to derive verification (acceptance) test cases from a semantic model
Describes project estimation, along with alternative software development and maintenance processes
Shows how to develop and maintain cost-effective software that solves real-world problems
Written for graduate and undergraduate students in software engineering and professionals in the field, How to Engineer Software offers an introduction to applying the theory of computing with practice and judgment in order to economically develop and maintain software.
STEVE TOCKEY is Principal Consultant at Construx. Steve is an expert in software engineering practices including object-oriented development, distributed object computing, software project management, and software quality. He earned a Masters of Software Engineering degree from Seattle University and has served as an adjunct faculty member for the program. Prior to joining Construx, Tockey worked at Lawrence Livermore National Laboratory, Boeing, and Rockwell Collins.
Foreword xi
Preface xvii
Acknowledgments xxv
Online Resources xxvii
Part I Introduction and Foundations 1
1 Introduction 3
2 The Nature of Code 39
3 Fundamental Principles 67
4 Functional and Nonfunctional Requirements 91
5 UML Overview 115
6 Partitioning Systems into Domains 125
Part II Semantic Modeling: Model-based Functional Requirements 151
7 Use Case Diagrams: Scope and Context 153
8 Class Models: Policies to Enforce 183
9 Interaction Diagrams: Process at a Mid-Level 237
10 State Models: Process at a Fine-Grained Level 261
11 Partitioning Domains into Subdomains 305
12 Wrapping Up Semantic Modeling 323
Part III Model-based Design and Code 369
13 Introduction to Design and Code 371
14 Designing Interfaces: Specifying Real-World Interaction 379
15 High-Level Design: Classes and Operations 407
16 High-Level Design: Contracts and Signatures 447
17 Detailed Design and Code 503
18 Formal Disciplines of Design and Code 539
19 Optimization 583
20 Model Compilation 633
21 Advanced Open Model Compilation 675
22 Wrapping Up Model-Based Design and Code 705
Part IV Related Topics 723
23 Estimation 725
24 Development and Maintenance Processes 759
25 Economics of Error Handling 787
26 Arguments Against Model-Based Software Engineering 815
Part V Summary 827
27 Closing Remarks 829
Part VI Appendices 843
Appendix A: Documentation Principles 845
Appendix B: WebBooks 2.0 Background 849
Appendix C: WebBooks 2.0 Domains 853
Appendix D: Semantic Model for Order fulfillment 857
Appendix E: (Pro Forma) Order fulfillment Design 885
Appendix F: Semantic Model for Payment 905
Appendix G: (Pro Forma) Payment Design 927
Appendix H: Semantic Model for Scalability 943
Appendix I: (Pro Forma) Scalability Design 969
Appendix J: Semantic Model for High availability 985
Appendix K: (Pro Forma) High availability Design 1001
Appendix L: Semantics of Semantic Modeling 1011
Appendix M: Sample Production Rules 1049
Appendix N: Software Structural Complexity Metrics 1061
References 1081
Index 1091
Erscheinungsdatum | 05.10.2019 |
---|---|
Verlagsort | Hoboken |
Sprache | englisch |
Maße | 152 x 231 mm |
Gewicht | 1497 g |
Themenwelt | Technik ► Elektrotechnik / Energietechnik |
ISBN-10 | 1-119-54662-1 / 1119546621 |
ISBN-13 | 978-1-119-54662-7 / 9781119546627 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich