《软件需求分析设计与建模》简答题样题1含答案.docx

上传人:b****8 文档编号:30198515 上传时间:2023-08-07 格式:DOCX 页数:18 大小:85.12KB
下载 相关 举报
《软件需求分析设计与建模》简答题样题1含答案.docx_第1页
第1页 / 共18页
《软件需求分析设计与建模》简答题样题1含答案.docx_第2页
第2页 / 共18页
《软件需求分析设计与建模》简答题样题1含答案.docx_第3页
第3页 / 共18页
《软件需求分析设计与建模》简答题样题1含答案.docx_第4页
第4页 / 共18页
《软件需求分析设计与建模》简答题样题1含答案.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

《软件需求分析设计与建模》简答题样题1含答案.docx

《《软件需求分析设计与建模》简答题样题1含答案.docx》由会员分享,可在线阅读,更多相关《《软件需求分析设计与建模》简答题样题1含答案.docx(18页珍藏版)》请在冰豆网上搜索。

《软件需求分析设计与建模》简答题样题1含答案.docx

《软件需求分析设计与建模》简答题样题1含答案

1.Whatisobjecttechnology?

Whatdoyouperceiveasobjecttechnology’sstrength?

It’sweakness?

Object

【Asetofprinciples(abstraction,encapsulation,polymorphism)guidingsoftwareconstruction,togetherwithlanguages,databases,andothertoolsthatsupportthoseprinciples.】

面向对象技术是一系列支持软件开发的原则(抽象,封装,多态性),以及支持这些原则的程序设计语言,数据库和其它工具。

【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.

【用例泛化、包含用例、扩展用例】

泛化关系,用例的泛化,子用例可以依赖父用例的结构,可以在父用例的基础上增加额外的行为。

(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.

分析与设计规程的任务是研究欲采用的实现环境和系统构建的效用,结果是产生一个设计模型。

设计模型包含了用例的实现,可以表现对象是如何相互通信和运作实现用例的。

在设计模型中可能包含对象类和子系统的接口定义,规定它们提供操作服务的责任。

这个对象模型也可以在实施环境中采用,那就是用程序设计语言,分布等来表达。

对于大型系统的项目,有时为系统分析的结果建立单独的分析模型也是很有用的。

分析模型是概念模型,因为是系统的一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1