在现实世界的项目中,最实用的面向对象软件建模方法是什么?

时间:2010-06-03 13:32:42

标签: oop uml

我想开发一个大项目,但我真的不知道什么是建模我项目的最佳方式。我甚至需要为我的项目建模吗? 在现实世界的项目中,最实用的OOP软件建模方法是什么?什么是最好的和最有用的?

4 个答案:

答案 0 :(得分:1)

很多时候,它需要捕获您在OO系统中的类的复杂结构,因此UML的类图用于建模。您还可以想要描述类的交互,因为序列图很有用。还有其他UML图,每个图都有其用途。 如果您正在寻找建模方法,请尝试查看统一过程,这是一种开发方法,由UML的作者创建并使用UML,并且还描述了如何使用UML。

答案 1 :(得分:0)

目前推荐使用敏捷方法。如果你添加一片UML,那就更好了: - )

答案 2 :(得分:0)

建模(设计)是每个项目中最重要的部分。 事实上,随着时间的推移,我们牺牲性能来获得更高水平的设计。 为什么.NET框架很受欢迎(与旧工具相比)?在大多数情况下,它的库是传统win32 API的包装器,浪费性能,而是提供更好的设计,这使它易于学习和使用。 因此,如果您的项目具有良好的设计,则易于理解,开发,调试,维护和扩展。 另一个例子是OOP本身,它有类,接口......和一堆构造函数/析构函数调用。 OOP概念借鉴了精神病学和人类看待世界的方式。

以下是两个不同的概念: 1)设计方法 2)项目管理方法

有很多,我没有说好或坏。每个都适合一个场景。 关于设计方法我喜欢DDD(域驱动设计),因为它映射了行业领域的术语和概念。因此,如果您对A-> B-> C发生时该做什么有决定性问题,那么您只需询问专业人士,他就会说出他们在现实世界中所做的事情。 DDD适用于具有累积智慧的足够老的行业。因为我们不了解这个项目,所以我不会写更多关于设计的内容。

项目管理方法(如敏捷)是您从地图(设计)构建建筑的方式。项目管理的目标是使用最佳资源(时间,金钱,人力资源......)。这是通过工作分解结构完成的,并使工作尽可能并行。最着名的项目管理方法是传统的方法,我们按照顺序完成所有工作,如土木工程师所做的那样(基础,结构,墙壁......)。这种情况持续了好几个世纪,直到最近几十年(软件行业),因为在传统的项目管理中,你知道你在哪里,你想去哪里,以及如何到达那里。通过这种方式,您可以购买家具作为一块土地! 软件行业的工具和方法发生了非常迅速的变化,因为它是新的,并且没有针对数千个失败的项目建立最佳实践。很多时候,当项目启动时,由于开发工具和框架的变化,它会发生变化。其他变化来源是项目的范围(去哪里)。软件是一种无形的产品,因此您很容易陷入时间估算的陷阱。对于软件开发,最佳实践是迭代方法。 迭代方法论建议,一个工作不完整的解决方案,你在下一次迭代中做得更完整,而不是一个非工作部分完成的解决方案。这有时间开销,相反,您确定解决方案有效,如果有任何问题,您可以在早期阶段找到。这就是我们夜间建造的原因!

答案 3 :(得分:0)

最好的是Visual Studio 2010 Ultimate其他太麻烦了。否则,请使用yuml等轻工具查看http://askuml.com样本。