系统架构设计师-软件工程
系列文章目录系统架构设计师:第一章 企业信息化战略与实施文章目录系列文章目录前言一、软件开发方法1.软件开发模型二、需求工程1.需求获取2.需求分析3.UML4+1视图(案例分析)三、软件系统建模四、系统设计1.界面设计2.结构化设计3.面向对象设计五、测试与评审1.软件测试2.测试类型3.测试用例设计4.测试阶段5.面向对象的测试6.软件调试六、系统运行与软件维护1.系统转换计划2.软件维护总结
·
系列文章目录
系统架构设计师:
第一部分 企业信息化战略与实施
第二部分 软件工程
第三部分 软件架构设计
文章目录
前言
软件工程
提示:以下是本篇文章正文内容,下面案例可供参考
一、软件开发方法
结构化法:
- 用户至上
- 严格区分工作阶段,每阶段有任务和成果
- 强调系统开发过程的整体性与全局性
- 系统开发过程工程化,文档资料标准化
- 自顶向下,逐步分解(求精)
原型法:
- 适用于需求不明确的开发
- 包括抛弃型原型和进化型原型
面向对象方法:
- 更好的复用性
- 关键在于建立一个全面、合理、统一的模型
- 分析、设计、实现三个阶段,界限不明确
面向服务的方法:
- SO方法有三个主要的抽象级别:操作、服务、业务流程
- SOAD分为三个层次:基础设计层(底层服务构件)、应用结构层(服务之间的接口和服务级协定)和业务组织层(业务流程建模和服务流程编排)
- 服务建模:分为服务发现、服务规约和服务实现三个阶段
1.软件开发模型
瀑布模型:
迭代与增量:
增量模型与螺旋模型:
螺旋模型以原型模型为基础 + 瀑布模型,考虑到了风险
V模型 和 喷泉模型:
构建组装模型:
快速应用开发模型(RAD):
统一过程(RUP):
敏捷方法:
敏捷开发方法:
- XP(Extreme Programming,极限编程)在所有的敏捷型方法中,XP是最引人瞩目的。它源于Smalltalk圈子,特别是Kent Beck和Ward Cunningham在20世纪80年代末的密切合作。XP在一些对费用控制严格的公司中使用,已经被证实是非常有效的。
- Cockburn的水晶系列方法,水晶系列方法是由Alistair Cockburn提出的。它与XP方法一样,都有以人为中心的理念,但在实践上有所不同。Alistair考虑到人们一般很难严格遵循一个纪律约束很强的过程,因此,与XP的高度纪律性不同,Alistair探索了用最少纪律约束而仍能成功的方法,从而在产出效率与易于运作上达到一种平衡。也就是说,虽然水晶系列不如XP那样的产出效率,但会有更多的人能够接受并遵循它。
- 开放式源码,这里提到的开放式源码指的是开放源码所用的一种运作方式。开发式源码项目有一个特别之处,就是程序开发人员在地域上分布很广,这使得它和其他敏捷方法不同,因为一般的敏捷方法都强调项目组成员在同一个地点工作。开放源码的一个突出特点就是查错排障的高度并行性,任何人发现了错误都可以将改正源码的“补丁”文件发给维护者。然后由维护者将这些“补丁”或是新增的代码并入源码库。
- SCRUM。SCRUM已经出现很久了,像前面所论及的方法一样,该方法强调这样一个事实,即明确定义了的可重复的方法过程只限于在明确定义了的可重复的环境中,为明确定义了的可重复的人员所用,去解决明确定义了的可重复的问题。
- Goad的功用驱动开发方法(FDD-Feature Driven Development)FDD是由Jeff De Luca和大师Peter Gpad提出来的。像其他方法一样,它致力于短时的迭代阶段和可见可用的功能。在FDD中,一个迭代周期一般是两周。在FDD中,编程开发人员分成两类:首席程序员和“类”程序员(class owner)。首席程序员是最富有经验的开发人员,他们是项目的协调者、设计者和指导者,而“类”程序员则主要做源码编写。
- ASD方法:ASD(Adaptive Software Development)方法由Jim Highsmith提出,其核心是三个非线性的、重叠的开发阶段:测测、合作与学习。
逆向工程:
净室软件工程:
- 净室即无尘室、洁净室。也就是一个受控污染级别的环境
- 使用盒结构规约(或形式化方法)进行分析和设计建模,并且强调将正确性验证,而不是测试,作为发现和消除错误的主要机制。
- 使用统计的测试来获取认证被交付的软件的可靠性所必需的出错率信息
二、需求工程
概述:
- 软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望。
- 软件需求是指用户解决问题或达到目标所需的条件或能力,是系统或系统部件要满足合同、标准、规范或其他正式规定文档所需具有的条件或能力,以及反映这些条件或能力的文档说明。
1.需求获取
2.需求分析 SA
数据流图 DFD
答题技巧:
状态转换图 STD
实体关系图 E-R图
面向对象分析(OOA):
OOA-UML:
用例图:
类图与对象图:
顺序图:
通信图(协作图):
状态图:
活动图:
定时图:
构件图与包图:
部署图:
OOA-UML-4+1视图:
3.需求定义
4.需求验证
5.定义需求基线
6.需求跟踪
7.需求变更管理过程
三、软件系统建模
四、系统设计
1.人机界面设计
2.软件设计
3.结构化设计
4.面向对象设计
1.基本过程:
2.设计原则:
3.设计模式:
3.1创建型模式:
3.2结构型模式:
3.3行为型模式:
五、软件测试
1.测试类型
2.测试用例设计
3.测试阶段
4.面向对象的测试
六、软件调试
七、系统运行与软件维护
1.系统转化计划
1 遗留系统演化策略:
2 新旧系统的转换策略:
3 数据转换与迁移:
2.维护
总结
系统架构设计师 软件工程内容
更多推荐
已为社区贡献2条内容
所有评论(0)