软件工程 Software Engineering

Slides:



Advertisements
Similar presentations
演講人:黃曉雯. 2 CMMI 介紹 CMMI 模式 CMMI 通過評鑑組織單位 CMMI 架構 CMMI 導入益處 CMMI 應用 3.
Advertisements

软件过程、管理和质量 李 宣 东 南京大学计算机科学与技术系.
极目古今话短长 ——中国侠的历史文化文化诠释 汪聚应
员 工 礼 仪.
微软项目管理 案例分析.
軟體工程 -物件導向程式設計與UML系統分析實作
第一讲 软件与软件开发.
第10章 系統運行與支援.
拓 展 培 训 师 基础教程.
软件工程实践 软件学院 高海昌 作业提交 课件下载
云计算应用对比分析 李洁睿 周良俊 2017/3/8.
软件质量保证与测试 第2讲 软件测试的基本概念和方法
第一章 绪论 ——HR开发与管理的战略性角色 杨生斌
臺北區精神醫療網核心醫院 臺北市立聯合醫院松德院區 姜丹榴技正
第一章 系統開發概論 1-1 系統開發概論 1-2 常見的資訊系統 1-3 系統開發生命週期 1-4 系統開發方法論簡介.
第7讲 软件需求管理 软件项目管理课程 之 毛新军
中兴通讯的下一代网络管理解决方案 中兴通讯 中兴通讯的下一代网络管理解决方案 中兴通讯
软件体系结构 主讲老师:刘玮
以開放原始碼建立一個具錯別字修正能力之 網路新興辭彙資訊處理系統
史料數位化之METADATA與AUTHORITY CONTROL / 陳雪華
第二章 UML簡介 課前指引 本章介紹什麼是UML以及利用圖形來塑模資訊系統的好處在哪裡。文中也介紹了何謂「4+1的觀點」、以及簡述各項UML圖形的使用目的。並且,我們從靜態以及動態這兩個觀點來分類、介紹各圖形的使用時機。
欢迎各位 Nice to Meet U.
第 8 章 IT软件项目配置管理 (2次、4课时).
管理系统工程案例 Management systems engineering cases
软件质量保证与测试 第4讲 软件测试依据和规范
软件过程管理 Ch.9 软件过程的评估和改进.
單元19 韓信傳(一) 漢書選讀 授課教授:宋淑萍教授 【本著作除另有註明外,採用創用CC「姓名標示
管理系统工程案例 Management systems engineering cases
普通高等教育“十一五”国家级规划教材 信息系统分析与设计 刘腾红 孙细明 主编 科 学 出 版 社.
第一章 軟體工程 (Software Engineering Introduction)
十四岁,我读《红楼梦》 揽月小队 出品.
上 海 漫 索 计 算 机 科 技 有 限 公 司 软件外包与采购管理 —— 从社会分工合作、资源共享中获益 林 锐 博士
2007中国软件开发者大型网络有奖调查 CSDN & 《程序员》杂志
年中国软件技术 应用现状和趋势分析 IT168 调研中心调研总监 卢军 2007年1月20日.
软件工程 主讲:饶国政 天 津 大 学.
管理系统工程案例 Management systems engineering cases
Eclipse平台培训 支撑技术部MMI组.
国家“十一五”规划教材 数据库原理与应用教程(第3版).
国家“十一五”规划教材 数据库原理与应用教程(第3版).
第一章 軟體工程概論.
JiRA 淘宝 2008年5月.
分布式对象标准介绍 企业要构建多层分布式系统,必须遵循分布式标准,基于什么样的标准将直接影响到企业应用系统的开放性和可扩展性。目前业界分布式对象技术主要有三种架构标准: Microsoft的COM/DCOM/COM+ OMG组织的 CORBA。 Sun Microsystems的Enterprise.
第二章 資訊管理的應用系統.
作業系統 補充: 雲端運算.
文思海辉全员质量培训 - 质量管理体系培训 Sep.2014
運籌管理 Chapter 12 資訊科技與運籌管理電子化 祝天雄 博士 99年12月 日.
第十三章 資訊管理的系統開發觀點.
文字简化的方法 有时只需简化.
第5章 方案工程(Solutions Engineering)
「資訊安全國家標準草案之研擬」計畫 之 軟體處理評估分項計畫 主講者:吳林全 先生
计算机网络管理技术 主讲:刘方明 副教授 华中科技大学计算机学院
設計網際網路技術為基礎的跨機構資訊交換平台 --以RoHS為例
作業系統 (Operating System)
運用能力成熟度模型改善企業網站開發之績效 ─以某中小企業為例
Connecting Education and Career through Learning
Chap 4 軟體品質保證.
本課程指定教材為:朱熹,《周易本義》,大安出版社。本講義僅引用部分內容,請讀者自行準備。
第1章 SQL Server 2005概述 教学提示:SQL Server 2005是微软的下一代数据管理和分析解决方案,它给企业级应用数据和分析程序带来更好的安全性、稳定性和可靠性,使得它们更易于创建、部署和管理,从而可以在很大程度上帮助企业根据数据做出更快、更好的决策,提高开发团队的生产力和灵活度,以及在减少总体IT预算的同时,能够扩展IT基础架构以更好地满足多种需求。
第二章 資訊系統開發模式.
課程報告 使用開放原始碼工具實作軟體產品線方法
软件项目的配置管理 2019/5/1.
第13章 软件项目管理 Software Project Management
主讲人:黄鹤 副教授 Office:9-416 劳动关系与劳动政策 主讲人:黄鹤 副教授 Office:9-416.
Introduction to Service Science 课程概述
專案管理成熟度對專案經理人與 專案成功關係之研究
2 第二章 软件项目管理.
本課程指定教材為:朱熹,《周易本義》,大安出版社。本講義僅引用部分內容,請讀者自行準備。
本課程指定教材為:朱熹,《周易本義》,大安出版社。本講義僅引用部分內容,請讀者自行準備。
年中国软件技术 应用现状和趋势分析.
软件体系结构(SA) Software Architecture
Presentation transcript:

软件工程 Software Engineering 讲师:任世卿 沈阳理工大学信息学院 2007-2008第1学期

基本情况 总学时:64 讲课:56 上机:8 学分:8

基本情况 成绩评定: 期末考试(闭卷) :70% 上机 :10% 平时(出勤、作业、期中考试):20%

基本情况 参考书目: 1 《软件工程实用教程》,郭宁,人民邮电出版社 2 《软件工程导论》,张海藩,清华大学出版社 3 《软件工程原理、方法及应用》,史济民,高等教育出版社 4 《实用软件工程》,郑人杰,清华大学出版社

基本情况 要求:遵守纪律 1 课堂上禁止私自讲话,打接手机; 2 避免旷课、迟到、不交作业等行为。

第1章 软件工程引论 第1章 软件工程引论 1.1 软件及软件危机 1.2 软件工程 1.3 软件工程的基本原则

第1章 软件工程引论 1.1 软件及软件危机 1.1.1 软件 一个完整的计算机系统包括硬件和软件两部分。

第1章 软件工程引论 硬件 冯·诺依曼结构 计算机的基本组成

第1章 软件工程引论 硬件 微型计算机

第1章 软件工程引论 硬件

第1章 软件工程引论 硬件 总线 CPU 存储器 I/O设备 I/O设备 微型计算机的典型组织

第1章 软件工程引论 软件 系统软件 操作系统 语言处理系统 服务程序 应用软件

第1章 软件工程引论 关系 互为补充,不可或缺 应用软件层 其它系统软件层 OS 裸机 硬件---物质基础 第1章 软件工程引论 关系 互为补充,不可或缺 应用软件层 其它系统软件层 OS 裸机 硬件---物质基础 软件---硬件功能的扩充与完善:虚拟机

第1章 软件工程引论 1 定义:软件是与计算机系统操作有关的程序、规程、规则及其文档和数据的统称。 程序和有关的数据 文档

第1章 软件工程引论 2 特性: (1)软件固有的特性 复杂性 抽象性 依赖性 软件使用特性

第1章 软件工程引论 图 硬件/软件产品失效率曲线

第1章 软件工程引论 (2)软件生产特性 开发特性: 技术复杂性 管理复杂性

第1章 软件工程引论 图 软件技术的发展落后于需求

第1章 软件工程引论 产品形式的特性: 设计成本高 生产成本极低

第1章 软件工程引论 MicroSoft 从人力资源看,Vista及Office 2007两个团队开发设计成员总共9000余人。在开发资金方面,微软目前已为Vista投入90亿美元,包括Vista未来的配套及合作伙伴的投入,预计在180亿美元以上,如果加上新版Office的成本,投入资金在240亿~270亿美元之间。 微软的合作伙伴连邦软件公布了Vista各个版本的售价,其中Vista中文家庭普通版报价2060元,最低1530元也可买到。Office的新版本价格与之相仿。

第1章 软件工程引论 维护特性: 纠错性维护 完善性维护 适应性维护

第1章 软件工程引论 1.1.2 软件危机 1 突出表现: (1)生产率低 (2)产品常常与用户要求不一致 (3)复杂度增加 (4)不可维护性突出 (5)软件文档不完整、不一致

第1章 软件工程引论 《The Standish Group. Chaos. 1995.》一文报告了20世纪90年代中期美国商用软件产业的情况:1995年美国公司取消了810亿美元的软件项目;在所考察的软件项目中,在完成前就取消了其中的31%;53%的软件项目进度拖延,通常拖延的时间超过预定工期50%以上;只有9%的大型软件项目能够及时交付且费用不超支(对中型和小型软件公司来说这一数据为16%)。

2 产生原因: (1)软件独有的特点给开发和维护带来困难 (2)软件人员的错误认识 (3)软件开发工具自动化程度低 第1章 软件工程引论 2 产生原因: (1)软件独有的特点给开发和维护带来困难 (2)软件人员的错误认识 (3)软件开发工具自动化程度低 在1960~1980年期间,计算机硬件的生产由于采用计算机辅助设计、自动生产线等先进工具,使硬件生产率提高了100万倍,而软件生产率只提高了2倍,相差十分悬殊。

第1章 软件工程引论 3 解决方法: 利用工程的方法和管理手段

第1章 软件工程引论 作业: 1.分析我国软件产业发展的现状、存在的问题及可能对策。

1.2 软件工程 1.2.1 软件工程的形成和发展 自1968年NATO会议上提出软件工程这一概念以来,软件工程的发展经历了以下3个阶段。 第1章 软件工程引论 1.2 软件工程 1.2.1 软件工程的形成和发展 自1968年NATO会议上提出软件工程这一概念以来,软件工程的发展经历了以下3个阶段。

第1章 软件工程引论 第一阶段: 20世纪70年代,传统软件工程时代,基本形成了软件工程的概念、框架、方法和手段。 ◎应用传统工程学的原理、技术和方法

第1章 软件工程引论 ◎提出了软件生命周期的概念

第1章 软件工程引论 ◎提出了多种开发模型、方法与多种软件开发工具(编辑、编译、跟踪、排错、源程序分析、反汇编、反编译等) ◎提出了费用估算、文档评审等一些管理方法和工具。

第1章 软件工程引论 第二阶段:20世纪80年代,过程软件工程时代,从目标管理转向过程管理。 ◎提出了软件能力成熟度模型、个体软件过程和群体软件过程的概念 ◎提出了软件工作量估计COCOMO模型等

第1章 软件工程引论 软件能力成熟度模型(Capacity Maturity Model,CMM):5个级别,共计18个关键过程域、52个目标、300多个关键实践。 ★CMM 1级 初始级(Initial) 机构的软件过程是无序的,甚至是混乱的。几乎没有什么过程是经过妥善定义的,项目的成功往往依赖于某些个人的技能和经验。

第1章 软件工程引论 ★CMM 2级 可重复级(Repeatable) 已经建立了基本的项目管理过程规范,项目经理能跟踪成本、进度和产品功能等,项目能重复以前的成功。机构的过程能力可以概括为“有纪律的”(disciplined)。 它包括6个关键过程域: ※需求管理(Requirement Management) ※软件项目规划(Software Project Planning) ※软件项目跟踪与监督(Software Project Tracking and Oversight)

第1章 软件工程引论 ※软件子合同管理(Software Subcontract Management) ※软件质量保证(Software Quality Assurance) ※软件配置管理(Software Configuration Management)

第1章 软件工程引论 ★CMM 3级 已定义级(Defined) 已经将管理和开发两方面的过程文档化,并综合成为机构的标准软件过程(即过程规范)。所有项目都可以通过裁减机构标准软件过程而建立适合于本项目的过程规范。机构的过程能力可概括为“标准的”和“一致的”,它建立在整个机构对软件过程中的活动、角色、职责的共同理解上。 它包括7个关键过程域: ※机构过程焦点(Organization Process Focus)

第1章 软件工程引论 ※机构过程定义(Organization Process Definition) ※培训程序(Training Program) ※集成化软件管理(Integrated Software Management) ※组间协调(Inter-group Coordination) ※软件产品工程(Software Product Engineering) ※同行评审(Peer Reviews)

第1章 软件工程引论 ★CMM 4级 已管理级(Managed) 对软件过程与产品都有定量的理解和控制,有专门的数据库系统来收集和分析数据。机构的过程能力可概括为“定量的”和“可预测的”。 它包括2个关键过程域: ※定量过程管理(Quantitative Process Management) ※软件质量管理(Software Quality Management)

第1章 软件工程引论 ★CMM 5级 优化级(Optimizing) 能够主动有效地识别机构过程的优势和薄弱环节,发现并采用最佳的软件工程实践,预先防范过程和产品中的缺陷。整个机构强调持续地改进过程能力。 它包括3个关键过程域: ※预防缺陷(Defect Prevention) ※技术革新管理(Technology Change Management) ※过程变更控制(Process Change Management)

第1章 软件工程引论 截止于2002年4月,通过CMM评估的国内软件企业(不完全统计): 摩托罗拉中国软件中心   5 华为印度软件所          4 联想软件事业部         3 沈阳东大阿尔派         3 托普软件               3 浪潮电子集团            2 用友软件                2 北京鼎新               2 金蝶                   2

第1章 软件工程引论 软件能力成熟度模型集成(Capacity Maturity Model Integration,CMMI):6个级别,共计22个过程域。 2004年12月7日上午10点,东软公司宣布该公司已经在12月3日通过由印度公司QAI India公司组织的CMMI(集成的能力成熟度模型)5级评估。据称,这是第一家通过CMMI5评估的中国公司

第1章 软件工程引论 东软集团有限公司招软件质量工程师 第1章 软件工程引论 东软集团有限公司招软件质量工程师 职位描述: 工作职责: ·对事业部的软件过程和工作产品进行评价,控制项目过程和产品质量; ·为项目执行过程提供咨询和培训; ·参与事业部软件过程改善和过程财富推广; 职位要求: ·本科及以上学历,计算机相关专业; ·具有2年以上软件开发或者项目管理、QA,CM方面工作经验; ·具备较强的逻辑思维及良好的敬业精神和团队合作精神;具有良好的沟通能力和协调能力; ·接受过CMM/CMMI培训者优先考虑;

第1章 软件工程引论 第三阶段:20世纪90年代,构件软件工程时代,软件复用和软件构件技术正逐步成为主流软件技术。 ◎公共对象请求中介结构CORBA(Common Object Request Broker Architecture ) ◎构件对象模型COM和分布式构件对象模型DCOM ◎EJB是JAVA技术中服务器端软件构件的技术规范和平台支持

第1章 软件工程引论 1.2.2 软件工程的基本概念 1.定义: ⊙为了经济地获得可靠的和能在实际机器上高效运行的软件,而建立和使用的健全的工程原则。(NATO会议上提出的) ⊙ Boehm曾为软件工程下过定义:“运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料”。

第1章 软件工程引论 ⊙ 1983年,IEEE(电气和电子工程师协会)给出的软件工程定义为:“软件工程是开发、运行、维护和修复软件的系统方法”。 ⊙ Fritz Bauer(美国著名的软件工程专家)则给出了另一个关于软件工程学的定义:“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。

第1章 软件工程引论 ⊙ IEEE给出了关于软件工程的一个更加综合的定义: (1) 将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护过程。即将工程化方法应用于软件开发与维护过程中。 (2) 对上述方法的研究。

第1章 软件工程引论 2.目标: ⊙低开发成本 ⊙功能强 ⊙高性能 ⊙高可靠性 ⊙易于维护 ⊙按时交付 ⊙。。。

第1章 软件工程引论 3.软件工程技术: (1)软件开发方法 (2)软件开发工具 (3)软件开发过程

第1章 软件工程引论 (1)软件开发方法 主要解决什么时候做什么以及怎么做的问题,是软件工程最核心的研究内容。 常用的软件开发方法有: ▼结构化方法: 它通过数据流模型来进行软件的结构化分析,进而过渡到软件的结构化设计、结构化实现和结构化维护。

第1章 软件工程引论 ▼面向对象方法: 它通常包括:面向对象分析、面向对象设计、面向对象实现、面向对象维护。 其中,统一建模语言(UML)是面向对象方法中的公认标准。

第1章 软件工程引论 (2)软件开发工具 软件开发工具是指用来辅助软件开发、维护和管理的软件,使软件开发方法在计算机上的具体实现,从而为软件生命周期中某些过程的自动化提供更有效的支持。 例子:IBM Rational

第1章 软件工程引论 IBM Rational 2002年12月6日,IBM宣布以21亿美元收购软件设计工具厂商Rational。能够得到蓝色巨人青睐的公司绝非等闲之辈。截至到2002年6月30日止,该公司在之前十二个月里的营收已经高达六亿六千六百四十万美元,全世界几乎所有的大型软件项目中都不同程度地采用了它的技术、服务及软件工程环境或工具。

第1章 软件工程引论 IBM Rational 2004年,IBM为了满足行业发展需求,还推出了全新开发产品- Rational Software Development Platform (软件开发平台),使得原有的“生命周期开发”得到近一步完善,从而在一个高度集成、整合的环境下,为用户提供高质量的软件开发解决方案。

第1章 软件工程引论 IBM Rational   2005年,IBM发布Rational Portfolio Manager 6.2。这是业界第一款将软件开发最佳实践与可行性项目计划相结合的、整合的项目与产品组合管理解决方案。该软件能够为用户提供信息分析,帮助团队在把握项目进程和工作方向的同时,实现决策与审批流程自动化,以提升开发效率。

第1章 软件工程引论 IBM Rational   2006年,为实现企业对软件和系统开发更有效的管理,IBM宣布推出全新IBM Rational Systems Developer软件,旨在帮助系统工程师管理开发环境,从而更轻松地遵从特定行业法律法规。

第1章 软件工程引论 IBM Rational   2007年初,IBM在北京发布 Rational 软件 7.0 版本新产品。最新发布的 IBM Rational 软件交付平台 7.0 版本桌面产品是一套全面基于 Eclipse 的软件产品和最佳实践,有助于客户进行软件治理和强化系统开发流程,密切 IT 与业务部门之间的联系。全新版本的 Rational 软件将利 SOA 架构之器,强化面向服务的架构(Service Oriented Architecture,SOA)的架构(Architecutre,A)功能,帮助客户更加高效的交付高质量的软件和服务。

(3)软件开发过程 过程就是人们使用相应的方法、规程、技术、工具等将原始材料(即输入)转化为用户需要的产品(输出)。 第1章 软件工程引论 (3)软件开发过程 过程就是人们使用相应的方法、规程、技术、工具等将原始材料(即输入)转化为用户需要的产品(输出)。 人员 方法与规程 技术与工具 过程 产品 原材料 (输入) (可以为0) (输出) (至少为1)

第1章 软件工程引论 CMMI 3级精简并行过程(SPP)模型

第1章 软件工程引论 林锐,1973年生,1994年和1996年获西安电子科技大学应用物理学士学位和微电子硕士学位,2000年获浙江大学计算机应用博士学位。希赛顾问团高级顾问,大学期间两度被评为中国百名跨世纪优秀大学生,1996年获电子工业部科技进步二等奖,1997年获首届中国大学生电脑大赛软件一等奖。      2000年7月加入上海贝尔有限公司,从事软件工程、项目管理和CMM的研究推广工作,2003年7月当选为 Alcatel 集团技术专家(Alcatel 集团授予为保持全球技术领先地位做出突出贡献的技术专家荣誉和资格)。

第1章 软件工程引论 2004年初创建上海漫索计算机科技有限公司,任公司总经理,致力于创作适合国内企业需求的研发管理方法论和产品。   从2002至2006年,林锐出版了6部著作:《高质量程序设计指南—C++/C语言》,《CMMI3级软件过程改进方法与规范》,《软件工程与项目管理解析》,《面向企业的软件研发管理解决方案:方法与工具》,《Web软件用户界面设计指南》和《IT企业项目管理:问题、方法和工具》。电子工业出版社授予林锐“2003年最佳贡献奖”。

第1章 软件工程引论 4 软件工程管理 软件项目所涉及的管理主要体现在以下几个方面: (1)软件项目规划 (2)项目资源调配 (3)软件产品控制 软件质量管理 软件配置管理

第1章 软件工程引论 1.3 软件工程的基本原则 著名软件工程专家B.W.Boehm集众家所长,并总结了TRW公司多年开发软件的经验,在1983年提出了软件工程的七项基本原则,作为保证软件产品质量和开发效率的最小集合。具体包括:

第1章 软件工程引论 (1) 采用分阶段的生命周期计划,以实现对项目的严格管理。 (2) 坚持进行阶段评审,以确保软件产品的质量。 (3) 实行严格的产品控制,以适应软件规格的变更。 (4) 采用现代程序设计技术。 (5) 软件结果能清楚地审查。 (6) 开发小组人员应该少而精。 (7) 承认不断改进软件工程实践的必要性。

第1章 软件工程引论 图 变更代价随时间变化的趋势示意

第1章 软件工程引论 图 改正一个问题需要付出的代价

第1章 软件工程引论 作业: P10 2,3,5,7