2023年实验二建立类模型和状态模型.doc

上传人:M****1 文档编号:548063217 上传时间:2023-04-12 格式:DOC 页数:9 大小:86.04KB
返回 下载 相关 举报
2023年实验二建立类模型和状态模型.doc_第1页
第1页 / 共9页
2023年实验二建立类模型和状态模型.doc_第2页
第2页 / 共9页
2023年实验二建立类模型和状态模型.doc_第3页
第3页 / 共9页
2023年实验二建立类模型和状态模型.doc_第4页
第4页 / 共9页
2023年实验二建立类模型和状态模型.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《2023年实验二建立类模型和状态模型.doc》由会员分享,可在线阅读,更多相关《2023年实验二建立类模型和状态模型.doc(9页珍藏版)》请在金锄头文库上搜索。

1、实验二 建立类模型一、建立类模型一方面标记类和关联,由于它们影响到整体结构和解决问题的方法;另一方面是增长属性,进一步描述类和关联的基本框架,使用继承合并和组织类;最后将操作增长到类中去作为构造状态模型和交互模型的参考。3 拟定类选取名词排除假类问题陈述暂定的类拟定的类拟定类的过程构造类模型的第一步是标记来自问题域的相关类,类涉及物理实体和概念。所有类在应用中都必须故意义,在问题陈述中,并非所有类都是明显给出的,有些是隐含在问题域或一般知识中的。检查问题陈述中的所有名词,产生如下的暂时类:软件 银行网络 出纳员 自动出纳机 分行 分理处 分理处计算机 帐户 事务 出纳站 事务数据 分行计算机

2、钞票卡 用户 钞票 收据 系统 顾客 费用 帐户数据 访问 安全措施 记录保管 根据下列标准去掉不必要的类和不对的的类:(1) 冗于类:若两个类表述了同一个信息,保存最富有描述能力的类,如“用户”和“顾客”就是反复的描述,由于“顾客”最富描述性,因此保存它。(2) 不相干的类:除掉与问题没有多少关系或主线没关系的类。例如,摊派“费用”超过了银行网络系统的范围。(3) :模糊类:类必须是拟定的,有些临时类边界定义不对或范围过大,如“记录保管”为模糊类,它是“事务”中的一部分。在银行网络系统中,模糊类有“系统”、“安全措施”、“记录保管”及“银行网络”等,应删除。(4) 属性:假如某一个性质的独立

3、性很重要,就应当把它归属到类,而不是属性。而有些候选类是属性,如“帐户数据”、“收据”、“钞票”及“事务数据”,属于属性,应删除。(5) 操作:假如所描述的操作并不合用于对象并且被其自身所操纵,那么这一定不是类,具有自身性质的操作应当描述成类。如构造电话模型,“拨号”就是状态模型一部分而不是类,但是在电话系统中,“拨号”却是一个重要的类,它有日期、时间、通话时长等属性。3 拟定关联关联常用描述性动词或动词词组来表达,其中有物理位置的表达、传导的动作、通信、所有者关系及条件的满足等。从问题陈述中抽取所有也许的关联表述,把它们记下来,但不要过早去细化这些表述。下面是银行网络系统中所有也许的关联,大

4、多数是直接抽取问题中的动词词组而成。在陈述中,有些动词词组表达的关联是不明显的。尚有一些关联与客观世界或人的假设有关,必须同用户一起核算这种关联,由于这种关联在问题陈述中找不到。1) 银行网络系统问题陈述中的关联如下所示:(1) 银行网络涉及出纳站和自动出纳机(2) 分行共享自动出纳机(3) 分理处提供分理处计算机(4) 分理处计算机保存帐户(5) 分理处计算机解决帐户支付事务(6) 分理处拥有出纳站(7) 出纳站与分行计算机通信(8) 出纳员为帐户录入事务(9) 自动出纳机接受钞票卡(10) 自动出纳机与用户接口(11) 自动出纳机发放钞票(12) 自动出纳机打印收据(13) 系统解决并发访

5、问(14) 分理处提供软件(15) 费用分摊给分理处2) 隐含的动词词组(1) 分行由分理处组成(2) 分理处拥有帐户(3) 分行拥有分行计算机(4) 系统提供记录保管(5) 系统提供安全(6) 顾客有钞票卡3) 基于问题领域的知识(1) 分理处雇用出纳员(2) 钞票卡访问帐户4) 去掉不必要和不对的的关联使用以下标准去掉不必要和不对的的关联:(1) 若某个类已被删除,那么与它有关的关联也必须删除或者用其他类来重新表述。如删除了“银行网络”,相关的关联也要删除。(2) 不相干的关联或实现阶段的关联。删除所有问题域之外的关联或涉及实现结构中的关联,如“系统解决并发访问”就是一种实现的概念。(3)

6、 动作。关联应描述应用域的结构性质而不是瞬时事件,因此应删除“自动出纳机接受钞票卡”,“自动出纳机与用户接口”等。(4) 派生关联。省略那些可以用其他关联来定义的关联。0.*办理办理0.*1.*0.*访问0.*有0.*涉及0.*涉及1.*办理1.*办理1.*雇佣拥有拥有0.*通信0.*通信通信0.*0.*拥有0.*出纳站分理处计算机远程事务钞票卡0.*有有0.*顾客帐户出纳事务出纳员分理处分行计算机分行自动出纳机银行网络系统的初步类图3拟定属性属性是个体对象的性质,属性通常用修饰性的名词词组来表达。形容词常表达具体的可枚举的属性值,属性不也许在问题陈述中完全表述出来,必须借助于应用域的知识及客

7、观世界的知识才可以找出它们。只考虑与具体应用直接相关的属性。按下列标准删除不必要的和不对的的属性。(1) 类:若实体的独立存在性比它的值更重要,那么这个实体不是属性而是类。如在邮政目录中,“城市”是一个属性,然而在人口普查中,“城市”则被看作是类。(2) 限定词:若属性值固定下来后,能减少关联的重数,则可考虑把该属性重新表述为一个限定词。如银行码、站代码及雇员号等限定词不作为属性。(3) 内部值:若属性描述了类的非公开的内部状态,则应从类模型中删除该属性。(4) 细化:在分析阶段应忽略那些不也许对大多数操作有影响的属性。4使用继承来细化类使用继承来共享公共结构,以次来重新组织类,可以用下面两种

8、方式来进行:(1) 自底向上通过把现有类的共同性质一般化成父类,寻找具有相似的属性、关联或操作的类来发现继承。例如,“远程事务”和“出纳事务”是类似的,可以一般化为“事务”。(2) 自顶向下将现有类细化为更具体的子类。当同一关联名出现多次且意义也相同时,应尽量具体化为相联系的类。例如“事务”由“出纳站”和“自动出纳机”办理,那么“办理站”或“受理站”就是“出纳站”和“自动出纳机”的一般化。5完善类模型建模不也许一次就能保证模型是完全对的的,软件开发的过程就是一个不断完善的过程。(1) 几种也许丢失类的情况及解决办法1) 同一类中存在毫无关系的属性和操作,则分解这个类,使各部分互相关联。2) 一

9、般化体系不清楚,则也许分离扮演两种角色的类。3) 存在无目的类的操作,则找出并加上失去的目的类。4) 存在名称及目的相同的冗余关联,则通过一般化创建丢失的父类,把关联组织在一起。(2) 查找多余的类 若类中缺少属性、操作和关联,则可删除这个类。(3) 查找丢失的关联丢失了操作的访问途径,则加入新的关联以回答某些查询或操作。(4) 修改针对银行网络系统的具体情况作如下修改:(1) 钞票卡有多个独立的特性。把它分解成为两个类:卡片权限和钞票卡。卡片权限是银行用来鉴别用户访问权限的卡片,标示一个或多个用户账户的访问权限;各个卡片权限对象中也许具有好几个钞票卡,每张都带有安全码、卡片码,它们附在钞票卡

10、上,标示银行的卡片权限。钞票卡是自动出纳机得到标记码的数据卡片,它也是银行代码和钞票卡代码的数据载体。(2) “事务”不能体现对账户之间传输描述的一般性,因它只涉及一个账户。一般来说,在每个账户中,一个“事务”涉及一个或多个“更新”,一个“更新”是对账户的一个动作,它们是取款、存款或查询等之一。因此,增长“更新”类,事务由若干更新组成,更多涉及到账户。(3) “分理处”和“分理处计算机”之间,“分行”和“分行计算机”之间的区分似乎并不影响分析,计算机的通信解决事实上是实现的概念,将“分理处计算机”并入到“分理处”,将“分行计算机”并入到“分行”。访问帐户余额类型有顾客名字地址发行雇佣拥有分理处

11、名字站码雇员号帐户号卡片码拥有分行站码银行码标记钞票卡卡号开始被录入卡片权限密码出纳站自动出纳机出纳员远程事务出纳员事务更新数量类型录入站组成录入事务日期时间涉及维持有修改后的类模型如下:实验三 建立状态模型状态分析从寻找外部可见的模拟和响应事件开始,拟定各对象的也许事件的顺序。建立状态模型的环节:第一步是准备典型的对话脚本;第二步从脚本中抽取事件,把它与其它目的对象联系起来;第三步组织事件的顺序和状态,用状态图来表现;第四步是比较各个不同类的状态图,保证事件之间的匹配。1. 准备脚本考虑用户和系统之间的一个或多个典型对话,对目的系统的行为有个结识,脚本中应表现重要的交互行为,通过脚本来逼近状

12、态模型。有时问题陈述中描述了完整的交互过程,但还要构思交互的形式。银行网络系统的问题陈述表白了需从用户处获得事务的数据,但确切需要什么参数,动作顺序是如何等还是模糊的。一方面为“正常”情况准备脚本,然后考虑“特殊”情况,最后考虑用户犯错情况。还必须考虑各种建立在基本交互行为上的交互。脚本是事件序列,每当系统中的对象与外部用户发生互换信息时,就产生一个事件,所互换的信息值就是该事件的参数。对于各种事件,应拟定触发事件的动作对象和该事件的参数。在银行网络系统的交互行为中,有正常的脚本和例外的脚本。(1) 正常的脚本自动出纳机与用户交互的正常的脚本如下:1) 自动出纳机请求用户插入卡片;用户插入钞票

13、卡。2) 自动出纳机接受卡片并读出卡号。3) 自动出纳机规定密码,用户键入密码。4) 自动出纳机与分行确认卡号和密码;分理处检查它并告知承兑的自动出纳机。5) 自动出纳机规定用户选择事务类型(取款、存款、转帐及查询),用户选择取款。6) 自动出纳机规定钞票数量;用户输入钞票数量。7) 自动出纳机规定分行解决事务;分行把规定传给分理处,确认事务成功。8) 自动出纳机分发钞票并且规定用户取走钞票;用户取钞票。9) 自动出纳机提醒用户是否继续;用户指出不继续。10) 自动出纳机打印收据,退出卡,并请求用户取走它们;用户拿走收据和卡。11) 自动出纳机请求用户插入。(2) 例外的脚本自动出纳机与用户交

14、互的例外的脚本如下:1) 自动出纳机请求用户插入卡片;用户插入钞票卡。2) 自动出纳机接受卡片并读出卡号。3) 自动出纳机规定密码,用户键入错误密码。4) 自动出纳机与分行确认卡号和密码,在征询分理处后拒绝。5) 自动出纳机指示密码错误并请求再次输入;用户输入对的,分行确认成功。6) 自动出纳机请求用户选择事务类型;用户选择取款。7) 自动出纳机请求键入钞票数量;用户改变选择并键入“取消”。8) 自动出纳机退出卡并请求用户取走卡;用户拿走卡。9) 自动出纳机请求用户插入卡。2拟定事件检查两种脚本的各个环节以拟定所有外部事件,事件涉及所有来自或发往用户的信息、外部设备的信号、输入、策略、中断、转换和动作,使用脚本可以发现正常事件,但不要漏掉条件和异常事件。将各种类型的事件放入发送它和接受它的对象中,事件对发送者是输出事件,但对接受者则是输入事件。有时对象把事件发送个自身。3 构造状态图对类模型中的类建立状态图,反映对象接受和发送的事件,每个脚本都相应于状态图中一条途径。开始do:显示屏检查do:规定密码核对do:确认帐户选择do:规定类型输入数据

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号