左凌軒,魏亞坤,謝曉青,吳 平
(溫州大學 物理與電子信息工程學院,浙江 溫州 325000)
隨著信息化的發展,自動化、智能化技術應用得越來越廣泛。電子貨幣、智能卡等不斷地應用于各領域,消費、考勤、交通等隨處可見智能卡的蹤跡[1]。
目前在我國關于智能卡應用最為廣泛的還是收費方面,國內收費終端市場的發展史是一個漫長的過程,先后經過了磁卡、光電卡、條碼卡、接觸式IC卡直至非接觸式IC卡的過程。目前,隨著科技的進步,客戶要求的不斷提高,非接觸式IC卡實時收費終端正逐漸融入人們的日常生活[2]。
但是目前智能卡在中小型貿易中應用較少,比如企業在與養殖戶結算工資時依舊采取用紙筆記錄的方式,這給結算人員帶來了很多的不便,同時也容易出現差錯。我國是淡水珍珠的生產大國,其產量占世界產量的95%,其中浙江省諸暨市是我國淡水珍珠養殖、加工和銷售的最大基地,總產量占全國總產量一半以上,被譽為“中國珍珠之鄉”[3]。珍珠業的繁榮發展,為中國珍珠養殖、深加工提供了機遇。但是,那里主要還是以個體農戶進行養殖,中小型企業收購加工,成品后再進行銷售為主,各方面管理以及工資結算等不夠科學和規范。尤其在工資結算時容易出很多問題,多算、漏算、錯算等,養殖戶與加工企業之間常常為工資結算分歧而發生矛盾。
據調查:在珍珠收購的過程中,養殖戶的工資是根據上交的珍珠的合格品重量來計價的。質檢人員對養殖戶上交的珍珠進行初步篩選和成色的鑒定,按照成色分批分撿出符合企業要求的珍珠,貼上養殖戶名字的標簽,再由專門的人員進行稱量,貼上合格品重量的標簽。完成這個過程,一個貼的是養殖戶名字,再一個是合格品重量的標簽。月末再根據養殖戶所上交的合格品的總和來計算養殖戶工資。此種方式僅適合交易數量較小的情況;數量一大,比較復雜的統計工作很容易出錯。這對交易雙方都是極其不利的。水晶交易結算時的情況與珍珠基本類似。
為此,本系統的研究和開發主要利用智能卡技術,針對于這種計件工資結算方式,建立對應的計算機系統和收購公司管理系統。著力于解決以上所提到的結算問題。
1)能夠實時的對數據庫進行更新和對成員數據進行身份效驗。
2)具有人性化的查詢管理平臺。通過登錄網上查詢管理系統,成員能夠查詢到個人的信息、修改卡的密碼、掛失、收支明細、查詢原始交易等交易記錄。在成員卡遺失的情況下,公司在錄入時可以立即效驗到持卡人的卡號是否已經掛失。
3)完善的成員管理系統。本系統具備了完善的成員管理功能。包括公司的設置,加盟成員的審核管理,成員管理等。同時兼備了企業總賬報表和各成員明細賬報表的查詢、分析、打印、導出。
4)操作員權限以及安全登錄所有操作系統通過硬件設備授權的管理,操作員需刷卡登錄系統,沒有授權的不能登錄系統、查詢信息、更改數據,包括系統管理員、系統操作員以及其他人員。
對系統功能的簡要描述
1)管理員系統:
①收購信息發布;② (單個/多個)成員添加,成員基本信息查看、編輯(修改、刪除)和導出,成員業績(日、月、年)查詢與導出;③公司賬目查詢和導出,成員薪資匯總查詢和導出;④成員掛失處理(掛失和結掛)、成員重新綁定;⑤查看和處理成員和游客的反饋信息;⑥發布公司基本介紹、公司管理團隊信息、公司最近優惠政策、珍珠收購價格和辦事流程。
2)成員系統:
①成員信息查看和修改,成員業績(日、月、年)明細查詢與導出;②成員意見反饋上報,查看管理員回復信息;③成員卡申請掛失,成員申請銷戶;④公司基本情況、最近優惠政策、珍珠價格和辦事流程查看。
3)技術支持系統:
①串口調試硬件;②數據庫報表生成;③數據庫故障修復。4)訪客系統:
①查看公司基本介紹、公司管理團隊信息;②查看公司最近優惠政策、珍珠收購價格和辦事流程;③查看留言板,并且可以給管理員發送意見或留言
1)系統界面設計友好、操作方便、靈活;
2)具有高可靠性和容錯能力,不允許系統在工作時間停機,不允許系統丟失智能卡相關信息,不允許在運行期間出現故障和錯誤;
3)易于維護和擴充;
4)具有保密機制,各級使用者只能看到允許查看的系統信息。
軟件設計基于用戶需求、軟件分析以及數據庫系統結構,采用標準的項目管理方案,設計了專業的ER數據庫模型,如圖1所示。

圖1 數據庫ER圖Fig.1 Database ER diagrams
數據庫的事件處理實行分布式并行處理,在可并行處理的串行化事件中采取數據庫封鎖技術,在事件寫時先封鎖數據項,以達到避免數據修改沖突或者讀取到“臟數據”的目的。在下列事件中需要并行觸發:1)修改用戶信息;2)添加用戶;3)交易添加;4)留言與新聞編輯;5)薪金更改[4]。
觸發器(trigger)是個特殊的存儲過程,它的執行不是由程序調用,也不是手工啟動,而是由事件來觸發,比如當對一個表進行操作(insert,delete,update)時就會激活執行。在系統中,使用了如下智能方式的觸發器:1)添加用戶時觸發薪金初始化清零狀態;2)添加交易時觸發薪金變化;3)工資結算事觸發薪金變化。
本系統軟件總體結構如圖2所示,能夠使用此軟件的主要身份為管理員、注冊成員、技術人員及訪客。

圖2 總體結構圖Fig.2 Overall structure
數據流圖(Data Flow Diagram)簡稱DFD,它從數據傳遞和加工角度,以圖形方式來表達系統的邏輯功能、數據在系統內部的邏輯流向和邏輯變換過程,是結構化系統分析方法的主要表達工具及用于表示軟件模型的一種圖示方法[5],以管理員為例的流圖結構如圖3~圖5所示。
1)頂層數據流圖

圖3 頂層數據流圖Fig.3 Top-level data flow diagram
2)管理員第二層數據流圖

圖4 管理員第二層數據流圖Fig.4 Administrator second layer data flow diagram
3)管理員第三層數據流圖

圖5 管理員第三層數據流圖Fig.5 Administrator third layer data flow diagram
程序中可獨立運行的程序片斷叫做 “線程”(Thread),利用多線程處理,用戶可同時啟動數項程序任務,而程序也可以即時對用戶輸入做出響應,多線程可以大大提高有繁重任務時的程序響應能力。在為用戶以及本身性能考慮的情況下,系統在數據事件并發時采用了多線程接受方式。
1)主程序主線程
2)不同身份登錄系統時采取大致為5個線程的身份認證(受控于主線程)
3)串口藍牙、WIFI方式傳輸數據時接收和發送線程
4)數據MD5算法加密認證
MD5即Message-Digest Algorithm 5(消息摘要算法第五版)的簡稱,是當前計算機領域用于確保信息傳輸完整一致而廣泛使用的散列算法之一[6]。本系統正是采用了MD5加密。主要應用在WIFI或藍牙傳輸數據庫時以及登錄密碼認證時。
在管理員系統的實現中,數據傳輸需要實現與硬件小時延系統協調,為了解決此類的問題,采取了自動串口號搜索與對應通訊,在相對智能的系統條件下轉而向用戶展示較為友好的UI和操作。此外,在添加成員與添加交易中,我們部分采取了多進程通信,使用戶感受不到由硬件產生的延遲體驗。最后,在交易的過程中我們使用數據庫事件觸發機制,保證了數據傳輸的正確性。
[1]曾正喜,王礫瑟.中國智能卡在交通和購物方面的應用分析[J].物聯網技術,2012,2(4):41-44,47.
ZENG Zheng-xi,WANG Li-se.Analysis of the application of smart cards in transportation and shopping[J].Internet of Things Technologies,2012,2(4):41-44,47.
[2]安剛奇.基于DSP的非接觸IC卡控制系統的設計[J].電子元器件應用,2012,14(7):1-3,13.
AN Gang-qi.Design of non-contact IC card control system based on DSP[J].Electronic Component&Device Application,2012,14(7):1-3,13.
[3]張莉,李世敏.中國珍珠產業技術創新研究[J].海洋科學,2008,32(4):19-23.
ZHANG Li,LI Shi-min.Research on technical innovation of China’s pearl industry[J].Marine Sciences,2008,32 (4):19-23.
[4]王珊,薩師煊.數據庫系統概論[M].北京:高等教育出版社,2010.
[5]文靜,顧勛梅.簡化數據流圖的功能點分析方法研究[J].計算機工程與應用, 2011,47(36) 86-90.
WEN Jing,GU Xun-mei.Research on FPA methods for simplified data flow diagrams[J].Computer Engineering and Applications,2011,47(36):86-90.
[6]齊興斌,趙麗,張連華.基于C/S構架動態口令身份認證系統的設計與實現[J].電力學報,2013,28(1):66-68.
QI Xing-bin,ZHAO Li,ZHANG Lian-hua.Dynamic password identity authentication system design and implementation based on the C/S framework[J].Journal of Electric Power,2013,28(1):66-68.