UML嵌入式軟件在指紋門(mén)禁系統開(kāi)發(fā)中的應用

發(fā)布時(shí)間:2010-12-25 20:19    發(fā)布者:conniede
關(guān)鍵詞: UML , 測試 , 門(mén)禁
嵌入式系統的開(kāi)發(fā)是一個(gè)軟硬件協(xié)同設計過(guò)程,它需要不同技術(shù)背景的人共同開(kāi)發(fā).而傳統的嵌入式軟件分析與設計方法嚴重脫節,開(kāi)發(fā)過(guò)程沒(méi)有—個(gè)確定的統一的標準,這使得產(chǎn)品形成的每一個(gè)過(guò)程人為因素影響嚴重.此外,分析設計的結果不能在開(kāi)發(fā)類(lèi)似項目或產(chǎn)品時(shí)重用.以上幾個(gè)問(wèn)題成為多年來(lái)制約嵌入式系統發(fā)展的主要瓶頸,使得大部分嵌入式軟件的開(kāi)發(fā)工作變得十分困難甚至無(wú)法進(jìn)行。

作為面向對象建模技術(shù)的標準,UML適合于將復雜的系統設計問(wèn)題簡(jiǎn)單化.它采用面向對象圖形的方式對系統進(jìn)行描述,支持從分析、設計到建模的全過(guò)程.按照UML規范,使用CASE工具Rational Rose對嵌入式系統建模,不僅可以使系統分析設計實(shí)現標準化,而且將UML分析建模的構建方法和相應的集成和測試策略結合在一起,完全可以實(shí)現系統分析、設計和制作、測試分別由不同的項目成員在統一、一貫的方式下完成,這將會(huì )使高質(zhì)量的嵌入式系統的開(kāi)發(fā)變得更為容易。

1 指紋門(mén)禁系統需求分析

目前,將指紋識別技術(shù)應用到各種需要身份驗證的系統或者嵌入到原有的大量保安系統,會(huì )大大提高系統的安全性和便捷性.本文中,設計了一個(gè)嵌入式指紋門(mén)禁系統,它使用指紋識別技術(shù)來(lái)驗證用戶(hù)身份,并提供了一套完整的軟硬件來(lái)實(shí)現門(mén)禁系統的日常管理.主要包括:用戶(hù)信息注冊、刪除、查詢(xún)、指紋比對、門(mén)禁控制和監視以及日志管理等.

針對嵌入式指紋門(mén)禁系統的復雜性,在本系統的開(kāi)發(fā)中,按照UML規范,采用基于UML的嵌入式軟件分析與建模方法,使用CASE工具 Rational R0 繪制了各種模型圖,從不同的層次和角度為系統的分析、設計、驗證以及實(shí)現過(guò)程提供支持,詳細討論了如何使用UML輔助完成整個(gè)系統的開(kāi)發(fā)。

1.1 系統功能需求

建模過(guò)程首先應該從系統中的類(lèi)開(kāi)始,為了理解類(lèi)的結構,需要對系統及其工作過(guò)程做一個(gè)總體陳述.經(jīng)分析,該系統包含一個(gè)電動(dòng)門(mén)、一個(gè)指紋傳感器、一個(gè)微處理器、一個(gè)存儲指紋庫的存儲系統、一個(gè)數字鍵盤(pán)、一個(gè)十字型按鍵、一個(gè)液晶顯示屏、一個(gè)電動(dòng)門(mén)以及兩個(gè)狀態(tài)燈.系統從指紋傳感器中獲取指紋數據,并在微處理器中進(jìn)行預處理和特征提取,獲取指紋的生物代碼信息,并與指紋庫中注冊用戶(hù)的指紋模板進(jìn)行匹配算法的驗證,并輸出結果,通過(guò)狀態(tài)燈顯示,同時(shí)根據匹配結果發(fā)送控制信號控制門(mén)的開(kāi)關(guān).通過(guò)對系統及類(lèi)做進(jìn)一步分析可得到系統總的類(lèi)圖如圖1所示.通過(guò)這幅圖我們可以得知系統中所包含的基礎類(lèi)及其相互之間的關(guān)系,為后文動(dòng)態(tài)模型的建立奠定了基礎。


圖1 指紋門(mén)禁系統類(lèi)圖

1.2 用例說(shuō)明

通過(guò)對系統的需求分析,我們確定了該系統需要實(shí)現的功能.那么如何形象化地描述這些功能,以便使我們更好地與用戶(hù)溝通,更準確地了解他們的需求呢?這就要使用UML的用例模型.在UML中,用例可以被描述為參與者與系統之間的一次交互作用.每一個(gè)用例都是一種不同的使用系統的方法,都會(huì )產(chǎn)生不同的結果.而角色是與系統交互的對象,它是使用該系統的人或者其它系統.用例圖列出了用戶(hù)最想要的功能以及每個(gè)功能的描述.經(jīng)分析,本系統的用例圖如圖2所示。


圖2 指紋門(mén)禁系統用例圖
   
從圖中我們可以明確地了解到系統的功能需求.該系統主要有兩類(lèi)用戶(hù):普通用戶(hù)和管理員.“啟動(dòng)系統”用例表明系統初始化時(shí)要進(jìn)行傳感器和微處理器等的自檢.進(jìn)入正常工作狀態(tài)以后,普通用戶(hù)可以通過(guò)“身份驗證”用例進(jìn)行指紋驗證.如果是未注冊用戶(hù)則在獲得合法II)的前提條件下,通過(guò)“注冊”用例注冊自己的相關(guān)信息.系統提供的“開(kāi)/關(guān)門(mén)”用例則主要是根據指紋匹配結果,通過(guò)信號線(xiàn)將控制信號傳輸給門(mén)的驅動(dòng)電動(dòng)機以此來(lái)控制門(mén)的開(kāi)關(guān).管理員主要負責系統維護,可以使用 “注冊”、“查找”和“刪除”等用例進(jìn)行信息管理操作.由于在該階段我們對系統還沒(méi)有充分理解,同時(shí)為了控制用例的數目,在這里我們只是給出了系統的總體用例模型,在隨后的詳細設計階段我們可以對這些用例進(jìn)行進(jìn)一步的細化以精化系統的需求。

2 指紋門(mén)禁系統設計

需求分析完成以后,可以依據分析結果和所建立的模型圖進(jìn)一步指導系統的設計.系統設計主要包括了用例詳細設計、類(lèi)設計、數據模型設計等。

2.1 用例詳細設計

詳細設計階段需要對系統需求中的每個(gè)用例進(jìn)行詳細的分析,并以一種通用的表示來(lái)文檔化,以便使開(kāi)發(fā)人員更清晰得了解每個(gè)用例的具體實(shí)現過(guò)程 .本文以指紋驗證用例為實(shí)例,對該用例進(jìn)行更進(jìn)一步的詳細分析,它包含了指紋采集、預處理、圖像增強、細化、二值化處理、特征碼提取、比對、結果輸出等過(guò)程,這些過(guò)程都可以通過(guò)文檔清晰地表示.我們在描述系統用例時(shí),是從用戶(hù)角度出發(fā)的,沒(méi)有涉及系統內部.通過(guò)分析得到滿(mǎn)足系統需求的類(lèi)之后,便可根據用例驅動(dòng)的思想,通過(guò)類(lèi)之間的交互來(lái)實(shí)現用例.嵌入式系統一般都要與硬件設備如傳感器等進(jìn)行交互,同時(shí)還有很強的時(shí)間和內存空間的約束.交互圖就是用來(lái)描述對象間的動(dòng)態(tài)交互行為的,它一步步地顯示了使用案例的流程.在UML中定義了兩種交互框圖:順序圖和合作圖.這兩種框圖顯示同一信息,但組織方式不同.順序圖按時(shí)間排序,依次顯示對象間進(jìn)行的操作;合作圖則以數據流為中心,顯示各個(gè)對象間的數據交換情況.由于順序圖能更好地說(shuō)明對象間的交互順序,有利于我們理解系統,所以本文以“指紋驗證”用例的順序圖(見(jiàn)圖3)為例來(lái)描述對象之間的交互過(guò)程.其它用例都可以采用此種方法來(lái)詳細說(shuō)明,以便我們更清晰地了解系統每個(gè)功能(用例)的具體實(shí)現過(guò)程。


圖3 指紋驗證用例順序圖

2.2 類(lèi)設計

UML規范按照類(lèi)職責不同將系統設計類(lèi)分為邊界類(lèi)、實(shí)體類(lèi)和控制類(lèi).其中實(shí)體類(lèi)是系統運行的數據基礎類(lèi),也是類(lèi)設計的核心部分.按照RUP的思想,采用名詞分析法對系統需求進(jìn)行分析,便可以得到大部分的實(shí)體類(lèi).對于指紋門(mén)禁系統而言,指紋信息數據是系統的核心數據,同時(shí),一些相關(guān)的管理信息也是實(shí)體類(lèi)的組成部分,主要有用戶(hù)信息、系統13志等等.在這里我們只對系統中兩個(gè)主要類(lèi)進(jìn)行分析,如下表格1,2所示

表1 指紋圖象FingerImage實(shí)體類(lèi)

表2 指紋特征FingeRFeature實(shí)體類(lèi)

2.3 數據庫模型設計

完成實(shí)體類(lèi)的分析與設計之后,可建立其數據庫模型.在本系統中采用 Pc機與嵌入式處理器之間的通信來(lái)管理相應的數據,因此PC機上數據管理系統的數據庫模型設計如下圖4所示.數據庫表組成包括注冊用戶(hù)管理、被鑒定人信息、指紋特征數據和日志管理,數據庫中表結構字段的描述與上文實(shí)體類(lèi)成員變量的結構是相對應的.例如:注冊用戶(hù)信息由RegisterUsers表組織,設置的字段有:用戶(hù)ID、姓名、用戶(hù)級別等;指紋圖像數據表Fin- gerimage設置的字段有:圖像名稱(chēng)、圖像保存路徑、圖像特征數、圖像寬度、高度等;指紋特征數據表FingerFeature設置的字段有:ID、注冊用戶(hù)指紋特征、被鑒定人指紋特征、指紋特征數等,完全可以滿(mǎn)足系統的需求.圖中其它各表的詳細數據項描述可根據實(shí)際的需要來(lái)設計,在此不作過(guò)多舉例說(shuō)明.各個(gè)表間的連線(xiàn)表示數據表約束,例如: RegisterUs-ers表和Worklog表之間的對應關(guān)系為一個(gè)注冊用戶(hù)可以對應多條日志記錄.同時(shí),RegisterUsers表的主鍵用戶(hù) ID)是表WoALog的外鍵,圖中其他依賴(lài)關(guān)系表示含義相同。

3 指紋門(mén)禁系統實(shí)現與集成測試

通過(guò)反復迭代上述建模及模型驗證過(guò)程,便可建立起整個(gè)系統的正確模型.建模工作流完成以后便是系統的實(shí)現階段,此階段主要進(jìn)行下列工作:

(1)實(shí)現平臺的選擇

①硬件的設計與實(shí)現

本系統硬件平臺采用SAMSUNG公司的S3C2410開(kāi)發(fā)板設計實(shí)現,CPU用,S3C2410A ARM920T。

②系統軟件的設計與實(shí)現

ARM應用軟件的開(kāi)發(fā)需要交叉編譯環(huán)境,而在Windows平臺下常用的ARM SDT調試器提供了一個(gè)集成開(kāi)發(fā)環(huán)境]DE,可以在一臺Pc機上完成編輯、編譯、鏈接、下載和調試等工作.開(kāi)發(fā)工具安裝之后,可以用ARM Project Manager來(lái)生成一個(gè)自己的工程,并在A(yíng)RM Debuggefor Windows下進(jìn)行調試.因此,本系統的指紋圖像處理及匹配算法采用VC語(yǔ)言在IDE中實(shí)現。在系統編碼中,已成熟的指紋處理算法為系統的設計奠定了良好的基礎。


圖4 數據庫模型設計

(2)軟件編碼

建模的最終目的是為了得到可執行的代碼,因此在系統實(shí)現中很重要的一部分是軟件編碼.為此,在實(shí)現階段,需要選擇某種面向對象的編程語(yǔ)言來(lái)完成代碼部分的實(shí)現.本系統所有軟件代碼我采用vC語(yǔ)言在IDE中實(shí)現,數據庫采用SQL Server2000.由于本文中系統采用滿(mǎn)足UML規范的建模工具Rational Rose2003,可以很好地支持正,逆向工程,通過(guò)對類(lèi)和對象的詳細設計中的規范說(shuō)明信息,由代碼生成器可自動(dòng)生成可執行的代碼框架,開(kāi)發(fā)人員在此基礎上對代碼進(jìn)行修改大大提高了代碼編輯效率。

系統實(shí)現之后,在集成測試時(shí)可聯(lián)合使用所有的UML框圖認真分析每個(gè)構件的原理,針對每一個(gè)系統功能每一個(gè)可能發(fā)生的錯誤寫(xiě)出相應的測試程序,進(jìn)行完整而可靠的測試。

4 小結

本文詳細介紹了UML軟件分析與建模技術(shù)在— 個(gè)嵌入式系統開(kāi)發(fā)中的應用,使用Rose建立了該系統的完整模型,通過(guò)模型的建立對基于UML的嵌入式軟件開(kāi)發(fā)方法進(jìn)行了一些探索和研究.通過(guò)該實(shí)例的開(kāi)發(fā),定性地說(shuō)明了UML的優(yōu)點(diǎn)以及它對嵌入式軟件開(kāi)發(fā)所能起到的良好的指導作用.但由于UML過(guò)于龐大和復雜,不同建模工具對該語(yǔ)言的側重方面也有所不同,本文是使用了Rational Rose2003完成了所有模型的設計,因此,所建模型在抽象層次等方面還存在一定不足,有待于進(jìn)一步驗證準確性及完整性.在實(shí)際開(kāi)發(fā)中可考慮使用多種建模工具對所建模型進(jìn)行比較,以精化、細化模型,從中選擇最優(yōu)模型來(lái)改進(jìn)系統設計方案.此外,在以后的開(kāi)發(fā)實(shí)踐中,開(kāi)發(fā)環(huán)境應該選擇能夠支持直接的可執行的模型生成,并且支持基于實(shí)時(shí)框架的代碼生成,從而解決嵌入式軟件的可移植性問(wèn)題.
本文地址:http://selenalain.com/thread-47810-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页