- 1、本文档共69页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件职业技术学院“十一五”规划教材 软件开发流程实训教程 第1章 软件开发项目的前期准备 【本章引言】 软件开发在整个计算机软件的生存周期中是最重要的一环。如何高效、高质的开发成功的软件产品一直是软件工程师们一直追求的目标。经过半个多世纪的研究与探索,人们在计算软件开发领域已经积累了丰富的经验与成果。 【教学目标】 掌握计算机软件的概念与计算机软件的基本分类; 掌握软件生存周期划分与相关档案 的内容; 掌握常用软件开发模型; 掌握计算机软件开发方法。 第一章 软件开发项目的前期准备 1.1 计算机软件概述 1.2 软件的生存周期 1.3 软件开发常用模型 1.4 软件开发方法和软件开发工具 1.1 计算机软件概述 1.1.1 计算机软件概念 1.1.2 软件的分类 1.1.3 软件工程的历史及发展 1.1 计算机软件概述 软件是一个完整的计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发,维护和使用有关的图文材料。 1.1.1 计算机软件概念 软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。 计算机软件是指计算机程序以及解释和指导使用程序的文档的总和。计算机程序包括源程序和目标程序。 1.1.1 计算机软件概念 源程序是指用高级语言或汇编语言编写的程序,目标程序是指源程序经编译或解释加工以后,语言编写的程序,目标程序是指源程序经编译或解释加工以后可以由计算机直接执行的程序。 文档是指用自然语言或者形式化语言所编写的文字资料和图表,用来描述程序的内容、组成、设计、功能规格、开发情况、测试结果及使用方法。 1.1.1 计算机软件概念 软件开发的特点是: (1)由于软件并不是实际存在的物理形态 它是一种抽象的逻辑过程,是一种逻辑实体,这个特点使它与其它工程对象有着明显的差异。人们可以把它记录在纸上、内存、和硬盘、光盘上,但却无法看到软件本身的形态,必须通过观察、分析、思考、判断,才能了解它的功能、性能等特性。 1.1.1 计算机软件概念 (2) 软件的生产过程也非常特殊,同我们传统意义里的普通工厂里的加工不同的是,软件更像是一种纯粹的脑力劳动,同第一个特点一样它没有明显的物理加工过程。 (3) 由于软件产品其实是一种抽象的逻辑存在,所以在软件的运行和使用期间,没有硬件那样的机械磨损,设施老化问题。 1.1.1 计算机软件概念 任何物理设备在运行和使用中,都有一个大致趋势相同的失效率曲线。即为如图1-1(a)所示的U型曲线(即浴盆曲线)。在这个曲线里边我们可以看出随着使用时间的增加设备的失效率主要是由磨损用坏造成的。而软件的情况与此不同,由于其固有的特性,本身不存在磨损和老化问题,即便是他的载体出现U型曲线,软件本身仍然可以便利的移到另一台载体上边。然而同物理设备不同的是它存在退化问题,说着时间的增加,软件本身会出现落伍的现象,因此必须要对软件本身进行一次或多次修改(维护), 如图1-1(b)所示。而这些修改又不可避免的引入错误,导致软件失效率升高,从而似的软件退化。当修改的成本变得难以接受时,软件就被抛弃。 1.1.1 计算机软件概念 1.1.1 计算机软件概念 (4) 软件的开发和运行不是完全由软件本身的技术实现的,它常常还受到计算机系统的限制,对计算机系统有着不同程度的依赖性。软件对硬件和环境有着不同程度的依赖性。这导致了软件移植的问题 1.1.1 计算机软件概念 (5) 软件本身是一件结构非常复杂的产品。 软件的复杂性来自于两个方面: 一是来自它所反映的实际问题的复杂性(即需要解决问题的复杂性) 二是来自软件本身设计程序逻辑结构的复杂性 1.1.1 计算机软件概念 (6) 软件的成本问题。 软件开发成本主要指软件开发过程中所花费的工作量及相应的代价。 另外,软件也没有一个明显的制造过程,它的开发成本是以一次性开发过程所花费的代价来计算的。软件的研制工作需要投入大量的、复杂的、高强度的脑力劳动,它的成本是比较高的。 1.1.1 计算机软件概念 (7) 软件开发出来时要给“人”使用的,所以软件不可避免地要具备人的社会属性。 相当多的软件工作涉及到社会因素。许多软件的开发和运行涉及机构、体制及管理方式等问题,甚至涉及到人的观念和人们的心理。这些问题都将直接影响项目的成败。 1.1.2 软件的
文档评论(0)