我在看书的时候遇到了一些令人困惑的问题
“由马丁·福勒( Martin )领导的UML Distilled。”
问题1.
这本书中提到:
使用UML的三种方法:草图、、蓝图和编程语言。
我们的教授要求我们在进行系统分析和设计时,画出类和操作的"all“,然后进行开发。
因此,我真的想知道这是否是martin所说的“伪迭代开发”。
它是通过“蓝图”使用UML吗?
问题2.
这本书中提到:
“每一次迭代都不是从头开始的; 相反,它修改了现有的文档体,突出了新迭代中的更改。“
然而,教授要求我们修改并在现有的类图中添加更多的类。
以设计类图为例。在第一阶段,我们只有很少的“课”,但教授要求我们继续增加它。
更糟糕的是,以这种方式,直到最后阶段,课堂变得太多,甚至无法被理解,也不会被用来交流(如图片)。
因此,我很困惑教授是否误解了“修改现有的文件”的意思?
如果教授教我们的不对,“如何和,当可以”修改现有的文档体“?是否只有相关的类图?
谢谢。
发布于 2016-12-19 16:02:06
Q1
是的,这是一种蓝图。
Q2
你的教授正确理解。
就像一本书说的那样,你从有限的范围开始,只有几门课。在进一步的迭代中,您使用到目前为止所创建的内容,并根据需要添加更多的类、属性和操作,这是由于您的系统越来越复杂。有时,您需要重新考虑并进行某种程度的重新建模/重新设计(然后再使用代码!)你已经创造了什么。这正是敏捷的意义所在。
您可能缺少的是,您不需要将整个系统放在一个图表上。使用包来组织类(并使用包图作为项目的一种目录)。将单个图表分割成较小的块,集中在特定主题上的元素上(这些元素或多或少反映了您的包)。只在一个类的“主”图(显示包含该类的包的图)和其他图表上显示一个类的所有细节--只有一个类名的类矩形,如果您的建模工具支持的话,最后显示特定关系所需的属性和操作。
由于您通常会按特定区域构建范围,您将看到大部分将创建新的包,而现有的包只会有小的更改(除了像Tools这样的包)。然后你就会知道你走的是正确的道路。
发布于 2016-12-19 16:00:01
对你问题的详细回答会使我们相去甚远。
https://stackoverflow.com/questions/41225242
复制相似问题