UML学习:机房收费系统-类图
- 前言
- 机房收费系统类图
- 类图分析
- 学生类
- 一般用户类
- 操作员类
- 管理员类
- 附加类
- 关系总图
- 类图分析
- 总结
前言
上回说到一个软件系统的用例图在开发过程中起到的作用,并且通过机房收费系统对用例图进行了阐述,这次继续看看类图在软件开发中的一些作用和特点。
在以前的认识中,一直觉得学生可以当作一般用户,但是再后来的学习中,才发现如果将学生归为一般类,那么在接下来的类图中,一般用户的行为将无法再划分,即老师和学生的行为会出现冲突,导致该类的执行错误。所以,将学生进行单个归类之后,就可以将一般用户级别的类进行具体的行为细化。
机房收费系统类图
类图分析
学生类
属性行为一览图:
一般用户类
属性行为一览图:
操作员类
属性行为一览图:
管理员类
属性行为一览图:
附加类
此外,对于机房收费系统中最关键的一个类别就是“上机卡”了,有了上机卡的卡号,我们才可以正常使用机房收费系统,下面是“卡”这个类的类图
属性行为一览图:
关系总图
下面就是我对机房收费系统的一个初步的理解整理而成的类图。对于管理员,操作员,一般用户之间的关系,我开始觉得用泛化比较贴切,因为一般用户的权限管理员和操作员可以有,操作员的权限管理员可以有。所以,一般用户的操作权限是从操作员继承而来,同理,操作员继承了管理员。但是,后来想了想,操作员和一般用户之间在代码上并没有明确的对管理员进行继承,反而是两个单独的类,只是权限共享范围不同而已,所以做了一下小的修改形成了这张图。
总结
总之,一个软件的类图是用例的一个具体的体现,好的类图才能让接口写起来更加清楚,让开发的分工更加明确。
通过对类图的描绘,总算是对这个机房收费系统有了更深一步的理解,也通过画类图,对我在逻辑方面的想法有了一次小锻炼。
UML学习:机房收费系统-类图相关推荐
- UML学习(一)类图和对象图
对象是一个概念,一种抽象或者事物.对象能够是具有现实意义的事物,也能够是抽象的一个概念.比方,一家公司或者一个进程. 类是一组对象的集合或者抽象的概念.类具有同样的属性和方法. 介绍完基本对象和类的基 ...
- vb.net机房收费系统——类的理解(sqlhelper)
类,什么是类?让我们看看维基百科的定义 在现实世界中,经常有属于同一个类的对象.例如,某辆自行车只是世界上很多自行车中的一辆.在面向对象软件中,也有很多共享相同特征的不同的对象:矩形.雇用记录.视频剪 ...
- 软件工程 选课系统的uml类图_UML建模学生选课系统(类图+对象图+用例图+部署图)...
UML建模学生选课系统(类图+对象图+用例图+部署图) UML建模学生选课系统(类图+对象图+组件图+部署图) 录 1.项目简介 3 1.1. 学生选课系统 3 1.2. 项目主题 3 1.3. 设计 ...
- 机房收费系统——UML类图
在对一个软件系统进行设计和建模的时候,通常是从构造系统的基本词汇开始,包括构造这些词汇的基本属性和行为.系统分析师如果要对所设计的系统清晰认识,还有考虑这些基本词汇之间的关系.而如果把这些行为可视化为 ...
- UML—机房收费系统
背景 学习了软件工程.软件文档.UML图,总算有了对软件开发有了"专业"这个名词的理解.当然用敲过的机房收费系统练手UML九种图,成为提高自己理解的升华部分. UML图软件开发中的 ...
- 机房收费系统个人重构版:软工文档中那些图
[前言] 图,提到这个字的时候脑海中就会出现许许多多的图像,它的重要性相信大家都明白,相比于文字来说它更生动形象正好符合人类大脑的记忆规律:很多人也知道动画片制作原理也是用一张张图片只不过转换的 ...
- 机房收费系统——UML用例图
用例图(Use Case Diagram)是由软件需求分析到最终实现的第一步,说明的是谁要使用系统,以及他们使用该系统可以做些什么,是九种图里面最为基础且非常重要的一张图. 用例图包括3方面内 ...
- 机房收费系统之处理流程图与DFD图
一直想把自己画的图拿出来与大家分享,不过说来惭愧,一是图还没画完,二是图画的确实不咋地, 对于机房收费系统还是感到混乱,图画的不好大家多多指正. 系统处理流程图: DFD图 转载于:https://w ...
- 机房收费系统.Net个人版总结
机房收费系统.Net版到前两天为止才算是彻底完工了.从寒假开始的初步文档+图设计,以及之后的代码实现,到三月中旬开始的文档规范.图规范.代码规范.这个生命周期真是一个长啊.给自己总结了一下:本次机房收 ...
最新文章
- php数据库html文本,关于php,mysql,html的数字分页和文本_php
- VC++ 6.0的小花招
- tensorflow生产环境部署
- 德鲁克的17条思想精髓,读懂管理的本质
- python实现字符串切片
- Adobe Reader栈溢出漏洞(CVE-2010-2883)分析
- Visual Studio 2015安装教程(附激活码)
- python编程模式_Python编程中的反模式
- 【lucene】Lucene 自定义 Parser
- WireMock.NET如何帮助进行.NET Core应用程序的集成测试
- 【观点讨论与支撑】读书到底有没有用?
- tcpdump高级过滤
- 翻译: swift5 iOS中的自动布局教程:Auto Layout入门
- 适用于window平台的java虚拟机_雪豹系统安装说明
- Win300英雄服务器不显示,win7系统玩不了300英雄的解决方法
- idea中webapp无法添加到mian文件夹中
- prisma 风格设置_Prisma中的身份验证-第1部分:设置
- cf1111d(退背包)
- Signature on Pocket PC
- 计算机管理任务类别103,win7系统如何查看电脑的历史开关机时间|win7系统怎么查询电脑开机后运行多长时间...
热门文章
- WIZnet以太网芯片选型指南
- 给你讲讲硬件协议栈的那些事儿—WIZnet 员工Christina培训笔记(一)
- 幼儿园带括号算式口诀_41组“数学顺口溜”+大九九乘法口诀表!给孩子疯狂收藏!...
- Postman RSA+Bate64签名
- android九宫格菜单,Android实现九宫格 主界面应用列表效果
- 修理电脑的一些故障资料
- python爬虫爬取京东店铺商品价格数据(更新版)
- 夜光带你走走进全栈式web开发(12)擅长领域
- Coupang、Joom、Etsy、Newegg、Temu 和Ozon等电商平台如何快速增长销量(测评补单)
- C#模拟PrtScn实现截屏