需求分析复习题含答案.docx
- 文档编号:18146835
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:19
- 大小:131.24KB
需求分析复习题含答案.docx
《需求分析复习题含答案.docx》由会员分享,可在线阅读,更多相关《需求分析复习题含答案.docx(19页珍藏版)》请在冰点文库上搜索。
需求分析复习题含答案
1.Whatisobjecttechnology?
Whatdoyouperceiveasobjecttechnology’sstrength?
It’sweakness?
Object
【Asetofprinciples(abstraction,encapsulation,polymorphism)guidingsoftwareconstruction,togetherwithlanguages,databases,andothertoolsthatsupportthoseprinciples.】3e
面向对象技术是一系列支持软件开发的原则(抽象,封装,多态性),以及支持这些原则的程序设计语言,数据库和其它工具。
【Reflectsasingleparadigm.
Facilitatesarchitecturalandcodereuse.
Reflectsrealworldmodelsmoreclosely.
Encouragesstability.
Isadaptivetochange】
反映一个特定实例。
有利于构件和代码重用。
更加真实地反映现实世界模型。
具有更好的稳定性。
能适应需求的变化。
2.WhatisUML?
ListatleastthreebenefitsofdevelopingwithUML.
【UMLisUnifiedModelingLanguage,itisalanguageforVisualizing,Specifying,Constructing,Documentingtheartifactsofasoftware-intensivesystem.】
UML是统一建模语言,是一门用于对面向对象开发的产品进行可视化建模,说明,架构和文档编制的标准语言。
【TheUMLbuildsmodelsthatareprecise,unambiguous,andcomplete.
UMLmodelscanbedirectlyconnectedtoavarietyofprogramminglanguages.
TheUMLaddressesdocumentationofsystemarchitecture,requirements,tests,projectplanning,andreleaserequirements.】
UML帮助建立精确、完整、不含糊的模型。
UML模型可以和多种程序设计语言建立直接连接。
UML指导文档编制,包括系统架构文档,需求文档,测试文档,项目计划,版本说明等。
3.WhatprocesscharacteristicbestfittheUML?
Describeeachcharacteristic.
【Use-casedriven+Architecture-centric+Iterativeandincremental.】
用例驱动
以架构为中心
迭代和增量开发
4.Whatisause-casedrivenprocess?
Whatisuse-case?
What’sthebenefitsofusecase?
【Usecasesdefinedforasystemarethebasisfortheentiredevelopmentprocess.
为系统定义的用例作为整个开发过程的基础。
用例是描述系统所执行的一系列顺序事件流,并且某个角色可以看到执行的结果。
【Benefitsofusecases:
Concise,simple,andunderstandablebyawiderangeofstakeholders.
Helpsynchronizethecontentofdifferentmodels.】
简洁明了,可被各个项目相关人理解。
帮助实现不同模型间的同步。
5.Whatissystem’sarchitecture?
Whatisanarchitecture-centricProcess?
【Asystem’sarchitectureisusedasaprimaryartifactforconceptualizing,constructing,managing,andevolvingthesystemunderdevelopment.】
系统的架构是开发过程的最重要的一项产出,它定义了系统的概念、结构,是管理开发过程、展开系统的重要指导。
以架构为中心的开发过程:
统一开发过程强调架构是项目小组给系统定形的中心,因为一个模型难以反映系统的各个方面,统一开发过程支持多个模型和视图。
6.Whatisaniteration?
WhatisthebenefitsofIterativeDevelopment?
迭代:
迭代是在既定计划和评价标准之下执行的一系列软件开发活动,每次迭代是一次集成的软件开发过程包括测试,并产生一个可执行的软件版本。
好处:
迭代可以在大投资前解决可预见的风险。
早期迭代可以获得用户反馈。
连续地测试和集成的开发过程。
客观的里程碑集中在短期。
通过对执行过程的评估来衡量开发进度。
部分可执行部件可被配置。
【Criticalrisksareresolvedbeforemakinglargeinvestments.
Initialiterationsenableearlyuserfeedback.
Testingandintegrationarecontinuous.
Objectivemilestonesfocusontheshortterm.
Progressismeasuredbyassessingimplementations.
Partialimplementationscanbedeployed.】
7.WhatarethebasicprinciplesofOOtechnology?
Describeeachindetail.
【Abstraction+Encapsulation+Modularity+Hierarchy】
抽象,封装,模块化,层次
【Theessentialcharacteristicsofanentitythatdistinguishesitfromallotherkindsofentities.
Definesaboundaryrelativetotheperspectiveoftheviewer..
Isnotaconcretemanifestation,denotestheidealessenceofsomething.】
抽象:
提取出一个实体区分其它类型实体的本质特征,定义外界所能观察到的边界,并不具体表示某个实体,而是表示出其基本特征。
【Hidesimplementationfromclients.】
封装:
对用户隐藏执行过程。
【Breaksupsomethingcomplexintomanageablepieces.
Helpspeopleunderstandcomplexsystems.】
模块化:
将复杂系统分成几个可控制的模块,帮助人们理解复杂系统。
【……】
层次:
是一种从高到低有确定次序的结构,同一层的元素具有相同的抽象程度。
8.Whatisusecasemodel?
Whichartifactscanbeincludedinausecasemodel?
【Amodelthatdescribesasystem’sfunctionalrequirementsintermsofusecases.
Amodelofthesystem’sintendedfunctions(usecases)anditsenvironment(actors).
用例模型:
根据用例描述系统的功能需求。
用户,角色和communicate-association。
9.Listthreetypesofrelationshipsexistedbetweendifferentusecasesandgiveexamples.
【用例泛化、包含用例、扩展用例】
A.泛化关系
用例的泛化
子用例可以依赖父用例的结构,可以在父用例的基础上增加额外的行为。
(2)包含关系(include):
位于两个用例之间的包含关系意味着基用例显式地在其指定位置将另一个用例包含进来,使其成为自己的行为的一部分。
在具有包含关系的两个用例中,被包含的那个用例不能单独存在,它只能以实例的形式存在于包含它的用例之中。
扩展关系:
两个用例之间的扩展关系,代表基用例可以隐式地包含另一个用例作为其行为的一部分,包含的位置间接地由另一个用例(扩展用例)确定。
10.Explainthefollowingdiagramandtheirelementswithexamples.
1)usecasediagram角色和用例
【Ausecasemodelsadialogbetweenactorsandthesystem.
Ausecaseisinitiatedbyanactortoinvokeacertainfunctionalityinthesystem.】
用例图(usecasediagram)就是由角色、用例以及它们之间的关系构成的图。
2)Activitydiagram某个用例
【Anactivitydiagramintheuse-casemodelcanbeusedtocapturetheactivitiesinausecase.
Itisessentiallyaflowchart,showingflowofcontrolfromactivitytoactivity.】
活动图是一种行为图(behaviordiagram),通常用来表达业务流程、工作流或系统流程中一连串的动作。
3)sequencediagram某个角色
【Asequencediagramisaninteractiondiagramthatemphasizesthetimeorderingofmessages.】
顺序图是强调消息传递的时间顺序的一种交互图。
4)Collaborationdiagram
【Acollaborationdiagramemphasizestheorganizationoftheobjectsthatparticipateinaninteraction.】
协作图强调对象在参与活动中的组织。
5)classdiagram
【Staticviewofasystem.IncludeThevocabularyofasystem,Collaborations,Alogicaldatabaseschema.】
类图(Classdiagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部结构以及它们与其他类的关系等。
6)statechartdiagram某个角色
【Astatechartdiagramshowsastatemachine.】
状态图(StatechartDiagram)是描述一个实体基于事件反应的动态行为,显示了该实体如何根据当前所处的状态对不同的时间做出反应的。
7)deploymentdiagram
【Thedeploymentdiagramshows:
Configurationofprocessingnodesatrun-time.
Communicationlinksbetweenthesenodes.
Componentinstancesandobjectsthatresideonthem.】
部署图(deploymentdiagram,配置图)是用来显示系统中软件和硬件的物理架构。
从部署图中,可以了解到软件和硬件组件之间的物理关系以及处理节点的组件分布情况。
使用部署图可以显示运行时系统的结构,同时还传达构成应用程序的硬件和软件元素的配置和部署方式。
11.Describethesimilaritiesanddifferencesbetweenthesequencediagramandcollaborationdiagram.
【Semanticallyequivalent---Canconvertonediagramtotheotherwithoutlosinganyinformation.
Modelthedynamicaspectsofasystem.
Modelause-casescenario.】
相同点:
可以将一种图转换成另一种图而不丢失任何信息。
对系统的动态行为进行建模,对用例的情节进行建模。
【Collaborationdiagrams:
Sequencediagrams:
-Showrelationshipsinaddition-Showtheexplicitsequenceofmessages.
tointeractions.
-Betterforvisualizingpatterns-Showfocusofcontrol.
ofcollaboration.
-Betterforvisualizingallofthe-Betterforvisualizingoverallflow.
effectsonagivenobject.-Betterforreal-timespecifications
-Easiertouseforbrainstormingsessions.andforcomplexscenarios.】
不同点:
交互图顺序图
根据交互行为显示对象间的关系。
显示外部消息的顺序。
更好的观察协作模型。
显示控制焦点。
更好的观察一个对象所受到的各种影响。
更好的观察全部的事件流。
更适于运用于头脑风暴会议。
更适于实时描述和描述复杂情景。
12.Definethedifferentrelationshipsinclassdiagram:
dependency,association,aggregation,composition,generalization.
【Dependency:
一个类的改变可能影响或提供信息给其他类。
●两个类之间的依赖关系,表明其中的一个类(客户类)依赖于另一个类(供应类)所提供的某些服务。
Association:
Thesemanticrelationshipbetweentwoormoreclassifiersthatspecifiesconnectionsamongtheirinstances.类之间的连接
●关联:
给出两个或更多的类之间的语义联系,说明了它们实体之间的关系。
Aggregation:
Aspecialformofassociationthatmodelsawhole-partrelationshipbetweentheaggregate(thewhole)anditsparts.
聚合表示组成和整体的所有关系。
Isan“isapartof“relationship.
composition:
组合即强聚合,表示整体对组成的包容关系;
Generalization:
Arelationshipamongclasseswhereoneclasssharesthestructureand/orbehaviorofoneormoreclasses.Isan“isakindof”relationship.】
表示一个类共享其它类的结构或者行为的一种类与类之间的关系。
Isan“isakindof”relationship.
13.Whatisanodeindeploymentdiagram?
Listtwodiffenttypesofnodes.
【Aphysicalelementthatexistsatrun-timeandrepresentsacomputationalresource.
ProcessorNode+DeviceNode.】
结点是存在于运行时系统中的物理元素,代表了一种可计算资源。
处理机节点:
运行软件
设备节点:
由处理机控制的设备
14.DescribetheextensibilitymechanismsofUML.
【扩展机制extensibilitymechanisms.
构造型stereotype(表示新的建模元素)
标记值taggedvalue(表示新的建模属性)
约束constraint(表示新的建模语义)】
15.WhatisthefunctionofStereotypes?
Givetwoexamplesofstereotypes.
16.Explainthesixbestpracticesofsoftwareengineering.
【迭代的开发软件DevelopIteratively
需求管理ManageRequirements
使用基于构件的体系结构UseComponentArchitectures
可视化软件建模ModelVisually(UML)
验证软件质量ContinuouslyVerifyQuality
控制软件变更ManageChange】
17.WhatisRUP?
HowmanyphasesisinRUP?
Describeeachphase’spurposeandmilestone.
【RationalUnifiedProcess.
初始阶段:
Inception目标是为系统建立商业案例和确定项目的边界
细化阶段:
Elaboration目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中最高风险的元素
构建阶段:
Construction所有剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详尽的测试
交付阶段:
Transition目的是将软件产品交付给用户群体】
18.Nameandbrieflydescribethe“4+1”viewsofarchitecture.
Use-caseview+Logicalview+Implementationview+Processview+Deploymentview】
用例视图,逻辑视图,实现视图,过程视图+部署视图
19.Whatisthedifferencebetweenanalysisanddesign?
【Analysis:
Design:
-Focusonundrestandingtheproblem.-Focusonunderstandingthesolution.
-Idealizeddesign.-Operationsandattributes.
-Behavior.-Performance.
-Systemstructure.-Closetorealcode.
-Functionalrequirements.-Objectlifecylces.
-Asmallmodel.-Nonfunctionalrequirements.Alargemodel.】
分析:
设计:
集中在理解问题。
集中在理解解决方案。
是理想化设计。
设计相关操作和属性。
行为。
性能。
系统架构。
接近真实代码。
功能需求。
对象生命周期。
是一个小模型。
非功能需求,是一个大模型。
20.PleasedescribethewholeprocessofooanalysisanddesignwithUML.
【KeyConcepts
DefinetheHigh-LevelOrganizationofSubsystems
IdentifyKeyAbstractions
CreateUse-CaseRealizations
Checkpoints】
关键概念:
定义高层组织和子系统。
识别关键的抽象。
创建用例实现。
设置检查点。
【Identifyclassesandsubsystems
Identifysubsysteminterfaces
UpdatetheorganizationoftheDesignModel
Checkpoints】
识别各个类和子系统。
识别子系统的接口。
校正设计模型的组织结构。
设置检查点。
21.Whatisalayeredarchitecture?
Giveexamplesoftypicallayers.
【Applicationsubsystems->BussinessSpecific->Middleware->SystemSoftware】
层次体系结构就是利用分层的处理方式来处理复杂的的功能,层次系统要求上层子系统使用下层子系统的功能,而下层子系统不能够使用上层子系统的功能。
C/S(两层)体系结构)
客户机/服务器结构简称C/S结构或两层体系结构。
22.Whatareanalysismechanisms?
Whataredesignmechanismas?
Giveexamples.
分析与设计规程的任务是研究欲采用的实现环境和系统构建的效用,结果是产生一个设计模型。
设计模型包含了用例的实现,可以表现对象是如何相互通信和运作实现用例的。
在设计模型中可能包含对象类和子系统的接口定义,规定它们提供操作服务的责任。
这个对象模型也可以在实施环境中采用,那就是用程序设计语言,分布等来表达。
对于大型系统的项目,有时为系统分析的结果建立单独的分析模型也是很有用的。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 需求 分析 复习题 答案