




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第1讲讲 软件工程概述软件工程概述任课教师:赵良email: 电话q群:1105944(软件工程学习群)2021-11-141现在及未来现在及未来 只要你敢想,就有可能实现计算机软件学科计算机软件学科 程序设计语言 数据结构 人机交互 程序设计方法论 软件工程2021-11-143教材教材参考书 软件工程,齐治昌,谭庆平等编著,高等教育出版社 软件工程,张海藩编著,人民邮电出版社 roger s. pressman, “software engineering: a practitioner approach (fifth edition)”. mcgraw hil
2、l education ian sommerville, “software engineering (6th edition)”. mcgraw hill education参考网站www 21世纪软件工程专家网www 软件工程专家网www 软件工程研究中心 it论坛 论坛教材和参考书教材和参考书参考书参考书 人月神话 大道至简 教学内容教学内容 第一部分传统软件工程 第二部分面向对象软件工程 第三部分专题讲座教学目标教学目标 goal 1 使学生具有构建高质量软件的能力软件是可靠的、易懂的、易修改的和易维护的。goal 2 使学生深刻认识到这些技能为什么重要,并具有软件工程意识。“软件工程
3、软件工程”课程教学与实践的目标课程教学与实践的目标转变对软件开发的认识:转变对软件开发的认识: 上升上升 程序 系统转变思维定式:转变思维定式: 上升上升 程序员 系统工程师 (系统分析员)工程化训练工程化训练学期项目(大作业)学期项目(大作业)计划:全部同学分成小组,每组计划:全部同学分成小组,每组2-32-3人,每人,每一个小组推选一位负责人,作为项目经理。一个小组推选一位负责人,作为项目经理。项目经理有权利对小组其它的人员进行具项目经理有权利对小组其它的人员进行具体的角色分工和人事调整。每组人员的角体的角色分工和人事调整。每组人员的角色可为:色可为: 1. 1. 项目经理项目经理 2.
4、2. 系统分析人员系统分析人员 3. 3. 系统设计人员系统设计人员 4. 4. 系统实施人员系统实施人员 5. 5. 系统测试人员系统测试人员 要求要求 项目经理负责:组织、分工、控制进度项目经理负责:组织、分工、控制进度; ; 对每位组员成绩有浮动调整权;对每位组员成绩有浮动调整权;小组成员:在项目经理的统一协调下完成项目,小组成员:在项目经理的统一协调下完成项目,根据完成的质量来决定最后的成绩。根据完成的质量来决定最后的成绩。提交内容提交内容1. 1. 全套文档和说明书(书面)全套文档和说明书(书面)2. 2. 总体设计报告总体设计报告 (演讲)(演讲)3. 3. 推出推出 v1.0 v
5、1.0 (现场验收)(现场验收)4.4. 推出升级版(可选)推出升级版(可选)5.5. 面向对象分析练习题一道(演讲)面向对象分析练习题一道(演讲)6.6. 推出期末最终版并制作案例总结报告(现场推出期末最终版并制作案例总结报告(现场验收和演讲)验收和演讲)目目 的的 体验软件工程各阶段的主要工作,特别注意吸取教训;体验软件工程各阶段的主要工作,特别注意吸取教训; 学会与他人合作,培养团队精神,单干户将得不到成绩。学会与他人合作,培养团队精神,单干户将得不到成绩。 从现在开始,谁也不知道我们的项目从现在开始,谁也不知道我们的项目会不会成功,但是请牢记:目标、交流与会不会成功,但是请牢记:目标、
6、交流与合作、内省合作、内省引言引言从愚公移山说开去从愚公移山说开去【先秦】列子【先秦】列子汤问汤问 太行太行,王屋二山,方七百里,高万仞,本在冀州之南,河阳之北。(现位于,河王屋二山,方七百里,高万仞,本在冀州之南,河阳之北。(现位于,河南省济源市。)南省济源市。) 北山愚公者,年且九十,面山而居。惩山北之塞,出入之迂也。聚室而谋曰北山愚公者,年且九十,面山而居。惩山北之塞,出入之迂也。聚室而谋曰:“吾与汝毕力平险,指通豫南,达于汉阴,可乎?吾与汝毕力平险,指通豫南,达于汉阴,可乎?”杂然相许。其妻献疑曰:杂然相许。其妻献疑曰:“以君之力,曾不能损魁父之丘,如太行、王屋何?且焉置土石?以君之力
7、,曾不能损魁父之丘,如太行、王屋何?且焉置土石?”杂曰:杂曰:“投投诸渤海之尾,隐土之北。诸渤海之尾,隐土之北。”遂率子孙荷担者三夫,叩石垦壤,箕畚运于渤海之尾遂率子孙荷担者三夫,叩石垦壤,箕畚运于渤海之尾。邻人京城氏之孀妻有遗男,始龀,跳往助之。寒暑易节,始一反焉。邻人京城氏之孀妻有遗男,始龀,跳往助之。寒暑易节,始一反焉。 河曲智叟笑而止之曰:河曲智叟笑而止之曰:“甚矣,汝之不惠。以残年余力,曾不能毁山之一毛甚矣,汝之不惠。以残年余力,曾不能毁山之一毛,其如土石何?,其如土石何?”北山愚公长息曰:北山愚公长息曰:“汝心之固,固不可彻,曾不若孀妻弱子。汝心之固,固不可彻,曾不若孀妻弱子。虽我
8、之死,有子存焉;子又生孙,孙又生子;子又有子,子又有孙;子子孙孙无虽我之死,有子存焉;子又生孙,孙又生子;子又有子,子又有孙;子子孙孙无穷匮也,而山不加增,何苦而不平?穷匮也,而山不加增,何苦而不平?”河曲智叟亡以应。河曲智叟亡以应。 操蛇之神闻之,惧其不已也,告之于帝。帝感其诚,命夸娥氏二子负二山,操蛇之神闻之,惧其不已也,告之于帝。帝感其诚,命夸娥氏二子负二山,一厝朔东,一厝雍南。自此,冀之南,汉之阴,无陇断焉。一厝朔东,一厝雍南。自此,冀之南,汉之阴,无陇断焉。愚公是一位工程名家愚公是一位工程名家第第1 1讲讲 软件工程概论软件工程概论1 1 什么是软件什么是软件 软件是计算机系统中与硬
9、件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。 程序是按事先设计的功能和性能要求执行的指令序列(program) 数据是使程序能正常操作信息的数据结构(data structures) 文档是与程序开发,维护和使用有关的图文材料(documents)2 2 软件的特点软件的特点 表现形式软件是一种软件是一种逻辑实体逻辑实体,而不是具体的物理实体。因而,而不是具体的物理实体。因而它具有高度抽象性。它具有高度抽象性。生产方式软件的生产与硬件不同,在它的开发过程中软件的生产与硬件不同,在它的开发过程中没有明显的没有明显的制造过程制造过程,大多数软件仍是大多数软件仍是定制的。定制的。
10、维护在软件的运行和使用期间,在软件的运行和使用期间,没有硬件那样的机械磨损,没有硬件那样的机械磨损,老化问题。老化问题。(图示)(图示)要求软件的开发和运行受制于计算机系统的限制软件的开发和运行受制于计算机系统的限制软件产品不允许误差软件产品不允许误差故障率时间生命初期生命初期磨损后磨损后硬件的故障率曲线硬件的故障率曲线修改修改由于副作用造成由于副作用造成故障率的提高故障率的提高实际曲线实际曲线 原来的软件已经面目全非了!原来的软件已经面目全非了! 软件故障率的理想曲线软件故障率的理想曲线故障率时间生命初期生命初期磨损后磨损后硬件的故障率曲线硬件的故障率曲线实际曲线实际曲线软件故障率的理想曲线
11、软件故障率的理想曲线硬件和软件故障率曲线的比较硬件和软件故障率曲线的比较 软件不会用坏(软件不会用坏(wear outwear out). .软件会退化(软件会退化( deterioratedeteriorate)! !软件发展存在的问题软件发展存在的问题 软件开发能力不能满足人们的需要。 社会对软件的依赖程度加大,人们普遍关注软件的安全和可靠性。 建造高可靠性、高质量软件的任务任重路远。 若干年前开发的应用软件经过几十次修改已无人认识它的内部结构,己经不可维护。 软件需求不断变化两个案例两个案例 美国航天飞机爆炸 许霆案3 软件危机软件危机 软件开发成本过高 软件质量得不到保证 软件开发效率
12、低 难以控制开发进度,工作量估计困难软件不能满足社会发展的需求,成为社会、经济发展的制约因素软件危机mythmyth: : 如果落后于进度表,我们可以增加更多的如果落后于进度表,我们可以增加更多的程程 序员便能赶上进度。序员便能赶上进度。realityreality: : 软件开发不是象制造业的机械过程。用软件开发不是象制造业的机械过程。用 brooks brooks 的话说:的话说:“向进度落后的软件项目增加人员只会向进度落后的软件项目增加人员只会使该项目进度变的更慢。使该项目进度变的更慢。” 管理神话管理神话项目没有被很好地理解;计划不周,最终项目没有被很好地理解;计划不周,最终导致进度拖
13、延。导致进度拖延。问题出在哪里?问题出在哪里?软件危机软件危机 实践者神话实践者神话没有充分的文档资料没有充分的文档资料(documentation) (documentation) 人与人的人与人的交流交流比写程序困难得多。比写程序困难得多。managers evaluate, track progress, .programmers communicate to each othermaintainers vital mythmyth: : 一个成功的项目唯一需要交付的就是运行的程序。一个成功的项目唯一需要交付的就是运行的程序。 realityreality: : 运行的程序只是软件配置的
14、一部分,除此之外,运行的程序只是软件配置的一部分,除此之外,还包括程序清单、文档以及相关数据。文档是开发工作成功还包括程序清单、文档以及相关数据。文档是开发工作成功进行的基础,更重要的是为软件维护提供指南作用。进行的基础,更重要的是为软件维护提供指南作用。软件危机软件危机mythmyth: : 一旦我们完成了程序的编写,并让它能运行,一旦我们完成了程序的编写,并让它能运行,那我们的任务就完成了。那我们的任务就完成了。realityreality: : 有一个人曾经说过:有一个人曾经说过:“你越早开始编写代码,你越早开始编写代码,那你就越晚完成工作。那你就越晚完成工作。”工业统计数字表示,产品第
15、一次交工业统计数字表示,产品第一次交付给用户后,还要花费编写该软件付给用户后,还要花费编写该软件60%-80%60%-80%的精力来维护。的精力来维护。(3 3)实践者神话)实践者神话 软件难以维护软件难以维护(maintainability)(maintainability),不,不易升级易升级(evolvability)(evolvability)4 4 软件工程软件工程问题的引出问题的引出先看几个图例先看几个图例简陋的小屋简陋的小屋不用设计不用设计新农村别墅造型图新农村别墅造型图别墅的平面图、切面图软件工程软件工程1968年nato计算机科学会议软件危机-根源-解决途径软件工程意识到:意
16、识到:“软件软件”编程,大型软件系统的开发与其它工程编程,大型软件系统的开发与其它工程项目如建造桥梁、制造飞机、轮船等的开发是同理的,它项目如建造桥梁、制造飞机、轮船等的开发是同理的,它有自己的工程有自己的工程生命周期生命周期 (lifecycle) (lifecycle) 。软件工程的定义软件工程的定义 (1/3)软件工程fritzbauernau69为了经济的获得可靠的,在实际机器上高效运行的软件,而建立和使用的好的工程原则。软件工程的定义软件工程的定义 (2/3)软件工程教材软件工程是运用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术和管理的方法。软件工程的定义软件工程的定义
17、 (3/3)软件工程ieee93(1)将系统的、规范的、可度量的方法应用于软件的开发、运行和维护的过程;(2)上述方法的研究。软件工程学科软件工程学科 软件工程是一门交叉学科软件开发技术:软件开发方法学 软件开发过程 软件工具和软件工程环境软件工程管理:软件管理学 软件经济学 软件心理学 软件工程所包含的内容不是一成不变的,随 着人们对软件系统的研制开发和生产的理解, 应用发展的眼光看待它。软件工程的目标软件工程的目标 提高质量 降低成本 提高效率软件工程框架软件工程框架可可用用性性性性确确正正性性合合算算选取适宜的开发模型选取适宜的开发模型采用合适的设计方法采用合适的设计方法提供高质量的工程
18、支持提供高质量的工程支持重视软件工程的管理重视软件工程的管理基基本本过过程程原则原则 目标目标 过 程程支支持持过过程程组组织织过过程程软件工程原理软件工程原理 用分阶段的生命周期计划严格管理用分阶段的生命周期计划严格管理 项目概要计划 里程碑计划 项目控制计划 产品控制计划 验证计划 运行维护计划 坚持进行阶段评审坚持进行阶段评审 实行严格的产品控制实行严格的产品控制基准配置管理基准配置管理 (baseline configuration management) 开发小组的成员团队沟通协调的能力开发小组的成员团队沟通协调的能力 采用现代程序设计技术采用现代程序设计技术 结果应能清楚地审查结果
19、应能清楚地审查 set standards 承认不断改进软件工程实践的必要性承认不断改进软件工程实践的必要性软件工程的历史软件工程的历史 起源于20世纪50年代 但是从学术的角度看,软件工程还是一个年轻的学科第一次会议在20世纪60年代后期而在80年代才从计算机科学分离开软件工程的历史软件工程的历史 60年代末80年代初状况:软件系统的规模、复杂性以及在关键领域的广泛应用促进了软件开发过程采纳工程化的方法进行管理。研究:开发模型、支持工具、开发方法。成果:瀑布模型、结构化语言(pascal等)、结构化方法、各种管理方法(如费用估算、文档复审)。事件:前期主要研究系统实现技术;后期则开始强调管理和软件质量。焦点:软件项目软件工程的历史软件工程的历史 80年代初现在 状况:“软件工厂”的概念已经提出。 研究:软件生产技术,特别是软件复用技术和软件生产管理的研究和实践。 成果:提出了具有广泛应用前景的面向对象方法和相关的编程语言。 事件:软件过程改进。在工业实践中建立起一种量化的评估程序,判定软件组织成熟的程度。 焦点:软件过程软件工程的历史软件工程的历史 近几年: 研究从过程管理转向产品开发,更加注重新的程序开发范型和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东华润电力春季招聘考前自测高频考点模拟试题及答案详解一套
- 2025福建福州市长乐区卫健系统招聘78人模拟试卷及答案详解1套
- 2025年哈尔滨巴彦县公安局公开招聘警务辅助人员32人模拟试卷附答案详解(突破训练)
- 2025广东东莞市东坑镇中心幼儿园第二批招聘老师3人考前自测高频考点模拟试题及答案详解(各地真题)
- 2025广东南粤银行资金运营中心招聘模拟试卷(含答案详解)
- 2025年春季福建华南女子职业学院人才招聘15人考前自测高频考点模拟试题有完整答案详解
- 2025年中国化妆品级2-甲基间苯二酚行业市场分析及投资价值评估前景预测报告
- 2025北京市卫生健康委员会直属事业单位招聘20人考前自测高频考点模拟试题(含答案详解)
- 2025年大庆萨尔图区开展“职引未来全国城市联合招聘高校毕业生春季专场活动”模拟试卷附答案详解(突破训练)
- 2025年5月汉中市铁路中心医院招聘模拟试卷及答案详解(网校专用)
- 2025-2026学年高一上学期第一次月考物理试卷(北京)
- 第一单元《精神信仰力量情感》《大路歌》教学设计湘艺版初中音乐八年级上册
- 动火作业现场安全防护设施布置与维护更新方案
- 核心素养导向课堂教学反思
- 《机器学习》课件-第3章 监督学习
- 山东省济南市2025届中考数学真题(含答案)
- 医疗机构医疗质量安全专项整治行动方案
- 基于SprintBoot的大学生实习管理系统的设计与实现
- 外踝撕脱骨折课件
- 钢架油漆翻新施工方案(3篇)
- 数字平台治理 课件 第五章 数字平台生态治理
评论
0/150
提交评论