版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、倪 健 东南大学软件学院 职称: 教授级高工 电话:手机:J,4、自我介绍,现代软件工程课程介绍课程目标介绍课程内容介绍授课形式介绍,1、课程目标介绍 现代软件工程给谁讲?,课程的四个基础 (软件)系统 (软件)项目 (软件)过程 (软件)工程 动车组开始商业运行,需要什么条件 同样是2分钟,银行为什么办不到?,1、课程目标介绍 现代软件工程给谁讲?,课程设计的对象、目标是什么? 培养成什么样的人 想象为:一个产品 需要接受什么样的知识 想象为:我们如何做老大? 软件白领的职业生涯,2、课程内容介绍 现代软件工程讲什么?,以软件项目经理为对
2、象 以现代软件企业开发过程为目标 软件工程: 工程,想象为:一条流水线 管理,想象为:一个车间主任 以软件工程硕士毕业论文的要求为例,研究型论文与工程型论文的区别:,目标不同: 研究:发明、创新 工程:实现、效益 方法不同: 研究:走通了 工程:做出来 过程不同: 只要结果(前提:目标正确) 也要结果(前提:过程可靠) 要求不同: 创新思维 过程控制,对计算机领域来说,专业活动可分为三种类型: 科学研究 应用技术研究与产品开发 工程组织管理与技术应用 越偏向“科学”抽象性越强,越偏向“工程”实践性越强。 计算机科学与技术专业:特别是工科,应该重点培养科学与技术结合的适用技术和产品方面的人才 软
3、件工程专业:重点培养技术与工程应用、管理方面人才。 软件工程专业相比于计算机科学与技术专业,更强调 技术性:开发技术的先进性、有效性和工程化 管理性:开发过程的系统性、持续稳定性和可重用性,软件工程专业和计算机科学与技术专业的区别,2、课程内容介绍 现代软件工程讲什么,软件工程=软件开发+工程 软件工程与其他大多工程学科相比,与人类社会有着更多、更密切的联系,所以牵涉面以及对从业者的要求也就更多。比如: 在软件开发的各个阶段,如何与客户、开发团队沟通是非常关键的问题。 在用户界面的设计和实现中,软件人类工程学的知识,显然又是必不可少的。 对于整个项目而言,管理的水平直接影响成败。而仅仅就管理讲
4、管理,没有在实际环境中体会,则很难收到良好的效果。 所以,软件工程最终要想摆脱所谓“软件危机”,仅仅靠软件开发技术和工具,被证明是不可能的。 由此,软件工程发展到“现代软件工程”,与传统软件工程比较,现代软件工程的特点是: 从开发过程(需求、设计、编码、测试、维护)到产品过程、项目过程、再过程(维护过程); 从传统意义的软件开发及管理,到软件合同、运作、管理,包括;基本过程、支持过程和组织过程三个方面,采购、开发、维护、运作、获取、管理、支持7大活动的软件过程工程。 从侧重计算机开发技术,到以产品、开发过程和项目实施管理为重点的管理。 内容非常丰富、涵盖非常广泛:一章、甚至一节就可以写一本书,
5、现代软件工程为什么重要,对大家来说: 软件工程是基础和框架 有工具还不行,还需要懂得环境和过程 软件工程是主线 从产品和市场、到研发和项目管理 软件工程是核心竞争力 只会编程不行,只是低层次的软件蓝领 软件公司和软件人的价值是管理,而不是. 其他知识和课程都是基础、而只有现代软件工程是软件学院学生唯一区别与其他计算机系学生的统揽全局的强项(看家本领),为什么现代软件工程非常重要,软件工程知识体系指南(SWEBOK2004),软件工程知识体系指南SWEBOK2004 ,整个知识体系分为11个知识领域(Knowledge Area,KA) 前五个知识领域是按软件开发的生命期阶段(按所谓瀑布模型)排
6、列的 软件需求(又称软件分析) 软件设计 软件构造(即编码、实现) 软件测试 软件维护; 后六个知识领域则是软件开发中的支撑性或者辅助性的方面,一般覆盖软件开发的多个阶段甚至所有阶段,包括: 软件配置管理(SCM)、软件项目管理、软件工程过程、软件工程工具与方法、软件质量、相关学科知识领域 每个知识领域之下又分为多个子领域,子领域又由多个主题构成,SWEBOK2004的知识域描述结构,SWEBOK2004知识域描述的结构如下: 在简介中,给出知识域的简要定义、其范围的总体视图、与其它知识域的关系。 主题的结构分解组成每个知识域描述的核心,它描述了将知识域分解为子域、主题和子主题。对于每个主题或
7、子主题,给出简要描述,然后是一篇或多篇参考文献。 选择一个参考材料主要是因为认为它构成了与主题相关的知识的最佳表述,并考虑了对选择参考文献的限制。我们使用一个矩阵来联系主题和参考材料。 知识域描述的最后一部分是推荐的参考文献列表。 附录A为希望了解知识域主题更多内容的读者,列出了深入读物; 附录B列出与知识域最相关的标准。 注意,方括号中的引用表示推荐的参考文献,圆括号()中的引用表示对于编写或验证文本有用的参考文献,前者可以在对应的知识域章节中找到,后者可以在知识域的附录A中找到。 最后给出了知识域描述的简要总结和附录。,现代软件工程目录大纲,理论:突出现代软件工程的新观点 完整:全面覆盖S
8、WEBOK2004 综合:注重最佳实践的导向与解决方案的平衡 案例:真实、实际、有参考借鉴价值,现代软件工程目录大纲,第一章 现代软件工程概论 第二章 从市场和产品的角度理解软件开发 第三章 软件项目的规划管理 第四章 现代软件工程的需求过程 第五章 软件体系结构与系统概要设计 第六章 软件系统的构造与实现 第七章 软件质量管理 第八章 软件实施与维护过程 第九章 软件过程改进,现代软件工程导读 各章的关键与看点,第一章:概论 故事:技术副总经理的选择软件公司的困惑 一个全景式的观察、历史与过去、辉煌与失败:带着问题学习 全局把握的重点:做一回老板 现在的战场在那里?战况如何?有什么新思想?有
9、什么新武器? 在这样的局面下,如何带队伍?,第一章 现代软件工程概论 1.1 从软件到软件工程:进入一个新的境界 1.1.1 软件工程:对软件的再认识 1.1.2 软件危机:留给软件人长久的困惑 1.1.3 生命周期:30年前的初衷与设想 1.1.4 四大过程:走出危机的希望与前景 1.2 生命周期:软件工程的基本思路 1.2.1 软件工程的生命周期概念 1.2.2 几种主要生命周期模型的分析 1.2.3 统一软件过程(RUP)的生命周期模型 1.3 技术与方法:软件工程的基本过程 1.3.1 面向过程的技术与方法 1.3.2 面向数据的技术与方法 1.3.3 面向对象的技术与方法 1.3.4
10、 现代软件工程的新方法 1.3.5 软件工程的开发工具与环境 1.4 软件企业的现代软件工程实践 1.4.1 软件生产过程的流程与工艺特性 1.4.2 软件生产过程的支撑与支持特性 1.4.3 软件生产过程的综合与协同特性 1.4.4 现代软件工程的最佳实践与软工教学,第二章:市场与产品 故事:片面听从工程师意见的后果 提升你的境界、抬高你的视角 做正确的产品,然后才是把产品做正确 认识你的目标、敌人、友军和你自己,第二章 从市场和产品的角度理解软件开发 2.1 企业战略与竞争对手分析 2.1.1 企业战略决定我们为什么要做这件事 2.1.2 市场分析让我们明确怎么叫做好这件事 2.1.3 软
11、件产品开发与企业核心竞争力的关系 2.1.4 组织架构是企业战略有效落实的保证 2.2 行业软件产品的市场营销特点 2.2.1 市场营销为产品研发和项目实施提供导向 2.2.2 方案销售是软件市场与产品营销的典型特点 2.2.3 行业软件的销售过程、销售管理与部门配合 2.2.4 销售部门的职能与销售经理的主要工作内容 2.3 现代软件工程下的产品开发与管理 2.3.1 软件产品管理与产品经理的作用 2.3.2 产品经理面向市场的软件产品管理 2.3.3 产品经理面向开发的软件产品管理 2.3.4 现代软件工程概念下的软件研发管理,第三章:用项目管理方法控制软件开发过程 故事:失败项目的窘境
12、软件项目怎样才能不失败? 如何在预定的时间、成本、质量要求下完成项目? 怎么让用户、公司、项目团队都满意? 如何激励项目团队、如何规避风险? 项目管理可以帮你做到这些要求,第三章 软件项目的规划管理 3.1 项目与项目管理的基本概念 3.1.1 项目的概念与项目的属性 3.1.2 项目的范畴要素 3.1.3 项目管理的概念 3.1.4项目生命周期的任务 3.1.5 项目的组织结构与项目经理 3.1.6 项目管理知识体系PMBOK 3.2 软件项目的范围管理 3.3软件项目的时间管理 3.3.1 PMBOK的时间管理概念 3.3.2 PMBOK的时间管理过程 3.3.3 选择合适的软件项目生命周
13、期模型 3.3.4 软件项目工作分解结构WBS 3.3.5 对工作包进行工作描述 3.3.6 编制工作责任矩阵 3.3.7 软件项目的规模、工作量和进度估算 3.3.8 项目进度计划的编制 3.3.9 项目进度计划的变更管理 3.4 软件项目的成本管理 3.4.1 PMEBOK的成本管理概念 3.4.2 PMBOK的成本管理过程 3.4.3 软件项目资源计划的确定 3.4.4 软件项目成本估算与预算 3.4.5 软件项目成本控制,第四章:需求过程 故事:鉴别是作坊还是规范开发的方法 传统需求分析的思路 需求过程与需求工程的技术和方法 需求的控制与管理 需求管理在整个现代软件工程中的龙头作用,第
14、四章 现代软件工程的需求过程 4.1 从需求分析到需求过程 4.1.1 需求分析与需求工程的概念 4.1.2 需求分析与需求工程的比较 4.2 问题定义阶段的目标与任务 4.2.1 问题定义的目标要点 4.2.2 问题定义阶段的过程 4.3 传统软件工程的需求分析方法 4.3.1 传统软件工程需求分析的任务 4.3.2 传统软件工程需求分析的过程 4.3.3 传统软件工程的需求建模方法 4.4 面向对象的需求分析方法 4.4.1 面向过程与面向对象 4.4.2 面向对象的概念回顾 4.4.3 面向对象的分析建模 4.5 基于UML的需求分析方法 4.5.1 UML方法的要点概述 4.5.2 需
15、求获取与UML用例建模 4.5.3 需求分析阶段的目标与要求 4.5.4 基于UML的类与对象建模 4.5.5 基于UML的动态建模 4.5.6 基于UML的体系结构建模,4.6 需求工程与需求管理的实现 4.6.1 现代需求管理的发展 4.6.2 需求的开发过程与管理 4.6.3 需求的实现过程与管理 4.6.4 需求的变更控制与管理 4.7 需求开发过程的案例分析,第五章:体系结构与概要设计 理解什么是系统? 了解系统设计的基本方法和过程,第五章 软件体系结构与系统概要设计 5.1 体系结构的基本问题 5.1.1 复杂系统与体系结构 5.1.2 体系结构的基本概念 5.1.3 传统体系结构
16、的基本方法 5.1.4 抽象与求精的设计理念 5.1.5 模块偶合与内聚的追求 5.2 软件系统的框架与体系结构 5.2.1 现代体系结构模型的基本概念 5.2.2 二类典型的体系结构模型分析 5.2.3 其他经典软件系统体系结构 5.2.4 案例分析: 5.3 面向对象的设计模式 5.3.1 从体系结构到设计模式 5.3.2 创建型模式 5.3.3 结构型模式 5.3.4 行为型模式 5.3.5 设计模式的实际作用,5.4 MVC结构与用户界面设计 5.4.1 界面设计的可变需求 5.4.2 MVC的结构 5.4.3 MVC的实现 5.4.4 MVC的更进一步发展 5.4.5 MVC的变化与
17、评价 5.4.6 Struts:一个基于MVC的实现框架 5.4.7 表示层实现的发展与比较 5.5 基于组件的软件体系结构 5.5.1 组件的概念 5.5.2 三种主要组件模型的特点 5.5.3 基于组件的框架与体系结构 5.6 从需求分析到系统概要设计过程 5.6.1 系统概要设计的任务与要求 5.6.2 面向结构的系统设计方法 5.6.3 面向对象的系统设计方法 5.6.4 软件系统设计规范与管理,第六章:构造与实现 相对简单 重点是软件重用,第六章 软件系统的构造与实现 6.1 结构化程序的详细设计与实现 6.1.1 详细设计的目标与任务 6.1.2 传统详细设计的技术与工具 6.1.
18、3 面向数据结构的详细设计方法 6.1.4 结构化程序的软件实现 6.2 面向对象的系统详细设计与实现 6.2.1 面向对象的详细设计任务和原则 6.2.2 面向对象软件的详细设计与方法 6.3 基于重用技术的软件实现 6.3.1 软件重用的概念与意义 6.3.2 软件重用技术的发展状况 6.3.3 软件重用的形式与途径 6.3.4 面向对象的代码重用实现 6.3.5 重用存在的问题及解决途径,第七章:软件质量 故事:用户为什么不肯付钱? 质量经理天天看什么什么是软件的质量? 软件测试与软件评审:测试与评审的误区 可靠性过程:大楼不是一天堆起来的 配置管理:软件工业化生产的流水线 做好组织保证
19、,第七章 软件质量管理 7.1 软件质量的要素与度量 7.1.1 软件质量的概念 7.1.2 软件质量的评价 7.1.3 软件质量的度量 7.1.4 软件质量度量的实施 7.2 软件测试活动的组织与管理 7.2.1 软件测试的一般概述 7.2.2 测试的阶段与方法 7.2.3 测试类型 7.2.4 测试计划 7.2.5 测试组织 7.3 软件评审活动的组织与管理 7.3.1 审查准备 7.3.2 审查过程 7.3.3 需求审查 7.3.4 设计审查 7.3.5 代码审查 7.3.6 测试审查 7.4 软件系统的可靠性工程 7.4.1 软件可靠性的定义 7.4.2 软件的可靠性设计 7.4.3
20、基于软件测试的可靠性分析 7.4.4 提高软件可靠性的方法和技术,7.5 软件配置管理的方法与实践 7.5.1 软件配置及其管理的概念 7.5.2 主要配置管理活动和流程 7.5.3 基本配置管理项的配置管理 7.5.4 版本管理 7.5.5 变更管理 7.5.6 配置状态监测、报告与评审 7.5.7 基于配置管理的软件项目管理 7.6 软件组织的质量管理过程 7.6.1 ISO9000质量管理体系 7.6.2 PMBOK的质量管理过程 7.6.3 CMM/CMMI的质量保证关键域,第八章:实施过程 故事:实施是个苦差事 软件开发的实施过程 项目管理的实施过程 软件维护与控制 项目后评审,第八
21、章 软件实施与维护过程与管理 8.1 软件的现场实施过程与控制 8.1.1 软件实施过程的概念 8.1.2 软件系统的现场实施过程 8.1.3 现场项目实施的案例介绍 8.2 实施阶段的软件项目管理 8.2.1 项目团队建设与团队激励 8.2.2 项目沟通与协调 8.2.3 软件项目风险管理 8.2.4 软件外包与采购管理 8.2.5 项目综合控制与管理 8.3 软件维护过程与控制 8.3.1 软件维护的概念 8.3.2 软件维护的过程 8.3.3 维护活动的副作用 8.3.4 提高软件的可维护性 8.4 项目实施后的评审与评价 8.4.1 项目后评审的过程概述 8.4.2 项目后评审的案例介
22、绍,第九章:过程改进 最后的总结与回顾 什么是软件过程? 从最简单的软件过程开始 CMM与RUP 另类的软件过程,第九章 软件过程改进 9.1 软件过程概念与过程改进的基本问题 9.1.1 过程与软件过程的概念 9.1.2 过程改进的原则与策略 9.2 软件过程的起步:个人软件过程PSP 9.2.1 PSP的产生 9.2.2 PSP与CMM 9.2.3 PSP的成熟度过程 9.2.4 PSP的主要内容 9.2.5 PSP与TSP过程 9.2.6 PSP、TSP的应用及效果 9.3 软件过程改进的重大成果:CMM/CMMI 9.3.1 CMM/CMMI的过程改进思想 9.3.2 CMM/CMMI的基本内容 9.2.3 CMM/CMMI的实施过程 9.3.4 CMM与现代软件工程实践 9.4 软件过程的实现平台:RUP的统一开发过程 9.4.1 RUP的框架与基本过程 9.4.2 RUP的迭代开发原理 9.4.3 RUP的9个核心工作流 9.4.4 RUP的4个生命周期阶段 9.4.4 RUP的裁减原理与过程 9.5 其他另类软件过程探讨 9.5.1 极限编程(XP)与敏捷软件过程 9.5.2 开源软件(OSS)的得与失,理论:着重要点导读型 参考书: 软件工程导论张海潘(清华大学出版社) 软件工程概论郑人杰等(清华大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数学思想方法课件-2026届高三数学二轮复习
- 中药学考试提醒题及答案
- 2026年辽源中考试卷及答案英语
- 2026五年级数学下册 折线统计图关键能力
- 供应商评价和再评价制度
- 行政管理本科试题及答案
- 中职学校各科室奖惩制度
- 公路工程劳务队奖惩制度
- 乡计生站的上墙制度
- 旅游协会奖惩制度范本
- 2024版2026春新版三年级下册道德与法治全册教案教学设计
- GB 48003-2026邮政业安全生产操作规范
- 渤海大学介绍
- 2026年安庆医药高等专科学校单招综合素质考试题库及答案1套
- 环保餐车毕业论文
- 服务质量保证措施及承诺书
- 2026年宁夏财经职业技术学院单招综合素质笔试备考题库带答案解析
- 市妇联内控制度
- KDM-69602-A005-R0 钢斜梯标准图
- 统编版(2026)八年级下册道德与法治期末复习全册必背知识点提纲
- 2026年融资租赁客户经理笔试题库及答案
评论
0/150
提交评论