01.课程说明
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
OOA UML
北京大学软件与微电子学院
OO
OOP
面向对象技术高级课程说明 2010.9~2011.1 课程代码:OB101 课程代码 主讲: 蒋严冰jyb@ss.pku.edu.cn 主讲 蒋严冰 助教:陈磊chenlei1011@gmail.com 助教:陈磊
Process
OOD
OOA
目录
课程主要目标 课程的价值 课程内容概述 课程对象 预计学时与授课计划 考试要求
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述
OO
OOP
Process
OOD
基础内容
高级内容
一种范型 面向对象的软件开发范型 两条线索 模型:统一建模语言 统一建模语言UML深入剖析 模型 统一建模语言 深入剖析 过程:面向对象的建模过程综合讲评 过程 面向对象的建模过程综合讲评 三个阶段 面向对象的分析OOA 面向对象的分析 面向对象的设计OOD 面向对象的设计 面向对象的编程OOP 面向对象的编程 其他 面向对象方法的历史、人物、流派、 面向对象方法的历史、人物、流派、建模工具与将来等 UML扩展机制与元模型 扩展机制与元模型 MDA理论技术与规范 理论技术与规范 分析模式/设计模式 设计模式/线程模式选讲 分析模式 设计模式 线程模式选讲 完整实例
UML
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA
问题
代码自动生 成是否还很 遥远? 元模型?
UML与自然 语言有什么 联系?
当前国际方 法学大师及 其主要贡献? UML是否 真正有用? 什么是分 析模式? 如何将状态 图与编程结 合起来? ……
2
3学时 学时
2010.9.16 星期四 上午
3
3学时 学时
2010.9.23星期四 上午 星期四
4 5
3学时 学时 3学时 学时
2010.9. 30星期四 上午 星期四 2010.10.15星期四 上午 星期四
面向对象技术高级课程 The Advanced Object-Oriented Technology
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程体系架构
OO
OOP
Process
OOD
方 法 OO OO 发 方 法 基 本 软 件 开
模 型 UML UML usecase 过 程 需 求 分 析 设 计 实 现
方 法 论 综 述 概 念
OOA UML
课程内容概述—三个阶段
面向对象的分析( 面向对象的分析(OOA) )
系统需求模型(用况图为主) 系统需求模型(用况图为主) 系统分析模型(类图为主) 系统分析模型(类图为主)
OO
OOP
Process
OOD
面向对象的设计(OOD) 面向对象的设计( )
问题域 人机交互部分 控制驱动部分 数据管理部分
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程的价值
为其他课程提供基础 体系结构… 中间件 SOA 测试 设计模式 体系结构 对职业发展具有长期深远影响 直接用于工作与学习中 编程 分析设计 架构 项目管理 咨询 售前 论文… 研究 论文 为学习研究工作提供扎实的理论基础 指导人生
3学时 学时
2010.11.4星期四 上午 星期四
9 10
3学时 学时 3学时 学时
2010.11.11星期四 上午 星期四 2010.11.18星期四 上午 星期四
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
OO
OOP
Process
预计学时
48学时 学时
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
OO
OOP
Process
OOD
授课计划
课次 1 内容 课程介绍 绪论:软件开发方法的演化与最新趋势 软件开发方法的演化与最新趋势(上 绪论 软件开发方法的演化与最新趋势 上) 绪论:软件开发方法的演化与最新趋势 下 绪论 软件开发方法的演化与最新趋势(下) 软件开发方法的演化与最新趋势 第一部分 面向对象技术概论 面向对象分析——分析概述 第二部分 面向对象分析 分析概述 面向对象分析——用况图(上) 用况图( 第二部分 面向对象分析 用况图 面向对象分析——用况图(下) 用况图( 第二部分 面向对象分析 用况图 面向对象分析——类图(上) 类图( 第二部分 面向对象分析 类图 学时 3学时 学时 时间 2010.9.9 星期四 上午
OO高级语言 高级语言 非OO高级语言 高级语言 汇编语言 计算机世界
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述—两条线索
1.统一建模语言 统一建模语言
图形化的建模语言 即面向人又面向机器 具有更大的抽象层次 可以转换为代码 已成为世界范围内事实上的标准建模语言 9种图 150多种建模元素 多种建模元素(V1.3) 种图 多种建模元素
面向对象的编程( 面向对象的编程(OOP) )
面向对象的设计模型到编程语言的转化
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程特点
理论性
注重对基础理论与重要概念的讲解与比较
OO
OOP
Process
OOD
实用性
建模与编程结合
前沿性
OOD
授课计划
课次 11 内容 面向对象设计——问题域的设计(下) 问题域的设计( 第三部分 面向对象设计 问题域的设计 面向对象设计——人机交互的设计 第三部分 面向对象设计 人机交互的设计 第三部分 面向对象设计——控制驱动的设计(上) 面向对象设计 控制驱动的设计( 控制驱动的设计 第三部分 面向对象设计——控制驱动的设计(下) 面向对象设计 控制驱动的设计( 控制驱动的设计 第三部分 面向对象设计——数据管理的设计 面向对象设计 数据管理的设计 面向对象设计——部署的设计 第三部分 面向对象设计 部署的设计 第四部分 面向对象实现 第五部分 完整案例 作业讲解/复习 机动 作业讲解 复习/机动 复习 学时 3学时 学时 时间 2010.11.25星期四上午 星期四上午
涉及软件建模领域前沿问题的讨论
研究性
鼓励在学习中研究,培养学术研究能力 鼓励在学习中研究 培养学术研究能力
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程对象与预计学时
课程对象
计算机相关学科的硕士研究生
Leabharlann Baidu
OO
OOP
Process
OOD
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
为什么是高级的? 为什么是高级的
深入分析UML各种建模元素语义 各种建模元素语义 深入分析 不同流派方法的比较 完整细致的面向对象建模过程指导 密切联系工程实践 提供大量完整的参考案例 揭示面向对象技术\UML的研究发展趋势 揭示面向对象技术 的研究发展趋势
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述—两条线索
2.面向对象的建模过程 面向对象的建模过程
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
教材与参考书
OO
OOP
Process
OOD
教材 邵维忠, 杨芙清. 面向对象的系统分析(第 版 北京: 邵维忠 杨芙清 面向对象的系统分析 第2版). 北京 清华大学出 版社, 版社 2006年12月 年 月 邵维忠, 杨芙清. 面向对象的系统设计(第 版 北京: 邵维忠 杨芙清 面向对象的系统设计 第2版). 北京 清华大学出 版社, 版社 2006年12月 年 月 参考书 麻志毅、邵维忠.面向对象方法基本教程 高等教育出版社, 面向对象方法基本教程. 麻志毅、邵维忠 面向对象方法基本教程 高等教育出版社,2004 邵维忠, 廖钢城, 苏渭珍(译 面向对象的设计. 北京: 邵维忠 廖钢城 苏渭珍 译). 面向对象的设计 北京 北京大学出版 社,1994年11月 年 月 徐家福(译 精粹, 徐家福 译).UML精粹,清华大学出版社 精粹 邵维忠等译. 邵维忠等译 UML用户指南 用户指南 有关面向对象的编程书籍
OO
OOP
Process
OOD
用本课程中的面向对象方法建立一个小型系统的分析与设 计模型,并尽可能用面向对象编程语言实现系统。 计模型,并尽可能用面向对象编程语言实现系统。 要求: 要求: 写出需求报告,说明系统的功能。 ①写出需求报告,说明系统的功能。 通过面向对象的分析与设计建立系统模型。 ②通过面向对象的分析与设计建立系统模型。 实现该模型, ③用 OOP实现该模型,完成编程和调试。 实现该模型 完成编程和调试。
UML
OO
OOP
Process
OOD
Usecase与use story的区别? 模式的 本质?
UML为什 么这么复 杂?
分析与设计 的区别?
如何表 示分类?
?
如何更好的 编写多线程 程序?
同步消息和 异步消息在 编程中的应 用? 面向对象 是否已过 时?
面向对象技术高级课程 The Advanced Object-Oriented Technology
Process
OOD
学习方法
理论与实践相结合 建模与编程相结合 学习与研究相结合
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
考试要求
考核方式 1、实习 、实习—30% 2、作业 、作业—20% 3、笔试 、笔试—50% 实习要求
12
3学时 学时
2010.12.2星期四上午 星期四上午
13
3学时 学时 3学时 学时 3学时 学时
2010.12.9星期四上午 星期四上午 2010.12.16星期四上午 星期四上午 2010.12.23星期四上午 星期四上午
14 15
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程的主要目标
OO
OOP
Process
OOD
深入了解面向对象方法的基本概念、原理、发展历史、 深入了解面向对象方法的基本概念、原理、发展历史、人物与现 状。 深入了解UML中各种常用图的语法语义 中各种常用图的语法语义(1.X,2.0)。 深入了解 中各种常用图的语法语义 。 熟练地掌握面向对象的分析与设计方法, 熟练地掌握面向对象的分析与设计方法,能够运用该方法进行软 件系统建模。 件系统建模。 加深对面向对象实现技术的理解,掌握将模型转换为代码的方法。 加深对面向对象实现技术的理解,掌握将模型转换为代码的方法。 了解UML扩展机制与元模型的概念 了解模型驱动的体系结构 扩展机制与元模型的概念, 了解 扩展机制与元模型的概念 (MDA)的思想、原理与规范。 )的思想、原理与规范。
OOA UML
OO
OOP
Process
OOD
授课计划
课次 6 内容 面向对象分析——类图(下) 类图( 第二部分 面向对象分析 类图 学时 3学时 学时 时间 2010.10.22星期四 上午 星期四
7
面向对象分析——交互图(上) 交互图( 第二部分 面向对象分析 交互图
3学时 学时
2010.10.29星期四 上午 星期四
程
系
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述—一种范型
现实世界 面向对象的需求分析
面向对象的模型
OO
OOP
Process
OOD
面向对象的系统分析 面向对象的系统设计
从现实世界中客观存在的事物 (即对象)出发来构造软件系 统,并在系统构造中尽可能运 用人类的自然思维方式。
8
面向对象分析——交互图(下) 交互图( 第二部分 面向对象分析 交互图 面向对象分析——状态图(上) 状态图( 第二部分 面向对象分析 状态图 面向对象分析——状态图(下) 状态图( 第二部分 面向对象分析 状态图 面向对象分析——包图 第二部分 面向对象分析 包图 面向对象设计——设计概述 第三部分 面向对象设计 设计概述 第三部分 面向对象设计——问题域的设计 面向对象设计 问题域的设计
OOA UML
授课方式
课堂讲授为主 鼓励提问、 鼓励提问、讨论 布置一些思考题或课堂作业
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
本课程的准备知识、学习方法
准备知识
一种面向对象的编程语言
OO
OOP
北京大学软件与微电子学院
OO
OOP
面向对象技术高级课程说明 2010.9~2011.1 课程代码:OB101 课程代码 主讲: 蒋严冰jyb@ss.pku.edu.cn 主讲 蒋严冰 助教:陈磊chenlei1011@gmail.com 助教:陈磊
Process
OOD
OOA
目录
课程主要目标 课程的价值 课程内容概述 课程对象 预计学时与授课计划 考试要求
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述
OO
OOP
Process
OOD
基础内容
高级内容
一种范型 面向对象的软件开发范型 两条线索 模型:统一建模语言 统一建模语言UML深入剖析 模型 统一建模语言 深入剖析 过程:面向对象的建模过程综合讲评 过程 面向对象的建模过程综合讲评 三个阶段 面向对象的分析OOA 面向对象的分析 面向对象的设计OOD 面向对象的设计 面向对象的编程OOP 面向对象的编程 其他 面向对象方法的历史、人物、流派、 面向对象方法的历史、人物、流派、建模工具与将来等 UML扩展机制与元模型 扩展机制与元模型 MDA理论技术与规范 理论技术与规范 分析模式/设计模式 设计模式/线程模式选讲 分析模式 设计模式 线程模式选讲 完整实例
UML
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA
问题
代码自动生 成是否还很 遥远? 元模型?
UML与自然 语言有什么 联系?
当前国际方 法学大师及 其主要贡献? UML是否 真正有用? 什么是分 析模式? 如何将状态 图与编程结 合起来? ……
2
3学时 学时
2010.9.16 星期四 上午
3
3学时 学时
2010.9.23星期四 上午 星期四
4 5
3学时 学时 3学时 学时
2010.9. 30星期四 上午 星期四 2010.10.15星期四 上午 星期四
面向对象技术高级课程 The Advanced Object-Oriented Technology
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程体系架构
OO
OOP
Process
OOD
方 法 OO OO 发 方 法 基 本 软 件 开
模 型 UML UML usecase 过 程 需 求 分 析 设 计 实 现
方 法 论 综 述 概 念
OOA UML
课程内容概述—三个阶段
面向对象的分析( 面向对象的分析(OOA) )
系统需求模型(用况图为主) 系统需求模型(用况图为主) 系统分析模型(类图为主) 系统分析模型(类图为主)
OO
OOP
Process
OOD
面向对象的设计(OOD) 面向对象的设计( )
问题域 人机交互部分 控制驱动部分 数据管理部分
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程的价值
为其他课程提供基础 体系结构… 中间件 SOA 测试 设计模式 体系结构 对职业发展具有长期深远影响 直接用于工作与学习中 编程 分析设计 架构 项目管理 咨询 售前 论文… 研究 论文 为学习研究工作提供扎实的理论基础 指导人生
3学时 学时
2010.11.4星期四 上午 星期四
9 10
3学时 学时 3学时 学时
2010.11.11星期四 上午 星期四 2010.11.18星期四 上午 星期四
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
OO
OOP
Process
预计学时
48学时 学时
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
OO
OOP
Process
OOD
授课计划
课次 1 内容 课程介绍 绪论:软件开发方法的演化与最新趋势 软件开发方法的演化与最新趋势(上 绪论 软件开发方法的演化与最新趋势 上) 绪论:软件开发方法的演化与最新趋势 下 绪论 软件开发方法的演化与最新趋势(下) 软件开发方法的演化与最新趋势 第一部分 面向对象技术概论 面向对象分析——分析概述 第二部分 面向对象分析 分析概述 面向对象分析——用况图(上) 用况图( 第二部分 面向对象分析 用况图 面向对象分析——用况图(下) 用况图( 第二部分 面向对象分析 用况图 面向对象分析——类图(上) 类图( 第二部分 面向对象分析 类图 学时 3学时 学时 时间 2010.9.9 星期四 上午
OO高级语言 高级语言 非OO高级语言 高级语言 汇编语言 计算机世界
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述—两条线索
1.统一建模语言 统一建模语言
图形化的建模语言 即面向人又面向机器 具有更大的抽象层次 可以转换为代码 已成为世界范围内事实上的标准建模语言 9种图 150多种建模元素 多种建模元素(V1.3) 种图 多种建模元素
面向对象的编程( 面向对象的编程(OOP) )
面向对象的设计模型到编程语言的转化
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程特点
理论性
注重对基础理论与重要概念的讲解与比较
OO
OOP
Process
OOD
实用性
建模与编程结合
前沿性
OOD
授课计划
课次 11 内容 面向对象设计——问题域的设计(下) 问题域的设计( 第三部分 面向对象设计 问题域的设计 面向对象设计——人机交互的设计 第三部分 面向对象设计 人机交互的设计 第三部分 面向对象设计——控制驱动的设计(上) 面向对象设计 控制驱动的设计( 控制驱动的设计 第三部分 面向对象设计——控制驱动的设计(下) 面向对象设计 控制驱动的设计( 控制驱动的设计 第三部分 面向对象设计——数据管理的设计 面向对象设计 数据管理的设计 面向对象设计——部署的设计 第三部分 面向对象设计 部署的设计 第四部分 面向对象实现 第五部分 完整案例 作业讲解/复习 机动 作业讲解 复习/机动 复习 学时 3学时 学时 时间 2010.11.25星期四上午 星期四上午
涉及软件建模领域前沿问题的讨论
研究性
鼓励在学习中研究,培养学术研究能力 鼓励在学习中研究 培养学术研究能力
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程对象与预计学时
课程对象
计算机相关学科的硕士研究生
Leabharlann Baidu
OO
OOP
Process
OOD
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
为什么是高级的? 为什么是高级的
深入分析UML各种建模元素语义 各种建模元素语义 深入分析 不同流派方法的比较 完整细致的面向对象建模过程指导 密切联系工程实践 提供大量完整的参考案例 揭示面向对象技术\UML的研究发展趋势 揭示面向对象技术 的研究发展趋势
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述—两条线索
2.面向对象的建模过程 面向对象的建模过程
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
教材与参考书
OO
OOP
Process
OOD
教材 邵维忠, 杨芙清. 面向对象的系统分析(第 版 北京: 邵维忠 杨芙清 面向对象的系统分析 第2版). 北京 清华大学出 版社, 版社 2006年12月 年 月 邵维忠, 杨芙清. 面向对象的系统设计(第 版 北京: 邵维忠 杨芙清 面向对象的系统设计 第2版). 北京 清华大学出 版社, 版社 2006年12月 年 月 参考书 麻志毅、邵维忠.面向对象方法基本教程 高等教育出版社, 面向对象方法基本教程. 麻志毅、邵维忠 面向对象方法基本教程 高等教育出版社,2004 邵维忠, 廖钢城, 苏渭珍(译 面向对象的设计. 北京: 邵维忠 廖钢城 苏渭珍 译). 面向对象的设计 北京 北京大学出版 社,1994年11月 年 月 徐家福(译 精粹, 徐家福 译).UML精粹,清华大学出版社 精粹 邵维忠等译. 邵维忠等译 UML用户指南 用户指南 有关面向对象的编程书籍
OO
OOP
Process
OOD
用本课程中的面向对象方法建立一个小型系统的分析与设 计模型,并尽可能用面向对象编程语言实现系统。 计模型,并尽可能用面向对象编程语言实现系统。 要求: 要求: 写出需求报告,说明系统的功能。 ①写出需求报告,说明系统的功能。 通过面向对象的分析与设计建立系统模型。 ②通过面向对象的分析与设计建立系统模型。 实现该模型, ③用 OOP实现该模型,完成编程和调试。 实现该模型 完成编程和调试。
UML
OO
OOP
Process
OOD
Usecase与use story的区别? 模式的 本质?
UML为什 么这么复 杂?
分析与设计 的区别?
如何表 示分类?
?
如何更好的 编写多线程 程序?
同步消息和 异步消息在 编程中的应 用? 面向对象 是否已过 时?
面向对象技术高级课程 The Advanced Object-Oriented Technology
Process
OOD
学习方法
理论与实践相结合 建模与编程相结合 学习与研究相结合
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
考试要求
考核方式 1、实习 、实习—30% 2、作业 、作业—20% 3、笔试 、笔试—50% 实习要求
12
3学时 学时
2010.12.2星期四上午 星期四上午
13
3学时 学时 3学时 学时 3学时 学时
2010.12.9星期四上午 星期四上午 2010.12.16星期四上午 星期四上午 2010.12.23星期四上午 星期四上午
14 15
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程的主要目标
OO
OOP
Process
OOD
深入了解面向对象方法的基本概念、原理、发展历史、 深入了解面向对象方法的基本概念、原理、发展历史、人物与现 状。 深入了解UML中各种常用图的语法语义 中各种常用图的语法语义(1.X,2.0)。 深入了解 中各种常用图的语法语义 。 熟练地掌握面向对象的分析与设计方法, 熟练地掌握面向对象的分析与设计方法,能够运用该方法进行软 件系统建模。 件系统建模。 加深对面向对象实现技术的理解,掌握将模型转换为代码的方法。 加深对面向对象实现技术的理解,掌握将模型转换为代码的方法。 了解UML扩展机制与元模型的概念 了解模型驱动的体系结构 扩展机制与元模型的概念, 了解 扩展机制与元模型的概念 (MDA)的思想、原理与规范。 )的思想、原理与规范。
OOA UML
OO
OOP
Process
OOD
授课计划
课次 6 内容 面向对象分析——类图(下) 类图( 第二部分 面向对象分析 类图 学时 3学时 学时 时间 2010.10.22星期四 上午 星期四
7
面向对象分析——交互图(上) 交互图( 第二部分 面向对象分析 交互图
3学时 学时
2010.10.29星期四 上午 星期四
程
系
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
课程内容概述—一种范型
现实世界 面向对象的需求分析
面向对象的模型
OO
OOP
Process
OOD
面向对象的系统分析 面向对象的系统设计
从现实世界中客观存在的事物 (即对象)出发来构造软件系 统,并在系统构造中尽可能运 用人类的自然思维方式。
8
面向对象分析——交互图(下) 交互图( 第二部分 面向对象分析 交互图 面向对象分析——状态图(上) 状态图( 第二部分 面向对象分析 状态图 面向对象分析——状态图(下) 状态图( 第二部分 面向对象分析 状态图 面向对象分析——包图 第二部分 面向对象分析 包图 面向对象设计——设计概述 第三部分 面向对象设计 设计概述 第三部分 面向对象设计——问题域的设计 面向对象设计 问题域的设计
OOA UML
授课方式
课堂讲授为主 鼓励提问、 鼓励提问、讨论 布置一些思考题或课堂作业
OO
OOP
Process
OOD
面向对象技术高级课程 The Advanced Object-Oriented Technology
OOA UML
本课程的准备知识、学习方法
准备知识
一种面向对象的编程语言
OO
OOP