软件开发项目的前期准备

软件开发项目的前期准备

ID:46884197

大小:322.50 KB

页数:68页

时间:2019-11-28

软件开发项目的前期准备_第1页
软件开发项目的前期准备_第2页
软件开发项目的前期准备_第3页
软件开发项目的前期准备_第4页
软件开发项目的前期准备_第5页
资源描述:

《软件开发项目的前期准备》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第1章软件开发项目的前期准备【本章引言】软件开发在整个计算机软件的生存周期中是最重要的一环。如何高效、高质的开发成功的软件产品一直是软件工程师们一直追求的目标。经过半个多世纪的研究与探索,人们在计算软件开发领域已经积累了丰富的经验与成果。【教学目标】掌握计算机软件的概念与计算机软件的基本分类;掌握软件生存周期划分与相关档案的内容;掌握常用软件开发模型;掌握计算机软件开发方法。第一章软件开发项目的前期准备1.1计算机软件概述1.2软件的生存周期1.3软件开发常用模型1.4软件开发方法和软件开发工具1.1计算机软件概述1.1.1计算机软件概念1

2、.1.2软件的分类1.1.3软件工程的历史及发展1.1计算机软件概述软件是一个完整的计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操纵信息的数据结构;文档是与程序开发,维护和使用有关的图文材料。1.1.1计算机软件概念软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。计算机软件是指计算机程序以及解释和指导使用程序的文档的总和。计算机程序包括源程序和目标程序。1.1.1计算机软件概念源程序是指用高级语言

3、或汇编语言编写的程序,目标程序是指源程序经编译或解释加工以后,语言编写的程序,目标程序是指源程序经编译或解释加工以后可以由计算机直接执行的程序。文档是指用自然语言或者形式化语言所编写的文字资料和图表,用来描述程序的内容、组成、设计、功能规格、开发情况、测试结果及使用方法。1.1.1计算机软件概念软件开发的特点是:(1)由于软件并不是实际存在的物理形态它是一种抽象的逻辑过程,是一种逻辑实体,这个特点使它与其它工程对象有着明显的差异。人们可以把它记录在纸上、内存、和硬盘、光盘上,但却无法看到软件本身的形态,必须通过观察、分析、思考、判断,才能了

4、解它的功能、性能等特性。1.1.1计算机软件概念(2)软件的生产过程也非常特殊,同我们传统意义里的普通工厂里的加工不同的是,软件更像是一种纯粹的脑力劳动,同第一个特点一样它没有明显的物理加工过程。(3)由于软件产品其实是一种抽象的逻辑存在,所以在软件的运行和使用期间,没有硬件那样的机械磨损,设施老化问题。1.1.1计算机软件概念任何物理设备在运行和使用中,都有一个大致趋势相同的失效率曲线。即为如图1-1(a)所示的U型曲线(即浴盆曲线)。在这个曲线里边我们可以看出随着使用时间的增加设备的失效率主要是由磨损用坏造成的。而软件的情况与此不同,由

5、于其固有的特性,本身不存在磨损和老化问题,即便是他的载体出现U型曲线,软件本身仍然可以便利的移到另一台载体上边。然而同物理设备不同的是它存在退化问题,说着时间的增加,软件本身会出现落伍的现象,因此必须要对软件本身进行一次或多次修改(维护),如图1-1(b)所示。而这些修改又不可避免的引入错误,导致软件失效率升高,从而似的软件退化。当修改的成本变得难以接受时,软件就被抛弃。1.1.1计算机软件概念图1-1计算机软件失效率曲线1.1.1计算机软件概念(4)软件的开发和运行不是完全由软件本身的技术实现的,它常常还受到计算机系统的限制,对计算机系统

6、有着不同程度的依赖性。软件对硬件和环境有着不同程度的依赖性。这导致了软件移植的问题1.1.1计算机软件概念(5)软件本身是一件结构非常复杂的产品。软件的复杂性来自于两个方面:一是来自它所反映的实际问题的复杂性(即需要解决问题的复杂性)二是来自软件本身设计程序逻辑结构的复杂性1.1.1计算机软件概念(6)软件的成本问题。软件开发成本主要指软件开发过程中所花费的工作量及相应的代价。另外,软件也没有一个明显的制造过程,它的开发成本是以一次性开发过程所花费的代价来计算的。软件的研制工作需要投入大量的、复杂的、高强度的脑力劳动,它的成本是比较高的。1

7、.1.1计算机软件概念(7)软件开发出来时要给“人”使用的,所以软件不可避免地要具备人的社会属性。相当多的软件工作涉及到社会因素。许多软件的开发和运行涉及机构、体制及管理方式等问题,甚至涉及到人的观念和人们的心理。这些问题都将直接影响项目的成败。1.1.2软件的分类软件是计算机的灵魂,没有软件的计算机就如同没有磁带的录音机和没有录像带的录像机一样,与废铁没什么差别。它使计算机具有非凡的灵活性和通用性。也正是这一原因,决定了计算机的任何动作都离不开由人安排的指令。1.1.2软件的分类1.按软件的功能进行划分:一般把软件按功能分为两大类:应用软

8、件和系统软件。(1)应用软件(2)系统软件1.1.2软件的分类(1)应用软件应用软件是专门为某一应用目的而编制的软件,较常见的有以下几种:文字处理软件用于输入、存贮、修改、编辑、

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。