软件工程_1_软件工程概述.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程_1_软件工程概述

第1章 软件工程概述 1.1 计算机软件 1、计算机硬件与软件 计算机(Computer)由硬件(Hardware)和软件(Software)组成,软件是看得见、摸得着的电子机械设备,如机箱、主板、硬盘、光盘、U盘、电源、显示器、键盘、鼠标、打印机、电缆等。软件是依附在硬件上面的程序、数据和文档的集合,是指挥控制计算机系统(包括硬件系统和软件系统)工作的神经中枢。如果将硬件比作人的身体,那么软件就相当于人的神经中枢和知识才能。软件的分类比较复杂。分类方法不同,内容也不同,表1-1从5个不同角度对软件进行了分类。 表1-1 软件的分类 序号 分类方法 软件内容 1 按功能分类 系统软件(如操作系统) 支撑软件(如数据库管理系统、CASE工具系统) 应用软件(如信息系统) 2 按规模分类 小型、中型、大型 3 按工作方式分类 实时软件 分时软件 交互式软件 批处理软件 4 按服务对象分类 项目软件(为用户定制) 产品软件(面向特定的客户群开发) 5 按销售方式分类 订单软件(已签订合同) 非订单软件(未签订合同) ) 软件 = 程序 + 数据 + 文档 这里的“程序”,是对计算机任务的处理对象和处理过则的描述;这里的“文档”,是为了理解程序所需的详细描述性资料;这里的“数据”,主要是软件系统赖以运行的初始化数据。 上述定义看起来很简单,实际上却来之不易。表1-2列出了美国人对软件定义的认识过程。知道今天,仍然有少数人认为:“软件就等于程序”。这些人在软件开发工程中,上来就写程序,而不是写文档。软件工程大师Roger S Pressman对这些人提出了尖锐的批评:“越早开始写代码的人,就是越迟完成代码的人”。 表1-2 美国人对软件定义的认识过程 年代 对软件定义的认识 20世纪50年代 软件就等于程序,软件系统就是程序系统 20世纪60年代 软件等于程序+文档。这里的文档是指软件开发工程中的分析、设计、实现、测试、维护文档,不包括管理文档 20世纪70年代 软件等于程序+文档+数据。这里的数据不仅包括初始化数据、测试数据,还包括研发数据、运行数据、维护数据,也包括软件企业积累的项目工程数据和项目管理数据中的大量决策原始记录数据 至于对管理文档的全面认识,那就更晚了。知道1974年,美国人才开始认识到软件需要管理。1984年,美国人开始认识到软件管理是一个过程管理,或是一个管理过程。1991年,出现了软件过程能力成熟度模型CMM(Capability Maturity Model for Software)1.0版,人们研究了软件过程管理的具体内容与方法,并将软件开发和管理中产生的各种文档叫做“软件工作产品”,而将最后交付给用户使用软件工作产品叫做“软件产品”。1996年,出现了统一建模语言UML0.9版,称软件管理文档为“管理制品”,称软件开发文档为“技术制品”,两者合称为“制品(Artifact)”。 3、文档的重要性 文档在软件工程中特别重要,文档是否规范与齐全,是衡量软件企业是否成熟的重要性标志之一。软件文档分为开发文档和管理文档两大类。开发文档主要由项目组书写,用于指导软件开发与维护;管理文档主要由软件工程管理部门书写,用于指导软件管理和决策。两类文档的标准、规范和编制模板,全公司范围内要统一,这一工作由软件工程管理部门完成。开发文档是知道软件开发与维护的文档,开发与维护中所有的程序,都是按照开发文档的要求编写与实现的。软件工程规定:文档必须指导程序,而决不允许程序指挥文档;文档与程序必须保持高度一致,而决不允许程序脱离文档。 开发文档本身具有严格的层次关系和依赖关系,这种关系反映在如下的覆盖关系之中,即有: 《用户需求报告》覆盖《软件合同》/《软件任务书》。 《需求规格说明书》覆盖《用户需求报告》。 《概要设计说明书》覆盖《需求分析规格说明书》。 《详细说明书》覆盖《概要设计说明书》。 《源程序》覆盖《详细设计说明书》。 《目标程序》覆盖《源程序》。 管理文档本身具有严格的时序关系,这种时序关系反映在如下的软件工程中,而工程由一系列的时间序列所组成: 需求分析过程管理文档。 软件策划过程管理文档。 软件设计过程管理文档。 软件实现过程管理文档。 软件测试过程管理文档。 软件测试过程管理文档。 软件维护过程管理文档。 软件过程改进管理文档。 成熟的软件企业,都有一套自己的开发文档和管理文档编写标准所编写模板,在企业内部严格执行。 4、软件的最新定义 软件 = 知识 + 程序 + 数据 + 文档 定义中增加了“知识”。对这一定义的讨论正在进行。正方认为:因为软件是知识在网络上的体现,所以这个定义非常好。反方认为:程序、数据、文档本身就是知识的载体与表现,所以这个定义有些画蛇添足的意

文档评论(0)

juhui05 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档