2009-07-27 70 views
2

我有一个Access数据库,我写了我用于支票簿和最近3年的预算。我从来没有写过程序,但我已经决定将db写入独立程序。我唯一的经验,除了DB本身的简单VBA,是一个C++类的入门和一个OO逻辑类。尽管我知道我想让程序做什么(因为这是我的数据库现在所做的),我想尽可能地正确地进行规划和设计,所以我可以尽可能正确地编写程序,以便功能添加和维护更容易。需要UML图和规划帮助

我需要帮助计划。我想UML图应该是第一个。我需要做什么UML图表?以什么顺序?我试图做一个用例,但由于该程序只涉及我,我的钱,银行和商店,似乎毫无意义。还是我错误地思考它?我是否需要在自己的帐户内绘制我的钱和我的预算?我不知道。我需要帮助如何继续。谢谢。

回答

2

相关由于您的应用程序是供个人使用的,我认为您只需要两个图表,也许三个。如果你愿意的话,你可以使用用例图,但是用用例列表可能会更好。由于没有其他人陈述它,所以用例是一个要求你陈述你将要使用它的东西的要求。这些帮助你定义你需要的功能。
接下来,您需要关于如何组织程序的类图。类图显示您拥有哪些类以及它们如何连接。这对计算出你的程序是否太复杂或者是否使用称为blob的反模式很有用。如果你有很多连接类的线,你可能需要重新组织,看看你是否可以让每个类更紧密,如果你看到的类很少,你可能想检查一个blob反模式。反模式是一种常见的情况,对可读性或可维护性不利。班级凝聚力由每个班级是否具有所需要的内容来定义。例如,如果您决定为您的帐户开设课程,则无需了解与您的帐户无关的信息,例如您的银行的街道地址或姓名。

我认为您需要的最后一个UML图是一个序列图,它显示了程序中的不同对象如何交互。这将帮助你更好地理解你的课程正在进行的交互,并决定是否需要更好地组织它们,如果它们变得太复杂。

这些是您可能需要的UML图。您可能还希望通过网络图了解您的数据库将如何连接到银行的网站并获取所需的信息。

1

这些图表只是为了让你明白你在做什么,并让你走上正轨。我想你已经知道了。在你的情况下,我相信一个详细的用例就足够了,只是为了确保你处理所有的功能,不要忘记任何东西。 (提醒:用例不是图,它是文本)

3

有一组UML图可以跟踪正在发生的事情,但最后记住文档会衰减 - 您的代码是您的设计。也就是说,UML适用于规划和回忆零件和零件。这里涉及大量的个人经验,所以随意采取你想要的,并忽略你认为不适用的东西。

用例图

跳过此,只是写用例来代替。

类图

我觉得他们用于规划架构的宏伟蓝图是有用的,但我通常会离开了所有的方法名,或者仅在相关的离开。我用它来说明你的类

序列图

一个特别的商业逻辑比较有用的图表和数据流的逻辑模型。我总是发现自己正在绘制复杂数据流的顺序图,特别是当有事件正在发送时。

对象图

显示在运行时对象的交互作用。我通常会绘制复杂的对象交互,而不是“学术上正确的”。我认为它比序列图不太有用。

流程图

适合的网站,如果你有复杂的流

状态转换

,如果你的应用程序有许多国家重要的。再次,勾画出最复杂的系统,不需要每个子系统都有一个系统。

ER图

我知道这是不是UML,但一个好的数据库设计的前期是重要的,ER图将帮助您组织和计划表有什么不同相互