软件工程概论2-软件过程

由于软件工程的目标是在规定的时间和预算内开发出高质量的软件,而且软件项目失败的主要原因是缺少过程规范,那么软件过程就显得尤为重要。第二章着重讲解了如何建立和改进规范的软件开发过程,这种软件工程运动极大地推动了软件的工业化过程。

软件过程是软件工程人员为了获得软件产品而在软件工具的支持下实施的一系列软件工程活动。一般的软件过程都包括问题提出,软件需求规格说明,软件设计,软件实现,软件确认和软件演化等基本活动。在软件过程的不同阶段,有可能产生各种不同的软件制品。软件过程制品涉及软件需求,软件设计,软件实现,软件测试和软件实施等活动产生的结果,这些制品通常是在不同的开发活动之间进行转移和演进,主要内容包括软件需求制品,软件设计制品,软件实现制品,软件测试制品和软件实施制品,还有相应的开发管理制品。

软件工程模型描述软件过程的整体框架,它是软件过程的一种抽象表示。常见的软件过程模型如下:

(1)瀑布模型:一种线性过程,适用在开发的早期阶段软件需求被完整确定的情况,这种要求过于理想化,难以适应现代软件的开发要求。

(2)快速原型模型:快速构建原型,一旦确定客户需求,构建原型将被抛弃。这种方法可以克服瀑布模型的缺点,减少由于软件需求不明确带来的的开发风险,但是快速建立的系统结构加上连续的修改可能会导致产品质量低下。

(3)增量模型:将整个产品分解成若干个构件进行逐步交付,可以适应需求变化,降低了开发风险。但是很容易退化成边做边改的方式,使软件过程的控制失去整体性。

(4)螺旋模型:将软件过程划分为若干个开发回线。它强调风险分析,故适应于内部的大规模软件开发,且适应于大规模软件项目。

(5)形式化模型:采用形式化的数学方法将系统描述转换成可执行的程序。适合于对安全性,可靠性和保密性要求极高的软件系统开发。

(6)基于组件的开发模型:体现了软件复用的思想,但由于有些商业组件不可修改,受到一定的限制。

时间: 2024-10-24 06:08:56

软件工程概论2-软件过程的相关文章

软件工程概论1

软件工程概论第一章介绍了软件,软件工程,软件工程知识体系和软件工程职业道德规范,系统且全面地地阐述了什么是软件工程,怎样进行软件需求分析,设计,开发,测试和维护等等. IEEE规定软件是计算机程序,规程以及运行计算机系统可能需要的相关文档和数据.根据软件服务对象的范围不同,一般可以将软件划分为通用软件和定制软件.软件的特性:1 复杂性 2 不可见性 3 不断变化性 4大多数软件仍然是定制的,而不是通过已有构件组装而成的.软件发展分为四个阶段: 第一阶段:20世纪50-60年代  第二阶段:20世

软件工程概论2

软件工程概论 第二章 1.软件过程的概念 软件过程是软件工程人员为了获得软件产品而在软件工具的支持下实施的一系列软件工程活动.软件过程的基本活动大致分为六部:问题提出.软件需求说明.软件设计.软件实现.软件确认和软件演化. 软件过程的制品 软件需求 1.构建文档 2.需求模型 3.软件需求规格说明 软件设计 1.软件体系结构文档 2.设计模型 软件实现 源程序 目标代码 可执行构件 软件测试 测试规程 测试用例 软件测试报告 软件实施 1.  相关的运行时文件 2.  用户手册 开发管理制品 计

软件工程概论

第一章 概述 软件 软件是计算机程序.规程以及运行计算机系统可能需要的相关文档和数据,从软件的内容来看,软件更像是一种嵌入式的数字化知识,其形成是一个通过交互对话和抽象理解而不断演化的过程,根据软件服务对象的范围,一般分为通用和定制两种. 通用软件(Generic Software):由软件开发组织开发.面向市场用户公开销售的独立运行系统(优点:一次开发,多次出售 缺点:有风险) 定制软件(Customized Software ):由某个特定用户委托.软件开发组织在合同的约束下开发的软件(优点

软件工程概论课总结及意见建议

本学期的软件工程概论课到此就上完了,总体上来说在这门课上学到的东西是非常多的并且对我是非常有帮助的.整个学期王老师带领我们将软件工程的具体流程走了一遍,讲到了入门.过程.流程.注意事项.方式方法.关键点.关键问题等等.虽然我们没有真正接触到实际的开发项目,但已经对软件行业在脑子中有了成型的框架,不在一说到软件就是编程代码,而是软件工程行业的接近核心的知识理论.我们有的也不只是理论,王老师配合每次的讲课内容为我们准备了相应的课堂练习,以便我们能够亲身体验项目的流程. 对于软件工程概论课的教授,王老

软件工程概论个人总结

转眼又到了一个学期的末尾,在这里简单的对软件工程概论这门课进行一下总结吧.说实话,刚开始真是不知道这门课要讲些什么,总之会讲一些软件工程方面的知识吧.然而随着一次次的上课,一次次的任务,我才终于明白了这门课要我们做些什么. 这门就像老师所讲的是以“做中学”为主要的理念,主要强调让我们在自己开发软件的过程中去学习知识和技能.刚开始的几周,觉得这种方法是很好的,的确能学到不少的知识.然而这只是一个简单的开始,当二柱子的四则运算一次比一次复杂,当我们组成团队,需要在很短的时间内进行冲刺,完成自己的项目

软件工程概论10

软件工程概论 第十章 软件测试 软件测试:广义上,是指软件产品生存周期内所有的检查.评审和确认活动.狭义上,是对软件产品质量的检验和评价. 软件测试的基本原则:①应当把“尽早的和不断地进行软件测试”作为软件开发者的座右铭.②程序员应避免检查自己的程序.③在设计测试用例,应当包括合理的输入条件和不合理的输入条件.④测试用例由测试输入数据和与之对应的预期输出结果组成.⑤充分注意测试中的集体现象.⑥严格执行测试计划,排除测试的随意性⑦对每一个测试结果做全面的检查⑧妥善保存一切测试过程文档,为维护提供方

软件工程概论课程的个人总结

个人总结 请根据本次学习过程给出总结并针对教师授课给出意见和建议,字数1500字以上. 一个学期的课程快要结束了,这个学期最大的怨念就是软件工程概论,作业多而且难,还要占用大量的时间和精力去完成个人和团队的任务.但是这些都不是最主要的,最重要的是我们在这里收获和很多.比如说拿到题目之后不再是一味的上来就开始写代码写完代码就开始心情愉快的做其他事,我会先分析,然后写出我自己的设计思路,再慢慢实现我的代码,然后再作总结:所以到现在写程序很少犯以前犯过的错误,也不会再程序写一半的时候突然感觉没有思路了

软件工程概论第五周进度条

所花时间:软件工程概论上课时间(1h5min),web应用技术开发课程(接近4h)课余时间练习(2h)       共计约8h 代码量:登录界面开发292行(web),四则运算代码160行. 博客量:软件工程概论作业01 学习到的知识点:通过Jdbc连接数据库.

软件工程概论第一节

一.网站系统开发需要掌握的技术 PHP..NET.HTML等编程语言中至少一种以及环境配置.脚本语言.数据库链结等技术. 二.课堂测试的源程序代码 HTML源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http

软件工程概论9

软件工程概论 第九章 软件实现 程序设计语言:在不断的演化和演变,其发展经历了从机器语言到高级语言的过程. 软件编码规范:文件命名与组织.代码的版式(适当的空行.代码行及行内空格.分行对齐与缩进.命名规则.声明.注释). 软件编码案例分析:程序注释问题.变量命名问题.内存异常问题(内存泄露问题.指针参数问题.“野指针”问题.编程建议).异常处理问题.性能问题(避免创建重复对象.优化语言提高性能). 软件代码审查:代码检查:类.属性.构造函数.方法头.方法体.