模型驱动软件开发

出版时间:2009-1  出版社:清华大学出版社  作者:(美)斯多(Stahl,T.),(美)沃尔特(Volter,M.) 等著,杨华,高猛 译  页数:381  
Tag标签:无  

前言

建模是一种关键的工程工具。在分析和设计复杂系统的时候,工程师们通常要创建模型。模型是对一个系统及其环境的一种抽象。模型允许工程师们有效地表达自己对系统的关注,例如回答特定的问题或者对设计做出必要的修改。每个模型的创建都是有目的的。特定的模型也许适合解答一类特定的问题。在这种情况下,对于模型和实际系统而言,这类问题的答案都是一样的。然而,这个特定的模型却不一定适合解答其他类问题。构造模型也比搭建实际系统花费少。例如,为了检查结构的安全性,国内的工程师们建造了静态和动态的桥梁结构模型。这是因为与建造真实的桥梁相比,用建模的方法观察桥梁在何种情况下倒塌的确花费更少且更加有效。在软件开发中,模型由来已久。在过去的几十年中,软件行业内出现了许多分析和设计方法。每一种方法都有自己的建模方法和表示法。近年来,统一建模语言(Unified Modeling Language,UML)得到了显著的发展。现在,UML对市场的渗入程度要大于以前任何一种建模表示法的渗入程度。尽管如此,分析和设计模型很少能和代码具有相同的地位。绝大多数软件项目的现实使模型并不会随代码的更新而实时更新,因此它们会随时间的过去而被废弃并失去价值。模型驱动软件开发(Model-Driven Software Development,MDSD)将分析和设计模型与代码同等对待。将该模型和代码更好地集成起来可以通过模型来大大增加有效改进的机会,而不仅仅是直接修改代码。MDSD涉及到许多不同的技术,这些技术贯穿了整个软件开发过程,包括模型驱动需求工程、模型驱动设计、通过模型生成代码、模型驱动测试及模型驱动软件演变等。对象管理组(Object Management Group,OMG)首次提出的模型驱动体系结构(Model-Driven Architecture,MDA)使人们对软件建模和模型驱动技术越来越感兴趣。然而,这种概念的提出有利有弊。在积极的方面,值得高兴的是,建模已经引起了人们的很大兴趣,并且各个组织正在尝试使用模型驱动技术改进自己目前的实践。与此同时,围绕MDA的大肆市场宣传倾向于产生一些不切实际的期望。不考虑这些宣传,的确可以认为MDSD提供了很多思想,其中许多思想可以用在现今的实际情况中。认识到这些潜在的发展趋势需要深刻地理解目前的MDSD技术、其适用性及其局限性。本书的作者站在MDSD研究和实践的前沿。在一些OOPSLA会议上,Markus和Jorn曾经组织并参与了一系列MDSD工作室。Simon参与了OMG对模型变换的标准化。所有的作者都在若干领域内倡导将这项技术用于实践,涉及的领域涵盖了诸如b+m、Siemens和BMW等小型公司和大型公司的企业应用和嵌入式软件。

内容概要

Markus Völter  模型驱动的软件开发(MDSD)是当前受到开发人员和研究人员高度关注的开发范型。随着OMG的MDA 和Microsoft的Software Factories的出现,MDSD方法已经越来越受到程序员的关注,并且成为一些国际协会(例如OOPSLA、JAOO和OOP)的重点讨论议题。  MDSD使用域特定语言创建模型,这种模型以有效的、域特定方式表达应用程序结构或行为。通过一系列模型转换过程,这些模型随后被转换为可执行的代码。本书是一本面向软件架构师和开发人员的实践指南,包括了大量实践范例和丰富的案例研究。

作者简介

Thomas Stah是b+m informatik AG的首席架构师,主要研究模型驱动的软件开发,并且是这方面的专家,具有广泛的实践经验。

书籍目录

第Ⅰ部分  导论 第1章  绪论	 第2章  MDSD的基本思想和术语	 第3章  一个典型的Web应用 第4章  概念形成	 第5章  分类	第Ⅱ部分  域体系结构 第6章  元建模	 第7章  可以使用MDSD的目标体系结构	 第8章  构建域体系结构	 第9章  代码生成技术	 第10章  使用QVT进行模型转换	 第11章  MDSD工具:角色、体系结构、选择标准和指南	 第12章  MDA标准	第Ⅲ部分  过程和工程 第13章  MDSD过程构件和最佳实践	 第14章  测试	 第15章  版本化	 第16章  案例研究:嵌入式的组件基础结构	 第17章  案例研究:企业系统	第Ⅳ部分  管    理 第18章  决策支持	 第19章  组织方面	 第20章  MDSD的改进策略	附录A  模型转换代码

章节摘录

插图:一个组件可能有许多配置形参——与控制台应用程序中命令行的实参相当——用于配置组件的行为。形参和它们的类型是在类型模型中被定义的,随后指定形参的数值,例如在组合或者系统模型中。有人可能会问组件是无状态的还是有状态的,它们是否是线程安全的以及它们的生命周期是怎样的(例如,它们是被动的还是主动的,它们是否希望被告知生命周期的事件,如激活等)。使用简单的同步通信并不总是充分的。各种异步通信模式中的某种模式,如在[VKZ04]中描述的,可能也是可以应用的。因为使用这些模式会影响组件的API,因此必须在类型模型中标明要使用的模式,如图7.13所示。

编辑推荐

《模型驱动软件开发:技术、工程与管理》特色:·全面介绍了MDSD,以及它如何与一些行业标准关联,例如MDA和Software Factorles。·关于元建模、DSL一构造、模型之间以及模型和代码之间的转换、软件体系结构方面的技术细节·深入了解软件开发过程以及一些工程问题(例如版本化、测试和产品线工程)·涉及经济和企业主题的基本管理知识(从全局的观点进行介绍)

图书封面

图书标签Tags

评论、评分、阅读与下载


    模型驱动软件开发 PDF格式下载


用户评论 (总计1条)

 
 

  •   翻译的太差,许多的语句都不通顺,不像有专业知识的人翻译的。比看英文版还费劲。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7