开发工具:
文件大小: 5mb
下载次数: 0
上传时间: 2019-01-12
详细说明:
东北大学需求分析与系统设计期末考题简答题部分,中文,swoT指优势、缺陷、机会、威胁( strength、 weakness、 opportunit!y、 threat)。SWOT
方法以调整组织的优势、劣势、机会和威胁的方式来进行信息系统开发项目的识别、分类、排序和选择。这是
个从确定组织使命开始的、自顶向下的方法。将与研究对象密切相关的各种主要内部优势、劣势和外部的机
会和威胁等,通过调查列举出来,并依照矩阵形式排列,然后用系统分析的思想,把各种因素相互匹配起来加
以分析,从中得出一系列相应的结论,而结论通常带有一定的决策性,
8. What are the three management levels? Consider a banking application that monitors
the usage patterns of a credit card by its holder in order to block the card automatically
when the bank suspects a misuse(theft, fraud, etc. ) Which management level is
addressed by such an application Give reasons
三个管理层次是策略级、战术级、操作级
该应用程序解决的问题所属类型为操作级问题。
操作级关注员工日常活动和生产支持。
9. Explain what a On-line Transaction Processing System is. What is
of oLTP systems? Why are transactions necessary in databases?a transaction in terms
OLTP systems(联机事务处理系统)是指利用计算机网络,将分布于不同地理位置的业务处理计算杌设备或网络
与业务管理中心网络连接,以便于在任何一个网络节点上都可以进行统一、实时的业务处理活动或客户服务
事务的提岀主要是为了解决并发情况下保持数据一致性的问题。
比方说一个客户给另外一个客户打钱,一个客户的账户余额增加而另外一个减少,如果在这过程中出错,则要
同时回滚两个的数据,保持了数据的一致性。
10. What is Process Hierarchy Modeling(PHM)? Is a Process hierarchy Diagram part of
Business Process Modeling Notation(BPMN)? Explain what a process is Using diagrams
explain the difference between composite and atomic processes
过程层次建模是对由活动定义的有层次结构的业务过程建模
BPMN不支持过程的结构建模。
业务过程可能是手工操作的活动或者自动化服务。一个过程至少有一个输入流和一个输出流。过程获得控制,
主要通过将输入流转变为输出流来完成相应的活动。
原子过程(任务)不包含任何子过程。复合过程通过子过程来描述它的行为。
以下是图
Composite process
Atomic process (task)
Composite process with subprocesses suppressed
11. Explain what Business Process Modeling Notation(BPMN) is Are there any
alternatives to BPMN? USing diagrams describe the four basic categories of modeling
elements in BPMN
BPMN专门用于对由活动定义的业务过程建模,这些活动能够产生对企业或其外部利益相关者有价值的事物。
UML活动图是BPMN的一个替代者。
BPMN的四种基本元素是流对象、连接对象、泳池和人工制品。
b.业务过程模BPMN描述过程内部细节,目的是为业务人员和人土提供种共同的沟通语言。
i4和其建楨元素
1)流对象—BPMN的核心元素
a) events.事件
子过程在国角矩形的下边舆上有一个+,表示旦为一个复合活动。复合活动可分解
为一组子活动,他被看作展开的子活动、其他符号决定了其他属性:循环或者多实例
c! gateway路由网关
压缩了过程
C任务
任缩多例子过程
单决喧其
牛行分翼连探(AN
③又个药
包容性决定洛并(CR)
复杂表定炸
2)连接刈象
序列
消息流
关联
图24BPMN——连接对象
5)泳池pol(涿道 swimlanes!—描述单一的参与者(实体)的活动
a])水平的,竖直的,选择哪一种现决于作图的方便程度
4人工制品
a)如数据对象,表小活动需要的数据或者活动产生的数据。对于过程的消忘流或者序列流,他
们不产牛仟何卣挖影响,但亼提共额外的关T活动的
b)组,目的是文档我分析
C注释。为读者提供附加的义本信息,
注释
数据对象
组
MN人工制品
12. What are the three phases of solution envisioning Describe each in detail
解决方案构想过程的三个阶段
①业务能力探索:确定业务能力,即冮解决方案提交具体成果的能力;描述能力案例,即解决方案思路,为每
个能力生成一个业务案例。
②解决方案能力构想:目的是将能力用例发展为解决方案概念(将业务环境作为输入,产生的未来新工作方
法的构想作为输岀),确保利益相关者对其意见保持致∶解决方案概念将业务环境作为输入,产生的未来新
工作方法的构想作为输岀。解决方案概念集中于最终的解决方案体系结构,并在解决方寀构想硏讨中得到发展。
③软件能力设计:取决于系统实现技术;开发软件能力体系结构、细化具有项目规划和风险分析的业务用例;
是软件建模的一项活动,为构建解决方案开发高层模型并制定计划。建模计划包括功能(功能性需求)质量属
性(非功能性需求)和能力体系结构,显示高层软件构件之间的相互作用
13. What is Requirements Elicitation? What does it involve? What artifacts does it
produce? What is the difference between a functional and a non-functional requirement?
Give an example of a functional and a non-functional requirement
需求引导就是业务分析员通过咨询发现系统的需求。
它涉及客户和问题领域专家,需要领域知识和足够的经验。
最后得出客户所需要的系统确定的需求定义。
功能性需求需要从客户处获得,是系统期望的服努。例如∶系统的范围,必要旳业努功能,所需的数据结构。
非功能性需求本质上不是行为的,而是系统开发和实现过程中的约束。例如∶可用性,可复用性,可靠性,性
能,效率,适应性,其它约束。
14. Give four methods used in Requirements Elicitation Describe each in detail
需求引导的传统方法包括面谈、调查表、观察和研究业务文档
1与客户和领域专家面谈:面谈是发现事实和聚集信息的基本技术。大多数的面谈过程都是与客户一起进行的
与客户面谈大多用来导岀用例需求。如果业务分杄员没有足够的领域知识的话,可以邀请领域专家面谈。与领
域专家的面谈经常是一个知识转换的过程,即对业务分析员来说是一个学习过程。面谈有两种基本形式:结构
化旳和非结构化的。结构化面谈需要提前准眢,有一个明确的日程,并且许多问题都是预先确定的。非结构化
面谈更像非正式的会议,没有预定问题或预计的目的。
2.调查表:调查表是向很多客户收集信息的有效方法。它一般用来作为面谈的补充形式,而不是要替代它。调
查表应该设计得使回答问题尽量容易,特别应该避免开放式问题,大多数问题都应该是封闭式的。
3观察:当客户不能有效地表达信息,或者只有一个完整的业务过程中的片段知识时,观察可能是有效的发现
事实的抟术。要使观察具有代表性,观察应该持绠较长的一段时间,在不同的时间段上和不同的工作负荷下挑
选时间进行。
4.文档和软件系统的硏究∶文档和软件系统的硏究是发现用例需求和领域知识需求的宝贵技术。用例需求通过
研究已有的企业文档和系统表格或报告来发现。要研究的组织文档包括:业务表格、工作过程、职位描述、业
务计划等,要研究的系统表格和报表包括∶计算杋屏幕和报表,领域知识需求通过研究领域刊物和参考手册获
得
15. Why is Requirements Negotiation and validation needed?
客户的需求也许是重叠的( overlap)或者矛盾的( conflict)。有些需求可能是模棱两可的( ambiguous)或
者不现实的,其他一些需求可能还没有发现
由于这些原因,在形成需求文档之前,需要对需求进行协商与确认。
16. Define requirement risk and priorities. Give five categories of risk and give an example
of each
技术风险,需求在技术上难以实现。
性能风险,需求实现后,会延长系统的响应时间。
安全风险,需求实现后,会破坏系统的安全性
数据库完整性风险,需求不容易验证,并且可能导致数据不一致性。
开发过程风险,需求要求开发人员使用不熟悉的非常规开发方法,如形式化规格说明方法。
政治风险,由于内部政治原因,证实很难实现需求。
法律风险,需求可能触犯现行法规或者假定了法律的变更
易变性风险,需求很可能在开发过程中不断变化或进化。
17.Why is Change Management needed? Give the name of a tool used in change
Management
需求是变更的。在开发生命周期的任何阶段,需求都有可能变更,可能删除已有需求或者增加新的需求,变更
本身并不会导致困难,但没有管理的变更却会带来麻烦。
开发越往前走,需求变更的开销越大。
变更可能与人为错误有关,但常常是由于内部策略变化或者外部因素而引起的。无论什么原因,需要强有力的
管理政策来建立变更请求的文档,估计变更的影响,并实现变更。在开发生命周期的任何阶段,需求都可能更
改,可能删除已有需求或者增加新的需求。开发越往前走,需求变更的开销越大。
因为需求变更开销很大,每个变更请求必须建立一个规范化的业务用例
理想的情况下,需求的变更应该由软件配置管理工具( software configuration management tool)存储和跟
18. With the aid of a diagram describe the PCBMEr (Presentation, Controller, Bean
Mediator, Entity, and Resource) framework. Each layer should be described in detail
PCBMER的层
①bean层表示那些预先确定要呈现在用户界面上的数据类和值对象
②表示层表示屏幕以及呈现bean对象的U对象
③控制器层表示应用逻辑
④实体层响应控制器和中介者
⑤中介者层建立了充当实体类和资源类媒介的通信管道
⑥资源层负责所有与外部持久数据资源的通信,建立和维护与数据源的连接
19. Name and describe the seven main architectural principles
PCBMER中最重要的体系结构原则:
1、向下依赖原则(DDP)。DDP规定主依赖结构是自顶向下的。
2、向上通知原则(UNP)。∪NP促进了层与层之间自底向上通信的低耦合。
3、相邻通信原则(NCP)。NCP要求每一层只能与有直接依赖关系的相邻层通信。
4、显示关联原则(EAP)。EAP表明允许在类之间传递消息
5、循环去除原则(CEP)。CEP要解决层与层之间的以及层中的类之间的循环依赖。
6、类命名原则(CNP)。CNP原则使得我们通过类名就能了解该类属于哪个层
7、相识包原则(APP)。APP是NCP的推论。相识包由对象在方法调用参数中传递的接口组成,而不是由
具体的对象组成。
20. Describe five approaches to discovering classes from requirements
识别类的方法
1、名词短语方法:建议分析员应该阋读需求文档中的陈述,从中寻找名词短语。
2、公共类模式方法:根据通用的对象分类理论来导出候选类。
3、用例驱动方法:用例的图形模型,加上叙述性描述、行为和交互模型。
4、CRC方法(类-职责-协作者):CRC方法涉及头脑风暴式的集体讨论,通过使用一种特殊制作的卡片使其
简单易行。
5、混合方法:从中间出发,混合以上四种方法。
21. Name and describe the four possible semantics for aggregation?
1. Exclusive Owns聚合
1)依赖性,删除一个复合对象,即相关的构建对象都被删除
2)传递性,如果对象C1是B1的一部分,并且B1是A1的一部分,那么C1是A1的一部分
3)非对称性,如果对象C1是B1的一部分,则B1不是C1的一部分
4)固定性,如果对象C1是B1的一部分,则它绝不是Bf(i≠1)的一部分
2.Owns聚合
1)依赖性
2)传递性
3)非对称性
3.Has聚合
1)传递性
2)非对称性
4. Member聚合
在 Member聚合中,一个构件对象可以同时属于一个以上的复合对象, Membe聚合的多重性可以是多
对多的。
22. Describe and contrast Aggregation and Composition
聚合:表示两个对象之间是整体和部分的弱关系,部分的生命周期可以超越整体。如电脑和鼠标。将较弱形式
的聚合简单地称为聚合,并不物理地包含部分对象,具有“通过引用”语义。
组合∶表示两个对象之间是整体和部分的强关系,部分的生命周期不能超越整体,或者说不能脱离整体而存在。
组合关系的部分”,是不能在整体之间进行共享的。如人和眼睛。将更强形式的聚合成为组合,物理地包含部
分对象,具有“通过值”语义
23. Describe and discuss generalization, including substitutability, polymorphism, abstract
classes, abstract operations.
继承是一种动作,泛化是一种状态。
个或多个类的公共特性可以抽象到一个更一般化的类中,这称为泛化
继承是一种泛化,除继承外,泛化的两个目的
可替换性:子类对象是超类变量的一个合法值。
多态性:同样的操作在不同的类中可以有不同的实现。
多态性在与继承联合使用时效果最好。常常在超类中声明一个多态操作,但却不提供实现,即给定了操作的型
构(操作名和形式参数列表)。
抽象操作与抽象类不同。抽象类是没有任何直接实例对象的类,带有抽象操作的类就是抽象类。
24. Compare and contrast interfaces and classes
接口除了常量,没有属性、关联或状态。
接口有操作,并且所有操作都隐含是公共的和抽象的。
接口与类没有关联,但它们可以作为来自于类的单项关联的目标方
接口不等同于抽象类,有抽象操作的类就称为抽象类
25. Can a class ever model an interface? Explain your answer
可以,接口也是特殊的类,类内部可以有作为“接口”的方法
26. What does transitivity mean in the context of aggregation?
传递性,若对所有的a,b,c属于Ⅹ,下述语句保持有效,则集合Ⅹ上的二元关系R是传递的:「若a关系
到b且b关系到c,则a关系到c。」
聚合中的传递性指,如果对象A是B的一部分,B是C的一部分,那么A一定是C的一部分
27.What kinds or relationships are possible between use cases? Describe each
关联:关联关系建立参与者和用例之间的通信渠道
包含:允许将被包含用例中的公共行为分解出来
扩展:通过在特定的扩展点激活另一个用例来扩展一个用例的行为,从而提供一种可控的扩展形式
泛化:泛化关系允许一个特殊化的用例改变基础用例的任何方面
28. Can use cases model concurrency?
用例不可表示并发,但是活动图能表示并发
29. Will the state change always occur when the relevant transition to that state has been
fired? Explain your answer with an example
不一定。可能指定了入口动作,那么在状态变化发生前,入口动作需要被满意地完成。
30. What is a UML Stereotype? Using the University Enrollment case study give an
example of a stereotype
在∪ML模型中,构造型是用来指岀其他模型元素的用途的模型元素。∪ML提供了一组可以应用于模型元素的
标准构造型。
可以使用构造型来精化模型元素的含义。例如,可以对工件应用《 library》构造型以指示它是一个特定类型的
工件。可以对使用关系应用κ global》、κPK》、 Include》构造型,以准确指示一个模型元素如何使用另一个模
型元素。还可以使用构造型来描述含义或用法不同于另一个模型元素的模型元素。
构造型可以具有称为标注定义的属性。将一个构造型应用于模型元素时,属性的值称为标注值。
ECourse
DEgree
<> degreeName: String
<> course Code: String
totalCreditPoints: int
a,<> courseName: String
creditPoints: short
EStudyPrograr
year short
semester: short
STudent
ECourseOffering
<> studentId: String
year, short
studentName: String
semester: short
enrolmentQuota. int
31. Explain what a constraint is in the context of a UML class model. Give an example of a
class constraint using the University Enrollment case Study
约束是指条件或限制,是对一个元素某些语义的声明,可以用自然语言文本或机器可读语言来表达。
约束表示附加给被约束元素的额外语义信息。
约束是一个断言。
例子
在大学注册系统中,约束包括:
1、注册系统中将会判断学生的年级,给予学生相应的选课选择。
2、如果学生不及格科目的总学分超出限制,则开启留级生选课机制
3、系统根据学生的选课方案,进行判断,验证其时间表是否冲突、班级容量是否够用等等
32.What is a constrained association? Give an example
限定关联是在二元关联的一端,有一个属性框(限定词),框中包含一个或多个属性。这些属性可以作为一个索
引码,用于穿越从被限定的源类到关联另一端的目标类的关联。例如, Flight和 Passenger之间是多对多的。
然而,当类 Flight被属性 seatNumberi和 departure限定时,关联的多重性就降为一对一。由限定词
( lightNumber+ seatNumber+ departure)引入的组合索引码能够被链接到只有零或一个 Passenger对象上。
Fight
seatNumber: String
n flightNumber: String departure: Date
0.1 Passenger
1.n
图5-11限定关联
33. Describe tags and give an example of their use
标签t
1)标签的定乂:是构造型的特性,表示为构造型声明的类矩形的一个属性
2)标签的值:是一个名-值对,附属于一个模型元素
3)标签与约束相似,表示模型中的任意文本信息,写在大括号中
a)形式如下:tag=va
b)如
Created
约束
(Employee created I=Employee. due
<>
<>
Event
Employee
tauthor= Eva,
tauthor = Le
developmentstatus= drafty
developmentstatus=confirmed)
0.1
标
图5-3关系管理系统中关联的约束
34. What are the types of visibility for class attributes and methods?
+:公共可见性
私有可见性
#:保护可见性
包可见性
35. Should you ever use the friend relationship? Explain
C++友元可见性 Friend,类似于java的包可见性
a) 4: friend void Book: putOnBookShelf(
b)友元可以是另一个类或另一个类的操作。友元关系是单向的,A类让B类成为
友元,但B类不一定是A类的友元,即B类不承认
c)友元关系要在授予友元关系的类中声明
d)在UML中,友元关系显示为一条虛线表示的依赖关系,从一个友元类或操作
指向授予友元关系的类。构造型<< friend>绑定在依赖箭头上
class CAmpaign(
public:
friend void ECallScheduled: getTicketsLeft ():
CAmpaign
<>
a campaign Code: String
ECallscheduled
a campaignTitle: String
date Start: String
a phoneNumber. String
a dateClose: String
i priority: String
dateDrawn: String
attemptNumber:
num Tickets. int
getTicketsLeft(): int
num Tickets Sold. int
在 CAmpaign中将ECa1 cheduled的 getTicketsLeft0声明为友元
图5-9电话销售系统中的友元
36. Can a subclass access a protected data member or method of a parent class? Give an
example
保护可见性应用于继承的情景下。如果让基类的私有属性(属性和操作)只能被该类对象所访问,这有时并不
方便。许多情形下,应该允许派生类的对象访问基类的其他私有属性。
例子
Person是(非抽象)基类, Employee是派生类。如果Joe是 employee的一个对象,那么Joe能够访问 Person
的特性。
37.What is derived information How can it be represented in a UML class diagram? Give
an example
导出信息是一种(最经常)应用于属性或关联的约束。导出信息从其他模型元素计算得到。严格地说,导出信
息在模型中是冗余的--他可以在需要时计算出来
导出信息的UML表示法就是在导出属性名或者关联名前加一条斜线()
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.