软件体系结构

软件体系结构2

安稳与你 提交于 2019-11-29 13:55:35
软件体系结构2 软件体系结构概述 软件体系结构包括构件(Component)、连接件(Connector)和约束(Constraint)或配置(Configuration)三大要素。 软件需求与架构 需求是指明必须实现什么规格说明。它描述了系统的行为、特性或属性,是在开发过程中对系统的约束。 与客户打交道的主要目的是:一是获取需求,而是签订合同 软件需求流程 需求的分类:业务需求,用户需求,系统需求,功能需求,非功能需求,设计约束 质量属性: 开发期质量:可扩展性,可复用性,可维护性等; 运行期质量:正确性,健壮性,性能,可靠性,容错性,易用性,安全性,可移植性,兼容性。 需求工程结构图 开发者对待需求工程的态度可分"被动型"、"主动型"和"领先型"三种。 获取需求 需求从哪里来:人,物,系统 获取需求的方法:面谈,问卷,会议… 面谈问题基本上可以分为两种类型:开放式问题和封闭式问题 面谈结构:金子塔型,漏斗型,菱形 用例描述了 用户 和 系统 之间的交互 用例模型描述全部的系统功能性行为 二维需求矩阵 约束需求:业务环境因素+使用环境因素+构建环境因素+技术环境因素 ER图中包含三个图形符号:实体,属性,联系 需求分析的主要成果:软件需求规格说明书(Software Requirement Specification, SRS) 需求确认包含两个重要工作:"需求评审"和"需求承若

285.软件体系结构评估概述

送分小仙女□ 提交于 2019-11-29 10:29:56
7.1.1 评估关注的质量属性   软件体系结构的设计是整个软件开发过程中关键的一步。对于当今世界上庞大而复杂的系统来说,如果没有一个合适的体系结构而要有一个成功的软件设计几乎是不可想象的。   不同类型的系统需要不同的体系结构,甚至一个系统的不同子系统也需要不同的体系结构。体系结构的选择是一个软件系统设计成败的关键。但是,怎样才能知道为软件系统所选用的体系结构是否恰当?如何确保按照所选用的体系结构能顺利地开发出成功的软件产品呢?要回答这些问题,需要使用专门的方法对软件体系结构进行分析和评估。   体系结构评估可以只针对一个体系结构,也可以针对一组体系结构。在体系结构评估过程中,评估人员所关注的是系统的质量属性,所有评估方法所普遍关注的质量属性有以下几个。   1.性能   性能是指系统的响应能力,即要经过多长时间才能对某个事件作出响应,或者在某段时间内系统所能处理的事件的个数。经常用单位时间内所处理事务的数量或系统完成某个事务处理所需的时间来对性能进行定量的表示。性能测试经常要使用基准测试程序(用以测量性能指标的特定事务集或工作量环境)。   2.可靠性   可靠性是软件系统在应用或系统错误面前、在意外或错误使用的情况下维持软件系统的功能特性的基本能力。可靠性是最重要的软件特性,通常用它衡量在规定的条件和时间内,软件完成规定功能的能力。可靠性通常用平均失效等待时间(Mean

286.软件体系结构研究展望

半腔热情 提交于 2019-11-29 10:29:54
软件体系结构研究新方向 21世纪软件技术展望 1.开放源代码 下一世纪的操作系统将继承现在好的操作系统的主要优点,变成开放的和进化的。在操作系统开放之后,系统软件产业将主要集中在软件环境平台和工具的研究开发上。可视化编程环境与工具、办公套件、家庭套件、学习套件等将会有很大的空间。 21世纪软件技术展望 2.跨平台 使得一次写好的应用软件在各种不同硬件系统上都可以运行、使得已经设计好的程序模块被有效地重复利用。 目前跨平台这一设想还没有完全有效地被实现,相信21世纪第一个10年一定可以完成。当然,如何解决非Java语言软件的跨平台问题仍然是一个难题。 21世纪软件技术展望 3.软件工业化 随着软构件的规范化和实用化,计算机软件生产的工业化程度会慢慢提高,软件发展的速度也会慢慢加快。估计到21世纪的第一个10年结束的时候,软件的工业化程度应该达到20世纪90年代中期计算机硬件的工业化程度。 21世纪软件技术展望 4、友好界面 多媒体技术、语音识别与合成技术、手写体文字的识别、自然语言理解与机器翻译技术、图像处理与图形学技术、用户图形界面技术、人工智能技术等等都是解决软件系统友好性的关键技术。 21世纪软件技术展望 5.基于网络的应用软件 利用了WEB浏览技术、多媒体技术和网络信息管理系统等综合技术而构成的网络应用软件(例如电子商务)将是今后软件业发展的最大舞台。 纲要

软件设计与体系结构主要考点

北战南征 提交于 2019-11-28 17:43:24
一、项目两个基本属性:临时性;独特性(唯一性) 二、项目的生命周期:项目启动、项目规划、项目执行、项目监控和项目收尾 任何项目的目标都是力求:时间最短、费用最少、质量最高 三、项目立项一般需要经过如下5个步骤:1)识别发起项目 2)论证项目 3)申请项目 4)审核项目5)确定项目/立项 四、可行性分析一般从一下8个方面进行展开:1)战略评估 2)操作性评估 3)计划评估 4)技术评估 5)社会评估 6)市场评估7)经济评估8)风险评估 五、5种经济性评估指标:1)净利润 2)净现值 3)内部收益率 4)投资回收率 5)投资回报率 六、招投标过程:招标、投标、开标、评标、中标 七、软件合同管理流程分为4个阶段: 1)合同前准备 2)签署合同 3)合同履行 4)合同收尾 五、范围管理的5个主要过程:1)收集需求 2)定义范围 3)创建工作分解结构 4)核实范围5)控制范围 六、收集需求的方法一般有8种访谈、焦点小组会议、引导式研讨会、群体创新技术、群体决策技术、问卷调查、观察、原型法 七、软件需求分为功能性需求和非功能需求两大类;细分又可以分为三个层次; 1)业务需求 2)用户需求 3)功能需求 4)系统需求 5)业务规则 6)质量属性 7)性能需求 8)对外接口 9)约束条件 八、成功需求的标准:明确性;完整性;一致性;可测试性 九、三种基本的项目组织结构:职能式项目组织结构