张蓝图。在软件的世界中这也是一样的。由源代码行或Visual Basic中设计的窗体担任主角为程序员提供的开发项目的全局视图是很微不足道的。构造模型允许设计师集中考虑项目中的组成部分如何交互的全局情况,而不会陷入每个组成部分的具体细节信息的泥沼中。
高度竞争的和不断改变的业务环境导致了复杂性不断增加,这为系统开发者带来了独特的挑战。模型帮助我们组织、形象化、理解和建立复杂的事物。它们在目前和未来都会帮助我们解决开发软件遭遇的各种挑战。
成功三角形 我经常使用图1所示的成功三角形来解释成功的项目所需要的组成部分。你需要所有的三个方面——符号、过程和工具。你可以学习一种符号,但是如果不知道如何利用它(过程),你可能会失败。你可能拥有强大的过程,但是如果不能沟通这些过程(符号),你也可能失败。最后,如果你不能记载自己的工作文档(工具),你也可能失败。
 图1.成功三角形 |
符号的角色 符号在任何模型中都扮演着重要的部分——它是把过程连接在一起的“粘合剂”。符号有三种角色:
· 它作为传达决定的语言服务的,它不能明显地或者不能从代码自身中推理得到。
· 它提供的语义学对于捕捉所有重要的战略和战术决定都是足够丰富的。
· 它提供了一种具体的形式,足以供人们来思考和工具来操作。
统一的建模语言(UML)提供了非常健全的符号,它从分析的范围发展到了设计的范围了。一定的符号元素(例如类、联系、集合