目 录
1.概述…………………………………………2
1.1 设计题目与描述…………………………………2
1.2 设计目的…………………………………………2
1.3 设计平台与工具…………………………………2
1.4 设计时间…………………………………………2
2.需求分析……………………………………3
3.系统设计……………………………………4
3.1 系统类图…………………………………………4
3.2 系统数据流图……………………………………5
3.3 系统用例图………………………………………6
3.4 系统序列图………………………………………7
3.5 系统状态图………………………………………8
3.6 系统部署图………………………………………9
4.课程设计总结与体会…………………………10
5.参考文献………………………………………10
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
指纹门禁系统建模设计
1 概述
1.1 设计题目与描述
指纹门禁系统建模设计。
分析指纹门禁系统功能需求,并利用 UML 画图工具画出类图,用例图,状态图,
序列图,构件图和部署图等,并对各种图进行解释说明,从而实现对指纹门禁系统的模
型建立。
1.2 设计目的
课程设计是对学生的一种全面综合训练,是与课堂听讲、自学和练习相辅相成的必
不可少的一个教学环节。通常,设计题中的问题比平时的实验练习题要复杂,也更接近
实际。《软件体系结构》这门课程安排的课程设计的目的是旨在要求学生进一步巩固课
堂上所学的理论知识,深化理解和灵活掌握教学内容。在平时学习中掌握了基本的软件
体系结构风格与模式,在这次的课程设计中,使用 UML 建模语言,实现指纹门禁系统
的建模设计,加深对课上所学知识的理解,同时对目前比较流行的嵌入式开发有一个了
解。
1.3 设计平台与工具
操作系统:Microsoft Windows XP 操作系统;
工具:Microsoft Visio 2003 画图工具,StarUML 建模工具。
1.4 设计时间
消化资料、系统调查
系统分析
总体设计、实施计划
撰写课程设计报告书
第 21 周周一至周五
1 天
1 天
2 天
1 天
2
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
2 需求分析
随着社会的发展、科技的进步,嵌入式的应用已经随处可见,各种“智能”设备都离不
开嵌入式,嵌入式开发是一个很热的话题,这都源于嵌入式几乎无处不在,它有广阔的市场
前景。目前,将指纹识别技术应用到各种需要身份验证的系统或者嵌入到原有的大量保安系统,
会大大提高系统的安全性和便捷性.在本次课程设计中,我设计了一个嵌入式指纹门禁系统,
它使用指纹识别技术来验证用户身份,并能实现日常管理. 主要包括:用户信息注册、删除、
查询、指纹比对、门禁控制和监视以及日志管理等. 针对嵌入式指纹门禁系统的复杂性,在本
系统的开发中,按照UML 规范,采用基于UML 的嵌入式软件分析与建模方法。
经过基本功能需求分析,我们初步定下指纹门禁系统应具有的功能如下:
a) 管理员登记注册新增用户:凡是新增加的用户,管理员都要进行登记注册。登记时输
入编号、姓名、安全等级,并使用扫描仪器输入器指纹信息。
b) 管理员删除注册用户:当用户调离岗位或因其他缘由没有存在的需要时候,可随时将
其信息注销。管理员输入要删除用户的编号即可注销,之后其各信息包括指纹信息都
不复存在。
c) 扫描指纹信息并控制门的开关:当用户人有进入需求时,用手贴在指纹扫描器上,指
纹扫描器扫描其指纹信息,并到用户信息中一一对比,找出匹配项。比较其安全等级
是否大于或等于此门的安全等级,从而判断用户是否有开锁权限。若有且锁的状态为
“已锁住”则驱动电控锁装置打开锁和门,并记录用户进门时间等信息。否则系统报
警。
d) 报警功能:在异常情况下可以实现微机报警或报警器报警,如:非法侵入、门超时未
关、掉电等,同时也将门禁系统出现警报时的情况记录下来。同时与消防报警监控联
动起来,在出现火警时门禁系统可以自动打开所有电子锁和门,让里面的人随时逃生。
e) 实时监测:将系统设置成实时监测状态,这时每进入一个用户,门口液晶显示屏和监
控室中的计算机终端都有显示。
f) 扩展功能:如有需要,可以再室内增加闭路电视系统,当室内用户数目从0到1就开启
该系统,录下用户在室内的一举一动。
3
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
3 系统设计
3.1 系统类图
4
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
针对以上类图的一些说明:
系统中的每个电控锁都有一个唯一的编号,锁的状态有两种:“已锁住”和“未锁住”,
锁应与对应的门相互关联,开锁之后开对应的门。锁应有安全等级,只有用户安全等级大
于等于锁安全等级,才可以开启。所以锁的成员变量为:lockID,securityLevel,state,doorId。
用户信息包括用户编号、用户名、安全等级、指纹信息。故成员变量为:userId,
userName,userFinger,securityLevel。
指纹扫描器可以读取指纹信息,并发送中断事件给锁控器,告知接受指纹信息。成员函
数为:readInfo(),interruption()。
锁控器从指纹扫描器读取用户的指纹并将指纹信息发送到主机,并负责驱动锁控器和门
装置,实现开锁和开门功能。成员函数:readReader(),requireFrame(),openLock(),
opendoor()。
主 机 负 责 读 取 锁 状 态 readstate() , 读 取 锁 安 全 等 级 readseclev() , 读 取 用 户 信 息
readuser(),并比较等级,判断是否可以开锁。
3.2 系统数据流图
系统管理员授权不同级别的用户,使其有权建立相关设备档案、用户的基本资料和指纹
信息,用户进门时,通过门禁系统完成指纹、设备档案、权限三者的对比,产生相对应的
指令,并纪录日志。顶层数据流图如下图所示。
5
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
3.3 系统用例图
在功能需求分析中已经说清楚该系统具有的功能。系统启动后要自检(包括微处理器和
传感器检测)。下面是管理员和普通用户对系统操作的用例图。
6
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
3.4 系统序列图
用户开锁时,只需按下指纹采集器,指纹采集器将发送一个中断事件给锁控器,锁控器
从指纹采集器读取用户的指纹并将指纹信息发送到主机,主机根据数据库中存储的信息来
判断用户是否具有开锁权限,若有且锁当前状态为“已锁住”,则将锁和门打开,否则系统
报警。
序列图如下所示:
7
武汉理工大学《软件体系结构》课程设计之《指纹门禁系统建模设计》
3.5 系统状态图
主机 MainFrame 的状态图:
主机启动后,等待从 FingerReader 发来的中断事件,当有中断事件时候,取出指纹信
息,检查锁状态,安全等级和请求人安全等级,判断是否可以开锁,可以则驱动装置开锁
和门,否则报警。
状态图如下所示:
8