2.2 类设计
UML规范按照类职责不同将系统设计类分为边界类、实体类和控制类。其中实体类是系统运行的数据基础类,也是类设计的核心部分。按照RUP的思想,采用名词分析法对系统需求进行分析,便可以得到大部分的实体类。对于指纹门禁系统而言,指纹信息数据是系统的核心数据,同时,一些相关的管理信息也是实体类的组成部分,主要有用户信息、系统13志等等.在这里我们只对系统中两个主要类进行分析,如下表格1,2所示。
表1 指纹图象FingerImage实体类
表2 指纹特征Fingerfeature实体类
2.3 数据库模型设计
完成实体类的分析与设计之后,可建立其数据库模型。在本系统中采用Pc机与嵌入式处理器之间的通信来管理相应的数据,因此PC机上数据管理系统的数据库模型设计如下图4所示.数据库表组成包括注册用户管理、被鉴定人信息、指纹特征数据和日志管理,数据库中表结构字段的描述与上文实体类成员变量的结构是相对应的.例如:注册用户信息由RegisterUsers表组织,设置的字段有:用户ID、姓名、用户级别等;指纹图像数据表Fin-gerimage设置的字段有:图像名称、图像保存路径、图像特征数、图像宽度、高度等;指纹特征数据表FingerFeature设置的字段有:ID、注册用户指纹特征、被鉴定人指纹特征、指纹特征数等,完全可以满足系统的需求。图中其它各表的详细数据项描述可根据实际的需要来设计,在此不作过多举例说明。各个表间的连线表示数据表约束,例如:RegisterUs-ers表和Worklog表之间的对应关系为一个注册用户可以对应多条日志记录。同时,RegisterUsers表的主键用户ID)是表WoALog的外键,图中其他依赖关系表示含义相同。
3 指纹门禁系统实现与集成测试
通过反复迭代上述建模及模型验证过程,便可建立起整个系统的正确模型.建模工作流完成以后便是系统的实现阶段,此阶段主要进行下列工作:
(1)实现平台的选择
①硬件的设计与实现
本系统硬件平台采用SAMSUNG公司的S3C2410开发板设计实现,CPU采用,S3C2410A ARM920T.
②系统软件的设计与实现
ARM应用软件的开发需要交叉编译环境,而在Windows平台下常用的ARM SDT调试器提供了一个集成开发环境]DE,可以在一台Pc机上完成编辑、编译、链接、下载和调试等工作.开发工具安装之后,可以用ARM Project Manager来生成一个自己的工程,并在ARM Debuggefor Windows下进行调试.因此,本系统的指纹图像处理及匹配算法采用VC语言在IDE中实现。在系统编码中,已成熟的指纹处理算法为系统的设计奠定了良好的基础。
图4 数据库模型设计
(2)软件编码
建模的最终目的是为了得到可执行的代码,因此在系统实现中很重要的一部分是软件编码.为此,在实现阶段,需要选择某种面向对象的编程语言来完成代码部分的实现。本系统所有软件代码我采用vC语言在IDE中实现,数据库采用SQL Server2000。由于本文中系统采用满足UML规范的建模工具Rational Rose2003,可以很好地支持正,逆向工程,通过对类和对象的详细设计中的规范说明信息,由代码生成器可自动生成可执行的代码框架,开发人员在此基础上对代码进行修改大大提高了代码编辑效率。
系统实现之后,在集成测试时可联合使用所有的UML框图认真分析每个构件的原理,针对每一个系统功能每一个可能发生的错误写出相应的测试程序,进行完整而可靠的测试。
4 小结
本文详细介绍了UML软件分析与建模技术在― 个嵌入式系统开发中的应用,使用Rose建立了该系统的完整模型,通过模型的建立对基于UML的嵌入式软件开发方法进行了一些探索和研究。通过该实例的开发,定性地说明了UML的优点以及它对嵌入式软件开发所能起到的良好的指导作用。但由于UML过于庞大和复杂,不同建模工具对该语言的侧重方面也有所不同,本文是使用了Rational Rose2003完成了所有模型的设计,因此,所建模型在抽象层次等方面还存在一定不足,有待于进一步验证准确性及完整性。在实际开发中可考虑使用多种建模工具对所建模型进行比较,以精化、细化模型,从中选择最优模型来改进系统设计方案。此外,在以后的开发实践中,开发环境应该选择能够支持直接的可执行的模型生成,并且支持基于实时框架的代码生成,从而解决嵌入式软件的可移植性问题。
该文观点仅代表作者,本站仅提供信息存储空间服务,转载请注明出处。若需了解详细的安防行业方案,或有其它建议反馈,欢迎联系我们。