UML基础、建模与设计实战笔记03第3、4章建模工具简介,常见uml建模工具,创建模块,创建类,用例图,参与者,用例,用例描述,用例之间的可视化表示,用例图建模技术及应用,进销存系统用例图
1、常见uml建模工具
建模工具应该具有的功能
- 绘图
- 存储
- 一致性检查
- 对模型进行组织
- 导航
- 写作支持
- 代码生成
- 逆向项目
- 集成
- 支持多种抽象层和开发过程
- 文档生成
- 脚本编程
工具主要有
Rose
PowerDesinger
2、StarUML的模型、视与图
starUML中清晰地区分了模型(model),视(View)与图(Diagram)的概念。
模型是包含软件模式信息的元素。
视是模型中信息的可视表达法。
图是表示用户特定设计思想的可视元素的集合。
3、创建模块
模块是一种包,他提供了对starUMl功能与特征的扩充,模块的创建可以是几种新扩充元素的结合。不单可以为某用途对一个独立的模块配置扩充元素,而且还可以在同一模块中创建同一类型的扩充元素。
starUML的模块有下列功能
- 扩展主菜单,或弹出菜单
- 添加新方法(approach)
- 添加新轮廓(profile)
- 通过构造型(stereotype)或表示法(notation)的扩充添加新元素
- 通过(com服务器或简单的脚本文件)实现新的功能
- 与其他应用程序集成
- 其他的插件(add-in)功能
4、创建类
创建atrribute属性和operation方法
对属性或操作设置数据类型
类属性的常见属性为:
5、用例图
用来描述将要开发系统的功能需求和系统的使用场景
作为设计和开发过程的基础,促进各阶段开发工作的进展。
用于验证与确认系统需求。
用例图由以下元素组成。
参与者(Actor):也称角色,代表系统的用户
系统边界(System scope):它确定系统的范围
用例(Use case):代表系统提供的服务
关联(Association):表示参与者与用例间的关系
下图中,所有用例都放置在系统边界内,表明它属于一个系统,参与者放在系统边界的外面,表名参与者并不属于系统。但是参与者负责直接(或间接地)驱动与其相关联的用例的执行
6、参与者(角色 actor)
是系统外部的一个人或物,以某种方式参与了系统的执行过程。用直立人来表示
参与者的作用:
1、建立系统的外部用户模型
2、对系统边界之外的对象进行描述
参与者实际上就是类
7、用例(就是谁干了一件什么事)
用例是对一组动作的描述,系统通过执行这些动作将对用例的参与者产生可以看到的结果。用来描述参与者可以感受到的系统服务或功能。
用例用实线椭圆来表示
用例的特点:
- 用例是从系统的使用角度描述系统中信息,即在系统的外部能看到的系统的功能,而不考虑系统内部对该功能的具体实现方式。
- 用例沟通了用户提出的一些课件需求,对应一个具体的用户目标,是面向独享分析与设计的起点,是类,对象、操作的来源
- 用例通常由某个参与者来执行
- 用例把执行的结果反馈给参与者
- 用例在功能上具有完整性,即它从参与者接受输入,产生的结果最终再输入给参与者
8、用例描述
用例就是需求的文字性描述,说明系统如何工作的功能性或者新微信需求。
用例描述一般包括,用例编号、用例概述(说明)、前置(前提)条件、基本事件流、其他事件流、异常事件流、后置(事后)条件等。
用例并不是系统过得全部需求,用例描述只是功能性方面的需求。
关联用于表示参与者和用例之间的对应关系,它表示产于这使用了系统中的哪些服务。或说系统中所提供的服务(用例)被哪些参与者说使用。
一个简单的系统用例图
9、用例之间的可视化表示
用例与用例之间也存在一定的关系,如泛华关系,包含关系,扩展关系
- 1、包含关系
包含关系指的是两个用例之间的关系,其中一个用例(基本用例)的行为包含了另一个用例(包含用例)的行为。即基本用例用到包含用例
使用带虚线箭头表示,并在线上标记include
- 2、扩展关系
扩展关系的基本含义与泛华关系类似,extend关系是对基本用例的扩展。基本用例是一个完整用例。不需要子用例参与即可完成。
extend的基本用例将存在一个扩展点,当扩展点被激活时,子用例才会被执行。
基本用例必须声明若干扩展点(extension piont)而扩展用例只能在这些扩展点上增加新的行为和含义。
也就是扩展用例并不在基本用例中显示
在如下情况下,使用扩展用例:
1、表名用例的某一部分是可选的系统行为
2、只有在特定条件下才执行分支
3、多个扩展点的插入,其插入的顺序决定了执行顺序
使用带虚线的箭头表示,并在线上标有extend
- 3、泛化关系
一般与特殊的关系,当多个用例共同拥有一种类似的结构和行为的时候,可以将他们的共性抽象成父用例。其他用例泛化成子用例
子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构,行为和关系。
- 4、分组关系
将多个相关用例放在一个包中组织起来。
10、用例图建模技术及应用
创建用例图模型主要包括3部分内容
- 识别出系统中的角色和用例
- 区分用例之间的先后次序
- 创建用例图模型结构
1、识别出系统中的角色和用例
创建用例图的第一项任务就是要找出系统的角色和用例。
有系统分析员和用户沟通来完成。
一般是先列出角色清单 ,在对每个角色列出他的用例,问题就会变淡容易得多。
用例描述为
2、区分用例有限次序
用例之间可能有逻辑或者时间上的先后顺序
3、构建用例图模型
将已经确定并细化的角色和用例放入用例图中,在借助包含、扩展和泛化的关系给出用例之间的结构模型。
在系统需求分析中考虑:
系统用例图模型需要哪些视图
每个视图包含什么内容
视图中成员是否需构成包
图书管理系统用例图
1、系统参与者
2、图书管理
3、图书借阅和还书用例图
图书管理系统的整体用例图
11、一个进销存系统用例图
1、需求分析
2、建立用例图模型
库存管理子系统用例图
UML基础、建模与设计实战笔记03第3、4章建模工具简介,常见uml建模工具,创建模块,创建类,用例图,参与者,用例,用例描述,用例之间的可视化表示,用例图建模技术及应用,进销存系统用例图相关推荐
- 进销存系统的先进先出设计思路解决方案
进销存系统的先进先出设计思路 如题,进销存一般客户要求先进的货先卖,请问各位大侠有什么好的办法实现这个功能?特别是频繁进货如何实现先进先出 ------解决方案-------------------- ...
- 超市进销存系统 数据库设计报告
超市进销存系统 数据库设计报告 注意:本设计报告省略了需求分析部分.实体说明.联系说明.索引说明等,重点是数据库的实现过程以及sql语言的编写以及其他一些我认为的重点展示 另外:本系统前期主要使用了软 ...
- java毕业生设计超市货品进销存系统前台计算机源码+系统+mysql+调试部署+lw
java毕业生设计超市货品进销存系统前台计算机源码+系统+mysql+调试部署+lw java毕业生设计超市货品进销存系统前台计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B ...
- java毕业生设计超市货品进销存系统后台计算机源码+系统+mysql+调试部署+lw
java毕业生设计超市货品进销存系统后台计算机源码+系统+mysql+调试部署+lw java毕业生设计超市货品进销存系统后台计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目架构:B ...
- 进销存系统数据库设计
进销存系统数据库设计报告 产品管理功能 1 产品类型基本信息表:(提供增删改) 字段名 类型 宽度 主键否 外键否 类型ID 整数 Yes No 类型 ...
- PyMySQL设计-进销存系统-多彩美化 删除表格 创建表格
目录 颜色 创建表格 删除表格 总目录 本文持续更新 颜色 相信但你一目扫过去,只有一种单调的颜色,肯定不太喜欢吧?那就给它配上颜色! pip install colorama colorama库,可 ...
- PHP进销存系统的数据结构,数据结构课程设计-仓库进销存管理系统.doc
数据结构课程设计-仓库进销存管理系统.doc 题 目: 仓库进销存管理系统 学 院: 计算机与控制工程学院 专业班级: 软件101 学生姓名: 王海川 指导教师: 王一萍 2012 年06 月2 9日 ...
- 超市进销存系统的设计与实现
开发工具(eclipse/idea/vscode等): 数据库(sqlite/mysql/sqlserver等): 功能模块(请用文字描述,至少200字): 该小型超市进销存系统主要针对模块管理,用户 ...
- 基于ssm(spring mybatis) java超市进销存系统源码设计
超市进销存系统主要为商品的进货上架.销售收银.仓库存储提供线上管理的功能. 目标客户:中小型超市 客户的业务需求: 改变传统的人工管理,实现日常管理信息化: 通过对库存和销售信息的快速查询和处理,提高 ...
最新文章
- npm ERR! missing script: dev 解决方案
- java solar_java中的内部类总结
- django 连接mysql 数据库
- 4路组相连cache设计_Cache组织方式
- NGUI Example5 演示示例评论– lights and Refraction
- 人工智能常用 API
- linux下实现web数据同步的四种方式(性能比较)
- 使用ResourceBundle读取配置文件
- 为什么建议要延迟macOS升级,小编为你全面分析!
- BZOJ3145 [Feyat cup 1.5]Str 后缀树、启发式合并
- 工时分析软件哪个好用?ECRS工时分析软件-精益人都在用的IE分析软件
- 批处理保存windows10开机壁纸
- 高级维修电工实训装置
- 计算机更新bios,GIGABYTE How to Reflash VGA BIOS
- 数据结构与算法之python
- android barchart设置标题,android - 如何设置MPAndroidChart BarChart的高度和宽度? - 堆栈内存溢出...
- win11改win10重装系统教程图解
- C++按键模拟/刷屏器
- 读书、学习是为了让我们成为更出色的人同时做自己喜欢的事
- Windows邮件添加QQ邮箱