• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
多莱特~梦未醒,再出发

行路难,行路难,多歧路,今安在。

长风破浪会有时,直挂云帆济沧海。

博客园    首页    新随笔       管理     

2.细化阶段

细化阶段包括

1.对核心,有风险的软件架构进行编程和测试。

2.发现并稳定需求的主体部分。

3.规避主要风险。(这里的风险包含业务价值,所以是实现那些重要的场景,而不是技术风险)

   

构建核心架构,解决高风险元素,定义大部分需求,以及预计总体进度和资源。

   

最佳实践

1.实行短时间定量,风险驱动的迭代。

2.及早开始编程。

3.对架构的核心和风险部分,进行适应性的设计,实现和测试。

4.尽早,频繁,实际的测试。

5.基于反馈进行调整。

6.迭代式的编写大部分用例,需求。

   

在多个迭代中,对同一个用例进行增量式开发。

   

领域模型

2008年12月2日

15:44

   

领域模型

这一精髓的ooa步骤是从领域到重要概念或对象的分解。

领域模型是对领域内的概念类或现实世界中对象的可视化表示。

   

对领域模型应用uml类图表示法,会产生概念透视图 模型。

它可以展示:

1.领域对象或概念类。

2.概念类之间的关联。

3.概念类的属性。

   

领域模型不包括如下内容

1.软件制品。

2.职责和方法。职责是用来驱动软件对象的,领域对象是真实世界针对特定领域可视化。

   

概念类

   

oo关键思想:领域层软件类的名称要源于领域模型中的名称,以使对象具有源于领域的信息和职责。

   

如何创建领域模型

1.界限:以当前迭代要设计的需求为界。

2.概念类:分类列表,确定名词短语,现有模型。

3.属性与类的常见错误。如果某概念类X不是现实世界中的数字或文本,那么X可能是概念类而不是属性。

属性是对象的逻辑数据值。

当需求建议或暗示需要记住信息时,引入属性。

属性的类型应该是简单数据类型。

4.使用描述类,记录重复,描述的信息。

   

关联 是类之间的关系,表示有意义和值得关注的连接。

在领域模型中表示关联,

要基于现实世界的需要。

需要记住的关联。

   

   

   

   

系统顺序图

2008年12月3日

11:36

   

表示的是,对于用例的一个特定场景,外部参与者产生的事件,其顺序和系统之内的事件。??

1.系统被视为黑盒。系统行为分析。

2.应为每个用例的主成功场景,和频繁发生的扩展绘制。

   

   

操作契约

2008年12月3日

14:37

   

组成部分:

1.操作:操作的名称和参数。

2.交叉引用:会发生此操作的用例。

3.前置条件:执行操作之前,对系统或领域模型对象状态的重要假设。这些假设比较重要,应该告诉读者。

4.后置条件:最重要的部分,完成操作后,领域模型对象的状态。

4.1创建或删除实例。

4.2属性值的变化。

4.3形成或消除关联。

   

契约是优秀的需求分析工具,能够详细描述系统操作必须的变化,而不需描述这些操作是如何完成的。

   

后置条件,主要的作用就是,用于分析复杂的操作后,领域模型对象的变化,防止用例变得过于复杂。提倡使用十分准确的分析性语言。

   

相应的可以把契约应用于c# or java ,以断言的形式,如果配合测试驱动开发,就可以确保,操作做了正确的事情。

不过这个还是需求阶段的产物,处理的对象也是领域模型,和实际的软件模型有区别,所以上面这句话未必适用。

   

   

posted @ 2009-10-17 12:06  Young跑跑  阅读(233)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3