软件工程—理论、方法和实践 第一章:概述

今天,软件遍布这个世界,对这个社会的经济和文化产生了深远的影响。如何以经济有效的方法开发高质量的软件是人们长期以来一直努力研究的问题。而软件工程就是为了解决开发成本效益和软件质量的问题产生的。

一.软件:

  1. 软件的特性

(1)       软件是复杂的。(2)软件是不可见的。(3)软件是不断变化的。没有任何变化的软件一定是没有用的。

  1. 软件的发展

(1)       第一阶段:20世纪50-60年代,计算机主要应用是快速计算出现了Algol,Fortune等编程语言为标志的算法技术。

(2)       第二阶段:20世纪70年代,出现了pascal,cobol等编程语言和关系数据库管理系统为标志的结构化软件技术。

(3)       第三阶段:20世纪80年代,软件工程开发环境case及其相应的集成工具大量涌现,出现了著名的软件工作量估计COCOMO模型、软件过程改进模型CMM等。后期,以Smalltalk、C++等为代表的面相对象与技术重新崛起。

(4)       第四阶段:20世纪90年代至今,internet技术的迅速发展使软件系统从封闭走向开放。

  1. 软件危机

(1)       软件开发的成本和进度难以准确估计,延迟交付甚至取消项目的现象屡见不鲜。

(2)       软件存在着错误多,性能低,不可靠,不安全等质量问题。

(3)       软件成本在计算机系统的整个成本中所占比例越来越大。

(4)       软件维护极其困难,而且很难适应不断变化的客户需求和使用环境。

二.软件工程

定义:①将系统性的 ,规范性的,可定量的方法应用于软件的开发、运行和维护,即将工程化应用到软件上;②对①中所述方法的研究。

软件工程包括两个主要内容:1.软件工程是工程概念在软件领域里的一个特定应用。2.软件工程涉及软件产品的所有环节。

  1. 软件工程的三要素:过程、方法和工具
  2. 软件质量的最基本特征:可靠性,正确性,有效性。
  3. 软件工程的方法:①传统的软件开发方法:主要以功能分析和数据分析为基础的结构化方法。②面向对象方法。
  4. 计算机辅助软件工程CASE:CASE系统可分为工具、工作台和环境3个层次。
  5. 当前面临的主要挑战:遗留的系统问题;高可信软件开发的要求;软件开发方式的变化。

三.软件工程知识体系(SWEBO)

组成

软件需要;软件设计;软件构造;软件测试;软件维护;软件配置管理;软件工程管理;软件工程过程;软件工程工具与方法;软件质量。

四.软件工程职业道德规范

①IEEE/ACM职业道德规范

②软件工程人员的职业道德建设

  1. 遵纪守法是软件工程人员应具备的基本素质。
  2. 服务客户、造福社会是软件工程人员必须牢固树立的观念。
  3. 诚实信用是软件工程人员职业道德的核心所在。
时间: 2025-01-01 04:46:09

软件工程—理论、方法和实践 第一章:概述的相关文章

软件工程理论方法与实践第一章读后感

软件是计算机程序,规程以及运行计算机系统可能需要的相关文档和数据,根据软件服务UI想的范围不同,一般可以将软件划分为通用软件和定制软件两种类型.软件的特性主要有,软件是复杂的,不可见的,不断变化的,大多数软件是定制的而不是通过已有的构建组装而成的,然而在软件开发过程中软件开发的成本和进度难以准确估计,延迟交付甚至取消项目的现象屡见不鲜,软件存在这错误多性能低不可靠不安全等质量问题,软件成本在计算机系统的整个成本中所占比例越来越大,且维护困难等等,而软件工程中则是将工程化应用到软件上,由过程方法和

软件工程——理论方法与实践(段落概述第一章至第十一章)

第一章软件软件是计算机程序,规程及运行计算机系统可能需要的文档和数据.软件分为通用软件和定制软件.软件的特性:1.复杂性2.不可见性3.不断变化4.大多数软件仍然是定制的,而不是通过已有的构件组装而成.软件于二十世纪50~60年代,70年代,80年代,90年代至今进行发展.在此过程中遇到一些危机:1.软件的开发成本和进度难以估计,延迟交付甚至取消项目的现象屡见不鲜.2.软件存在着错误多,性能低,不可靠,不安全等质量问题.3.软件的成本在计算机系统的整个成本中所占的比例越来越大.4.软件的维护极其

软件工程理论方法与实践第二章读后感

第二章读后感 为解决软件开发的问题,首先是将整个软件开发任务看做是一个可比较的刻度量的可改造,而软件过程是软件工程人员为了获得软件产品而在软件工具的支持下实施的一系列软件工程活动,主要包括问题提出,软件需求规格说明,软件设计等等.软件过程模型主要分为瀑布模型,快速原型模型,增量模型,螺旋模型,形式化方法模型,基于组件的开发模型.而微软公司的软件过程模型由规划,设计,开发,稳定和发布五个主要阶段组成,采取低近视的软件开发策略,具体表现在解决问题的及时行.不确定和变更因素的可控性,缩短按产品的上市周

软件工程理论方法与实践第九章读后感

第九章主要讲了代码的规范性,首先要有适当的空行,注意分行对齐与缩进,命名规则:标识符的命名应当直观,可以望文知义,最好采用英文单词或其组合,标识符的长度应当符合最小长度下的最大信息原则, 过长的英文单词应该采用一些通用而合理的缩写或者应用领域专业术语的缩写等等,声明,尽量在变量生命是进行初始化,只有当变量的处置依赖于某些计算得到的值时可以不对其进行初始化等等.对于软件程序编码程序注释问题要注意注释的目的是有助于对程序的阅读理解,不宜太多也不能太少,注释语言必须准确易懂简洁避免使用缩写,内存异常可

阅读《软件工程—理论方法与实践》第一章心得体会

通过对第一章的阅读,软件的划分有了了解,知道了软件是复杂的.不可见的.不断变化的,并且大多数软件是定制的,并不是通过已有构件组装而成的.软件维护是非常困难的,新的修改又会带来新的错误.软件存在多种质量问题,且能成功完成的软件项目的平均率在26%左右.软件工程已关注软件质量为目标,有过程.方法和工具三要素组成.对于软件的质量,对不同的用户角色是不一样的,但他们都有共同的质量要求是可靠性.正确性和有效性.软件工程知识体系被划分10个知识域:软件需求.软件设计.软件构造.软件测试.软件配置管理.软件工

软件工程理论方法与实践

第一章. 概述  软件是人类思维的杰作,并成为人类现代生活的催化剂.今天软件遍布整个世界,在生物工程.现代通信.宇宙探索.商务处理.工业控制等方面发挥出巨大的威力,并推动了商业.科学和工程领域的跨越式发展,对整个社会的经济和文化产生了深远的影响.软件工程师为了解决开发成本效益和软件质量的问题而产生的.软件是计算机程序.规程以及运行计算机系统可能需要的相关文档和数据.软件分为通用软件和定制软件.软件的特性分别是软件是复杂的.软件是不可见的.软件是不断变化的.大多数软件是定制的而不是通过已有构件组装

阅读《软件工程—理论方法与实践》第五章心得体会

阅读第五章所了解到的基本知识,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动.主要目的是保证软件的正确性.已建立的形式化方法可分为操作类和描述类.操作类方法基于状态和转移;描述类基于数学公理和概念.形式证明与验证技术主要包括模型检测(适用于有穷状态系统,完全自动化并且验证速度快)和定理证明(采用逻辑公式来表示系统规约及其性质,分为自动和交互式两种).一阶线性时态逻辑是一阶谓词逻辑的扩展.对汉诺塔操作规划问题有了更深一步的理解.计算树逻辑是

阅读《软件工程—理论方法与实践》第三章心得体会

通过对第三章的阅读,对以下概念有了了解:软件项目管理是为了使软件项目能够按照预定的成本.进度.质量顺利完成,而对成本.人员.进度.质量.风险等进行分析和管理的活动.其有利于将软件开发人员的个人开发能力转化成企业的开发能力,并使企业的软件开发能力不断提高和成熟.软件项目的特征有软件产品的不可见性.项目的高度不确定性.软件过程的多变化性,降低复杂性和控制变化成为软件项目管理面临的关键问题.软件项目管理集中于人员.产品.过程和项目.软件项目的生命周期包括项目启动(确定项目的目标和范围).项目规划(建立

阅读《软件工程—理论方法与实践》第二章心得体会

软件过程是软件工程人员为了获取软件产品而在软件工具的支持下实施的一系列软件工程活动.其基本活动包括:问题提出.软件需求规格说明.软件设计.软件实现.软件确认.软件演化.软件过程产品涉及软件需求.软件设计.软件实现.软件测试和软件实施等活动产生的结果,这些制品通常是在不同的开发活动之间进行转移和演进.常用软件过程模型:瀑布模型(适用于开发的早期阶段软件需求被完整确定的情况).快速原型模型(必须迅速建立原型,随之迅速修改原型,以反映客户的需求).増量模型(可以较好地适应需求的变化).螺旋模型(强调可