靖江网站,合肥网络推广策划方案,建设银行么官方网站,导航网站开发一、瀑布模型 严格区分阶段#xff0c;每个阶段因果关系紧密相连#xff0c;只适合需求明确的项目 缺点#xff1a;软件需求完整性、正确性难确定#xff1b;严格串行化#xff0c;很长时间才能看到结果#xff1b;瀑布模型要求每个阶段一次性完全解决该阶段工作#xf…一、瀑布模型 严格区分阶段每个阶段因果关系紧密相连只适合需求明确的项目 缺点软件需求完整性、正确性难确定严格串行化很长时间才能看到结果瀑布模型要求每个阶段一次性完全解决该阶段工作不现实。 二、原型模型 适合需求不明确的项目 原型模型两个阶段1、原型开发阶段 2、目标软件开发阶段 抛弃型原型与演化型原型 三、原型及相关模型 四、V模型 五、迭代与增量 增量型一块一块有增加 迭代型一轮一轮在变好 六、螺旋模型 七、构件组装模型 优点易扩展、易重用、降低成本、安排任务更灵活。 确定构件设计要求经验丰富的架构师、设计不好的构件难重用、强调重用可能牺牲其他指标如性能、第三方构件质量难控制。 八、基于构件的软件工程CBSE CBSE体现了购买而不是重新构造的哲学 CBSE的特征 可组装性所有外部交互必须通过公开定义的接口进行可部署性构件总是二进制式的能作为一个独立实体在平台上运行文档化用户根据文档来判断构件是否满足需求独立性可以在无其他特殊构件的情况下进行组装和部署标准化符合某种标准化的构件模型 构件的组装 顺序组装按顺序调用已经存在的构件可以用两个已经存在的构件来创造一个新的构件层次组装被调用构件的“提供”接口必须和调用构件的“请求”接口兼容叠加组装多个构件合并形成新构件新构件整合原构件的功能对外提供新接口 九、快速应用开发模型RAD 主流程采用瀑布模型在流程引入大量的构件 十、统一过程UPRUP 十一、敏捷方法概述 11.1、敏捷方法-XP 强调四大价值观沟通加强面对面沟通简单不过度设计反馈及时反馈勇气接受变更的勇气 实践规则结对编程两个人写代码一个人写一个人审核、持续集成 11.2、敏捷方法-SCRUM 核心思想每次选一部分进行迭代一个迭代一到四周侧重项目管理 11.3 其他敏捷方法 水晶方法提倡“机动性”的方法拥有对不同类型项目非常有效的敏捷过程 特征驱动开发方法FDD认为有效的软件开发需要三要素人、过程和技术。定义了六种关键的项目角色项目经理、首席架构设计师、开发经理、主程序员、程序员和领域专家。 开放式源码程序开发人员在地域上分布很广其他方法强调集中办公 ASD方法其核心是三个非线性的、重叠的开发阶段猜测、合作与学习 动态系统开发方法DSDM倡导以业务为核心 十二、逆向工程 实现级包括程序的抽象语法树、符合表、过程的设计表示 结构级包括反映程序分量之间互相依赖关系的信息例如调用图、结构图、程序和数据结构 功能级包括反映程序段功能及程序段之间关系的信息例如数据和控制流模型 领域级包括反映程序分量或程序实体与应用领域概念之间对应关系的信息如实体关系模型 相关概念 1重构/重组。重构是指在同一个抽象级别上转换系统的描述形式。 2设计恢复指借助工具从已有程序中抽象出有关数据设计、总体结构设计和过程设计等方面的信息 3逆向工程逆向工程是分析程序。力图在比源代码更高抽象层次上建立程序的表示过程逆向工程是设计的恢复过程 4正向工程指不仅从现有系统中恢复设计信息而且使用该信息去改变或重构现有系统以改善其整体质量 5再工程/重构工程再工程是对现有系统的重新开发过程包括逆向工程、新需求的考虑过程和正向工程三个步骤 十三、净室软件工程 净室即无尘室、洁净室。就是一个受控污染级别的环境。 使用盒结构规约或形式化方法进行分析和设计建模并且强调将正确性验证而不是测试作为发现和消除错误的主要机制。 使用统计的测试来获取认证被交付的软件的可靠性所必需的出错率信息。 技术手段 统计过程控制下的增量式开发控制迭代基于函数的规范和设计盒子结构 定义3种抽象层次行为视图黑盒-有限状态机视图状态盒-过程视图明盒正确性验证净室工程的核心统计测试和软件认证使用统计学原理总体太大时必须采用抽样方法 缺点 太理论化正确性验证的步骤比较困难且耗时开发小组不进行传统的模块测试不现实脱胎于传统软件工程不可避免带有传统软件工程的一些弊端 十四、需求工程-概述 软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望