欢迎来到天天文库
浏览记录
ID:33510252
大小:329.01 KB
页数:12页
时间:2019-02-26
《3软件工程基础(最终版)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三部分软件工程基础1软件的概念与特征(1)软件的定义(a)软件=程序和数据+文档程序:指令序列数据:使程序能正常操纵信息的数据结构。文档:与程序开发、维护和使用有关的图文资料。(b)软件是一种逻辑产品。(2)软件的分类软件按功能可以分为应用软件、系统软件和支撑软件三种。(a)应用软件为解决特定领域的应用而开发的软件,例如:事务处理软件、人工智能软件、会计软件。(b)系统软件为管理计算机本身而开发的软件,例如:操作系统、编译程序、汇编程序、网络软件、数据库软件。(c)支撑软件为开发软件和维护软件的软件。计划进度管理软件、过
2、程控制工具软件、质量管理给配置管理工具软件等(软件工程有关)2软件危机与软件工程(1)问题的提出20世纪60年代末以后出现了软件危机。软件危机主要表现在成本+质量+生产率等三个方面。其主要原因是软件开发和维护方法不正确。(2)问题的解决为了解决这种软件危机,出现了软件工程的概念。(3)软件工程的定义软件工程就是试图用工程、科学和数学的原理与方法研制、维护计算机软件的有关技术及管理方法。(4)软件工程的三个要素方法+工具+过程(a)方法是完成软件工程项目的技术手段;(b)工具支持软件的开发、管理、文档生成;(c)过程Http
3、://www.ccidedu.com支持软件开发的各个环节的控制和管理。(5)软件工程的核心思想是把软件产品看作是一个工程产品来处理(强调在软件开发过程中需要应用工程化原则)。3软件工程过程与软件生命周期(1)软件工程过程的定义是把输入转化为输出的一组彼此相关的资源和活动。(2)软件过程的组成部分由四个基本活动组成:plan(软件规格说明)do(软件开发)check(软件确认)action(软件演进)(3)软件的生命周期的定义可行性分析与计划指定+需求分析+软件设计+软件实现+软件测试+运行和维护。4软件工程的目标与原则(
4、1)软件工程的目标在给定的成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。(2)软件工程的研究内容技术(软件开发)+管理(软件工程)软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境,其主体内容是软件开发方法学。软件工程管理包括:软件管理学、软件工程经济学、软件心理学等内容。(3)软件工程的原则(八个)抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。抽象:抽取事务最基本的特征和行为,忽略非本质细节。信
5、息隐蔽:采用封装技术,将程序模块的实现细节隐藏起来,使模块接口尽量简单。局部化:保证模块之间具有松散耦合关系,模块内部具有较高的内聚性。确定性:软件开发过程中所有概念的表达应该是明确的,无歧义且规范的。一致性:包括程序、数据和文档的整个软件系统的各模块应使用已知的概念、符号和术语;程序内外接口应保持一致,系统规格说明与系统行为应保持一致。完备性:软件系统不丢失任何重要成分,完全事项系统所需的功能。可验证性:开发大型软件系统需要对系统自顶向下,逐层分解。系统分解应遵循容易检查、测评、评审的原则,以确保系统的正确性。Http:
6、//www.ccidedu.com5软件开发的工具与软件开发环境的区别(1)软件开发工具的发展纯程序设计语言->单项工具支持->集成工具的支持(2)软件开发环境的定义是指全面支持软件开发全过程的软件工具集合。(3)计算机辅助软件工程(CASE,ComputerAidedSoftwareEngineering)是当前软件开发环境中富有特色的研究工作和发展方向。Case就是成功的软件开发环境的典型例子之一。6结构化分析方法(1)软件开发方法的组成部分分析法、设计法和程序设计方法(2)结构化方法的核心和基础结构化程序设计理论7需
7、求分析软件需求分析是指分析用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。(1)需求分析阶段主要工作需求获取->需求分析->编写需求规格说明书->需求审评(2)需求分析方法的类型(一种划分)(a)结构化分析方法面向数据流的结构化分析方法(SA,structuredanalysis)面向数据结构的Jackson方法(JSD,Jacksonsystemdevelopmentmethod)面向数据结构的结构化数据系统开发方法(DSSD,datastructuredsystemdevelopmentmethod)(b)
8、面向对象的分析方法(OOA,objectorientedmethod)(3)需求分析的类型(另一种划分)从需求分析建立的模型的特性来分,需求分析方法又可以分为:静态分析和动态分析两种。Http://www.ccidedu.com8结构化分析方法结构化分析方法是指结构化程序设计理论在软件需求分析阶段的应用
此文档下载收益归作者所有