文档介绍:全国二级c语言考试考试公共基础知识第3章软件工程基础【考点精讲】,包括程序、数据和相关文档的完整集合。程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令序列。数据是使程序能正常操纵信息的数据结构。文档是与程序的开发、维护和使用有关的图文资料。可见,软件由两部分组成:(1)机器可执行的程序和数据;(2)机器不可执行的,与软件开发、运行、维护、使用等有关的文档。根据应用目标的不同,软件可分应用软件、系统软件和支撑软件(或工具软件)。名称应用软件为解决特定领域的应用而开发的软件描述系统软件计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件支撑软件(或工具软件) 支撑软件是介于两者之间,,提出了软件工程的概念。软件工程学是研究软件开发和维护的普遍原理与技术的一门工程学科。所谓软件工程是指,采用工程的概念、原理、技术和方法指导软件的开发与维护。软件工程学的主要研究对象包括软件开发与维护的技术、方法、工具和管理等方面。软件工程包括3个要素:方法、工具和过程。名称方法方法是完成软件工程项目的技术手段描述工具过程【考点精讲】工具支持软件的开发、管理、文档生成过程支持软件开发的各个环节的控制、管理考点2软件生命周期软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。一般包括可行性分析研究与需求分析、设计、实现、测试、交付使用以及维护等活动,如图3-1所示。1软件生命周期分为3个时期共8个阶段,(1)软件定义期:包括问题定义、可行性研究和需求分析3个阶段;(2)软件开发期:包括概要设计、详细设计、实现和测试4个阶段;(3)运行维护期:即运行维护阶段。软件生命周期各个阶段的活动可以有重复,执行时也可以有迭代,如图3-1所示。-1中的软件生命周期各阶段的主要任务是:任务 描述问题定义 确定要求解决的问题是什么图3-1软件生命周期可行性研究与计划制定需求分析软件设计软件实现软件测试运行维护【考点精讲】决定该问题是否存在一个可行的解决办法,指定完成开发任务的实施计划对待开发软件提出需求进行分析并给出详细定义。编写软件规格说明书及初步的用户手册,提交评审通常又分为概要设计和详细设计两个阶段,给出软件的结构、模块的划分、功能的分配以及处理流程。这阶段提交评审的文档有概要设计说明书、详细设计说明书和测试计划初稿在软件设计的基础上编写程序。这阶段完成的文档有用户手册、操作手册等面向用户的文档,以及为下一步作准备而编写的单元测试计划在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告将已交付的软件投入运行,同时不断的维护,进行必要而且可行的扩充和删改考点3软件设计基本概念从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。(1)结构设计定义软件系统各主要部件之间的关系;(2)数据设计将分析时创建的模型转化为数据结构的定义;(3)接口设计是描述软件内部、软件和协作系统之间以及软件与人之间如何通信;(4)过程设计则是把系统结构部件转换为软件的过程性描述。从工程管理角度来看,软