确定属性(Identifying attribute)

Slides:



Advertisements
Similar presentations
主要内容 IPO 审核规则体系介绍 审核中关注的重点问题 2007 年以来被否决企业的原因分析. 第一部分 IPO 发行审核的规则体系 ● 法律:证券法 ● 行政规章:首次公开发行股票并上市 管理办法 ● 规范性文件:招股说明书准则、备忘录、 证券期货法律适用意见.
Advertisements

教學與行政收費 E 化平台建置 總務處出納組 102/4/25. 前言 本校學雜、學分及招生報名費外之公 款繳納方式,由繳款人透過開立於中 信商銀 401 專戶辦理匯款 ( 金融機構或 ATM) 入帳,或親至出納組辦理。 為因應數位化及現代生活習慣,擬設 置繳費 E 化平台,同時收款通路將增 加全國四大超商、線上刷卡或網路.
花卉博覽會. 目錄 1. 如何到達花博 ? 2. 花博的售票價 3. 優惠入場 4. 優惠入場二 5. 分為兩種購票方法 6. 花博為我們服務 7. 花博為我們服務 8. 大佳河濱公園區 9. 大佳河濱公園區 10. 花圃競賽區 11. 花博大遊行 12. 資料來源.
有教無類 因材施教 適性揚才 多元進路 優質銜接
<<會計資訊系統課程講義>> 統一塑模語言(UML)語法精要 -- 物件導向概念、需求分析及系統分析
任务二 面向对象的建模 4. UML静态建模 类图 对象图 包图 组件图.
金融商品與服務之基本模式 時間 資金投入 風險 金融商品與服務 資金產出 2. 金融商品與服務之基本模式 時間 資金投入 風險 金融商品與服務 資金產出 2.
接待耶穌的人 路加福音2:6-14.
第6章 企业集团的资金运筹 课 程:高级财务管理 主讲教师:龙文滨.
白领通定义 家庭备用金 无需担保、无需抵押 授信额度:一次授信、循环使用 1、白领通业务定义、发展现状及发展思路
第二章 警察校院簡介.
现代农业创业指导 广西省兴安县农广校.
作者:湖山國小 蔡明錡 指導老師:吳小芬老師
第3章 需求分析(续) 学习目标 什么是需求建模? 需求分析建模方法 掌握实体—关系图(E—R图); 掌握状态转换图;
不可不知的新生資訊 國際事務處 國際學生事務組.
金融产品认知 09会计3班 刘碧莲.
“一师一优课、一课一名师” 活动解读 桐庐县教育局教研室.
綜合所得稅申報實務 財政部南區國稅局 臺東分局 02/08/13 02/08/13 02/08/13 各位長官.各位先生.女士 大家好
中国证监会投资者保护局、上海证监局提醒您:
桃園縣 龜山鄉 楓樹國民小學 新生家長座談 校長:李志鵬 歡迎您.
國立空中大學台南中心  註冊工作簡報.
個人綜合所得稅報稅與節稅 104年4月16日 1 1.
102學年度 第1學期 第十二屆 學生自治會期初大會.
美学概论 主讲教师 孙建章 沈阳电大文法系.
法律修养专题 对应教材的第七、八章内容 及第五、六章法律部分内容.
---中国第一支产权市场交易基金 ---为国内产权交易提供专业融资服务
第二章 UML簡介 課前指引 本章介紹什麼是UML以及利用圖形來塑模資訊系統的好處在哪裡。文中也介紹了何謂「4+1的觀點」、以及簡述各項UML圖形的使用目的。並且,我們從靜態以及動態這兩個觀點來分類、介紹各圖形的使用時機。
广东新大地生物科技股份有限公司 IPO审计
您准备好了吗?.
變現性資產查核實務 經驗分享 報告人:官建和 第 1 頁.
携手物流协会 共创物流金融 招商银行重庆分行 2012年5月.
我的狗為何不汪只咩 日本一隻小貴賓狗要七、八萬台幣。很多有錢的女人都想跟電影明星一樣,牽一隻貴賓狗出門炫耀。 有個聰明的男人於是想出在網上賣小綿羊騙錢的把戲。一隻從英國或是澳洲進口的小綿羊只賣三萬多台幣。一下子有兩千多個女人買了小綿羊回家當貴賓犬養。 後來有個電影明星川上麻衣子上電視談話節目抱怨,他養的小貴賓犬不會汪汪的叫也不吃狗食。眼尖的來賓看出蹊蹺,告訴川上他養的是羊不是狗。
大学生安全防范教育.
大学生安全防范教育 济宁职业技术学院 安全保卫处.
報告單位:臺東縣警察局刑警大隊 報告人:副大隊長鍾一榮
第10章 考试系统的分析与设计 1.
图解监管转型简政放权 上市公司篇.
第6章 系统分析 6.1 概述 6.2 逻辑模型 6.3 逻辑结构分析 6.4 用例分析 6.5 概念类分析.
銀行舞弊及內部管理常見缺失暨查核技巧 檢查局 陳組長妍沂.
第9章 面向对象方法学引论 9.1 面向对象方法学概述 9.2 面向对象的概念 9.3 面向对象建模 9.4 对象模型 9.5 动态模型
节日安全指导手册.
网点常规审计管理办法.
抽象描述(abstract descriptions)那些需求被分析的系統
軟體工程 -物件導向程式設計與UML系統分析實作
物件導向系統分析與設計與UML.
复旦俄语歌小组的成长历程 (上集) 徐士菊 周德庆 编制 制作 ,以后时有增补 配乐:小路Track 1/83.
第六章 : 資料模型之繪製 1. 前言 資料流程圖 ( DFD ) 及 處理邏輯工具
A、資訊系統開發概論與課程簡介 何謂資訊系統? 為何需要系統分析師? 需要瞭解哪些知識? 領域知識? 資訊科技? 開發方法與技術? 課程簡介.
设计题目(中文) 英文 姓名 单位 ___年___月___日.
第9章 图形输出 在AutoCAD中,系统提供了图形输入、输出接口。用户不仅可以将其它应用程序中处理好的数据传送给绘图AutoCAD,还可以将在AutoCAD中绘制好的图形打印出来,或者把他们的信息传送给其他应用程序。
管理信息系统 第九章 面向对象的系统开发方法.
证书发放工作要点及流程 学院办公室.
第13章 設計模型 13-1 再談物件導向設計 13-2 建立互動圖 13-3 建立狀態機圖 13-4 設計模型的類別圖
ER Model.
梁文新 办公室:综合楼108 电 话: 软件工程导论 梁文新 办公室:综合楼108 电 话:
信息系统开发 信息系统开发的组织工作 第一阶段 系统规划 第二阶段 系统分析.
信息系统开发 信息系统开发的组织工作 第一阶段 系统规划 第二阶段 系统分析 第三阶段 系统设计 第四阶段 系统实施.
課程報告 使用開放原始碼工具實作軟體產品線方法
2011年教學觀摩會 教學心得報告 共同學科軍訓室馬毓君 2011年4月28日.
2019/4/26 值得您列入生涯規劃的 一個重要選項 參加國家考試 考選部國家考試宣導小組.
第十一章 物件資料結構塑模.
金融市場: 證所稅案重點 林文晟 老師.
求職防騙面面觀 不累生活文化有限公司 行政總監 賴永洲.
系统设计系统总体结构设计 代码设计 数据结构与数据库设计 输入输出设计 模块功能与处理过程 系统设计报告
國立空中大學台南中心  註冊工作簡報.
香港 再起.
面向对象建模 对象(object) 对象具有的含义: 现实世界中某个具体的物理实体或概念在计算机逻辑中的映射和体现。 在现实世界中:
106學年度四技二專技優甄審入學報名說明 1 1.
資格審查登錄系統-首次登入設定通行碼 若考生先前已於「繳費身分審查系統」設定過通行碼,則無須再行設定,直接登入系統即可.
Presentation transcript:

10.3.4 确定属性(Identifying attribute) 确定属性的过程包括分析和选择两个步骤。 1. 分析(Adjective and Noun phrase for Attribute Candidate)   在需求陈述中用名词词组表示属性。 例如,“汽车的颜色”或“光标的位置”。往往用形容词表示可枚举的具体属性,例如,“红色的”、“打开的”。但是,不可能在需求陈述中找到所有属性,分析员还必须藉助于领域知识和常识才能分析得出需要的属性。

2. 选择(Choose Proper Attribute) 删掉不正确的或不必要的属性。 (1) 误把对象当作属性   例如,在邮政目录中,“城市”是一个属性,而在人口普查中却应该把“城市”当作对象。

(2) 误把关联类的属性当作一般对象的属性   如果某个性质依赖于某个关联链的存在,则该性质是关联类的属性,在分析阶段不应该把它作为一般对象的属性。 (3) 把限定误当成属性   在ATM系统的例子中,“分行代码”、“账号”、“雇员号”、“站号”等都是限定词。

(4) 误把内部状态当成了属性 如果某个性质是对象的非公开的内部状态,则应该从对象模型中删掉这个属性。 (5) 过于细化 在分析阶段应该忽略那些对大多数操作都没有影响的属性。 (6) 存在不一致的属性 类应该是简单而且一致的。如果得出一些看起来与其他属性毫不相关的属性,则应该考虑把该类分解成两个不同的类。

10.3.5 识别继承关系(Recognising Inheritance)   用两种方式建立继承(即泛化)关系:   利用继承机制共享公共性质,并对系统中众多的类加以组织。 (1) 自底向上: 抽象出现有类的共同性质泛化出父类,这个过程实质上模拟了人类归纳思维过程。 例如,在ATM系统中,“远程事务”和“柜员事务”是类似的,可以泛化出父类“事务”;类似地,可以从“ATM”和“柜员终端”泛化出父类“输入站”。

(2) 自顶向下: 把现有类细化成更具体的子类,这模拟了人类的演绎思维过程。   利用多重继承可以提高共享程度,但是同时也增加了概念上以及实现时的复杂程度。使用多重继承机制时,通常应该指定一个主要父类,从它继承大部分属性和行为;次要父类只补充一些属性和行为。   图10.5增加了继承关系之后的ATM对象模型。

10.3.6 反复修改(Repetitious Modification) 1. 分解“现金兑换卡”类 把“现金兑换卡”类分解为“卡权限”和“现金兑换卡”两个类,将使每个类的功能更单一:前一个类标志储户访问账户的权限,后一个类是含有分行代码和卡号的数据载体。多张现金兑换卡可能对应着相同的访问权限。

2. “事务”由“更新”组成 通常,一个事务包含对账户的若干次更新,这里所说的更新,指的是对账户所做的一个动作(取款、存款或查询)。“更新”虽然代表一个动作,但是它有自己的属性(类型、金额等),应该独立存在,因此应该把它作为类。 3. 把“分行”与“分行计算机”合并 区分“分行”与“分行计算机”,对于分析这个系统来说,并没有多大意义,为简单起见,应该把它们合并。类似地,应该合并“总行”和“中央计算机”。

10.4 建立动态模型(Dynamic Modeling)   第一步是编写典型交互行为的脚本。   第二步,从脚本中提取出事件,确定触发每个事件的动作对象以及接受事件的目标对象。   第三步,排列事件发生的次序,确定每个对象可能有的状态及状态间的转换关系,并用状态图描绘它们。   最后,比较各个对象的状态图,检查它们之间的一致性,确保事件之间的匹配。   本节结合ATM系统的实例,进一步讲述建立动态模型的方法。

10.4.1 编写脚本(Writing Script) 在建立动态模型的过程中,脚本是指系统在某一执行期间内出现的一系列事件。   在建立动态模型的过程中,脚本是指系统在某一执行期间内出现的一系列事件。   脚本描述用户(或其他外部设备)与目标系统之间的一个或多个典型的交互过程,以便对目标系统的行为有更具体的认识。   编写脚本的目的,是保证不遗漏重要的交互步骤,它有助于确保整个交互过程的正确性的和清晰性。   ATM系统的正常情况脚本和异常情况脚本(240页)。

10.4.2 设想用户界面(User Interface Design)   大多数交互行为都可以分为应用逻辑和用户界面两部分。   采用不同界面(例如,命令行或图形用户界面),可以实现同样的程序逻辑。应用逻辑是内在的、本质的内容,用户界面是外在的表现形式。   动态模型着重表示应用系统的控制逻辑。

图10.7 ATM的界面格式

10.4.3 画事件跟踪图(Drawing Events Track Diagram)   完整、正确的脚本为建立动态模型奠定了必要的基础。但是,用自然语言书写的脚本往往不够简明,而且有时在阅读时会有二义性。为了有助于建立动态模型,通常在画状态图之前先画出事件跟踪图。为此首先需要进一步明确事件及事件与对象的关系。

1. 确定事件(Identifying events) 应该仔细分析每个脚本,以便从中提取出所有外部事件。 2. 画出事件跟踪图(Drawing Events Track Diagram)   从脚本中提取出各类事件并确定了每类事件的发送对象和接受对象之后,就可以用事件跟踪图把事件序列以及事件与对象的关系,形象、清晰地表示出来。事件跟踪图是简化的UML顺序图。   在事件跟踪图中,一条竖线代表一个对象,每个事件用一条水平的箭头线表示,箭头方向从事件的发送对象指向接受对象。时间从上向下递增。图中仅用箭头线在垂直方向上的相对位置表示事件发生的先后。

10.4.4 画状态图(Drawing States Diagram)   状态图描绘事件与对象状态的关系。当对象接受了一个事件以后,引起的状态改变称为“转换”。   用一张状态图描绘一类对象的行为,它确定了由事件序列引出的状态序列。仅考虑具有重要交互行为的那些类。   考虑事件跟踪图中指向某条竖线的那些箭头线。把这些事件作为状态图中的有向边(即箭头线),边上标以事件名。两个事件之间的间隔就是一个状态。   从事件跟踪图中的竖线射出的箭头线,是这条竖线代表的对象达到某个状态时所做的行为(往往是引起另一类对象状态转换的事件)。

  考虑完正常事件之后再考虑边界情况和特殊情况,出错处理是不能省略的。   “ATM”、“总行”和“分行”的状态图。   这些状态图都是简化的,尤其对异常情况和出错情况的考虑是相当粗略的。

图10.10 总行类的状态图

图10.11 分行类的状态图

10.4.5 审查动态模型(Review Dynamic Model)   各个类的状态图通过共享事件合并起来,构成了系统的动态模型。   在完成了每个具有重要交互行为的类的状态图之后,应该检查系统级的完整性和一致性。

10.5 建立功能模型(Function Modeling)   功能模型表明了系统中数据之间的依赖关系,以及有关的数据处理功能,它由一组数据流图(DFD)组成。其中的处理功能可以用IPO图(或表)、伪码等多种方式进一步描述。   通常在建立了对象模型和动态模型之后再建立功能模型。

10.6 定义服务(Definition Service) 1. 常规行为( Actions)   在分析阶段可以认为,类中定义的每个属性都是可以访问的,也就是说,假设在每个类中都定义了读、写该类每个属性的操作。但是,通常无需在类图中显式表示这些常规操作。

2. 从事件导出的操作(Operations)   状态图中发往对象的事件也就是该对象接收到的消息,因此该对象必须有由消息选择符指定的操作,这个操作修改对象状态(即属性值)并启动相应的服务。   例如,在ATM系统中,发往ATM对象的事件“中止”,启动该对象的服务“打印账单”;   发行分行的事件“请分行验卡”启动该对象的服务“验证卡号”;   而事件“处理分行事务”启动分行对象的服务“更新账户”。   所启动的这些服务通常就是接受事件的对象在相应状态的行为。

3. 与数据流图中处理框对应的操作(Process of DFD)   数据流图中的每个处理框都与一个对象(也可能是若干个对象)上的操作相对应。   应该仔细对照状态图和数据流图,以便更正确地确定对象应该提供的服务。   例如,在ATM系统中,从状态图上看出分行对象应该提供“验证卡号”服务,而在数据流图上与之对应的处理框是“验卡”,根据实际应该完成的功能看,该对象提供的这个服务应该是“验卡”。

4. 利用继承减少冗余操作(Inheritance Operations)   应该尽量利用继承机制以减少所需定义的服务数目。只要不违背领域知识和常识,就尽量抽取出相似类的公共属性和操作,以建立这些类的新父类,并在类等级的不同层次中正确地定义各个服务。

习题 10-1 用面向对象方法分析研究本书习题2第2题中描述的储蓄系统,试建立它的对象模型、动态模型和功能模型。 10-2 用面向对象方法分析研究本书习题2第3题中描述的机票预订系统,试建立它的对象模型、动态模型和功能模型。 10-3 用面向对象方法分析研究本书习题2第4题中描述的患者监护系统,试建立它的对象模型、动态模型和功能模型。 10-4 下面是自动售货机系统的需求陈述,请建立它的对象模型、动态模型和功能模型:

自动售货机系统是一种无人售货系统。售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。有效的硬币是一元币、五角币、一角币、五分币、二分币和一分币。其他货币都被认为是假币。机器拒绝接收假币,并将其从退币孔退出。当机器接收了有效的硬币之后,就把硬币送入硬币储藏器中。顾客支付的货币根据硬币的面值进行累加。

自动售货机装有货物分配器。每个货物分配器中包含零个或多个价格相同的货物。顾客通过选择货物分配器来选择货物。如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返回到退币孔。如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。