问题标签 [use-case]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
coding-style - 是否可以在代码库中嵌入 Cockburn 风格的文本 UML 用例内容以提高代码可读性?
在代码中试验 Cockburn 用例
我正在编写一些复杂的 UI 代码。我决定将 Cockburn 用例用于鱼、风筝和海平面(由 Martin Fowler 在他的《UML Distilled》一书中讨论)。我将 Cockburn 用例封装在静态 C# 对象中,以便我可以针对代表 UI 工作流程中步骤的静态常量测试逻辑条件。这个想法是您可以阅读代码并知道它在做什么,因为包装的对象及其公共内容通过名称空间为您提供了英语用例。
此外,我打算使用反射来抽出包含所描述用例的错误消息。这个想法是堆栈跟踪可以包含一些英语用例的 UI 用例步骤。结果证明这是一种有趣的方式来实现一个迷你的、伪轻量级的域语言,但无需编写 DSL 编译器。所以我的问题是这是否是一个好方法?有没有人做过类似的事情?
c# 示例片段如下
假设我们有一些 aspx 页面,它有 3 个用户控件(有很多可点击的东西)。用户必须单击一个特定用户控件中的内容(可能进行某种选择),然后 UI 必须在视觉上提示用户选择成功。现在,当该项目被选中时,用户必须浏览网格视图以在其他用户控件之一中找到项目,然后选择某些内容。这听起来很容易管理,但代码可能会变得丑陋。
在我的例子中,用户控制主页捕获的所有发送的事件消息。这样,页面就像 UI 事件的中央处理器一样,可以跟踪用户点击时发生的情况。
因此,在主 aspx 页面中,我们捕获了第一个用户控件的事件。
因此,在 MyCompany.MyApp.Web.UseCases 命名空间中,我们可能有这样的代码:
嵌入在类中的工作流用例可以是内部类或静态方法或枚举或任何为您提供最干净命名空间的东西。我不记得我最初做了什么,但你明白了。
requirements - 关于将涉及多个参与者的流程拆分为用例的建议
假设我正在模拟一个涉及两个演员之间对话或交流的过程。对于这个例子,我将使用一些容易理解的东西:-
- 供应商创建价目表,
- 买方选择一些要购买的物品并发送采购订单,
- 供应商收到采购订单并发送货物。
- 供应商发送发票
- 买方收到发票并付款
当然,这些步骤中的每一个本身都可能很快变得复杂。您将如何在需求文档中将其拆分为用例?
如果这个过程被视为一个单一的用例,它可以写满一本书。
或者,从上述每个步骤中创建一个用例将隐藏一些应该捕获的基本交互和流程。是否有一个用例从“收到采购订单”开始,到“发送发票”结束,然后另一个用例从“接收发票”开始,到“付款”结束?
有什么建议吗?
uml - 你会在用例图上展示演员不能做的事情吗?
在用例图上,您能否展示参与者不能做的事情,例如因为他们没有权限去做?
还是因为它们没有将它们与特定用例连接起来的事实而只是暗示?
c++ - 什么是 tr1::result_of 的好用例?
我听说 tr1::result_of 在 Boost 内部经常使用......我想知道是否有任何好的(简单)用例用于 tr1::result_of 我可以在家里使用。
documentation - 用例文档的详细程度
我正在努力规范我的项目并在一开始就创建一个愿景/范围文档。其中包括用例图。仅仅列出用例确实帮助我充分了解了客户要求的所有需求,并且打开了对话。
我想知道用例应该有多详细。如果我正在制作一个 Web 应用程序并且用户将登录以查看报告,我是否会在用例描述中列出报告中的所有列?
如果没有,那么我什么时候会记录这些细节?
uml - 用例关系
两个用例可以同时扩展或包含彼此吗?A 扩展/包含 B 和 B 扩展/包含 A
uml - 用例流程
如果用例 A 扩展了用例 B,这是否意味着 A 已完成并且流程转移到 B 或流程将返回到 A?
UML 对此有任何限制吗?还是取决于建模者?
uml - 用例与参与者的关系
如果 A 是扩展用例(不是基本用例),A 可以直接被参与者引用吗?