前言 前 言产品的功能和复杂性正在成倍地增加,而且对这些系统的安全性、可靠性以及安保性的关注使得这样的系统对工程师而言更加困难。同时,产品开发周期正在萎缩。很显然,变革是需要的。我们需要能够以更少的时间制造出更有能力且缺陷更少的系统。针对此问题,一个受到高度评价的解决方案是避免以文本作为捕获工程数据的主要手段。虽然文本具有极好的表现力,但是它是有歧义的,而且是极其不严谨的。使用更加正规的定义语言(这里,显然是指UML和SysML)进行建模是要力求改善特定的工程数据。只要我们能够想出改进的方式即可。另一个所提供的解决方案是敏捷方法。尽管敏捷方法已经开始应用于嵌入式和实时系统,但这些方法却是由软件IT行业开发的。然而,敏捷文献(几乎)完全关注在台式机或IT软件开发上。他们考虑的开发环境(几乎)全部都是同地域小型团队的合作,并不关注安全性、可靠性或安保性问题;而且没有与电子或机械部件的联合开发。因此,系统工程师想要知道的是“这种方法如何适用于‘我’和我的工作”。敏捷文献没有给出答案。有一些关于系统工程的很好的书籍,也有一些关于SysML与基于模型的系统工程(MBSE)的很好的书籍。有许多关于软件的敏捷方法的书籍(其中一些书籍也是很好的)。然而,目前还没有书籍来尝试将这些概念综合为一种一致且可用的系统工程方法。《敏捷系统工程》的目的就在于满足这种需要。我们首先简单地介绍了系统工程学科,之后又简短讨论了敏捷方法,因为它们在大多数系统文献中都有论述,包括其益处。除前言部分外,还有一章内容关于基本的SysML。接着,我们就开始理解如何在现实生活中应用MBSE。《敏捷系统工程》中的方法基于作者的Harmony敏捷系统工程流程。该流程有关软件开发方面的部分在其他文献中有详细描述a;《敏捷系统工程》仅涉及系统工程的关注点。Harmony敏捷系统工程流程是一种敏捷的、以模型为中心的实施途径,用于开发系统工程所需的工程数据;需求、架构、接口以及可依赖性分析是其中重要的内容。Harmony流程是依据作者在全球范围内所指导完成、取得飞速进展并在其他方面发挥作用的实际项目上累积的数十年系统经验提出和完善的。在教育工作者中有这样一种说法——“我示你看。我讲你听。你做你懂”。为此,《敏捷系统工程》中有大量示例用于阐明执行所涉及的工程步骤的细节。这些示例涉及工程学科的多个方面,包括软件、电子和机械工程。这些示例中的个示例是高端跑步机。第二个更复杂的示例是能够承载1500千克的可穿戴工业用机器人外骨骼(被称为waldo)。Harmony敏捷系统工程流程的每个主要活动都是以这些和其他示例展开讨论和演示的。我们鼓励读者针对提出的问题构建自己的解决方案并建立这些章节中所描述的模型。a 例如,参见Real-Time Agility(Addison-Wesley, 2009)或Real-Time UML Workshop for Embedded Systems(Elsevier, 2014)。 X 敏捷系统工程读者《敏捷系统工程》的主要读者不言而喻是系统工程师。系统工程师的主要关注点集中在(通常)由多个工程学科所实施的系统规范与设计上。系统工程师规定了产品的系统特性而将学科特有的细节留给适当的下游工程团队。一些下游工程师也可能在《敏捷系统工程》中找到感兴趣的信息,特别是系统工程数据如何被格式化并采纳以满足转交活动中他们需要的细节。目标在游历世界期间,我感受到系统工程师在应用MBSE方法时所遇到的困难。主要的语言——SysML——令人望而生畏。SysML包括800页左右的UML规范并且增加了数百页。它是一种功能极为强大但是十分复杂的语言。除了语言本身,随着产品复杂性成倍增加以及产品交付周期的不断缩减,亟须同时提高系统工程工作的效率并改进质量。我们看到系统在安全关键的、高可靠性和安保性环境中正日益取代人类,并且我们必须能够始终依靠这些系统的功能正常运转。《敏捷系统工程》有一个简单目标——为系统工程师提供足够的指导,以便他们能方便有效地将敏捷方法和MBSE应用到复杂系统的开发中,因为现实世界越来越依赖于这些系统的运行。工具《敏捷系统工程》中的所有建模示例都使用IBM® Rhapsody™工具进行建模。然而,关于标准的一个好处是对不同工具的多种选择。如果你偏爱的其他工具支持SysML标准,那么你用你选择的工具建立这些模型时应该不会遇到什么困难。这不是一本关于Rhapsody的书,也不是专用于Rhapsody的书。拓展如果你对工具、培训或咨询感兴趣,参见www.ibm.com。我在世界范围内教授关于UML、SysML、MDA、DoDAF、架构设计、设计模式、需求建模、用例、安全性关键开发、行为建模、开发流程改进、项目管理与调度等多门高等课程并提供咨询。你可通过Bruce.Douglass@us.ibm.com就培训或咨询服务与我联系。我还开通了一个(免费的)yahoo群组论坛,网址是http://groups.yahoo.com/group/RT-UML——快来参与吧!My IBM Thought Leader页面(http://www-01.ibm.com/software/rational/leadership/thought/brucedouglass.html)也包含你可能感兴趣的白皮书,其涉及不同课题并可供下载。Bruce Powel Douglass博士
作者简介 Bruce Powel Douglass 3岁时开始自学读书,不到12岁就开始学习微积分。他14岁辍学游历美国,几年后进入俄勒冈大学学习数学专业。他终获得俄勒冈大学运动生理学科学硕士学位以及USD医学院神经生理学博士学位。他在USD医学院期间提出了一个名为自相关因子分析的数学分支,用于研究多细胞生物神经系统中的信息处理。 Bruce作为软件开发人员和系统工程师在实时嵌入式系统领域已经工作超过30年,是实时嵌入式系统领域著名的演说家、作者与顾问。他是嵌入式系统大会和UML世界大会的顾问委员会的成员之一,并在会议上讲授过关于系统工程、项目估算和调度、项目管理、面向对象的分析与设计、通信协议、有限状态机、设计模式以及安全性关键系统设计方面的课程。Bruce 在实时系统、软件设计以及项目管理方面有多年的开发、授课与咨询经验。他还为很多(特别是实时领域内的)杂志和期刊撰文。 Bruce是IBM物联网(IoT)业务部的首席布道师。作为首席布道师,除了披荆斩棘开拓道路,他更像是一位首席科学家。Bruce与UML合作伙伴在UML与SysML标准的规定方面密切合作。他开发了用于Rhapsody建模工具的个DoDAF的UML概要以及其他概要,例如故障树分析概要以及安保性分析概要。他是对象管理组组织的实时分析和设计工作组的副主席。他还撰写了其他几本关于系统与软件开发方面的书籍,包括Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks and Patterns(Addison-Wesley, 1999)、Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems(Addison-Wesley, 2002)、 Real-Time UML 3rd Edition: Advances in the UML for Real-Time Systems(Addison-Wesley, 2004)、Real-Time Agility(Addison-Wesley, 2009)、Design Patterns for Embedded Systems in C(Elsevier, 2011)、 Real-Time UML Workshop for Embedded Systems(Elsevier, 2014)等,以及一本关于乒乓球方面的短篇教材。 Bruce喜欢古典音乐,古典吉他弹奏水平达到专业水准。他参加过多场体育比赛,包括乒乓球、自行车极限马拉松赛、赛跑以及全接触跆拳道,尽管目前还只是与打不还手的静物交手。他近重新回到三项全能运动比赛以及自行车极限马拉松赛,并在2014年首次参加了铁人三项比赛。 Bruce在全世界进行广泛咨询与培训活动。如果你对此感兴趣,可以通过Bruce.Douglass@us.ibm.com与他联系。