《基于新信息技术的软件工程与UML教程(第二版)》教学课件.pptx

《基于新信息技术的软件工程与UML教程(第二版)》教学课件.pptx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

高等学校应用型本科“十三五”规划教材;目

录;项目一软件工程基础;

任务一理解软件及软件工程;

其他定义:

(1)运行时,能够提供所要求功能和性能的指令或计算机程序集合。

(2)程序能够满意地处理信息的数据结构。

(3)描述程序功能需求以及程序如何操作和使用所要求的文档。

以开发语言作为描述语言,可以认为:软件?=?程序?+?数据?+?文档。

软件按照功能可以分为应用软件、系统软件和支撑软件(或工具软件),见表1-1。;

;

2.软件的特点

软件产品不同于其他硬件产品,有其自身的特点:

(1)软件是无形的,没有物理形态,只能通过运行状况来了解功能、特性和质量。

(2)软件渗透了大量的脑力劳动,人的逻辑思维、智能活动和技术水平是软件产品的关键。

(3)软件具有可复用性,软件开发出来很容易被复制,从而形成多个副本。

(4)软件不会像硬件一样老化磨损,但需进行缺陷维护和技术更新。

;

(5)软件的开发和运行必须依赖于特定的计算机系统环境,对于硬件有依赖性,为了减少依赖,开发中提出了软件的可移植性。;

二、软件危机

1.软件的发展历程

1)程序设计阶段

2)程序系统阶段

3)软件工程阶段

“软件工程”自产生以来,人们就寄希望于它去冲破“软件危机”这朵乌云。但是,软件危机现象并没有得到彻底排除,特别是,一些老的危机问题可能解决了,但接着又出现了许多新的危机问题,于是不得不去寻找一些更新的工程方法。应该说,正是危机问题的不断出现,推动着软件工程方法学的快速发展。;

2.软件危机(SoftwareCrisis)

1)软件危机的表现

软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象,例如软件的开发成本、进度、软件质量等。这些问题绝不仅仅是不能正常运行的软件才具有的,实际上,几乎所有软件都不同程度地存在这些问题。;

具体来说,软件危机??要有以下几方面的典型表现:

(1)软件开发成本、进度的估计很不准确。

(2)软件产品常常与用户的要求不一致。

(3)软件产品质量可靠性差。

(4)软件文档不完整、不一致。

(5)软件产品可维护性差。

(6)软件生产率低。;

2)产生软件危机的原因

通过对一系列危机现象的研究,人们总结发现,产生软件危机的原因主要体现在以下几个方面:

(1)软件的不可见特性。

(2)软件系统规模庞大。

(3)软件生产工程化管理程度低。

(4)对用户需求关心程度不够。

(5)对软件维护重视程度不够,软件开发缺乏统一的规范。

(6)软件开发工具自动化程度低。;

三、软件工程

1.软件工程的定义

软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。

1983年美国《IEEE软件工程标准术语》对软件工程下的定义为:软件工程是开发、运行、维护和修复软件的系统方法。其中对“软件”的定义为:计算机程序、方法、规则、相关的文档资料以及在计算机上运行时所必需的数据。;

软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来开发与维护软件的学科。研究软件工程的主要目的就是可在规定的时间、规定的开发费用内开发出满足用户需求的高质量的软件系统(高质量是指错误率低、好用、易用、可移植、易维护等)。;

2.软件工程的目标

软件工程的目标是指在给定成本、进度的前提下,开发出具有适用性、有效性、可修改性、可靠性、可理解性、可维护性、可重用性、可移植性、可追踪性、可互操作性和满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。

(1)适用性:软件在不同的系统约束条件下,使用户需求得到满足的难易程度。

(2)有效性:软件系统能最有效地利用计算机的时间和空间资源。;

(3)可修改性:允许对系统进行修改而不增加原系统的复杂性。

(4)可靠性:能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。

(5)可理解性:系统具有清晰的结构,能直接反映问题的所在。

(6)可维护性:软件交付使用后,能够对它进行修改,以改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化等。;

(7)可重用性:把概念或功能相对独立的一个或一组相关模块定义为一个软部件,可组装在系统的任何位置,降低工作量。

(8)可移植性:软件从某一环境搬到另一个环境的难易程

您可能关注的文档

文档评论(0)

行走的兰花 + 关注
实名认证
内容提供者

高级营养师持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年12月10日上传了高级营养师

1亿VIP精品文档

相关文档