实用软件工程(第二版) 郑人杰

上传人:飞*** 文档编号:51437368 上传时间:2018-08-14 格式:PPT 页数:56 大小:1,005.50KB
返回 下载 相关 举报
实用软件工程(第二版) 郑人杰_第1页
第1页 / 共56页
实用软件工程(第二版) 郑人杰_第2页
第2页 / 共56页
实用软件工程(第二版) 郑人杰_第3页
第3页 / 共56页
实用软件工程(第二版) 郑人杰_第4页
第4页 / 共56页
实用软件工程(第二版) 郑人杰_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《实用软件工程(第二版) 郑人杰》由会员分享,可在线阅读,更多相关《实用软件工程(第二版) 郑人杰(56页珍藏版)》请在金锄头文库上搜索。

1、软 件 工 程 Software Engineering主讲:张玉连 电话: 13930316909学生: 04计软14班 118时间:2007 春季学期1软件工程 软件业是决定21世纪国际竞争地位的战略 性产业,是信息时代的朝阳产业。 1.软件产业是信息产业的核心,是国际竞 争的焦点和战略制高点。 2. 软件关系到国家政治、经济和社会的安 全及民族文化的发扬光大。3. 发展软件产业对优化我国产业结构、提 高经济运行质量具有极其重要的作用。 4.软件是国民经济建设中诸多关键技术的 基础。 2软件工程 近二十年来计算机软件已经成为现代科学 研究和解决工程问题的基础,以及管理部门、 生产部门、服务

2、行业中的关键因素,渗透到了 各个领域,成为当今世界不可缺少的一部分。展望二十一世纪,软件仍将成为驱动任何事 情, 从基础教育到遗传工程取得新进展的动力。学习研究工程化的软件开发方法,使开发 过程更加规范,是我们学习的目标和动力。3软 件 工 程软件工程导论(第 四版)张海藩 清华大学出版社 (2003)软件工程张海藩,人民邮电出版社 (2003)教 材4软 件 工 程 实用软件工程 (第二版) 郑人杰 殷人昆 陶 永雷 清华大学出版 社(1996) 软件工程 -实践者的研究方法 (英译版 第四版) Roger S. Pressman 机械工业出版社参考书目5软 件 工 程课程评分方法 作业 2

3、0% + 期末 考试 80% = 总评100%考勤仅供参考,若抽查3次缺勤,不得参加考试听课 读书 作业6学生管理系统 StudentMisvv学生管理系统学生管理系统针对的用户是学针对的用户是学 校学生管理部门。校学生管理部门。相应的需求有:相应的需求有: FF 能够存储一定数量的学生信息能够存储一定数量的学生信息, ,并并 方便有效的进行相应的学生数据操作方便有效的进行相应的学生数据操作 和管理,主要包括:和管理,主要包括:大作业7 学籍管理学籍管理学生基本信息的导入、录入、学生基本信息的导入、录入、 删除及修改。删除及修改。 学生辅助信息学生辅助信息( (综合测评、奖综合测评、奖 励、处

4、分等励、处分等) )的录入、删除及修改。的录入、删除及修改。 学生贷款管理(录入、删除及学生贷款管理(录入、删除及 修改。修改。 查询)查询) 学生保险管理(录入、删除及学生保险管理(录入、删除及 修改。查询)修改。查询) 学生就业管理(录入、删除及学生就业管理(录入、删除及 修改。查询)修改。查询) 学生勤工助学管理(录入、删学生勤工助学管理(录入、删 除及修改。查询)除及修改。查询) 学生各种信息的多关键字检索学生各种信息的多关键字检索 查询。查询。 8FF 能够对需要的统计结果提供打印能够对需要的统计结果提供打印 输出。输出。 FF 能够提供一定的安全机制,提供能够提供一定的安全机制,提

5、供 数据信息授权访问,防止随意删改,数据信息授权访问,防止随意删改, 同时提供信息备份的服务。同时提供信息备份的服务。vv 可选题目:可选题目: - - 商业管理系统的分析、设计与实现商业管理系统的分析、设计与实现- - 教务管理系统的分析、设计与实现教务管理系统的分析、设计与实现 - - 订票管理系统的分析、设计与实现订票管理系统的分析、设计与实现 vv 可以自选题目可以自选题目, ,但需要教师认可但需要教师认可9应提交的文档n n软件需求规格说明书软件需求规格说明书n n软件设计规格说明书软件设计规格说明书n n用户安装及使用手册用户安装及使用手册n n系统测试计划系统测试计划n n演示程

6、序演示程序n n其它其它10软 件 工 程 目的 体验软件工程各阶段的主要工 作,特别注意吸取教训; 学会与他人合作,培养团队精 神,单干户将得不到成绩。分组:班长组织每组6-8人,选一个组长。组长负责:组织、分工、安排进度、作业提交等 。作业提交: 每组一个, 但必须注明分工.110. 软件概论 什么是软件 软件的分类 软件的发展 1. 软件危机 软件危机的表现 软件危机的原因 2. 软件工程软件工程 软件工程 软件工程的目的和要求第一章 软件工程学概述12 软件是计算机系统中与硬件相互依 存的另一部分,它是包括程序,数据 及其相关文档的完整集合 程序是按事先设计的功能和性能要 求执行的指令

7、序列 数据是使程序能正常操纵信息的数 据结构 文档是与程序开发,维护和使用有 关的图文材料0. 软件概论13软件的特点软件的特点 软件是一种逻辑实体,而不是具体 的物理实体。因而它具有抽象性 软件的生产与硬件不同,在它的开 发过程中没有明显的制造过程 在软件的运行和使用期间,没有硬 件那样的机械磨损,老化问题0.软件概论140.软件概论15 软件的开发和运行常受到计算机系统的 限制,对计算机系统有着不同程度的依 赖性 软件的开发至今尚未完全摆脱手工艺的尚未完全摆脱手工艺的 开发方式开发方式 软件本身是复杂的 实际问题的复杂性程序逻辑结构的复杂性 软件成本相当昂贵 相当多的软件工作涉及到社会因素

8、0.软件概论160.软件概论17软软件的分类件的分类 按软件的功能进行划分: 系统软件使计算机系统各个部件、相关软 件和数据协调、高效地工作的软件0.软件概论 操作系统 数据库管理系统 设备驱动程序 通信处理程序等18支撑软件协助用户开发软件的工具软 件0.软件概论 文本编辑程序 文件格式化程序 磁盘向磁带进行数据传输的程序 程序库系统 支持需求分析、设计、实现、测试和支 持管理的软件19应用软件0.软件概论 商业数据处理软件 工程与科学计算软件 计算机辅助设计制造软件 系统仿真软件 智能产品嵌入软件 医疗、制药软件 事务管理、办公自动化软件 计算机辅助教学软件20 按软件规模进行划分:按软件

9、规模进行划分:类别类别 参加人员数参加人员数 研制期限研制期限 源源 程序行数程序行数 微型 1 14周 0.5k 0.软件概论小型 1 16月 1k2k数值计算或数据处理. 通常没有与其它程序的 接口。需要按一定的标准化技术、正规的资料书写 以及定期的系统审查。只是没有大题目那样严格。 中型 25 12年 5k50k应用程序和系统程序。软件人员之间、与用户 之间的联系、协调的配合关系。因而计划、资料书 写以及技术审查需要比较严格地进行。系统的软件 工程方法是完全必要的。21大型 520 23年 50k100k编译程序、小型分时系统、实时控制系统等。二 级管理,若干小组,每组5人以下。人员调整

10、往往不可 避免,新手的培训。采用统一的标准,实行严格的审查 是绝对必要的。 0.软件概论甚大型 1001000 45年 1M(=1024k) 若干个子项目,每一个子项目都是一个大型软件。 子项目之间具有复杂的接口。如远程通信系统、多任务 系统、大型操作系统、大型数据库管理系统、军事指挥 系统通常现有这样的规模。很显然,这类问题没有软件 工程方法的支持,它的开发工作是不可想象的。 极大型 20005000 510年 1M10M军事指挥、弹道导弹防御系统。只是对软件工程技术依赖的程度不同而已。221.软件危机 (Software Crisis)在60年代中期以前:个体化软件开发方法.用户 程序员(

11、编写者=使用者),无文档 资料在60年代中期-70年代中期:软件作坊,产品软件.个体化软件开发方法.软件危机:在计算机软件开发、维护过程中所遇到的一系列 严重问题。 231.软件危机例: 美国IBM公司在1963年至1966年开发的 IBM360机的操作系统。这一项目花了5000人一 年的工作量,最多时有1000人投入开发工作, 写出了近100万行源程序。据统计,这个操作系统每次发行的新版本都是从前一版本中 找出1000个程序错误而修正的结果。 在程序运行时发现的错误,必须设法改正 用户有新的需求,必须相应地修改程序 硬件或OS的更新,通常需要相应地修改程序241.软件危机这个项目的负责人F.

12、 D. Brooks事后总结了他在组织开发过程中的沉痛教训时说 :“正像一只逃亡的野兽落到泥潭中 做垂死的挣扎,越是挣扎,陷得越深,最后 无法逃脱灭顶的灾难。程序设计工作 正像这样一个泥潭,一批批程序员被 迫在泥潭中拼命挣扎,谁也没有料到 问题竟会陷入这样的困境”。IBM360 操作系统的历史教训成为软件开发项目的典 型事例为人们所记取。 Software Crisis !251.软件危机 项目没有被很好地理解;计划不周, 最终导致进度拖延、成本超支。软件危机的表现:计划很难制定致使经费预算常常突破:由于缺乏软件开 发的经验 ,主观盲目地制定计划,执行起来和实际情况 有很大差距;对于工作量估计

13、不准确,进度计划无法遵循 ,开发工作完成的期限一拖再拖。已经拖延了的项目,为 了加快进度而增加人力,反而更加延误了时间。项目没有被很好地理解:“ “闭门造车闭门造车” ”。需求在开发的 初期阶段提得不够明确, 或是未能得到确切的表达。软件 人员和用户又未能及时交换意见,使得一些问题不能及时 解决,造成开发后期矛盾的集中暴露。然而这时问题既难 于分析,也难于挽回。261.软件危机 没有充分的文档资料(documentation) “软件” 程序,人与人的交流比写程序困难 得多。 软件可靠性(reliability)缺少度量的标准,质量无 法保证。如何保证软件产品的质量,是非常复杂困难的 问题。特

14、别对于规模庞大的软件,如:航天.271.软件危机 软件难以维护 (maintainability) 不易升级(evolvability)开发过程没有统一的、公认的方法论和规 范指导,加之不重视文字资料工作,资料很不 完整;忽视每个人与其他人的接口部分,发现 了问题修修补补,这样的软件很难维护。(5) 未能充分做好检测工作(test)在运行中暴露出大量的问题,轻者影响系 统的正常工作,重者发生事故,甚至造成生命 财产的重大损失。28软件危机产生的原因:(1)软件自身的特点 (2) 在开发和维护过程中,采用了错误的方法 和技术 v 早期的个体化开发特点 v 急于求成,仓促上阵我们认为的问题=用户要

15、解决的问题? v 认为软件=编程、运行;轻视软件维护编程工作量10-20%软件维护工作量55-70% v 没有软件生命周期概念1.软件危机29高中低早中后变化出现的时期代价v 软件开发过程中,引入同一变动 付出的代价随时间变化趋势1.软件危机30按工程化的原则和方法组织软件开发 是软件开发的一个主要出路。50年代到60年代时,程序设计曾经 被看做是一种任人发挥创造才能的技术领域 。写出的程序通篇充满了程序技巧,这些程 序很难被别人看懂。然而随着计算机的广泛 使用,人们逐渐抛弃了这种观点。对于稍大 的、并需要较长时间为许多人使用的程序, 人们要求这些程序容易看懂、容易使用,并 且容易修改和扩充。多个软件人员分工合作 、共同完成;只有在项目的总体要求和技术 规范的约束下充分发挥和施展。n 解决问题的出路1.软件危机311.软件危机

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号