Agile Modeling with UML: Code Generation, Testing, Refactoring

Bernhard Rumpe

  • 出版商: Springer
  • 出版日期: 2018-07-25
  • 售價: $3,670
  • 貴賓價: 9.5$3,487
  • 語言: 英文
  • 頁數: 404
  • 裝訂: Paperback
  • ISBN: 3319864947
  • ISBN-13: 9783319864945
  • 相關分類: UMLAgile SoftwareRefactoring
  • 海外代購書籍(需單獨結帳)

商品描述

This book focuses on the methodological treatment of UML/P and addresses three core topics of model-based software development: code generation, the systematic testing of programs using a model-based definition of test cases, and the evolutionary refactoring and transformation of models. For each of these topics, it first details the foundational concepts and techniques, and then presents their application with UML/P. This separation between basic principles and applications makes the content more accessible and allows the reader to transfer this knowledge directly to other model-based approaches and languages.

After an introduction to the book and its primary goals in Chapter 1, Chapter 2 outlines an agile UML-based approach using UML/P as the primary development language for creating executable models, generating code from the models, designing test cases, and planning iterative evolution through refactoring. In the interest of completeness, Chapter 3 provides a brief summary of UML/P, which is used throughout the book. Next, Chapters 4 and 5 discuss core techniques for code generation, addressing the architecture of a code generator and methods for controlling it, as well as the suitability of UML/P notations for test or product code.  Chapters 6 and 7 then discuss general concepts for testing software as well as the special features which arise due to the use of UML/P. Chapter 8 details test patterns to show how to use UML/P diagrams to define test cases and emphasizes in particular the use of functional tests for distributed and concurrent software systems. In closing, Chapters 9 and 10 examine techniques for transforming models and code and thus provide a solid foundation for refactoring as a type of transformation that preserves semantics.

Overall, this book will be of great benefit for practical software development, for academic training in the field of Software Engineering, and for research in the area of model-based software development. Practitioners will learn how to use modern model-based techniques to improve the production of code and thus significantly increase quality. Students will find both important scientific basics as well as direct applications of the techniques presented. And last but not least, the book will offer scientists a comprehensive overview of the current state of development in the three core topics it covers.

商品描述(中文翻譯)

本書專注於UML/P的方法論處理,並探討基於模型的軟體開發的三個核心主題:程式碼生成、使用基於模型的測試案例定義系統測試程式,以及模型的演化重構和轉換。對於每個主題,本書首先詳細介紹基礎概念和技術,然後展示它們在UML/P中的應用。基於基本原則和應用之間的區分,使得內容更易理解,讀者可以直接將這些知識應用於其他基於模型的方法和語言。

第1章介紹了本書及其主要目標,第2章概述了一種基於敏捷的基於UML的方法,使用UML/P作為主要開發語言,用於創建可執行模型、從模型生成程式碼、設計測試案例以及通過重構進行迭代演化的計劃。為了完整起見,第3章簡要介紹了在整本書中使用的UML/P。接下來,第4章和第5章討論了程式碼生成的核心技術,包括程式碼生成器的架構和控制方法,以及UML/P符號對於測試或產品程式碼的適用性。第6章和第7章討論了軟體測試的一般概念以及由於使用UML/P而產生的特殊功能。第8章詳細介紹了測試模式,展示如何使用UML/P圖表定義測試案例,並特別強調在分散和並發軟體系統中使用功能測試。最後,第9章和第10章探討了模型和程式碼轉換的技術,為保持語義的重構提供了堅實的基礎。

總的來說,本書對於實際軟體開發、軟體工程學領域的學術培訓以及基於模型的軟體開發領域的研究都具有重要價值。從業人員將學習如何使用現代基於模型的技術來改善程式碼的生產,從而顯著提高品質。學生將找到重要的科學基礎以及所介紹技術的直接應用。最後,本書將為科學家提供對其涵蓋的三個核心主題的當前發展狀況的全面概述。