第5章关于过程的话题探究.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 关于过程的话题 2建立初始的问题域概念模型 在获取需求的同时,应该逐步利用获取的信息来构建问题域概念模型。其建立过程一般为:发现类、识别类之间的关联关系、与用户进行沟通以验证所建立的概念模型的正确性。 在构建问题域概念模型时,应该对领域的专业术语建立词汇表,并利用数据字典对各个词汇的内容进行定义,从而有效地避免了术语的多义性。 3建立用例模型框架 当一个需求获取周期完成之后,对系统的基本需求就有了概貌式的了解,此时,可以绘制用例图、编写用例。在最初的迭代中,一般是完成一个用例模型的框架。在我们的例子中,本次迭代完成如下工作: 第5章 关于过程的话题 新增书籍信息 修改书籍信息 查询书籍信息 登记外借信息 查询外借信息 统计金额与册数 图书管理员 图5.6 初始用例图 第5章 关于过程的话题 1)对需求获取中产生的特征表进行合并,绘制出初始用例图如图5.6(即图2.14)所示;对用例进行编号,以便有利于管理。 2)决定用例的优先级:用例的优先级取决于该用例在系统中的重要性,由开发人员与用户进行协商产生。图5.6中六个用例的优先级为,最高优先级UC01:新增书籍信息,UC03:查询书籍信息;次优先级UC02:修改书籍信息,UC06:统计金额与册数;最低优先级UC04:登记外借信息,UC05:查询外借信息。 第5章 关于过程的话题 3)编写两个最高优先级用例UC01、 UC03的详细用例描述,其它用例则只编写用例描述的框架(通常包括用例名、简要说明、优先级)。 在进行这项工作时,需要注意以下几点: 1)可以借助“用户界面原型”来编写用例描述,这可以让用户参与到用例分析的工作中来,有利于开发人员与用户之间更好地进行沟通,保证用例分析的准确性。对于一般的应用系统,用户界面原型可以采用一边与用户沟通,一边绘制草图的方法来完成;对于较复杂的系统,则可使用可视化开发工具如VB等进行快速绘制,或者使用Visio工具来进行绘制。使用什么方法或工具并不重要,重要的是既适合你的工作习惯又能准确地描述用例。 第5章 关于过程的话题 2)在编写详细用例描述的时候,经常会发现在问题域建模中所遗漏的信息。每当有新的发现时,应该及时更新问题域概念模型,以免发生新的遗漏。 3)对于较复杂的系统,用例分析过程不太可能是一帆风顺的,有时候你会觉得无法清晰判断用户的使用场景,这个时候你一定要找用户了解清楚,千万不要想当然地添加上你自己认为的使用场景或事件流。否则,你一时的自作主张可能会给系统带来致命的硬伤。因此,如果碰上这种情况,你最好还是采用需求获取的方法来解决问题。 第5章 关于过程的话题 4制定开发计划 当你构建了初始的问题域概念模型、用例模型的框架,以及对高优先级的用例进行了详细的用例描述之后,你对系统的整体架构、规模及复杂程度也就有了一个总体的概念,对下一步所要做的工作也应该心中有底了。因此,这个时候你可以制定整个系统的初步开发计划,也可以制定下一次迭代的详细开发计划了。至此,我们的第一次迭代工作就算完成了。 5.3.3 第二次迭代 在第二次迭代中,我们的主要目的是对最高优先级的用例进行分析、设计,并在此基础上设计初步的软件架构;同时,为了完善系统的类模型,必须引进我们所需要的基础类,应用设计模式对软件架构进行优化,建立了包括基础类在内的详细的系统类模型;对最高优先级的用例进行编码;对其它优先级的用例进一步进行分析,编写详细的用例描述等工作。 第5章 关于过程的话题 1最高优先级用例的健壮性分析与交互建模 接着第一次迭代的工作成果,对已经完成了详细描述的优先级最高的用例,按照第3章和第4章的方法进行健壮性分析,并建立这些用例的交互模型。 2软件架构设计 当第一步的工作完成后,我们就可以对系统进行初步的软件架构设计。进行软件架构设计时,一般是套用一些成熟的模式,如MVC结构、层次结构等。其中层次结构最常用,我们的例子可以套用它。通常使用包图来描述软件架构,如图 5.7所示。 * 第5章 关于过程的话题 5.1 为什么需要过程 5.2 主流软件开发过程简介 5.2.1 统一软件开发过程RUP 5.2.2 测试驱动开发TDD  5.2.3 极限编程XP  5.2.4 特征驱动开发FDD 5.3 理解开发过程 5.3.1 模型的演化过程 5.3.2 第一次迭代  5.3.3 第二次迭代  5.3.4 随后的迭代  5.3.5 最后的迭代 5.4 本章小结 第5章 关于过程的话题 5.1 为什么需要过程 开发一个具有一定规模和复杂性的软件系统和编写一个简单程序是大不一样的,其间的差别就如同建造一座大厦和搭建一个狗窝的差别。大型的、复杂的软件系统的开发是一项工程,必须按工程学的方法组织软件的生产与管理,必须经过分析、设计、实现、测试、维护等一系

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档