欢迎来到天天文库
浏览记录
ID:51618575
大小:469.50 KB
页数:25页
时间:2020-03-26
《软件工程概论 教学课件 ppt 作者 陶华亭参考课件 1O_1_面向对象的建模概述.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第10章面向对象的建模概述第10章面向对象的建模概述10.1对建模的认识10.2建模工具与过程2021/9/910.1对建模的认识10.1.1什么是建模?10.1.2我们已经历过的建模活动?10.1.3我们已用过的建模工具?2021/9/910.1.1什么是建模?模型并不深奥!在你和别人讨论问题时,把你头脑中想表达的东西以简化的形式画到纸上,这就是模型,哪怕是随便勾画了几笔,只要有助于表达问题,它就是模型2021/9/910.1.2我们已经历过的建模活动?在“软件定义期”的“系统调查与可行性研究”阶段,我们用“系统流程图”可视化地表述了用
2、户系统的业务流程,用“数据流图”配合“数据字典”理清了用户业务系统中的数据处理逻辑。之后,我们又介绍了,基于面向对象思想,对用户需求的表述,即使用“用例图”表述用户对系统的需求概况,用“UseCase报告”对“用例图”进行详细的表述。2021/9/9所有上述活动的成果,包括图、表、文字等的集合,就是我们获得的,描述用户需求的“模型”;因此,画系统流程图、绘制数据流图、编写数据字典、绘用例图、编写UseCase报告,所有这些活动,就是我们已经学过的建模活动。2021/9/910.2建模过程与工具10.2.1建模过程框架与迭代策略10.2.2
3、建模活动中人员的分工与职责10.2.3UML2021/9/910.2.1建模过程框架与迭代策略参与开发项目的人员如何分工?先做什么后做什么?如何划分活动?各个活动如何衔接?这是组织一个开发项目的关键。换句话说,项目参与人员,尤其是项目经理对整个开发过程的框架和组织策略必须心中有数。2021/9/9本质上讲,需求分析与软件设计的过程就是建模的过程即,使用模型从事分析与设计,使用模型表达分析与设计的结果,依照模型进行编程和构建新系统因此建模过程的组织与建模技能的培养软件工程的一个重要内容。2021/9/91.建模过程所追求的目标建模过程的任务
4、和活动的划分,应充分体现出建模过程所追求的目标。建模是需求分析与系统设计的主要活动,整个建模过程可以细分为若干前后衔接的任务,每一项任务又包含若干个目标明确的活动。从全局看,面向对象建模过程所追求的目标包括四个方面:2021/9/9(1)准确、全面地获取并表达用户对新系统的真实需求;(2)将用户需求的描述逐步演变为设计方案;(3)有步骤、分层次地设计与演化系统构架;(4)保障系统设计方案能够适应实施环境。2021/9/92.建模过程框架图10.1建模过程框架2021/9/9前两项任务以分析为核心,目的是抽取设计要素;后三项任务以设计为核心
5、,目的是构造设计方案。五项任务中包括14个活动,14个活动进一步可以细化为若干个步骤,建模实践中可以灵活运用。2021/9/93.建模过程中的迭代策略支持迭代策略是软件工程过程的基本要求。图10.1所示的建模过程与Rational统一过程体现了同样的核心思想原则,即以UseCase驱动、以体系构架为核心的迭代化开发。2021/9/9迭代策略的体现由于在全局分析任务中引入了“选定分析局部”活动,建模过程可以充分地支持迭代化开发的策略,如图10.1所示。通常,全局分析任务中前几项活动在后续迭代中可以被略去。2021/9/9理解迭代策略的关键是
6、领会迭代化开发策略的思想。迭代化方法中通常不作过多的假设,尽量降低对既往工作结果进行大面积否定的可能。因为在实践中,前期活动中过度的假设往往会导致后续工作不得不将错就错,表面上还能满足要求,但暗中牺牲了整体的质量和持续演进的能力。2021/9/910.2.2建模活动中人员的分工与职责参与建模过程的技术人员主要是系统分析师和设计师(注意:系统分析师也就是系统分析员,设计师也就是软件工程师。为便于讨论问题,本书后面章节中统一使用分析师与设计师的叫法)。2021/9/9在个人综合素质方面,分析师应该具有领导才能,能够在压力下做出关键性的决策,并
7、善始善终;能够赢得项目经理、用户、用户群体以及管理团队的认同和尊敬,尤其善于和项目经理紧密协作;在各个方面都能表现出面向目标的实干作风。2021/9/9在专业技能方面,与其他角色相比,分析师一般具有全方位的技能,他对相关知识的见解重在广度,而不是深度。分析师不仅需要具备软件工程师的各项技能,而且应该具有用户专业领域和软件开发领域的实践经验,从而有能力在无法获得完整信息的情况下迅速领悟问题,并根据经验做出审慎的判断。2021/9/9分析师有可能是一个团队,但其中应有一人具有足够的权威。设计师关注的焦点主要在系统的局部或细节上。2021/9/
8、9设计师应该掌握的技能包括:理解以UseCase建模技术捕获和描述的软件需求;在分析师的统一协调下,应用UML进行局部的面向对象分析和设计;了解主流的实施技术,如设计语言和开发环境。2021/
此文档下载收益归作者所有