Application of UML in the Development of Fingerprint Access Control System

Publisher:SereneMeadow7Latest update time:2011-06-10 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

The development of embedded systems is a collaborative design process of hardware and software, which requires people with different technical backgrounds to work together. However, the traditional embedded software analysis and design methods are seriously out of touch, and there is no definite unified standard in the development process, which makes every process of product formation seriously affected by human factors. In addition, the results of analysis and design cannot be reused when developing similar projects or products. The above problems have become the main bottlenecks restricting the development of embedded systems for many years, making the development of most embedded software very difficult or even impossible.

As the standard of object-oriented modeling technology, UML is suitable for simplifying complex system design problems. It describes the system in an object-oriented graphical way and supports the whole process from analysis, design to modeling. According to the UML specification, using the CASE tool Rational Rose to model the embedded system can not only standardize the system analysis and design, but also combine the construction method of UML analysis and modeling with the corresponding integration and testing strategies. It can completely realize that the system analysis, design, production and testing can be completed by different project members in a unified and consistent way, which will make the development of high-quality embedded systems easier.

1 Fingerprint Access Control System Requirements Analysis

At present, applying fingerprint recognition technology to various systems that require identity authentication or embedding it into a large number of existing security systems will greatly improve the security and convenience of the system. In this paper, an embedded fingerprint access control system is designed, which uses fingerprint recognition technology to verify the identity of the user and provides a complete set of software and hardware to implement the daily management of the access control system. It mainly includes: user information registration, deletion, query, fingerprint comparison, access control and monitoring, and log management.

Aiming at the complexity of embedded fingerprint access control system, in the development of this system, according to UML specification, UML-based embedded software analysis and modeling method is adopted, and various model diagrams are drawn using CASE tool Rational R0 to provide support for the system analysis, design, verification and implementation process from different levels and angles. It also discusses in detail how to use UML to assist in the development of the entire system.

1.1 System Function Requirements

The modeling process should first start with the classes in the system. In order to understand the structure of the classes, it is necessary to make a general statement of the system and its working process. After analysis, the system contains an electric door, a fingerprint sensor, a microprocessor, a storage system for storing fingerprint database, a numeric keyboard, a cross-shaped key, an LCD screen, an electric door and two status lights. The system obtains fingerprint data from the fingerprint sensor, preprocesses and extracts features in the microprocessor, obtains the biometric code information of the fingerprint, and verifies the matching algorithm with the fingerprint template of the registered user in the fingerprint database, and outputs the result, which is displayed through the status light. At the same time, a control signal is sent according to the matching result to control the switch of the door. By further analyzing the system and classes, the overall class diagram of the system can be obtained as shown in Figure 1. Through this diagram, we can know the basic classes contained in the system and their relationships with each other, which lays the foundation for the establishment of the dynamic model in the following text.

Figure 1 Class diagram of fingerprint access control system

1.2 Use Case Description

Through the requirements analysis of the system, we have determined the functions that the system needs to achieve. So how can we describe these functions in a visual way so that we can better communicate with users and understand their needs more accurately? This requires the use of UML's use case model. In UML, a use case can be described as an interaction between a participant and a system. Each use case is a different way of using the system and will produce different results. The role is the object that interacts with the system, which is the person or other system that uses the system. The use case diagram lists the functions that users want most and the description of each function. After analysis, the use case diagram of this system is shown in Figure 2.

Figure 2 Fingerprint access control system use case diagram

From the figure, we can clearly understand the functional requirements of the system. The system has two main types of users: ordinary users and administrators. The "Start System" use case indicates that the system will perform self-tests on sensors and microprocessors when it is initialized. After entering the normal working state, ordinary users can use the "Authentication" use case to verify their fingerprints. If they are unregistered users, they can register their relevant information through the "Register" use case under the premise of obtaining legal II). The "Open/Close Door" use case provided by the system mainly controls the opening and closing of the door by transmitting the control signal to the door drive motor through the signal line based on the fingerprint matching result. The administrator is mainly responsible for system maintenance and can use the "Register", "Search" and "Delete" use cases to perform information management operations. Since we do not fully understand the system at this stage, and in order to control the number of use cases, we only give the overall use case model of the system here. In the subsequent detailed design stage, we can further refine these use cases to refine the system requirements.

2 Fingerprint Access Control System Design

After the demand analysis is completed, the system design can be further guided by the analysis results and the established model diagram. The system design mainly includes use case detailed design, class design, data model design, etc.

2.1 Use Case Detailed Design

In the detailed design phase, each use case in the system requirements needs to be analyzed in detail and documented in a common representation so that developers can more clearly understand the specific implementation process of each use case [5]. This paper takes the fingerprint verification use case as an example and conducts a further detailed analysis of the use case. It includes fingerprint collection, preprocessing, image enhancement, refinement, binarization, feature code extraction, comparison, and result output. These processes can be clearly represented through documents. When describing the system use case, we start from the user's perspective and do not involve the internal system. After analyzing the classes that meet the system requirements, we can implement the use case through the interaction between classes based on the use case-driven idea. Embedded systems generally interact with hardware devices such as sensors, and there are also strong time and memory space constraints. The interaction diagram is used to describe the dynamic interaction behavior between objects. It shows the process of the use case step by step. Two types of interaction diagrams are defined in UML: sequence diagram and collaboration diagram. These two diagrams show the same information but are organized differently. The sequence diagram is sorted by time and displays the operations between objects in sequence; the collaboration diagram is centered on data flow and displays the data exchange between objects. Since the sequence diagram can better illustrate the interaction sequence between objects and help us understand the system, this article uses the sequence diagram of the "fingerprint verification" use case (see Figure 3) as an example to describe the interaction process between objects. Other use cases can be described in detail in this way so that we can have a clearer understanding of the specific implementation process of each function (use case) of the system.

Figure 3 Sequence diagram of fingerprint verification use case

2.2 Class Design

UML specification divides system design classes into boundary classes, entity classes and control classes according to different class responsibilities. Among them, entity classes are the data foundation classes for system operation and the core part of class design. According to the idea of ​​RUP, most of the entity classes can be obtained by analyzing system requirements using noun analysis. For fingerprint access control system, fingerprint information data is the core data of the system. At the same time, some related management information is also a component of entity classes, mainly user information, system logs, etc. Here we only analyze two main classes in the system, as shown in Tables 1 and 2 below.

Table 1 Fingerprint image FingerImage entity class

Table 2 Fingerfeature entity class

2.3 Database model design

After completing the analysis and design of the entity class, its database model can be established. In this system, the communication between the PC and the embedded processor is used to manage the corresponding data. Therefore, the database model design of the data management system on the PC is shown in Figure 4 below. The database table consists of registered user management, identification person information, fingerprint feature data and log management. The description of the table structure field in the database corresponds to the structure of the entity class member variables above. For example: registered user information is organized by the RegisterUsers table, and the fields set are: user ID, name, user level, etc.; the fields set in the fingerprint image data table Fingerimage are: image name, image save path,

The number of image features, image width, height, etc.; the fields set in the fingerprint feature data table FingerFeature are: ID, registered user fingerprint features, fingerprint features of the person being identified, number of fingerprint features, etc., which can fully meet the needs of the system. The detailed data item descriptions of other tables in the figure can be designed according to actual needs, and no more examples are given here. The lines between the tables represent data table constraints, for example: The corresponding relationship between the RegisterUsers table and the Worklog table is that one registered user can correspond to multiple log records. At the same time, the primary key user ID of the RegisterUsers table is the foreign key of the WoALog table, and the other dependency relationships in the figure have the same meaning.

3 Fingerprint access control system implementation and integration test

By repeatedly iterating the above modeling and model verification process, a correct model of the entire system can be established. After the modeling workflow is completed, it is the system implementation stage, which mainly carries out the following tasks:

(1) Implementation platform selection

①Hardware design and implementation

The hardware platform of this system is designed and implemented using the S3C2410 development board of SAMSUNG Company, and the CPU uses S3C2410A ARM920T.

②Design and implementation of system software

The development of ARM application software requires a cross-compilation environment, and the commonly used ARM SDT debugger on the Windows platform provides an integrated development environment [DE], which can complete editing, compiling, linking, downloading and debugging on a PC. After the development tool is installed, you can use ARM Project Manager to generate your own project and debug it under ARM Debuggefor Windows. Therefore, the fingerprint image processing and matching algorithm of this system is implemented in IDE using VC language. In the system coding, the mature fingerprint processing algorithm has laid a good foundation for the design of the system.

Figure 4 Database model design

(2) Software Coding

The ultimate goal of modeling is to obtain executable code, so software coding is a very important part of system implementation. To this end, in the implementation stage, it is necessary to choose an object-oriented programming language to complete the implementation of the code part. All software codes of this system are implemented in IDE using vC language, and the database uses SQL Server 2000. Since the system in this article uses Rational Rose 2003, a modeling tool that meets the UML specification, it can well support forward and reverse engineering. Through the specification description information in the detailed design of classes and objects, the code generator can automatically generate an executable code framework. Developers can modify the code on this basis, which greatly improves the efficiency of code editing.

After the system is implemented, all UML diagrams can be used together during integration testing to carefully analyze the principles of each component, write corresponding test programs for each system function and each possible error, and conduct complete and reliable testing.

4 Summary

This paper introduces the application of UML software analysis and modeling technology in the development of an embedded system in detail. The complete model of the system is established using Rose. Through the establishment of the model, some exploration and research are carried out on the embedded software development method based on UML. Through the development of this example, the advantages of UML and its good guiding role in embedded software development are qualitatively explained. However, since UML is too large and complex, different modeling tools have different emphases on this language. This paper uses Rational Rose2003 to complete the design of all models. Therefore, the model built still has certain deficiencies in terms of abstract level and other aspects, and further verification of accuracy and completeness is needed. In actual development, it is possible to consider using multiple modeling tools to compare the built models, so as to refine and refine the models and select the optimal model to improve the system design scheme. In addition, in future development practice, the development environment should be selected to support direct executable model generation and support code generation based on real-time framework, so as to solve the portability problem of embedded software.

Reference address:Application of UML in the Development of Fingerprint Access Control System

Previous article:Research on an Improved Repetitive Controller
Next article:Application of TMP03/04 digital temperature sensor in temperature protection

Latest Industrial Control Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号