这篇是计算机类的优质预售推荐>>>>《基于模型的软件开发》
译者序
这是一本关于一种特定的软件设计方法实践的书。MBD(Model-Based Software Development,基于模型的软件开发)方法基本上是一种OO(Object-Oriented,面向对象)方法。其基本观点是:通过静态结构和动态结构的开发,生成面向对象的分析模型,然后通过工具的转换,进而转换为应用程序框架。
本书第一部分着眼于面向对象方法诞生的历史背景,使我们能够了解传统方法存在的问题,也就是面向对象方法寻求解决的问题。因为MBD方法基本上是一种面向对象的方法,所以为了充分了解这种方法,第一部分大致介绍了面向对象开发的基础。由于面向对象的方法不如传统软件开发方法那样直观,因此需要理解面向对象的方法为什么通过这样的方式在实践中应用。
第二部分讨论面向对象开发的基本原则如何应用于MBD方法中。从应用的基本结构(即应用的骨架)开始,依次讨论应用的其他内容。在应用程序的整个生命周期中,该结构倾向于相对稳定,称作静态模型。面向对象范式的一个显著特征是对问题域的抽象,在静态模型中,与之相关的大部分内容都将实现。在静态模型中会识别面向对象应用的基本元素——对象,及其属性和相互之间的关系。通过在客户的问题域中抽象出这些内容,能够保证软件拥有稳定的结构。
第三部分讨论如何以一种系统的、一致的方法来描述动态计算需要的内容。这种系统的方法具有一个概念性的框架,称为动态模型。动态模型的基础元素(对象状态机)与静态模型中对象的行为扮演着本质上相同的角色。
本书的主要读者对象为具有较少OO经验的人。本书假定读者具有一些粗略的UML(Unified Modeling Language,统一建模语言)知识。本书还假定读者具有一些软件开发经验。除此之外,本书第二类读者是从传统的程序开发环境向OO范式转变的开发人员。
希望大家在阅读本书时有一个愉快的经历。
本书的翻译工作主要由王慧和马苏宏完成,审校工作由廖彬山完成。
由于译者水平有限,书中错漏在所难免,恳请广大读者指正。
部分前言
软件开发是一项极其复杂的智力活动,它是一门朝气蓬勃并且仍在迅速发展的学科。软件开发还不够完善,因此迄今人们仍然在试图找出开发软件的好方法。
尽管如此,多年来软件开发方法仍然获得了大幅提升。许多设计方法学不断发展以促进软件设计的各个方面。其中之一是结构化设计方法,该方法提供了一种非常直观的方式,用以很好地匹配图灵和冯·诺依曼的硬件计算模型。
问题
尽管结构化设计明显优于它之前的特定方法,但它存在着一个致命的弱点:当用户需求随着时间的推移改变时,软件往往很难随之修改,大型的应用尤其如此。与此同时,应用的规模和复杂性迅速膨胀。另外,新的语言、技术、操作系统、数据存储范式、用户界面范式、硬件等以惊人的速度出现在计算领域中。然而,商业条件一直在要求软件产品更快、成本更低地投入市场。
希望
因此,一些新的设计方法出现了,这些方法从实践中吸取了来之不易的经验和教训。同时,计算领域提出了一些革命性的新观点。其中之一就是面向对象的范式,其主要目标为:在软件产品的生命周期中,随着需求出现不可避免的变更,保证大型应用的可维护性。
本书介绍一种特定软件设计方法的实践,该方法称为基于模型的开发方法,其主要基础是Shlaer-Mellor方法。通常情况下应用OO范式,特定情况下应用MBD方法能够使大型应用获得更强的健壮性和可维护性。
版权声明:本文为博主原创文章,未经博主允许不得转载。