软件体系结构最新总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.软件危机:指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
2.软件危机的表现:(重点)
1软件的成本日益增长 2开发进度难以控制 3软件质量差,4软件维护困难
3.软件危机的成因:
1用户需求不明确 2缺乏正确的理论指导 3软件规模越来越大 4软件复杂度越来越高
4.软件工程三个要素:方法、工具和过程 ---(重点)
5.软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程。
6.软件元素包括程序代码、测试用例、设计文档、设计过程、需求分析文档甚至领域知识
7.构件:指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨
识的系统。即是具有一定功能,能够独立工作或能同其他构件装配起来协调工作的程序体。
8.构件分类方法归纳为三大类:关键字分类法,刻面分类法和超文本组织方法 ---(重点)
9.构件库系统是一个开放的公共构件共享机制,任何使用者都可以通过网络访问构件库。---
判断
10.软件体系结构(software architecture --SA)记住英语单词及缩写----(重点)
定义:软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。11.软件体系结构的意义:---(简答)
1)体系结构是风险承担者进行交流的手段;
2)体系结构是早期设计决策的体现;
3)体系结构是可传递和可重用的模型
12.为什么体系结构是早期设计决策的体现---(简答)
1)软件体系结构明确了对系统实现的约束条件;
2)软件体系结构决定了开发和维护组织的组织结构;
3)软件体系结构制约着系统的质量属性;
4)软件体系结构通过研究软件体系结构可能预测软件的质量;
5)软件体系结构使推理和控制更改更加简单;
6)软件体系结构有助于循序渐进的原型设计;
7)软件体系结构可以作为培训的基础
13.软件体系结构技术的发展过程经历四个阶段:--选择,判断
(1)“无体系结构”设计阶段----以汇编语言进行小规模应用程序开发为特征。
(2)萌芽阶段-----以控制流图和数据流图构成软件结构为特征
(3)初期阶段-----出现了从不同侧面描述系统的结构模型,以UML为典型代表
(4)高级阶段-----描述系统的高层抽象结构,以提出的“4+1”模型为标志
14.软件体系结构模型5种:结构模型、框架模型、动态模型、过程模型和功能模型。----
填空
15.“4+1”视图模型从五个不同的视角,包括逻辑试图,进程试图,物理视图,开发视图和
场景视图来描述软件体系结构。 -----记住名称及相应的功能
逻辑视图主要支持系统的功能需求,是系统提供给最终用户的服务。通过抽象,封装和继承,可以用对象模型来代表逻辑视图,用类图来描述逻辑视图;
开发视图也称模块视图,主要侧重于软件模块的组织和管理,主要考虑软件内部的需求,如软件开发的容易性、软件的重用等,通过系统输入输出关系的模型图和子系统图来描述,提供给编程人员的;
进程视图侧重于系统的运行特性,主要关注非功能性的需求,如系统的性能和可用性。进程视图强调并发性、分布性、系统集成性和容错能力管道和过滤器风格、客户/服务器风格等适合进程视图,提供给系统集成人员的;
物理视图主要考虑如何把软件映射到硬件上,它通常考虑系统性能、规模、可靠性等,解决
系统拓扑结构、系统安装、通信问题,提供给系统工程人员的。
而场景是那些重要系统活动的抽象,它使四个视图有机联系起来,是最重要的需求抽象,它可以帮助设计者找到系统结构的构件和他们之间的作用关系。总之,逻辑视图和开发视图描述系统的静态结构,而进程视图和物理视图描述系统的动态结构。软件体系结构的核心模型由五中元素组成:构件、连接件、配置、端口和角色。
16.软件体系结构的核心模型由五种元素组成:构件、连接件、配置、端口和角色。其中构
件、连接件和配置是最基本的元素。-----填空
17.软件体系结构的建立应位于需求分析之后,软件设计(也称概要设计)之前
18.软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。软件体系结构
风格反映了领域中众多系统所共有的结构和语义特性。
19.通用体系结构风格的分类:-----填空或选择 ----重点记忆黑体部分属于哪一风格
1)数据流风格:批处理序列,管道/过滤器
2)调用/返回风格:主程序/子程序,面向对象风格,层次结构
3)独立构件风格:进程通信,事件系统
4)虚拟机风格:解释器,基于规则的系统
5)仓库风格:数据库系统,超文本系统,黑板系统
20.C/S体系结构三个主要组成部分:数据库服务器、客户应用程序和网络
21.C/S优点-----客户应用程序和服务器构件分别运行在不同计算机,对于硬件和软件的变
化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小;系统中功能构件充分隔离,客户应用程序的开发集中于数据的显示和分析,将大应用处理任务分布到许多通过网络连接的低成本计算机上,节约大量的费用。-----自己简要回答
C/S缺点-----开发成本高;客户端程序设计复杂;信息内容和形式单一;用户界面风格不一;软件移植困难;软件维护和升级困难;新技术不易应用。
22.三层C/S体系结构将应用功能分成表示层、功能层和数据层三个部分。
23.浏览器/服务器(browser/server,B/S)结构,其具体结构为:浏览器/Web服务器/数据
库服务器。B/S体系结构主要是利用不断成熟的WWW浏览器技术,在B/S结构中除了数据库服务器外,应用程序以网页形式存放于Web服务器上。基于B/S体系结构的软件,系统安装、修改和维护全在服务器端解决,真正达到了“零客户端”的功能。
24.B/S体系结构的不足之处:
1)缺乏对动态页面的支持能力,没有集成有效的数据库处理功能
2)系统扩展能力差,安全性难以控制。
3)采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构。
4)B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理应用。
25. 正交软件体系结构由组织层和线索的构件构成。线索是相互独立的。
25.正交软件体系结构的主要特征:
1正交软件体系结构由完成不同功能的n个线索组成。
2系统具有m个不同抽象级别的层。
3线索之间是相互独立的(正交的)。
4系统有一个公共驱动层(一般为最高层)和公共数据结构(一般为最低层)。
26.正交软件体系结构的优点:----简答
1结构清晰,易于理解-----形式易于理解,线索功能相互独立,不进行相互调用;
2易修改,可维护性强-----由于线索的相互独立,所以对一个线索的修改不会影响到其他线索;
3可移植性强,重用粒度大----因为正交结构可以为一个领域内的所有应用程序所共享,这些软件有着相同或类似的层次和线索,可以实现体系结构级地重用