软件工程第10-12章面向对象软件开发过程

软件工程第10-12章面向对象软件开发过程

ID:38681367

大小:1.02 MB

页数:103页

时间:2019-06-17

软件工程第10-12章面向对象软件开发过程_第1页
软件工程第10-12章面向对象软件开发过程_第2页
软件工程第10-12章面向对象软件开发过程_第3页
软件工程第10-12章面向对象软件开发过程_第4页
软件工程第10-12章面向对象软件开发过程_第5页
资源描述:

《软件工程第10-12章面向对象软件开发过程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章面向对象分析10.1面向对象分析的基本过程10.1.1概述面向对象分析从分析描写用户需求的文件开始。用户单方书写的需求;系统分析员配合用户书写的需求;项目标书中书写的需求。10.1.23个子模型与5个层次主题层类与对象层结构层属性层服务层复杂问题的对象模型的5个层次(对应5项活动:找出类与对象、识别结构、识别主题、定义属性、定义服务。)3个子模型:对象模型(静态结构);动态模型(交互次序);功能模型(数据变换)。面向对象分析大体上按照下列顺序进行:寻找类与对象、识别结构、识别主题、定义属性、建立动态模型、建立功能模型、定义服务。10.

2、1.3UML面向对象分析与设计一般过程UML是OO思想的一种表现形式,“OO是神,而UML是型”;以CMS(内容管理系统)为例:“内容”包括文件、表格、图片、数据库中的数据,甚至图片、动画、视频等一切要发布到网站的信息。内容管理系统是一种位于Web服务器和后端办公系统或流程(内容创作、编辑)之间的软件系统。重点解决各种数字资源的采集、管理、利用、传递和增值。内容的创作人员、编辑人员、发布人员使用内容管理系统来提交、修改、审批、发布内容。1.从需求到业务用例图OOA&D的第一步:了解用户需求,并将其转换为业务用例图。CMS描述如下:这个系统主要

3、用来发布新闻,管理员只需要一个,登录后可以在后台发布新闻。任何人可以浏览新闻,浏览者可以注册成为系统会员,注册后可对新闻进行评论。管理员在后台可以对新闻、评论、注册会员进行管理,如修改、删除等。根据上述需求描述,画出业务用例图:注意事项:1.业务用例是仅从系统业务角度关注的用例,而不是具体系统的用例。它描述的是“该实现什么业务”,而不是“系统该提供什么操作”。例如,在实际系统中,“登录”肯定要作为一个用例,但是这是软件系统中的操作,而用户所关注的业务是不包含“登录”的。2.业务用例仅包含客户“感兴趣”的内容。3.业务用例所有的用例名应该让客户

4、能看懂,如果某个用例的名字客户看不懂什么意思,它也许就不适合作为业务用例。2.从业务用例图到活动图完成了业务用例图后,需要为每一个业务用例绘制一幅活动图。活动图描述了这个业务用例中,用户可能会进行的操作序列。活动图有个很重要的用途:从业务用例分析出系统用例。例如,“新闻管理”的活动图:是否已登陆用户、密码是否正确一个“新闻管理”业务用例,分解出若干系统操作。其中很多“活动”都很可能是一个系统用例。例如,从上图知系统至少包含以下备选系统用例:登录、注销登录、查看新闻列表、修改新闻、删除新闻。这样,将每个业务用例都绘制出相应的活动图,再将其中的“

5、活动”整合,就得出所有备选的系统用例。3.从活动图到系统用例图找出所有的备选系统用例后,要对其进行合并和筛选。合并:将相同的用例合并成一个;筛选:将不符合系统用例条件的备选用例去掉。一个系统用例应该是实际使用系统的用户所进行的一个操作,例如,“查看新闻列表”就不能算一个系统用例,因为它只是某系统用例的一个序列项。经合并和筛选后的系统用例图:4.从系统用例图到用例说明(规约)得出系统用例图后,应该对每一个系统用例给出用例说明(规约)。用例说明没有一个通用的格式,可按照习惯的格式进行编写,要求是“清晰易懂”。如,“登录”系统用例的一个说明:5.绘

6、制业务领域类图接着绘制业务领域类图。业务领域类图要描述以下三点:(1)系统中有哪些实体;(2)这些实体能做什么操作。(3)实体间的关系。类图例子:实体不是Actor,而是Actor使用系统时所调用的实体。例如,管理员是Actor,没有作为实体出现在类图中,管理员的工作可以通过调用三个类的方法完成。“注册会员”实体也不是用例图中的注册会员Actor,而是一个系统内的业务实体,供Actor们使用。例如,其中的“注册”功能是给注册会员Actor使用,而“移除”则是给管理员Actor使用的。6.绘制实现类图面向对象分析只关心系统本身的功能和业务,而不

7、关心与计算机相关的内容。面向对象设计和平台、语言、开发模型等内容关系紧密,因而很难找出一个通用的设计过程。但是,一般在设计过程中实现类图是要绘制的。实现类图和领域类图不一样,它描述系统的静态结构,是和最后的代码完全一致的。因此,它和平台关系密切,必须准确给出系统中的实体类、控制类、界面类、接口等元素以及其中的关系。一个简化的实现类图:7.绘制序列图有了静态结构,还要给出动态结构,才能看清系统间的类是如何交互的,从而有效帮助程序员进行编码工作。用户登录的序列图例子:注册会员作为Actor,调用UserController的Login方法启动序列

8、,而UserServices作为业务组件,首先调用数据访问组件的GetByName确定用户是否存在,如果存在,再调用GetByNameAndPassword确定输入

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。