欢迎来到天天文库
浏览记录
ID:43809129
大小:908.00 KB
页数:53页
时间:2019-10-14
《计算机文化基础 978-7-302-23234-6 第十四章 软件工程基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第十四章软件工程基础主要内容:14.1软件工程基本概念14.2软件开发过程14.3结构化分析方法14.4结构化设计方法(SD)14.5软件测试14.6程序的调试14.1软件工程基本概念■14.1.1软件工程的概念软件工程(SoftwareEngineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到
2、的最好的技术方法结合起来。简单地说,软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程包括三个要素,即方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。■14.1.2软件工程方法学1.基本概念软件工程包含技术和管理两方面的内容,是管理与技术的紧密结合。所谓管理就是通过计划、组织和控制等一系列活动,合理地配置和使用各种资源,以达到既定目标的过程。软件工程的目的就是要建造一个优良的软件系统,软件工程的理论和技术性研究的内容主要包括:(
3、1)软件开发技术,主要包括软件开发方法学、开发过程、开发工具、软件工程环境。(2)软件工程管理,主要包括软件管理学、软件工程经济学、软件心理学等内容。软件管理学包括人员组织、进度安排、质量保证、配置管理、项目计划等。通常把在软件生命周期全过程中使用的一整套技术的集合称为方法学(methodology),也称为范型(paradigm)。在软件工程范畴中,这两个词的含义基本相同。2.软件工程方法学软件工程方法学包括三个要素:方法、工具和过程。其中方法是完成软件开发的各项任务的技术方法;工具支持软件的开发、管理和文档生成;过程是支持软件开发的各个环节的控制
4、和管理,也可以解释为把输入转化为输出的一组彼此相关的资源和活动,包含四种基本活动:(1)P--软件规格说明:规定软件的功能及其运行环境。(2)D--软件开发:产生满足规格说明的软件。(3)C--软件确认:确认软件能够完成客户提出的要求。(4)A--软件改进:为满足客户的变更要求,软件必须可在使用的过程中改进3.面向对象方法四个要点(1)对象。把对象(0biect)作为融合了数据及在数据上的操作行为的统一的软件构件。面向对象程序是由对象组成的,程序中任何元素都是对象,复杂对象由比较简单的对象组合而成。(2)类。将属性、操作相似的对象归为类,也就是说,类
5、是具有共同属性、共同方法的对象的集合。所以,类是对象的抽象,它描述了属于该对象类型的所有对象的性质,而一个对象则是其对应类的一个实例。(3)继承性。按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。在类等级中,下层派生类自动拥有上层基类中定义的数据和操作,这种现象称为继承。(4)消息。对象彼此之间仅能通过发送消息互相联系。■14.2.1软件生命周期软件生命周期是软件产品从提出、实现、使用维护到停止使用退役的过程。目前划分软件生存周期阶段的方法有许多种,如软件规模、种类、开发方式、开发环境以及开发
6、时使用的方法论都影响软件生存周期阶段的划分。在划分软件生存周期的阶段时应该遵循的一条基本原则就是使各阶段的任务彼此间尽可能相对独立,同一阶段各项任务的性质尽可能相同,从而降低每个阶段任务的复杂程度,简化不同阶段之间的联系,有利于软件开发工程的组织管理。14.2软件开发过程软件生命周期分为软件定义、软件开发及软件运行维护三个阶段。1.软件定义阶段软件定义阶段的任务是确定软件开发工程必须完成的总目标;确定工程的可行性,导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并且制定工程进度表。这个时期的工作通常又称为系统分析
7、,由系统分析员负责完成。软件定义时期通常进一步划分成三个阶段,即问题定义、可行性研究和需求分析。2.软件开发阶段(1)软件设计:分为概要设计和详细设计两个部分。(2)软件实现:把软件设计转换成计算机可以接受的程序代码。(3)软件测试:在设计测试用例的基础上检验软件的各个组成部分。3.软件运行维护阶段关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。软件生命周期中所花费最多的阶段是软件运行维护阶段。■14.2.2软件开发工具与软件开发环境1.软件开发工具软件工具是一种软件,它是辅助和支持其他软件研制和维护的工具,为了提高软件生产效率和改进软件
8、的质量而设计。软件工具的范围从传统角度划分,包括操作系统、编译程序,解释程序和汇编程序等;从流行角度划分,主
此文档下载收益归作者所有