复习-软件开发流程基本概念

上传人:新** 文档编号:504963881 上传时间:2023-02-11 格式:DOC 页数:5 大小:100KB
返回 下载 相关 举报
复习-软件开发流程基本概念_第1页
第1页 / 共5页
复习-软件开发流程基本概念_第2页
第2页 / 共5页
复习-软件开发流程基本概念_第3页
第3页 / 共5页
复习-软件开发流程基本概念_第4页
第4页 / 共5页
复习-软件开发流程基本概念_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《复习-软件开发流程基本概念》由会员分享,可在线阅读,更多相关《复习-软件开发流程基本概念(5页珍藏版)》请在金锄头文库上搜索。

1、精选优质文档-倾情为你奉上软件开发流程基本概念复习大纲一、 软件开发流程基本概念1、 软件开发流程的概念软件开发流程也就是软件过程。软件过程是为了构造高质量软件所需要完成的任务的框架。思考:软件过程和软件工程?主流的软件过程有那些?软件项目的真正灵魂是软件过程。计算机软件发展阶段: 程序设计阶段 软件工程阶段 软件过程阶段 软件过程是从软件项目需求定义开始直至软件使用后被废弃为止,跨越整个软件生存期内的系统开发、运行和维护等全部活动及相关项的总合。2、 软件工程:一种层次化技术 IEEE Institute of Electrical and Electronic EngineersIEE93

2、:软件工程是(1)将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护,即将工程化方法应用于软件。(2)在(1)中所述方法的研究。软件工程的根基在于质量关注点(quality focus)。软件工程的基础是过程(process)层。软件过程构成了软件项目管理控制的基础,并且建立了一个环境以便于技术方法的采用、工作产品(模型、文档、数据、报告、表格等)的产生、里程碑的建立、质量的保证、正常变更的正确管理。软件工程方法(method)为建造软件提供技术上的解决方法(“如何做”)。软件工程工具(tool)为过程和方法提供自动化或半自动化的支持。3、 过程框架过程框架定义了若干小的框架活动,这

3、完整的软件开发过程建立了基础。这些框架活动可广泛应用于所有软件开发项目,无论这些项目的规模和复杂性如何。通用过程框架(5个最基本的过程框架活动)可适用于绝大多数的软件项目。沟通(Communication): with customers, stakeholders, team策划(Planning): for the workflow that is to follow建模(Modeling): to advance the understanding of requirements Analysis of requirements Design构建(Construction) Code g

4、eneration: either manual or automated or both Testing部署(Deployment): delivery to the customer for evaluation软件工程的通用框架由很多普适性活动来实现,典型的普适性活动包括:软件项目管理(Software project management)正式技术评审(Formal technical reviews)软件质量保证(Software quality assurance)软件配置管理(Software configuration management)工作产品的准备和生产(Work pr

5、oduct preparation and production)可复用管理(Reusability management)测量(Measurement)风险管理(Risk management)二、 谈谈你对软件开发流程重要性的理解?三、 过程模型1、 软件过程模型(式)是从成功或失败的软件开发实践中总结而成的,是软件过程中生命周期、人员、方法、产品四大类要素相互关联的有机整体。软件过程模式定义了开发流程中“谁”、“为实现什么”、“如何”和“做什么”;对应为:人员、产品、方法和生命周期。2、 软件开发流程的主流方法 1)RUP(Rational Unified Process)统一过程归纳和

6、整理了很多在实践中总结出来的软件工程的最佳实践,是一个采用了面向对象思想,使用UML作为软件分析设计语言,并且结合了项目管理、质量保证等许多软件工程知识综合而成的一个非常完整和庞大的软件方法。统一过程认识到与客户沟通能及从用户的角度描述系统(即,用例)并保持描述的一致性的重要性。它强调软件体系结构的重要作用,并“帮助架构师专注于的目标、例如可理解性、对未来变更的可适应性以及复用”。它建立一种迭代的、增量的过程流,提供了一种演进的特性,这对现代软件开发非常重要。l 统一过程的生命周期(用二维结构图表达)v 生命周期的静态结构九大核心工作流程 核心过程工作流程:业务建模、需求、分析设计、实 施、测

7、试、部署 核心支持工作流程:配置和变更管理、项目管理、环境v 生命周期的动态结构四个阶段 先启(inception) 精化(elaboration) 构建(construction) 产品化(production)l 用例及用例驱动 用例(use case)和参与者(actor):系统应该为每个用户做什么? 用例:是一种文字描述或模板,从用户的角度描述系统功能和特性。作为创建更为复杂的分析模型的基础。 用例已被证明是捕获需求的一种有效方法; 用例驱动整个RUP过程l 在面向对象的分析设计中采用UML进行可视化建模 2)Agile敏捷开发l 敏捷过程的提出2001年,Kent Beck和其他16

8、位知名软件开发者、软件工程作家以及软件咨询师共同签署了“敏捷软件开发宣言”。这是敏捷过程的价值观。个体和交互 胜过 过程和工具可以工作的软件 胜过 面面俱到的文档客户合作 胜过 合同谈判响应变化 胜过 循环计划 侧重于左面的内容,并不完全排斥右边的内容!l 敏捷强调适应而非预测。l 敏捷过程以人为中心,而非以过程为中心。l 敏捷软件工程推崇让客户满意和软件尽早增量发布;小而高度自主的项目团队;非正式的方法;最小化软件工程产品以及整体精简开发。l 敏捷过程的12条基本原则1. 最优先要做的是通过尽早地、持续地交付有价值的软件来使客户满意;2. 即使到了开发的后期也欢迎改变需求,敏捷过程利用变更来

9、为客户创造竞争优势;3. 经常性地交付可以工作的软件,交付的间隔可以从几个星期到几个月,交付的时间间隔越短越好;4. 在整个项目开发期间,业务人员和开发人员必须天天都工作在一起;5. 围绕被激励起来的个体来构建项目,给他们提供所需的环境和支持,并且信任他们能够完成工作;6. 在团队内部,最具有效果并富有效率的传递信息的方法,就是面对面的交谈;7. 可工作的软件是首要的进度度量标准;8. 敏捷过程提倡可持续的开发速度,责任人(sponsor)、开发者和用户应该能够保持一个长期的、恒定的开发速度;9. 不断地关注优秀设计的技能和好的设计会增强敏捷能力;10. 简单使未完成的工作最大化的艺术是最根本

10、的;11. 最好的架构、需求和设计出自于自组织的团队;12. 每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整。l 敏捷过程模型XP(eXtreme Programming)极限编程自适应软件开发(Adaptive Software Development,ASD)动态系统开发方法(Dynamic System Development Method,DSDM)SCRUM水晶系列方法特征驱动开发(Feature Driven Development,FDD)四、 软件质量管理和质量控制的区别 重点内容参见:Basic Porcess Awareness.pdf专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号