【软考】系统架构设计师考试知识点(四)系统开发基础知识

tech2025-12-15  1

主要学习系统开发的基础知识,包括软件开发方法的基本概念、需求管理、开发管理、设计方法、软件重用和逆向工程等相关知识

软件开发方法

1、软件开发生命周期

需求规格说明书

系统名称功能描述接口基本数据结构性能开发标准验收原则

概要设计

定义功能模块及功能模块之间的关系

详细设计

研究模块内部

算法与数据结构数据分布数据组织模块间信息接口用户界面等设计

测试

单元测试集成测试确认测试系统测试

2、软件开发模型

瀑布模型

严格按照软件生命周期各阶段顺序执行

有利于人员的组织管理,但明显存在使用缺陷:用户并不能了清晰定义及描述其需求、初始版本的呈现周期较长

原型模型

提前通过可视化的方式呈现需求

原型获取有三种途径

利用模拟软件系统的人机界面和人机交互方式真正开发一个原型寻求一个或者几个类似的软件

螺旋模型

在快速原型的基础上扩展的,支持大型软件开发,适用于面向规格说明,面向过程和面向对象的软件开发方法

可分为多个周期开发,每个周期由4个阶段组成

目标设定风险分析开发和有效性验证评审

基于四代技术的模型

侧重于支持软件的设计和是现阶段,并支持全过程,

其主要特征:

非过程化语言:可通过生成器代替编程语言与数据库密切相关

3、敏捷方法

特点

强调“适应性”,非“预设性”强调“面向人的”,非“面向过程的”

核心思想

适应性以人为本迭代增量式的开发过程

主要内容

4个核心价值观:

沟通

设计者、开发者和客户之间

简单

满足当前需求,代码简单化

反馈勇气 12条实践原则简单设计测试驱动代码重构结对编程持续集成现场客户发行版本小型化系统隐喻代码集体所有制规则策略规范代码40小时工作机制

4、RUP

9个核心工作流

业务建模需求分析与设计实现测试部署配置与管理项目管理环境

4个阶段

初始细化构造移交

特点:

用例驱动

以体系结构为中心

体系结构的设计与代码设计无关,并不依赖于程序语言迭代与增量体系结构层次的设计问题包括 系统的总体组织全局控制通信协议同步数据存取给设计元素分配特定功能设计元素的组织物理分布系统的伸缩性性能

4+1视图模型

逻辑视图

描述系统功能,最终用户关注

实现试图

描述系统配置、装配,程序员关注

进程试图

描述系统性能、吞吐,集成人员关注

部署试图

描述系统安装、托盘结构,系统工程师关注

用例视图

描述人机互动的系统行为,分析人员和测试人员关注

RUP是一个通用的过程模板,包括开发指南、开发过程产物及过程中的角色说明,可用于各类项目,因体系庞大,需要针对具体实例进行适当裁剪

裁剪步骤

确定开发过程设计的工作流确定工作流的产出确定4个阶段间的演进确定每个阶段的迭代计划规划工作流内部结构(难点)

5、软件系统工具

衡量因素

功能易用性稳健性硬件要求性能服务支持

工具包含

需求分析工具设计工具编码与排错工具测试工具

软件工具

需求分析工具 基于自然语言或图形描述工具 基于形式化需求定义语言的工具 其他需求分析工具设计工具(设计规范) 概要设计规范 详细设计规范编码与排错工具 编码工具 编辑程序汇编程序编译程序生成程序 排错工具 软件维护工具 版本控制工具文档分析工具开发信息库工具 逆向工程工具

反编译工具的使用属于逆向工程的范畴

再工程工具

目前的工具主要集中在代码重构、程序结构重构、数据结构重构等方面

软件管理和软件支持工具 项目管理工具配置管理工具软件评价工具 如Mc-Cabe可以对环路复杂度进行度量

需求管理

1、需求管理原则

CMM模型第二级关键过程域增减需求管理的内容,目标是

为软件需求建立基线软件计划、产品和活动与软件需求保持一致

2、需求规格说明的版本控制

变更内容日期变更人员变更原因

3、需求属性

创建时间版本号创建人批准人状态原因和依据涉及子系统涉及产品版本号验收/接受的标准优先级稳定性

4、需求变更

为严格控制软件项目,需要确保

评估已提出的变更适当的人选评估和决策变更变更应及时通知所有人需求变更需要遵循一定的程序

需求变更管理的目的是将变更产生的负面影响降到最低

问题分析和变更描述变更分析和成本计算变更实现

需求变更应遵循的原则

必须遵循变更控制程序变更未经批准不得实施变更应有变更控制委员会进行评估和决策项目干系人有权获悉变更信息变更库中原始文档不得更改或者删除变更实施均应可追溯到已获批的变更请求

变更控制委员会的总则/章程

目的授权范围成员构成决策流程操作步骤

5、需求跟踪

需求跟踪链 traceability link

客户需求向前追溯到软件需求(需求变更更新至需求规格说明书中)从软件需求回溯相应的客户需求(确认每个需求的源头)从软件需求向前追溯到下一级工工作产品(逐步确保最终产品满足需求)从产品部件回溯到软件需求(验证部件来源)

6、需求变更的代价和风险

变更只能在项目时间、预算、资源等限制允许范围内进行协商 进行影响分析的能力依赖于跟踪能力、数据的质量和完整性

开发管理

1、项目的范围、时间、成本

范围

项目章程(初始的范围说明书)项目范围管理计划组织过程资产(过程性成果)批准的变更申请

时间管理

活动定义(WBS)活动排序活动资源估算活动历时估算指定进度计划

2、配置管理、文本管理

3、软件开发的质量和风险

设计方法

1、结构化分析与设计

2、面向对象的分析设计

软件的重用

逆向工程与重构工程

最新回复(0)