当前位置:文档之家› 精品--第一章软件建模概论-

精品--第一章软件建模概论-


软件的实现方案。 包括软件的实现结构,构件, 文件等。
教学进程
软件建模(内容)
业务模型 需求模型 逻辑模型 设计模型 实现模型 测试模型
测试软件的方案描述。
教学进程
主要内容
• 1.1 模型 • 1.2 软件过程 • 1.3 软件模型 • 1.4 面向对象方法基础 • 1.5 面向对象的软件建模方法
• 1963年美国飞往火星的火箭爆炸,造成1000万美元 的损失。原因是FORTRAN程序: DO 5 I=1,3 误写为:DO 5 I=1 . 3
• 1967年苏联“联盟一号”载人宇宙飞船在返航时, 由于软件忽略一个小数点,在进入大气层时因打不 开降落伞而烧毁。
63
硬件/软件成本变化趋势
100%
1.1 模型 (模型的类型)
可以从不同方面对模型进行分类: 2. 从形物化角度 1分. 从:学科分:
思维模型 社会模型 工程模型 建筑模型
软件模型
逻辑模型
实体模型
3. 从抽象程度 分: 概念模型—系统的雏形,对系统的概 括性描述。
逻辑模型—原理上合理可行的系统, 是对现实系统的逻辑化、设计性描述。
硬件
软件
0% 1955
1970
1985
64
软件技术进步落后于需求增长
65
软件危机
• 原因 客观:软件本身特点 • 逻辑部件 • 规模庞大 主观:不正确的开发方法 • 忽视需求分析 • 错误认为:软件开发=程序编写 • 轻视软件维护
66
软件危机及软件工程
• 软件工程
– 提出:1968年北大西洋公约 软件可靠性会议(NATO)
3. 软件过程的提出
◆软件80年代中期以前,软件过程没有受 到重视,软件过程分含在不同的软件开发方法 之中,软件过程十分混乱;
◆90年代软件过程开始受到重视,95年 国际ISO正式颁布软件过程标准;
◆ 98年OMG正式接受Rational提出的R UP:统一软件开发过程。
4. 软件工程过程的基本内容
系统实现的任务是把软件系统的设计方案 转变成为可以交付测试的软件系统实物。系统 实现的工作包括
● 编程; ● 单元测试; ● 系统集成。
⑤.测试(Test)
测试是对所实现的软件系统进行的测试 。测试的工作包括:
●编制测试计划 ●构造测试用例 ●实施测试
主要内容
• 1.1 模型 • 1.2 软件过程 • 1.3 软件模型 • 1.3 面向对象方法基础 • 1.4 面向对象的软件建模方法
5
0.4 参考书目(1/2)
面向对象技术UML教程 《UML与软件建模》
– 王少锋 清华大学出版社 – 徐宝文 清华大学出版社
6
0.4 参考书目(2/2)
• UML 用户指南
– Grady Booch
• .Rational Rose 2019教程
7
考核方式
项目
所占成绩比例
考试 大作业 上机实验
对大型复杂系统建模时,可以采用“各个 击破”的手段,将要解决的问题分解为一系 列小问题,即在建模过程中一次只注重研究 它的一个方面,这样通过对小问题的解决从 而得到整个问题的解。
1.1 模型 (模型的特征)
反映性——模型用来反映客观实体 简化性——以简化的方式来反映客观事物 直观性——方便、直观的方式反映客观 抽象性——以抽象的方式描述客观事物及其规律。
按照国标GB-8566-2019(信息技术软件 生存期过程)规定,软件过程共包括
◆ 获取过程
◆ 运作过程
◆ 供应过程
◆ 维护过程
◆ 管理过程
◆ 支持过程
◆ 开发过程
◆ 裁剪过程
支持 获取过程 合同 供应过程
支持
管理 管理过程 开发过程 运行过程 维护过程
供需观点 需方、供 方
管理观点 管理者
工程观点
11/336
主要内容
• 1.1 模型 • 1.2 软件过程 • 1.3 软件模型 • 1.4 面向对象方法基础 • 1.5 面向对象的软件建模方法
12
1.1 模型
地图模型
1.1 模型
建筑模型
1.1 模型
规划模型
1.1 模型
绘画模型
1.1 模型
数学、物理模型
定积分的含义:
欧姆定律:
1.1 模型
表示法
工具 — 通过建模工具来方便建立模 型。。
过程
工具
主要内容
• 1.1 模型 • 1.2 软件过程 • 1.3 软件模型 • 1.4 面向对象方法基础 • 1.5 面向对象的软件建模方法
30
1.2 软件过程
1. 生命周期与过程
生命周期:指事物衍生存在的时间历程。 人的生命周期







软件建模技术
东北大学信息科学与工程学院 杨雷
E-Mail:
1/336
第0章 Introduction
• 0.1 课程名称 • 0.2 教学目的 • 0.3 教学内容 • 0.4 参考书目
2
0.1 课程名称
• UML语言设计 • 面向对象技术与UML教程 • 软件建模技术
46
1.3 软件模型
软件模型的概念
软件模型:对软件系统在各个开发阶
段本质特性的描述,它要反映软件系统的
形成过程。
领域模型 需求模型 设计模型 实现模型 测试模型
软件模型的作用
1) 软件模型是软件的中间形态 业务领域
用户需求
软件模型
软件产品
2) 软件模型是对业务领域、用户需求、设计意图、 实现环境的反映



过程:是事物在其生命周期中,按照某种特 征,一系列相关活动按照确定的次序演绎变化的 进程。
身体发育过程
人的生命周期
心理成熟过程 性格形成过程
接受教育过程
2. 软件过程的概念
软件过程(software process)是指软件 在其生命周期中,一系列相关活动按照确定的 次序演绎变化的进程。象获取过程、管理过程、 开发过程、维护过程等。
– 使用者的身份和使用的原因是评判模型好 坏的关键
3. 最好的模型总是能够切合实际。
– 模型是现实的简化,必须保证简化过程不 会掩盖任何重要的细节。
4. 孤立的模型是不完整的。
建模的原则
1.1 模型 (模型的三要素)
过程 — 建立模型的过程,只有确切知 道建模的过程才能够成功建立一个模型。
表示法 — 模型的表示,也就是建模 语言,是建立模型的关键,例如UML就是 软件的建模语言。
60
1.4 面向对象方法基础
• 软件危机及软件工程 • 对软件开发的认识 • 复杂性及控制复杂性的基本方法 • 面向对象技术 • 面向对象领域中的基本概念
61
软件危机及软件工程
• 软件危机
• 软件危机:落后的软件生产方式无法满足迅速 增长的软件需求,从而导致软件(大型)开发与
维护过程中出现一系列严重问题的现象。
• 音乐建模的表示载体:五线谱 • 建筑建模的表示载体:图纸 • 软件建模的表示载体:?
1.2 软件建模(内容)
业务模型
也叫领域模型,描述软件所要服 务的业务领域的业务状况和业务 关系。
教学进程
1.2 软件建模(内容)
业务模型 需求模型
描述软件向用户所能够提供的 外在特性,包括软件的目标、 功能、性能等。
操作者 开发者 维护者
支持过程: 文档过程 质量保证过程 配置管理过程 验证过程 培训过程 评审与审计过程 环境建立过程
支持观点 介入支持过程的人员
图1 软件过程
5.统一软件开发过程RUP
1) RUP的提出
美 国 Rational 公 司 , 于 2019 年 6 月 公 布 了 统 一 软 件 开 发 过 程 RUP ( Rational Unified Process)。
平时表现、作业 、考勤 总评
40% 30% 20% 10%
100%
课程资源、课时安排
• 课件:

• 本课程相关网站:

• 课时安排:
– 授课+上机:24+16 学时+n自学
如何学好
第1章 软件建模概论
东北大学信息科学与工程学院 杨雷
E-Mail:
便于理解和交流——模型可以促进项目的 有关人员对系统的理解和交流。 优选方案——通过模型帮助人们从多个方 案中挑选出优选的方案。 缩短开发周期——通过建模形象化系统开 发内容和开发过程,提高开发效率,缩短开 发周期。
1.1 模型 (建模的原因)
人对复杂问题的理解能力有限,通过建模 对现实世界进行一定程度的抽象,可以简化 所研究问题的难度。
软件生存周期的瀑布模型
1.1 模型
模型定义:模型是对某一系统完整的抽象, 是对现实的简化。
模型是对现实系统的简化或模拟,是对现 实系统本质特征的一种简化、直观、类比和 抽象的描述。
建模的目的是为了解决客观世界中存在 的问题,而不仅仅是为了描述客观事物
模型的表示包括文字或图形。
1.1 模型 (模型的作用)
• 主要表现:
– 软件开发费用和进度失控 – 软件的可靠性差
Crisis!
– 生产出来的软件难以维护
– 软件成本在计算机系统总成本中所占的比例居高不 下,且逐年上升
– 软件开发生产率提高的速度远远跟不上计算机应用 迅速普及深入的需要
62
软件危机例证
• IBM公司的 OS/360,共约100万条指令,花费了 5000个人年;经费达数亿美圆,而结果却令人沮丧, 错误多达2000个以上,系统根本无法正常运行。 OS/360系统的负责人Brooks这样描述开发过程的 困难和混乱:“…像巨兽在泥潭中作垂死挣扎,挣 扎得越猛,泥浆就沾得越多,最后没有一个野兽能 够逃脱淹没在泥潭中的命运。…”
相关主题