相关疑难解决方法(0)

你还在使用UML吗?怎么样?做什么的?

几年前,我们店里的每个人都对UML疯狂.现在每个人似乎已经冷静下来了.

如果在软件项目中仍然广泛使用UML,我很好奇.

如果是这样,这种用法仅限于白板吗?你用它来做文件吗?您是否使用工具从中生成代码?

有关:

UML实用吗?

documentation uml code-generation

46
推荐指数
4
解决办法
2万
查看次数

在任何编码发生之前应该进行多少设计?

我目前正在上学,对于我的高级项目,我们不得不花费1/3的时间来为我们的项目做UML图和其他繁琐的文档.

这包括很多设计和规划尚未发生的未来问题.

出于某种原因,这似乎是鼓励过度设计.我花了最后一小时写这样的东西.

"连接到服务器 - 连接到服务器.前提条件:不存在服务器连接.后置条件 - 连接现在存在".

我宁愿做编码而不是做这个废话.我意识到这个设计工作有它的位置,但多少钱?我知道这不是防止在诸如Enterprise Arch之类的工具中进行设计的绝对证据,但是我在这里.

我教授这些课程的教授设计了他的项目.应用程序中可能发生的每件事都已记录在案.他没有自己编码,而是利用这个"完美无瑕的文件"将海外工作和暑假期间的学生分开.

所有这些设计产生的应用程序都是可怕的.这是我见过的最糟糕的应用程序之一,任何人都可以告诉你它已被过度设计.

SO有经验的编码社区对此主题有什么看法?在项目之前设计很多是因为"设计文档这么说"而通过强制做出决策而制作糟糕的程序吗?

非常感谢您提供的任何见解.如果我知道这一切都是有充分理由的话,我会感觉更好"浪费"我的时间.我非常愿意事先做一些设计工作,但我觉得我的教授期望在编写任何代码之前做出很多工程决策.

编辑:关于这个主题的有趣的slashdot文章. http://books.slashdot.org/story/09/11/16/1448204/Becoming-Agile

uml design-patterns

33
推荐指数
5
解决办法
3447
查看次数

你使用什么样的UML图?

UML2提供不同类型的图表.到目前为止,我只使用了类图.

你使用什么样的UML图?您为软件项目的设计和文档推荐了哪些图表?

uml diagrams

18
推荐指数
4
解决办法
1万
查看次数

UML如何有用?

可能重复:
UML是否实用?

我在大学做UML,我不明白为什么要这样做.它看起来像是OO数据库的模型,但我想我可以在没有UML的情况下编写Java.

我想知道为什么在专业领域使用UML的技术原因; 为什么这很重要.不只是学习它,因为教授这么说.

java uml

11
推荐指数
2
解决办法
4324
查看次数

是否可以在代码库中嵌入Cockburn样式的文本UML用例内容以提高代码可读性?

在代码中试验Cockburn用例

我正在编写一些复杂的UI代码.我决定使用带有鱼,风筝和海平面的Cockburn用例(Martin Fowler在他的书"UML Distilled"中讨论过).我将Cockburn用例包装在静态C#对象中,以便我可以针对静态常量测试逻辑条件,静态常量表示UI工作流程中的步骤.我的想法是你可以阅读代码并知道它在做什么,因为包装的对象及其公共内容通过命名空间为你提供了ENGLISH用例.

此外,我将使用反射来抽出包含所描述的用例的错误消息.这个想法是堆栈跟踪可以包括一些用例步骤IN ENGLISH ....事实证明这是一种有趣的方式来实现迷你,伪造轻量级域语言,但无需编写DSL编译器.所以我的问题是这是否是一个很好的方法呢?有没有人在那里做过类似的事情?


c#示例片段如下

假设我们有一些aspx页面,它有3个用户控件(有很多可点击的东西).用户必须点击一个特定用户控件中的内容(可能进行某种选择),然后UI必须在视觉上提示用户选择成功.现在,在选择该项目时,用户必须浏览网格视图以在其中一个用户控件中查找项目,然后选择一些内容.这听起来很容易管理,但代码可能变得丑陋.

在我的例子中,用户控制主页捕获的所有已发送事件消息.这样,页面就像UI事件的中央处理器一样,可以跟踪用户点击时发生的情况.

因此,在主aspx页面中,我们捕获第一个用户控件的事件.

using MyCompany.MyApp.Web.UseCases;   

protected void MyFirstUserControl_SomeUIWorkflowRequestCommingIn(object sender, EventArgs e)
{
  // some code here to respond and make "state" changes or whatever
  //
  // blah blah blah


  // finally we have this (how did we know to call fish level method?? because we knew when we wrote the code to send the event in the user control)
  UpdateUserInterfaceOnFishLevelUseCaseGoalSuccess(FishLevel.SomeNamedUIWorkflow.SelectedItemForPurchase)

}



protected void UpdateUserInterfaceOnFishLevelGoalSuccess(FishLevel.SomeNamedUIWorkflow  goal)
{
  switch (goal)
  {
     case FishLevel.SomeNamedUIWorkflow.NewMasterItemSelected:
           //call …
Run Code Online (Sandbox Code Playgroud)

uml coding-style readability use-case

6
推荐指数
1
解决办法
739
查看次数

你对UML有什么看法?

可能重复:
UML是否实用?

我听到很多关于UML的意见.有些人说这没用.有些人说这非常有帮助.

您使用UML的经历是什么?它如何影响开发过程?

uml development-process

5
推荐指数
0
解决办法
895
查看次数