软件体系结构之常见软件体系结构BS CS

软件体系结构之常见软件体系结构BS CS
软件体系结构之常见软件体系结构BS CS

软件体系结构—B/S和C/S架构

在进行软件开发时,通常会在两种基本架构中进行选择,即C/S架构和B/S架构。

1.什么是C/S结构?

C/S架构是客户端/服务器端交互模式,是Client/Server的简称。它是早期常用的一种软件架构,这种架构的软件需要在用户的电脑上安装客户端程序,下面通过一张图来了解C/S架构客户端与服务器的交互过程。如图1-1所示:

图1-1 C/S架构图

2.什么是B/S结构?

B/S架构是浏览器/服务器交互模式,是Browser/Server的简称。它是目前最常用的一种软件架构,这种架构的软件不需要在用户的电脑上安装任何客户端程序,只需要在用户的电脑上安装浏览器即可。用户可以使用浏览器通过web服务器和数据库做交互,交互的结果将会以网页的形式显示在浏览器端。下面通过一张图来了解B/S架构浏览器与服务器交互的过程,如图1-2所示:

图1-2 B/S架构图

3. C/S与B/S比较

●C/S的优点与缺点

(1)优点:软件更新时需要同时更新客户端和服务器端两端,比较麻烦;

(2)缺点:安全性比较好

●B/S的优点与缺点

(1)优点:客户端免维护,只需要关注服务器端即可。

(2)缺点:安全性较差。

软件体系结构综述

软件体系结构研究综述 班级:软件092 学号:17 姓名:陈世华摘要: 近年来,软件体系结构逐渐成为软件工程领域的研究热点以及大型软件系统与软件产品线开发中的关键技术之一.归纳了软件体系结构技术发展过程及其主要研究方向.在分析了典型的软件体系结构概念之后,给出了软件体系结构的定义.通过总结软件体系结构领域的若干研究活动,提出了软件体系结构研究的两大思路,并从7个方面介绍了软件体系结构研究进展.探讨了软件体系结构研究中的不足之处,并分析其原因.作为总结,给出了软件体系结构领域最有前途的发展趋势. 关键词: 软件体系结构;基于体系结构的软件开发;软件体系结构描述语言;软件体系结构描述方法;软件体系结构演化;软件体系结构发现;软件体系结构分析;软件体系结构验证;特定域软件体系结构(DSSA) Abstract: Software architecture (SA) is emerging as one of the primary research areas in software engineering recently and one of the key technologies to the development of large-scale software-intensive system and software product line system. The history and the major direction of SA are summarized, and the concept of SA is brought up based on analyzing and comparing the several classical definitions about SA. Based on summing up the activities about SA, two categories of study about SA are extracted out, and the advancements of researches on SA are subsequently introduced from seven aspects. Additionally, some disadvantages of study on SA are discussed, and the causes are explained at the same time. Finally, it is concluded with some significantly promising tendency about research on SA. Key words: software architecture; architecture-based development; architecture description language; architectural representation and description; architectural evolution and reuse; architectural discovery; architectural analysis; architectural verification and evaluation; domain-specific software architecture (DSSA)

软件工程部分课后练习题答案

第一章 1.计算机系统是由计算机硬件系统和软件系统这两个密不可分的部分组成的。 2.计算机软件系统通过运行程序来实现各种不同应用,包括用户为自己的特定目的编写的程序、检查和诊断机器系统的程序、支持用户应用程序运行的系统程序、管理和控制机器系统资源的程序等。 3.在软件工程学中,软件开发技术包括软件开发方法学、软件工具和软件工程环境。 4.在软件工程层次结构中,包括工具层、方法层、过程、技术层和质量保证层。 5.在面向对象概念中,消息传递是其与外部世界相互关联的唯一途径。 第三章 1.软件需求分析,可以把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而建立软件开发的基础。 2.软件需求工作基本上包括收集用户、市场等方面对项目的需要,经过分析建立解题模型,细化模型,抽取需求。 3.结构化分析方法的基本步骤是采用由顶向下对系统进行功能分解,画出分层数据流图;由后向前定义系统的数据和加工,绘制数据词典和加工说明;最终写出软件需求和规格说明书。 4.面向对象分析方法总是从理解系统的“使用实例”开始,基本步骤是:定义系统的用例,在领域分析的基础上建立问题域的类(对象模型),然后开始建立对象——关系和对象——行为模型。 5.需求分析评审过程由以下5个步骤组成:规划、准备、召开审查大会、修改缺陷、重审。第四章 1.与软件需求分析一样,软件设计也有两种主要设计方法:以结构化设计为基础的结构化软件设计和面向对象方法指导的面向对象软件设计。 2.传统的软件设计任务通常分两个阶段完成。第一个阶段是概要设计,包括体系结构设计

和接口设计,并编写概要设计文档;第二阶段是详细设计,其任务是确定各个软件的数据结构和操作,产生描述各软件组件的详细设计文档。 3.结构化的软件设计方法是一种面向数据流的设计方法,在面向数据流的方法中,数据流是考虑一切问题的出发点。 4.在数据流图中所代表的结构化设计模型中,所有系统均可纳入两种典型的形式,因此系统结构图也有两种类型:变换型系统结构图,事务型系统结构图。 5.Jackson表示法包括图形描述(Jackson图)和文本描述(Jackson伪代码)两种形式。 第五章 1.与结构化设计一样,面向对象设计也是将分析阶段所建立的分析模型转变为软件设计模型,应用数据设计(对象属性设计)、接口设计(消息模型开发)以及过程设计(子系统级设计)。 2.当两个子系统相互通信时,可以建立客户机/服务器连接或端对端连接。 3.系统设计不仅包括主要的业务需求子系统设计,还包括用户界面子系统设计、任务管理子系统设计、数据管理子系统设计。 4.对象设计强调从问题域的概念转换成计算机领域的概念,通过对象的描述、算法和数据结构设计、程序构件和接口,实现相关的类、关联、属性和操作。 5.在面向对象设计中系统设计的主要目标是表示软件体系结构。对象设计着重于对象及其交互的描述 第八章 1.软件程序测试的目的是发现程序中的错误,其主要任务是通过在计算机上执行程序,暴露程序中潜在的错误。

软件体系结构

课程设计(综合实验)报告 ( 2015 -- 2016 年度第二学期) 名称:课程设计 题目:软件体系结构设计与分析院系:计算机系 班级: 学号: 学生姓名:(你的签名) 指导教师:王晓辉廖尔崇 设计周数:(1周) 成绩: 日期:2016年6月19 日

一、课程设计(综合实验)的目的与要求 软件体系结构是软件工程专业的专业必修课。软件体系结构是软件工程方法学的一个分支,开设本课程的目的是使学生在了解了软件工程基础原理、方法、过程的基础上进一步掌握软件结构设计的基本理论和方法,培养设计软件结构的基本能力。本课程的基本内容包括软件体系结构的基本概念、发展现状、软件体系结构风格、传统的软件体系结构、现代软件体系结构等。 本课程实验的目标是培养学生的基础编程能力,其培养目标是程序员;软件工程课程使学生上升到软件系统的认识,其培养目标是软件工程师。本课程教学内容属于软件工程的概要设计阶段的方法学,其培养目标是软件架构师。 要求完成实验指导书的实验一~实验五(验证性实验),实验九~实验十一(设计综合性实验)。 二、设计(实验)正文 实验一经典软件体系结构风格(一) 1.管道过滤器风格 (1)概念:管道-过滤器模式的体系结构是面向数据流的软件体系结构。它最典型的应用是在编译系统。一个普通的编译系统包括词法分析器,语法分析器,语义分析与中间代码生成器,优化器,目标代码生成器等一系列对源程序进行处理的过程。人们可以将编译系统看作一系列过滤器的连接体,按照管道-过滤器的体系结构进行设计。此外,这种体系结构在其它一些领域也有广泛的应用。因此它成为软件工程和软件开发中的一个突出的研究领域。 (2

软件工程复习资料98860

1.什么是软件工程?他的基本原理是什么? 1)软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,经济地开发出高质量的软件并有效地维护它。 2)用分阶段的生命周期计划严格管理、坚持进行阶段评审、实行严格的产品控制、采用现代程序设计技术、结果应能清楚的审查、开发小组的人员应该少而精、承认不断改进软件工程实践的必要性。 2. 是什么导致了软件工程? 主要是软件危机的出现导致了软件工程 3. 通常我们所见的软件工程模型有哪些? 瀑布模型、快速原型模型、增量模型(渐增模型)、螺旋模型、喷泉模型。 21.软件危机的现象: 1)经费超出预算,项目一再拖延。 2)不重视需求,开发的软件不能满足用户的要求,项目成功率低。 3)没有规范的软件工程方法,软件可维护性差,软件质量差,可靠性差。 3)开发工具落后,手工方式,开发效率低。 22.软件工程的三要素 1)“过程”是软件产品加工所经历的一系列有组织的活动,保证能够合理、高质量开发出软件。 2)“方法”为软件开发提供“如何做”的技术。它涵盖了项目计划、需求分析、系统程序()实现、测试与维护灯一系列活动的做法。 3)“工具”可为过程和方法提供自动的或半自动的支持。这些工具既包括软件,也包括硬件,软件工具包括编程、建模、管理等开发工具。通过网络环境把这些软件工具集成起来搭建一个能够支持团队开发的平台,称为计算机辅助软件工程,即CASE。 CASE集成了软件、硬件和()存放开发过程信息的软件工程数据库,形成了一个软件工程环境。 23.简述软件工程的目标,过程和原则 1)目标、过程和原则是一切工程的三维框架,,这里是以工程的观点来看待软件开发。 软件工程的目标:降低成本,及时交付高质量的软件产品。 实现目标的过程即完成产品加工的过程:包括:基本过程、支持过程和组织过程 进行过程应遵守的原则:原则就是过程中的轨道约束,包括:选取适宜的开发范型、适合的设计方法、提供高质量的工程支持、重视开发过程的管理。 24.对比瀑布模型,原型模型,增量模型和螺旋模型 1)瀑布模型:主要体现了分阶段、有控制的思想。活动间强调按顺序、文档化;存在的问题是过于理想化,每一步的工作必须完整准确,否则无法进行下一步工作2)原型模型:需求分析入手快速、表达直观、容易交流。重点解决瀑布模型的需求分析入手难的问题。 3)增量模型:对于需求复杂的系统,采用分块开发、逐步集成的开发策略。增量体现了演进、迭代思想,每一块就是一个增量。每个增量试一次迭代。增量模型的 新版本叫做“极限编程(XP)”。 4)螺旋模型:融合了上述3种模型,融进了循环往复、强化了演进迭代的思想,增加了风险控制环节。但是,风险分析的正确性是左右软件演进的关键因素。25. 当需求不能一次搞清楚,且系统需求较复杂时应选用什么模型? 开发模型不是孤立或排斥的,他们之间需要相互借鉴和参考。螺旋模型是一种综合性

高级软件工程标准答案

一、解释下列概念 学科:相对独立的知识体系。 方法:实现一个目标或做某事的方式、技巧、技术或系统化过程。 方法学:对某个知识领域探索知识的原则或方法而作的系统分析。模型:对现实(事物或实体)的简化(或抽象)表示。模型是抽象的产物! 视图:在SQL中:和物理表相对应,临时性的虚表。在MVC软件架构模式中:图形界面。在软件工程中:指从系统的令人感兴趣的 视点依某种视角,通过压缩细节,只保留必要的元素而形成的 简洁的系统表示模型。即,视图是模型的某一选定刻面即简洁 表示。 概念模型:是对真实世界中问题域内的事物的描述,不是对软件设计的描述。概念模型=功能模型+结构模型+行为模型。 组件:系统的一个物理实现块。 框架:是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法。 架构:存储在Active Directory 中的对象类别和属性的描述。对于每一个对象类别来说,该架构定义了对象类必须具有的属性,它 也可以有附加的属性,并且该对象可以是它的父对象。 信息域:一系列关联信息的集合而形成的一个领域。 用例:对一组动作序列的描述,系统执行这些动作将产生对特定的参与者有价值而且可观察的结果。

实体对象:具有图形表示的数据库对象。 软件体系结构:是一组体系结构元素的特定组织形式。体系结构元素分为3类:负责完成数据加工的处理元素;作为被加 工的信息的数据元素;把体系结构的不同部分连接到 一起的连接元素。 ORM:对象-关系映射,主要实现程序对象到关系数据库数据的映射。 二、简答题 2.1什么是模型?为什么要建立模型?建模的原则是什么? 模型:对现实(事物或实体)的简化(或抽象)表示。模型是抽象的产物! 为什么建模(软件建模)? ●清楚、准确、可视地说明与定义系统的结构与行为的方法(简化问题复 杂度, 分析定义); ●作为指导系统构造的基础与模板(设计基础); ●作为涉众(stakeholder利益相关者)交流的工具与成果(交流); ●对分析与决策的结果规范化、文档化(成果)。 建模原则((不同程度、细度、粒度、维度)): ●仅当需要模型时,才够建(按需构建) ●选择要创建什么模型,对如何动手解决问题和如何形成解决方案有着意 义深远的影响。(选择构建) ●可以在不同的精度级别上表示每一种模型。(分层构件) ●最好的模型是与现实相联系的(一致构建) ●单个模型或视图是不充分的。对每个重要的系统最好用一组几乎独立的 模型从多个视角去处理。这些视图一起从整体上描绘了软件蓝图(组合 构建。功能、结构、行为模型) ●尽可能使用草图讨论,重要程度不足的草图模型直接入文档,重要性高 的图使用CASE工具绘制成蓝图入文档。 ●每个模型应配有必要的文字说明(数据字典)。 2.2什么是问题域和系统责任?举例说明其区别与联系? 问题域(问题空间):待开发系统的应用领域,即在客观世界中由该系统处理的业务范围。

软件工程课后参考答案

第一章 1.1什么是计算机软件?软件的特点是什么? 计算机软件是指计算机系统中的程序及其文档 软件的特点: ●软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确地估算。 ●软件是被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可, 但其维护的工作量大。 ●软件的使用没有硬件那样的机械磨损和老化问题。 1.2简述软件的分类,并举例说明 1.系统软件 系统软件居于计算机系统中最接近硬件的一层,其他软件一般都通过系统软件发挥作用。例如:编译软件、操作系统。 2.支撑软件 支撑软件是支撑软件的开发和维护的软件。例如:数据库管理系统、网络软件、软件工具、软件开发环境。 3.应用软件 应用软件是特定应用领域专用的软件。例如:工程/科学计算机软件、嵌入式软件、产品线软件、Web应用软件、人工智能软件。 1.3简述软件语言的分类,并举例说明。 1.需求定义语言 是用于书写软件需求定义的语言。例如:PSL/PSA。 2.功能性语言 是用于书写软件功能规约的语言,通常又称为功能规约语言。例如:广谱语言、Z 语言。 3.设计性语言 是用于书写软件设计规约的语言。例如:PDL。 4.实现性语言 也称为程序设计语言,是用于书写计算机程序的语言。例如:C、java、PROLOG、FORTRAN、COBOL、Modula。 5.文档语言 是用于书写软件文档的语言。通常用自然语言或半形式化语言书写。 1.4什么是软件工程? 软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本为目的。 1.5简述软件工程的基本原则。 软件工程原则包括围绕工程设计、工程支持和工程管理所提出的以下4条基本原则。 1.选取适宜的开发模型 必须认识需求定义的易变性,采用适宜的开发模型,保证软件产品满足用户的要求。 2.采用合适的设计方法

软件体系结构试题库软件工程试题和答案

软件体系结构试题库软件工程试题和 答案

一、判断题 1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。答案:√ 2、可重用技术对构件库组织方法要求不但要支持精确匹配,还要支持相似构件的查找。 答案:√ 3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。 答案:√ 5、构件能够由其它复合构建和原子构件经过连接而成。() 答案:√ 6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色() 答案:√ 7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。其中,构件、连接件和配置是最基本的元素() 答案:√ 8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务() 答案:X 9、构件、连接件以及配置是体系结构的核心模型最基本的元素

() 答案:√ 10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单。 答案:× 11、正交软件体系结构由组织层和线索的构件构成。 答案:√ 13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能。() 答案:√ 14、层次系统中支持抽象程度递增的系统设计是设计师能够把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,可是不支持重用。 答案:× 16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表示工具。 答案:√ 18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行。 答案:√ 19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言。

软件工程名词解释

软件工程试题整理_词语解释题 1、需求分析:需求分析是指开发人员要准确理解用户的需求,进行细致的调查分析,将用户非形式的需求陈述转化成完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。 2、白盒法:该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。白盒法也不可能进行穷举测试。 3、黑盒法:该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。因此,黑盒测试又称为功能测试或数据驱动测试。 4、渐增式测试:逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试。每加入一个新模块进行一次集成测试,重复此过程直至程序组装完毕。 5、非渐增式测试:首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起进行测试。 6、可执行的规格说明:这是一种使要求说明过程自动化的技术,通过可执行的规格说明语言来描述预期的行为“做什么”,人们可以从直接观察中用规格说明语言来规定任何系统行为。

7、经济可行性:对组织的经济状况和投资能力进行分析,对系统建设,运行和维护费用进行估算,对系统建成后可能取得的社会及经济效益进行估计。 8、系统设计说明书:是从系统总体的角度出发对系统建设中各主要技术方面的设计进行说明,是系统设计阶段的产物,其着重点在于阐述系统设计的指导思想以及所采用的技术路线和方法,编写系统设计说明书将为后续的系统开发工作从技术和指导思想上提供必要的保证。 9、面向对象设计:是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。或者说,面向对象设计就是用面向对象观点建立求解域模型的过程。 10、结构化设计:面向数据流的设计是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构,因此又称结构化设计(SD)。 11、结构化分析:是根据分解与抽象的原则,按照系统中数据处理的流程,用数据图来建立系统的功能模型,从而完成需求分析工作。 12、基于脚本的设计:此方法主要用于解决要求的验证问题。一个脚本将模拟在系统运行期间用户经历的事件,它提供了输入、处理、输出的屏蔽,以及有关对话的一个模型,开发者能够给用户显示一个系统的逼真视图。 13、IDEF方法:是美国空军在1981年针对集成化计算机辅助制造(简称ICAM)工程项目中用于进行复杂系统分析和设计的方法,是在结构化分析与设计技术的基础上提出来的。

软件体系结构考试试题库 软件工程 考试试题和答案

一、判断题 1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。答案:√ 2、可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构件的查找。 答案:√ 3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。 答案:√ 5、构件可以由其他复合构建和原子构件通过连接而成。() 答案:√ 6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色() 答案:√ 7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。其中,构件、连接件和配置是最基本的元素() 答案:√ 8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务()答案:X 9、构件、连接件以及配置是体系结构的核心模型最基本的元素() 答案:√

10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单。 答案:×. 11、正交软件体系结构由组织层和线索的构件构成。 答案:√ 13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能。() 答案:√ 14、层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,但是不支持重用。 答案:× 16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具。答案:√ 18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行。 答案:√ 19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言。 答案:√ 21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层。 答案:√ 23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层。

软件体系结构试题库(软件工程)

1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。答案:√ 依据页码:P4 2、可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构件的查找。答案:√依据页码:P7 3、超文本组织方法与基于数据库系统的构件库组织方法不同,它基于全文检索技术。 答案:√依据页码:p8 4、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性。 答案:√ 依据页码:P28 5、构件可以由其他复合构建和原子构件通过连接而成。() 答案:√ 依据页码:P37 6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色() 答案:√ 依据页码:P37 7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色。其中,构件、连接件和配置是最基本的元素() 答案:√ 依据页码:P37 8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务() 答案:X 依据页码:P32、33 9、构件、连接件以及配置是体系结构的核心模型最基本的元素() 答案:√ 根据页码:P37 10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单。 答案:× 依据页码:P81 11、正交软件体系结构由组织层和线索的构件构成。 答案:√ 依据页码:P70 12、基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广播一个或多个事件。 答案:√ 依据页码:P53 13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能。() 答案:√ 依据页码:P70 14、层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,但是不支持重用。

软件体系结构

课程设计(综合实验)报告 ( 2015 2016 年度第二学期) 名称: 课程设计 题目: 软件体系结构设计与分析院系: 计算机系 班级: 学号: 学生姓名: (您得签名) 指导教师: 王晓辉廖尔崇 设计周数: (1周) 成绩: 日期:2016年6月19 日

一、课程设计(综合实验)得目得与要求 软件体系结构就是软件工程专业得专业必修课。软件体系结构就是软件工程方法学得一个分支,开设本课程得目得就是使学生在了解了软件工程基础原理、方法、过程得基础上进一步掌握软件结构设计得基本理论与方法,培养设计软件结构得基本能力。本课程得基本内容包括软件体系结构得基本概念、发展现状、软件体系结构风格、传统得软件体系结构、现代软件体系结构等。 本课程实验得目标就是培养学生得基础编程能力,其培养目标就是程序员;软件工程课程使学生上升到软件系统得认识,其培养目标就是软件工程师。本课程教学内容属于软件工程得概要设计阶段得方法学,其培养目标就是软件架构师。 要求完成实验指导书得实验一~实验五(验证性实验),实验九~实验十一(设计综合性实验)。 二、设计(实验)正文 实验一经典软件体系结构风格(一) 1、管道过滤器风格 (1)概念:管道过滤器模式得体系结构就是面向数据流得软件体系结构。它最典型得应用就是在编译系统。一个普通得编译系统包括词法分析器,语法分析器,语义分析与中间代码生成器,优化器,目标代码生成器等一系列对源程序进行处理得过程。人们可以将编译系统瞧作一系列过滤器得连接体,按照管道过滤器得体系结构进行设计。此外,这种体系结构在其它一些领域也有广泛得应用。因此它成为软件工程与软件开发中得一个突出得研究领域。

《软件体系结构》名词解释

名词解释 1、软件危机 答案:是指爱计算机软件的开发和维护过程中所遇到的一系列严重问题依据页码:P1 2、软件重用 答案:是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程。依据页码:P4 3、构件组装 答案:构件组装是指将库中的构件经适当修改后相互连接,或者将它们与当前开发项目中的软件元素相连接,最终构成新的目标软件。依据页码:P12 4、构件 答案:是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。依据页码:P4 5、构件:答案:构件是具有某种功能的可重用的软件模版单元,表示了系统中主要的计算元素和数据存储。 依据页码:P37 6、构件 答案:构件是一个数据单元或一个计算单元,它由构件的对象的集合、属性的集合、动作的集合和端口的集合组成。依据页码:P41 7、场景(scenarios): 答:场景可以看做是那些重要系统活动的抽象,它使4个视图有机联系起来,从某种意义上说场景是最重要的需求抽象。依据页码:P37 8、在软件系统中构件不是独立存在的,构件具有互操作性。请具体解释构件。 答:构件是一个数据单元或一个计算单元,它由构件的对象的集合、属性的集合,动作的集合和端口集合组成。并可以抽象为C = (O,A,X,P),这里,O是组成构件的所有对象的集合,A是构件属性的集合,X是构件动作的集合,P是构件端口的集合依据页码:P41 9、软件体系结构 答案:软件体系结构是一个设计,它包括所建立系统中的各元素(构件和连接件)的描述、元素 之间的交互、指导装配的范例和对范例的约束。根据页码:P45 10、软件体系结构风格 答案:软件体系结构风格是描述某一特定领域中系统组织方式的惯用模式。依据页码:P51 11、“服务模型”答案:“服务模型”是对所创建的构件进行分组的一种逻辑方式,这种模型与语言无关。服务模型基于这样一个概念:每个构建都是一系列服务的集合,这些服务由构建提供给其他对象。 依据页码:P64 12、消息转换 答案:消息转换所有构件实力发出和接受的消息类型都经过消息总线的过滤。依据页码:P81 13、C2体系结构风格 答案:C2体系结构风格可以概括为通过连接件绑定在一起的、按照一组规则运作的并行构件网络。 依据页码:P55 14、COBRBA接口池

1软件工程名词解释

名词解释 1、软件工程是用科学知识和技术原理来定义、开发、维护软件的一门学科。其主要思想是在软件生产中用工程化的方法代替传统手工方法。 2、GIS软件工程就是在GIS软件的开发整个过程中,遵循一般软件开发的工程化原理和方法,并照顾到GIS软件开发的特殊规律和要求,对GIS软件各个阶段进行工程化规范的一门技术。 3、软件生存周期是指一个软件从得出开发要求开始直到该软件报废为止的整个时期。 4、软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。 5、软件需求是指用户为解决某个问题、或为实现某一目标,要求软件必须满足的条件或能力。软件需求的分为业务需求、用户需求、功能需求和非功能需求三个层次。 6、数据字典是各类数据描述的集合。一个好的数据字典是一个数据标准规范,可以使数据库的开发者依此来实施数据库的建设、维护和更新,从而减低数据库的冗余度并增强整个数据库的完整性。 7、软件体系结构定义了软件部件(Component),包括部件间交互的定义,特别强调省略和部件相互关系无关的内容信息。软件体系结构可以看作是要把程序族中的成员的结构化信息组织起来,使系统在体系结构级达到重用。 8、模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。 9、耦合性也称块间联系,指软件系统结构中各模块间相互联系紧密程度的一种度量。 10、内聚性又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(如程序段之间)联系的越紧密,则它的内聚性就越高。 11、黑盒测试又称为功能测试或数据驱动测试。它是在已知软件所应具有功能的前提下,通过测试来检测每个功能是否都能正常使用。 (该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的界面上进行测试,用来证实软件功能的可操作性,检查程序是否满足功能要求或遗漏了功能,程序是否能正确地接收输入数据并产生正确的输出信息,数据结构是否错误或外部数据库访问是否错误,界面和性能是否错误,初始化和终止是否错误。黑盒测试方法主要有等价类划分、边界值分析、错误推测等,它主要用于软件系统测试阶段。) 12、白盒测试也称结构测试或逻辑驱动测试。它是在已知程序内部结构和处理过程的前提下,通过测试来检测程序中的每条路径是否按预定要求正常运行。 (该方法把被测试对象看成一个透明的白盒子,测试人员完全知道程序的内部结构和处理算法,并按照程序内部的逻辑测试程序,对程序中尽可能多的逻辑路径进行测试,在所有的点检验内部控制

相关文档
最新文档