欢迎来到天天文库
浏览记录
ID:26435149
大小:55.00 KB
页数:4页
时间:2018-11-27
《2013年计算机二级公共基础知识学习教程:软件工程基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2013年计算机二级公共基础知识学习教程:软件工程基础 一、学习目标与要求 1.了解软件工程的基本概念; 2.了解软件工程过程与软件的生命周期,以及软件工程的目标和原则; 3.了解利用结构化分析法进行软件工程中的需求分析的方法,并了解需求分析的方法和需要完成的任务; 4.了解数据流图的使用方法; 5.了解如何利用结构化设计方法进行软件设计,并了解软件设计的一些常用用工具; 6.了解软件测试的目的和方法,以及软件测试的准则,了解常用的软件测试方法的区别和各自的功能与特点; 7.了解程序调试的方法和原则。
2、 二、内容要点 (一)软件工程基本概念 1.软件定义与软件特点 1)软件的定义 与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。 2)软件的特点 (1)软件是一种逻辑实体,而不是物理实体,具有抽象性; (2)软件的生产与硬件不同,它没有明显的制作过程; (3)软件在运行、使用期间不存在磨损、老化问题;但为了适应硬件、环境以及需求的变化要进行修改,会导致一些错误的引入,导致软件失效率升高,从而使得软件退化; (4)软件的开发、运行对计算机系统具有依赖性,受到计算机系统的限
3、制,这导致了软件移植的问题; (5)软件复杂性高,成本昂贵。软件开发需要投入大量、高强度的脑力劳动,成本高,风险大; (6)软件开发涉及诸多的社会因素。许多软件的开发和运行涉及软件用户的机构设置,体制问题以及管理方式等,甚至涉及到人们的观念和心理,软件知识产权及法律等问题。 3)软件的分类 按功能分,可分为: 应用软件:为解决特定领域的应用而开发的软件 系统软件:是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件 支撑软件(或工具软件):介于系统软件和应用软件之间,协助用户开发软件
4、的工具性软件,包括辅助和支持开发和维护应用软件的工具软件本文章是来自 2.软件危机与软件工程 1)软件危机 泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。它主要表现在: (1)软件需求的增长得不到满足,用户对系统不满意的情况经常发生; (2)软件开发成本和进度无法控制。开发的成本超预算和开发周期的超期经常出现; (3)软件质量难以保证; (4)软件不可维护或维护程度非常低; (5)软件成本不断提高; (6)软件开发生产率的提高赶不上硬件的发展和应用需求的增长。 2)软件工程 软件工程
5、的定义:是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。 软件工程包括3个要素:方法、工具和过程。 方法:完成软件工程项目的技术手段; 工具:支持软件的开发、管理、文档生成; 过程:支持软件开发的各个环节的控制、管理。 3.软件工程过程与软件生命周期 1)软件工程过程 软件工程过程把输入转化为输出的一组彼此相关的资源和活动。支持软件工程过程的两方面内涵: (1)软件工程过程是指为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。它包括4种基本活动: P
6、—软件规格说明。规定软件的功能及其运行时的限制; D—软件开发。产生满足规格说明的软件; C—软件确认。确认软件能够满足客户提出的要求; A—软件演进过程。为满足客户的变更要求,软件必须在使用的过程中演进。 (2)使用适当的资源(包括人员、硬软件工具、时间等),为开发软件进行的一组开发活动,在过程结束时将输入(用户要求)转化为输出(软件产品)。 软件工程过程是将软件工程的方法和工具综合起来,以达到合理、及时地进行计算机软件开发的目的。 2)软件生命周期 将软件产品从提出、实现、使用维护到停止使用退役的过
7、程称为软件生命周期。即软件的生命周期就是软件产品从开始考虑其概念开始,到软件产品不能使用为止的整个时期都属于软件生命周期。一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动。这些活动可以有重复,执行时也可以有迭代。 生命周期的主要阶段: 软件定义本文章是来自 软件开发 软件维护 软件生命周期的主要活动阶段是: (1)可行性研究与计划制定:确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实话计划; (2)需要分析。对待开发软
8、件提出的需求进行分析并给出详细的定义; (3)软件设计。系统设计人员和程序设计人员给出软件的结构、模块的划分、功能的分配以及处理流程; (4)软件实现。把软件设计转换成计算机可以接受的程序代码。即完成源程序的编码,编写用户手册、操作手册等面向用户的文档,编写单元测试计划; (5)软件测试。在设计测试用例的基础上,检验软件的各个组成部分,编
此文档下载收益归作者所有