欢迎来到天天文库
浏览记录
ID:17745577
大小:61.00 KB
页数:4页
时间:2018-09-05
《第31讲程序设计与软件开发基础》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、第31讲程序设计与软件开发基础(五)教学目标及基本要求:掌握软件工程的基本概念,理解结构化分析方法和结构化设计方法,能利用这两种方法提供的常用工具解决实际问题。教学重点:软件工程的基本概念,数据流图,结构化分析方法使用的常用工具。教学难点:数据流图教学内容:1.软件工程的基本概念2.结构化分析方法教学时间:1学时主要内容:7.4软件工程基础7.4.1软件工程的基本概念1.软件的定义和特点(1)定义计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据和相关文档的集合。其中,程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。数
2、据是使程序正常操纵信息的数据结构。文档是与程序开发、维护和使用有关的图文资料。(2)特点(1)表现形式不同:软件是逻辑产品,具有很高的抽象性,缺乏可见性;硬件是物理部件,看得见、摸得着。(2)生产方式不同:软件的生产与硬件不同,它没有明显的制作过程,一旦研制成功可以大量复制。(3)维护不同:软件在运行、使用期间不存在磨损、老化问题。(4)要求不同:硬件产品允许有误差,而软件产品却不允许有误差。(5)成本不同:软件复杂性高,成本昂贵。另外软件开发还涉及诸多的社会因素。2.软件危机和软件工程(1)软件危机软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。实际上,几乎
3、所有的软件都不同程度地存在这些问题。具体地说,软件危机主要表现在以下几个方面。(1)软件需求的增长得不到满足。(2)软件开发成本和进度无法控制。(3)软件质量难以保证。(4)软件不可维护或维护程度非常低。(5)软件开发生产率的提高赶不上硬件的发展和应用需求的增长。(2)软件工程软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。它的主要思想是强调在软件开发过程中需要应用工程化原则。软件工程的核心思想是把软件产品看作是一个工程产品来处理。即把工程化的概念引入软件生产当中。代表的有结构化的方法和面向对象方法。软件工程包括3个要素,即方法、工具和过程。
4、方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。3.软件工程过程与软件生命周期(1)软件工程过程软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。它有两方面的内涵。其一,软件工程过程是指为获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。它通常包含4种基本活动。①P(Plan):软件规格说明。②D(Do):软件开发。③C(Check):软件确认。④A(Action):软件演进。其二,从软件开发的观点看,它是使用适当的资源为开发软件进行的一组开发活动。所以软件工程过程是将软件工程的方法和工具综合
5、起来,以达到合理、及时地进行计算机软件开发的目的。(2)软件生命周期通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动,这些活动可以有重复,执行时也可以有迭代。还可以将软件生命周期分为软件定义、软件开发和软件运行维护三大阶段。①可行性研究与计划制定:确定待开发软件系统的开发目标和总的要求。②需求分析:对待开发软件提出的需求进行分析并给出详细定义。编写软件规格说明书及初步的用户手册,提交评审。③软件设计:在理解软件需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程。编写概要
6、设计说明书、详细设计说明书和测试计划初稿,提交评审。④软件实现:把软件设计转换成计算机可以接受的程序代码。⑤软件测试:设计测试用例,编写测试分析报告。⑥运行和维护:将已交付的软件投入运行,并在运行、维护中不断地扩充和删改。4.软件工程的目标与原则软件工程的目标可概括为在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性和可互操作性并满足用户需要的产品。基于上述目标,软件工程理论和技术性研究的内容主要包括软件开发技术和软件工程管理技术。为了达到软件工程的目标,在软件开发过程中必须遵循软件工程的基本原则:抽象、信息隐蔽、模块化、局部化、
7、确定性、一致性、完备性和可验证性,这些原则适用于所有的软件项目。5.软件开发工具与软件开发环境软件开发工具是为支持软件人员开发和维护活动而使用的软件。它可以帮助开发人员完成一些烦琐的程序编制和调试问题,使软件开发人员将更多的精力和时间投入到最重要的软件需求和设计上,提高软件开发的速度和质量。软件开发环境是全面支持软件开发全过程的软件工具集合,这些软件工具按照一定的方法和模式组合起来,共同支持软件生命周期内各阶段和各项任务的完成。7.4.2结构化分析方法结构化方法的核心和基础是结构
此文档下载收益归作者所有