Details

How to Engineer Software


How to Engineer Software

A Model-Based Approach
1. Aufl.

von: Steve Tockey

111,99 €

Verlag: Wiley
Format: PDF
Veröffentl.: 04.09.2019
ISBN/EAN: 9781119546696
Sprache: englisch
Anzahl Seiten: 1168

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

<p><b>A guide to the application of the theory and practice of computing to develop and maintain software that economically solves real-world problem</b> </p> <p><i>How to Engineer Software</i> 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.</p> <p>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:</p> <ul> <li>Contains many illustrative examples of model-based software engineering, from semantic model all the way to executable code</li> <li>Explains how to derive verification (acceptance) test cases from a semantic model</li> <li>Describes project estimation, along with alternative software development and maintenance processes</li> <li>Shows how to develop and maintain cost-effective software that solves real-world problems</li> </ul> <p>Written for graduate and undergraduate students in software engineering and professionals in the field, <i>How to Engineer Software </i>offers an introduction to applying the theory of computing with practice and judgment in order to economically develop and maintain software.  </p>
<p>Foreword xi</p> <p>Preface xvii</p> <p>Acknowledgments xxv</p> <p>Online Resources xxvii</p> <p><b>Part I Introduction and Foundations 1</b></p> <p>1 Introduction 3</p> <p>2 The Nature of Code 39</p> <p>3 Fundamental Principles 67</p> <p>4 Functional and Nonfunctional Requirements 91</p> <p>5 UML Overview 115</p> <p>6 Partitioning Systems into Domains 125</p> <p><b>Part II Semantic Modeling: Model-based Functional Requirements 151</b></p> <p>7 Use Case Diagrams: Scope and Context 153</p> <p>8 Class Models: Policies to Enforce 183</p> <p>9 Interaction Diagrams: Process at a Mid-Level 237</p> <p>10 State Models: Process at a Fine-Grained Level 261</p> <p>11 Partitioning Domains into Subdomains 305</p> <p>12 Wrapping Up Semantic Modeling 323</p> <p><b>Part III Model-based Design and Code 369</b></p> <p>13 Introduction to Design and Code 371</p> <p>14 Designing Interfaces: Specifying Real-World Interaction 379</p> <p>15 High-Level Design: Classes and Operations 407</p> <p>16 High-Level Design: Contracts and Signatures 447</p> <p>17 Detailed Design and Code 503</p> <p>18 Formal Disciplines of Design and Code 539</p> <p>19 Optimization 583</p> <p>20 Model Compilation 633</p> <p>21 Advanced Open Model Compilation 675</p> <p>22 Wrapping Up Model-Based Design and Code 705</p> <p><b>Part IV Related Topics 723</b></p> <p>23 Estimation 725</p> <p>24 Development and Maintenance Processes 759</p> <p>25 Economics of Error Handling 787</p> <p>26 Arguments Against Model-Based Software Engineering 815</p> <p><b>Part V Summary 827</b></p> <p>27 Closing Remarks 829</p> <p><b>Part VI Appendices 843</b></p> <p>Appendix A: Documentation Principles 845</p> <p>Appendix B: WebBooks 2.0 Background 849</p> <p>Appendix C: WebBooks 2.0 Domains 853</p> <p>Appendix D: Semantic Model for Order fulfillment 857</p> <p>Appendix E: (Pro Forma) Order fulfillment Design 885</p> <p>Appendix F: Semantic Model for Payment 905</p> <p>Appendix G: (Pro Forma) Payment Design 927</p> <p>Appendix H: Semantic Model for Scalability 943</p> <p>Appendix I: (Pro Forma) Scalability Design 969</p> <p>Appendix J: Semantic Model for High availability 985</p> <p>Appendix K: (Pro Forma) High availability Design 1001</p> <p>Appendix L: Semantics of Semantic Modeling 1011</p> <p>Appendix M: Sample Production Rules 1049</p> <p>Appendix N: Software Structural Complexity Metrics 1061</p> <p>References 1081</p> <p>Index 1091 </p>
<p><b>STEVE TOCKEY</b> 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.
<p><b>A guide to the application of the theory and practice of computing to develop and maintain software that economically solves real-world problems</b> <p><i>How to Engineer Software</i> 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. <p>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: <ul> <li>Contains many illustrative examples of model-based software engineering, from semantic model all the way to executable code</li> <li>Explains how to derive verification (acceptance) test cases from a semantic model</li> <li>Describes project estimation, along with alternative software development and maintenance processes</li> <li>Shows how to develop and maintain cost-effective software that solves real-world problems</li> </ul> <p>Written for graduate and undergraduate students in software engineering and professionals in the field, <i>How to Engineer Software</i> offers an introduction to applying the theory of computing with practice and judgment in order to economically develop and maintain software.

Diese Produkte könnten Sie auch interessieren:

MDX Solutions
MDX Solutions
von: George Spofford, Sivakumar Harinath, Christopher Webb, Dylan Hai Huang, Francesco Civardi
PDF ebook
53,99 €
Concept Data Analysis
Concept Data Analysis
von: Claudio Carpineto, Giovanni Romano
PDF ebook
107,99 €
Handbook of Virtual Humans
Handbook of Virtual Humans
von: Nadia Magnenat-Thalmann, Daniel Thalmann
PDF ebook
150,99 €