软件定义,危机处理,软件工程等相关内容讲解
树图思维导图提供 软件与软件工程思维脑图 在线思维导图免费制作,点击“编辑”按钮,可对 软件与软件工程思维脑图 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:feca3edfaba2a8949d90064ad2872cfd
软件与软件工程思维导图模板大纲
软件的概念
人们通常把各种不同功能的程序,包括系统程序、应用程序、用户自己编写的程序等称为软件。
软件不仅包括程序,还包括程序的处理对象——数据,以及与程序开发、维护和使用有关的图文资料,即文档 。
软件的特点
1软件是一种逻辑实体,具有抽象性;
2无明显的制造过程;
3存在退化问题;
4对计算机系统有着不同程度的依赖性;
5尚未完全摆脱人工的开发方式;
6软件本身是复杂的;
7成本相当昂贵,风险比较大;
8相当多的软件工作涉及社会因素。
软件分类
基本功能的不同
系统软件
支撑软件
应用软件
根据软件服务对象的不同
通用软件
定制软件
按软件产品的规模的不同
小型软件
中型软件
大型软件
根据工作的方式的不同
实时软件
分时软件
交互式软件
批处理软件
出现原因
随着软件的规模越来越大,复杂度不断增加,软件需求量增大。而软件开发过程是一种高密集度的脑力劳动,软件开发的模式及技术不能适应软件发展的需要。致使大量质量低劣的软件涌向市场,有的花费大量人力财力,而在开发过程中就夭折了。
概念
在软件开发的过程中,会经常出现一些不能按时完成任务、产品质量得不到保证、工作效率低下和开发经费严重超支等现象。计算机软件的开发、维护和应用过程中普遍出现的这一些严重的问题便是软件危机。
原因
本质原因
人们对软件产品认识的不足以及对软件开发的内在规律理解的偏差是软件危机出现的本质原因。
开发工具选择和软件开发管理存在问题。
主要表现
1开发出来的软件产品不能满足用户的需求;
2相比越来越廉价的硬件,软件代价过高 ;
3软件质量难以保证,难以发挥硬件潜能;
4难以准确估计软件开发、维护的费用及周期;
5难于控制开发风险,开发速度赶不上市场变化;
6软件产品修改维护困难,集成遗留系统更困难
7软件文档不完备,文档内容与软件产品不相符 。
软件危机出现的原因
1忽视软件开发前期的需求分析;
2开发过程缺乏统一的、规范化的方法指导;
3文档资料不齐全或不准确;
4忽视与用户之间、开发组成员之间的交流 ;
5忽视代码测试的重要性 ;
6不重视维护或因各种原因造成维护工作的困难
7开发人员对开发背景认识不充分,缺乏经验;
8没有完善的质量保证体系支撑。
软件危机的启示
1软件产品是复杂的人造系统,具有复杂性、不可见性和易变性。
2个人或小组在开发小型软件时使用到的非常有效的编程技术和过程,在开发大型、复杂系统时难以发挥同样的作用。
3本质上讲,软件开发的创造性成分很大、发挥的余地也很大,它介于艺术与工程之间,很难发展到完全的工程。
4认为软件开发就是写程序并设法使之运行。程序只是完整的软件产品的一个组成部分。
5计算机和软件技术的快速发展,提高了用户对软件的期望,促进了软件产品的演化,为软件产品提出了新的、更多的需求,难以在可接受的开发进度内保证软件的质量。
6几乎所有的软件项目都是新的,而且是不断变化的。项目需求在开发过程中会发生变化,而且很多原来预想不到的问题会出现,对设计和实现手段进行适当的调整是不可避免的。
7“人月神化”现象——生产力与人数并不成正比。人月神话法则:向进度落后的项目中增加人手,只会使进度更加落后。
概念
IEEE对软件工程的定义为:将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件开发。
软件工程是以借鉴传统工程的原则、方法,以提高质量,降低成本为目的指导计算机软件开发和维护的工程学科。
指导计算机软件开发和维护的一门工程学科,涉及到软件生产的各个方面。即采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和最好的开发方法结合起来,以经济有效地开发出高质量的软件,并加以维护。
三要素
过程
需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
方法
是完成软件开发的各项任务的技术方法,回答“怎样做”的问题。
工具
是为运用方法而提供的自动的或半自动的软件工程支撑环境;如,CASE。
软件工程研究的内容
软件开发与技术:软件开发的各种方法及工作模型。如:需求分析、总体设计、如何建立良好的软件结构、数据结构和算法设计等。
软件工具与环境:为软件工程方法提供支持,如辅助软件设计等。
软件工程管理技术:对软件工程全过程的控制和管理,如:开发计划、成本估算、项目管理、软件质量评估等。
软件工程标准与规范:保证软件生产效率和提高质量的标准和规范,如:国际标准、行业标准、企业规范、项目规范等。
软件工程要达到的基本目标
达到要求的软件功能
取得较好的软件性能
开发出高质量的软件
付出较低的开发成本
需要较低的维护费用
能按时完成开发工作
软件工程的7条基本原则
用分阶段的生命周期计划严格管理
坚持进行阶段评审
实行严格的产品控制
采用现代程序设计技术
软件工程结果应能被清楚地审查
开发小组的人员应该少而精
承认不断改进软件工程实践的必要性
概念
采用定义好的技术集与符号来表示和组织软件生产的过程,它的目标是在规定的时间和成本内,开发出符合用户需求的高质量软件。
六大方法
结构化方法
面向数据结构方法
面向对象方法
形式化方法
问题分析法
可视化开发方法
好处
软件工程的工具对软件工程中的过程和方法提供自动的或半自动的支持。
可以帮助软件开发人员方便、简捷、高效地进行软件的分析、设计、开发、测试、维护和管理等工作。
有效地利用工具软件可以提高软件开发的质量,减少成本,缩短工期,方便软件项目的管理。
软件工程工具通常有3种分类标准:
按照功能划分:功能是对软件进行分类的最常用的标准,按照功能划分,软件工程工具可分为可视化建模工具、程序开发工具、自动化测试工具、文档编辑工具、配置管理工具、项目管理工具等。
按照支持的过程划分:根据支持的过程,软件工程工具可分为设计工具、编程工具、维护工具等。
按照支持的范围划分:根据支持的范围,软件工程工具可以分为窄支持、较宽支持和一般支持工具。窄支持工具支持软件工程过程中的特定任务,一般将其称之为工具;较宽支持支持特定的过程阶段,一般由多个工具集合而成,称之为工作台;一般支持支持覆盖软件过程的全部或大部分阶段,包含多个不同的工作台,称之为环境。
树图思维导图提供 9.战斗的基督教 在线思维导图免费制作,点击“编辑”按钮,可对 9.战斗的基督教 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:33d168acd0cd9f767f809c7a5df86e3a
树图思维导图提供 第六章 群体传播与组织传播_副本 在线思维导图免费制作,点击“编辑”按钮,可对 第六章 群体传播与组织传播_副本 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:1672f555831e7d9a3bb2cf2fb792cb49