软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,是一个迭代的过程。以下关于软
A.在建立软件架构的初期,一般需要选择一个合适的架构风格
B.将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系
C.软件架构设计活动将己标识构件集成到软件架构中,设计并实现这些构件
D.一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审
A.在建立软件架构的初期,一般需要选择一个合适的架构风格
B.将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系
C.软件架构设计活动将己标识构件集成到软件架构中,设计并实现这些构件
D.一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审
A.在设计软件系统时候,应该提高软件的耦合度,这样系统才更加健壮
B.软件系统架构会受到商业规则的影响,架构师需要综合成本以及技术、人员等进行系统设计
C.软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计
D.软件架构设计包括提出架构模型、产生架构设计和进行设计评审等活动,一旦确定不应该进行改动
A.在建立软件架构的初期,一般需要选择一个合适的架构风格
B. 将架构分析阶段已标识的构件映射到架构中,并分析这些构件之间的关系
C. 软件架构设计活动将已标识构件集成到软件架构中,设计并实现这些构件
D. 一旦得到了详细的软件架构设计,需要邀请独立于系统开发的外部人员对系统进行评审
造成操作系统安全漏洞的原因(多选)
A.不安全的编程语言
B.不安全的编程习惯
C.考虑不周的架构设计
论软件架构建模技术与应用
软件架构用来处理软件高层次结构的设计和实施,它以精心选择的形式将若干结构元素进行装配,从而满足系统的主要功能和性能需求。软件架构设计的首要问题是如何表示软件架构,即如何对软件架构建模。根据建模的侧重点不同,可以将软件架构模型分为结构模型、框架模型、动态模型、过程模型和功能模型。Kruchten在1995年提出了“4+1”视图模型,将5种模型有机地统一在了一起。
请围绕“软件架构建模技术与应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。
2.简要叙述“4+1”视图模型的主要内容。结合你参与项目的实际情况,详细说明该项目需求及所涉及的软件架构(包括使用到的视图模型、创建的架构模型及使用的建模工具等)。
3.说明该项目软件架构的实施效果,分析其是否满足了项目的需求并说明原因。
试题一 论基于 DSSA 的软件架构设计与应用
软件架构设计的一个重要课题是如何解决软件重用问题。特定领域软件架构(Domain Specific Software Architecture, DSSA)是一种有效实现特定领域软件重用的手段。按照 Tracz 的说法,DSSA 就是一个特定的问题领域中由领域模型、参考需求、参考架构等组成的开发基础架构,其目标就是支持一个特定领域中多个应用的生成。 DSSA的基本活动包括领域分析、领域设计和领域实现。领域分析的主要目的是获得领域模型,领域模型描述领域中系统之间共同的需求,即领域需求;领域设计的主要目标是获得 DSSA,DSSA 描述领域模型中表示需求的解决方案;领域实现的主要目标是依据领域模型和 DSSA 开发和组织可重用信息。
请围绕“基于 DSSA的软件架构设计与应用” 论题, 依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。
2.就你所熟悉的领域,请给出针对该特定领域,在基于 DSSA 的软件设计开发中所涉及的领域模型、参考需求和参考架构以及相应的支持环境或设施。
3.具体阐述你参与管理和开发的项目中使用 DSSA 的情况,包括领域分析、领域设计和领域实现等活动是如何具体实施的,最终实际效果如何。
阅读以下关于软件架构的叙述,回答问题1至问题3。
软件架构是指大型、复杂软件的系统结构的设计、规格说明和实施。它以规范的形式装配若干结构元素,从而描述出系统的主要功能和性能需求,同时表述其他非功能性需求(如可靠性、可扩展性、可移植性和可用性等)。软件架构为软件系统提供了一个结构、行为和属性的高级抽象模式,可以使用一个公式来表达:
软件架构={构成系统的元素,指导元素集成的形式,关系和约束}
“4+1”视图模型用五个视图组成的模型来描述软件架构。该模型包含五个主要的视图。
.逻辑视图(Logical View),描述了设计的对象模型,支持系统的功能需求。
.进程视图(Process View),描述了设计的并发和同步特征,支持系统的运行特性。
.物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性,支持系统的拓扑、安装和通信需求。
.开发视图(Development View),描述了在开发环境中软件的静态组织结构,支持软件开发的内部需求。
.场景(Scenario),用来说明重要的系统活动,是其他四个视图在用例(Use Case)驱动下的综合。
软件架构在软件需求与设计之间架起一座桥梁,也是风险承担者进行交流的手段,允许不同的风险承担者找出他们所关心的软件架构问题。假设采用面向对象的设计方法,各个视图涉及的组件(元素)包括:任务、类、模块、节点、步骤等,风险承担者包括最终用户、系统设计师、程序员、经理、项目管理师等。请在下表中的(1)到(7)处填入恰当的内容(空白处不用填)。
A.构件层次
B.界面设计层次
C.功能层次
D.架构层次
A.问题说明 B.问题建模 C.需求说明 D.需求建模 A.架构需求 B.架构描述 C.架构设计 D.架构实现
A.数据和控制流B.架构和接口C.对象模型D.数据模型A.软件详细设计B.软件对象设计C.软件环境设计D.软件架构设计
A.项目的初创活动
B.需求分析和架构演进
C.系统的构建,产生实现模型
D.软件提交方面的工作,产生软件增量