亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于形式概念分析的軟件子系統(tǒng)構(gòu)建方法及應(yīng)用*

        2012-11-24 02:17:58蔣海東林筑英
        關(guān)鍵詞:子系統(tǒng)對象形式

        蔣海東,林筑英

        (貴州師范大學(xué) 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,貴州 貴陽 550001)

        隨著軟件工程的飛速發(fā)展,軟件建模提出了一系列的語言、理論、工具和方法。實(shí)踐表明,大多數(shù)的系統(tǒng)軟件開發(fā)中的錯誤是由需求和設(shè)計(jì)階段產(chǎn)生的,而且錯誤在系統(tǒng)中存在的時間越長則越難發(fā)現(xiàn),解決這些錯誤的代價也越高。為了提高軟件需求和軟件設(shè)計(jì)的質(zhì)量,軟件工程界提出了需求分析工程技術(shù)和各種軟件建模技術(shù)。

        在軟件建模中,當(dāng)獲得用戶需求后,首要任務(wù)就是要劃分子系統(tǒng),子系統(tǒng)劃分得合理與否,直接影響軟件后續(xù)的開發(fā)和維護(hù)工作能否順利進(jìn)行。劃分子系統(tǒng)時首先應(yīng)該要遵循“高內(nèi)聚、低耦合”的原則;其次要考慮到所有的使用角色,兼顧使用者的需求;最后也要適當(dāng)考慮整體開發(fā)的分段實(shí)現(xiàn)。

        1 概述

        在研制開發(fā)軟件系統(tǒng)尤其是開發(fā)一個較大企業(yè)管理系統(tǒng)時,為便于直觀方便地劃分子系統(tǒng),通常根據(jù)過程與數(shù)據(jù)類的相關(guān)性,利用功能和數(shù)據(jù)的關(guān)系確定子系統(tǒng)。由此要涉及到許多支持的相關(guān)理論和方法,如模糊聚類、神經(jīng)網(wǎng)絡(luò)等。這些方法幾乎都有一個共同點(diǎn),都需要產(chǎn)生或處理C-U矩陣的問題。其中,C表示程序模塊對基本表的存入關(guān)系(即創(chuàng)建或維護(hù)基本表),U表示對基本表的使用關(guān)系。雖然C-U矩陣具有很強(qiáng)的分析能力,但在實(shí)際開發(fā)軟件系統(tǒng)中,C-U矩陣的構(gòu)造和處理都比較復(fù)雜,增加了軟件開發(fā)與設(shè)計(jì)的難度,從獲取用戶需求、描述能力和圖形化方面都有待于提高。

        目前,統(tǒng)一建模語言(UML)形成了相對完善的建模理論并得到了廣泛的應(yīng)用,能夠快速地獲得用戶的需求,也有很好的圖形展示。但UML在劃分子系統(tǒng)時,常根據(jù)開發(fā)人員的主觀因素去進(jìn)行判斷,降低了系統(tǒng)的科學(xué)性。為減少產(chǎn)生錯誤的代價和彌補(bǔ)應(yīng)用UML建模開發(fā)過程中的不足,本文探討了應(yīng)用FCA理論方法來解決這一問題。

        2 形式概念分析

        形式概念分析 FCA(Formal Concept Analysis)[1]是對概念的哲學(xué)理解的數(shù)學(xué)化表達(dá),是以人為中心的構(gòu)造數(shù)據(jù)并分析數(shù)據(jù)的方法,是數(shù)據(jù)的內(nèi)在結(jié)構(gòu)、關(guān)聯(lián)和相互依存關(guān)系的可視化方法。FCA將概念的對象看作外延,將屬性看作內(nèi)涵對概念數(shù)學(xué)化,然后通過構(gòu)造形式背景進(jìn)而生成概念格對給定的數(shù)據(jù)進(jìn)行數(shù)學(xué)分析和思考。FCA作為人工世界的建模工具,與傳統(tǒng)的建模方法相比較,既具有描述能力又具有分析能力,還具有圖形化能力,這從根本上決定了其在軟件系統(tǒng)建模中無可替代的優(yōu)勢。

        2.1 FCA理論

        定義1 形式背景[2]被定義為一個三元組 K=(G,M,I)。其中,G、M分別是對象集合和屬性集合,G的元素稱為對象(objects),M 的元素稱為屬性(attributes),嚴(yán)格地說是形式對象和形式屬性;而I是G和M之間的二元關(guān)系,即I?G×M。為了表示一個對象g和一個屬性m在關(guān)系 I中,可以寫成 g I m或(g,m)∈I并且讀成“對象 g具有屬性m”。形式背景 K=(G,M,I)可被表示為以對象為行、以屬性為列的二值矩陣,其每一元素ajk(j為行序,k 為列序,0≤j≤||G||,0≤k≤||M||)可定義為:

        定義2給定對象集合G,對于對象子集A?G,定義 A={m∈M|?g∈AgIm}表示“A中全體對象所共有的屬性集”。相應(yīng)地,對于屬性子集B?M,定義表示“同時具有B 中所有屬性的對象的集合”。

        定義3 形式背景 K=(G,M,I)中的一個形式概念是一個對(A,B),A?G,B?M,滿足:A′=B 且 B′=A。A、B分別稱為形式概念(A,B)的外延(Extent)和內(nèi)涵(Intent)。B(G,M,I)表示形式背景(G,M,I)所有形式概念的集合。

        由以上定義可以看出,概念的內(nèi)涵是概念外延中所有對象共同屬性的集合,而概念的外延則是概念內(nèi)涵可以確定的最大對象集合,一個概念是一個完備的二元組。特別定義兩個特殊的概念,分別是:包含所有對象的概念為全概念,包含所有屬性的概念為空概念。形式概念(A,B)的外延 A和內(nèi)涵 B被關(guān)系 I緊密地聯(lián)系在一起。因?yàn)锳′=B且B′=A,則外延決定內(nèi)涵,同時內(nèi)涵也決定外延,進(jìn)而決定了形式概念。

        2.2 FCA在軟件系統(tǒng)中的應(yīng)用

        FCA被引入到信息科學(xué)技術(shù)領(lǐng)域后,即被軟件工程及軟件系統(tǒng)開發(fā)等領(lǐng)域所關(guān)注和應(yīng)用。在國外的應(yīng)用研究中,有如參考文獻(xiàn)[3]的基于FCA的信息系統(tǒng)模型綜合性與完整性的驗(yàn)證方法。在參考文獻(xiàn)[4]中,F(xiàn)CA在軟件系統(tǒng)開發(fā)中的應(yīng)用被分為早期階段活動和軟件維護(hù)兩方面。早期階段主要應(yīng)用于需求分析、復(fù)用組件檢索、形式化規(guī)格說明和基于FCA的Z規(guī)格可視化等;而軟件的維護(hù)階段主要用于類層次再工程。在參考文獻(xiàn)[5]中指出:FCA可以很好地運(yùn)用在軟件生命周期的各個階段;若將FCA用在軟件工程的各個主要部分還有可能開啟一個徹底的基于概念的軟件工程新視角等。

        為此,本文結(jié)合UML建模方法與FCA的各自優(yōu)勢,設(shè)計(jì)了UML建模與FCA相結(jié)合的軟件子系統(tǒng)劃分的新方法,使得快速準(zhǔn)確地獲得用戶需求的同時又科學(xué)地劃分軟件子系統(tǒng)。并且希望通過在劃分軟件子系統(tǒng)這一應(yīng)用中,找到UML方法和FCA理論在軟件建模應(yīng)用中的其他結(jié)合點(diǎn)。

        3 基于FCA軟件子系統(tǒng)劃分

        3.1 軟件系統(tǒng)建模問題分析

        基于UML的面向?qū)ο筌浖^程建模克服了傳統(tǒng)軟件都用過程或函數(shù)作為主要構(gòu)造模塊,同時還解決了數(shù)據(jù)流分析的層次復(fù)雜性,對軟件系統(tǒng)模型的映射程度進(jìn)行了加強(qiáng);而且UML作為面向?qū)ο蟮目梢暬瘶?biāo)準(zhǔn)建模語言,采用的是圖形符號進(jìn)行表示系統(tǒng)中所有的對象和關(guān)系,應(yīng)用直觀的圖形從不同的角度描述待開發(fā)系統(tǒng),為更好地理解建模過程提供了有效的交流形式。

        應(yīng)用UML建模開發(fā)一個功能多、數(shù)據(jù)較復(fù)雜的軟件系統(tǒng),在開發(fā)過程中,基本上都是采用由大劃小、各個擊破的方式。因此,對復(fù)雜軟件系統(tǒng)結(jié)構(gòu)的分析就成為軟件系統(tǒng)建模要解決的首要問題,而明確系統(tǒng)-子系統(tǒng)-功能模塊之間的層次關(guān)系以及各個層次中各要素間的相互作用就成為軟件系統(tǒng)建模的前提和基礎(chǔ)。

        軟件系統(tǒng)結(jié)構(gòu)建模的難點(diǎn)在于如何將系統(tǒng)內(nèi)相互聯(lián)系緊密的模塊聚合在一起,使得模塊內(nèi)部的內(nèi)聚合性增強(qiáng),同時使模塊間的耦合度降低。FCA的概念格理論所提供的聚類機(jī)制可以很好地解決這一難題。所以,本文在軟件的開發(fā)過程中,采用以UML進(jìn)行建模、使用FCA對軟件系統(tǒng)進(jìn)行子系統(tǒng)劃分方法,可以使軟件系統(tǒng)在開發(fā)過程對子系統(tǒng)的劃分更加地合理、科學(xué)。

        3.2 基于FCA建模的實(shí)例分析應(yīng)用

        下面以學(xué)生選課管理系統(tǒng)為例,說明利用FCA結(jié)合UML對系統(tǒng)結(jié)構(gòu)建模的基本原理。

        (1)窮舉軟件系統(tǒng)所要實(shí)現(xiàn)的所有功能模塊

        UML分析系統(tǒng)功能需求較為快速有效的方法就是構(gòu)建用例模型,并以用例圖加以描述。這一部分可以采用按角色找到系統(tǒng)的用例(即系統(tǒng)的功能)。學(xué)生選課管理系統(tǒng)的參與角色主要有學(xué)生、教師、教學(xué)秘書這三類。按照這三個角色可以得到的系統(tǒng)用例圖如圖1所示。

        圖1 學(xué)生選課管理系統(tǒng)用例圖

        (2)找到各功能所對應(yīng)數(shù)據(jù)類并生成形式背景

        根據(jù)定義1中所述,形式背景由概念的內(nèi)涵和外延組成,外延為對象集,在本方法中將功能集合作為對象集(即形式背景中的外延),以數(shù)據(jù)集合作為屬性集(即形式背景的內(nèi)涵),建立起兩者的“功能-數(shù)據(jù)”二元關(guān)系。在這里,功能-數(shù)據(jù)的二元關(guān)系既包括功能產(chǎn)生對應(yīng)數(shù)據(jù)這一關(guān)系,也包括該功能使用對應(yīng)數(shù)據(jù)這一關(guān)系。結(jié)合實(shí)例,生成學(xué)生選課管理系統(tǒng)“功能-數(shù)據(jù)”形式背景如表1所示。

        表1 學(xué)生選課管理系統(tǒng)“功能-數(shù)據(jù)”形式背景

        需要說明的是,本文構(gòu)造的形式背景與定義2中敘述的有所不同,定義2中為多值形式背景,在構(gòu)造概念格時需將其單值化。而因?yàn)楸疚闹械墓δ軘?shù)據(jù)關(guān)系較為清晰,故直接將形式背景構(gòu)造成單值形式背景。

        (3)將形式背景轉(zhuǎn)換成相應(yīng)的概念格

        本實(shí)例中,概念格的節(jié)點(diǎn)均代表一個特定的模塊,節(jié)點(diǎn)與節(jié)點(diǎn)間的關(guān)系代表模塊間的關(guān)系,節(jié)點(diǎn)的屬性表示該模塊使用或產(chǎn)生的數(shù)據(jù),節(jié)點(diǎn)的對象表示模塊所實(shí)現(xiàn)的功能。依據(jù)(2)子系統(tǒng)形式背景轉(zhuǎn)換的概念格如圖2所示。

        圖2 學(xué)生選課管理系統(tǒng)“功能-數(shù)據(jù)”對應(yīng)概念格

        (4)根據(jù)概念格的聚類功能

        使用或產(chǎn)生相同數(shù)據(jù)并實(shí)現(xiàn)相近功能的節(jié)點(diǎn)在概念格的Hasse圖上必能聚集在一起,根據(jù)這一規(guī)律在系統(tǒng)分析員的幫助下,利用Hasse圖就可以輕易地分析找出“功能-數(shù)據(jù)”密切相關(guān)的一些模塊,將之歸納入一個子系統(tǒng)中并命名。將“功能-數(shù)據(jù)”聯(lián)系緊密的模塊聚集在一起,如圖2中的區(qū)域所示,每個區(qū)域代表一個子系統(tǒng),區(qū)域1代表選課管理子系統(tǒng),區(qū)域2代表成績管理子系統(tǒng),區(qū)域3代表新課程增加子系統(tǒng)。

        (5)判別子系統(tǒng)或模塊實(shí)現(xiàn)的先后次序

        利用概念格節(jié)點(diǎn)的聯(lián)系可以很容易判斷出子系統(tǒng)之間的關(guān)系,也可得出子系統(tǒng)產(chǎn)生的數(shù)據(jù)有多少被其他子系統(tǒng)所共享,在充分考慮共享數(shù)據(jù)的重要性及關(guān)聯(lián)的緊密程度的前提下,可根據(jù)各子系統(tǒng)間的技術(shù)約束來判別實(shí)現(xiàn)的先后順序。如圖2所示,區(qū)域2中成績管理子系統(tǒng)要使用區(qū)域1中的課程信息數(shù)據(jù),因此選課管理子系統(tǒng)要先于成績管理子系統(tǒng)實(shí)現(xiàn)。在同一子系統(tǒng)中,節(jié)點(diǎn)(即模塊)的層次越高,其使用和產(chǎn)生的數(shù)據(jù)被下級節(jié)點(diǎn)所共享的程度就越大。因此,可以根據(jù)區(qū)域中節(jié)點(diǎn)的層次關(guān)系,也即是屬性(即模塊使用和產(chǎn)生的數(shù)據(jù))的層次關(guān)系來確立子系統(tǒng)中模塊開發(fā)的先后次序。

        子系統(tǒng)劃分是軟件系統(tǒng)建模中的一個基礎(chǔ)性工作,子系統(tǒng)劃分是否合理,將會直接影響到軟件系統(tǒng)后續(xù)的開發(fā)和維護(hù)。本文提出的劃分子系統(tǒng)方法,首先運(yùn)用UML建模方法找到系統(tǒng)中的角色,然后根據(jù)每個角色窮盡其所有的用例(即找到功能),最后使用形式概念分析方法構(gòu)造出形式背景,進(jìn)而構(gòu)造出概念格,完成子系統(tǒng)的劃分。有效地避免了單純用UML建模中的主觀意識,使得子系統(tǒng)劃分工作更科學(xué)、更合理。

        [1]WORMUTH B,BECKER P.Introduction to formal concept analysis[C].Proceedings of the 2nd International Conference of Formal Concept Analysis, Sydney, Australia, 2004:1-4.

        [2]謝志鵬,劉宗田.基于概念格的關(guān)聯(lián)規(guī)則發(fā)現(xiàn)[J].小型微型計(jì)算機(jī)系統(tǒng),2000,21(10):1028-1031.

        [3]LAUKAITIS A,VASILECAS O.Formal concept analysis and information systems modeling[C].Proceedings of the International Conference on Computer Systems andTechnologies,Bulgaria.New York,NY,USA:ACM,2007.

        [4]TILLEY T, COLE R, BECKER P, et al.A survey of formalconceptanalysissupportforsoftware engineering activities[C].Berlin/Heidelberg: Springer, 2005: 107-118.

        [5]HESSE W,TILLEY T.Formal concept analysis used for softwareanalysis and modelling[A].Berlin /Heidelberg:Springer, 2005: 288-303.

        猜你喜歡
        子系統(tǒng)對象形式
        神秘來電
        睿士(2023年2期)2023-03-02 02:01:09
        不對中轉(zhuǎn)子系統(tǒng)耦合動力學(xué)特性研究
        GSM-R基站子系統(tǒng)同步方案研究
        微型演講:一種德育的新形式
        駝峰測長設(shè)備在線監(jiān)測子系統(tǒng)的設(shè)計(jì)與應(yīng)用
        攻略對象的心思好難猜
        意林(2018年3期)2018-03-02 15:17:24
        搞定語法填空中的V—ing形式
        基于熵的快速掃描法的FNEA初始對象的生成方法
        發(fā)現(xiàn)“形式” 踐行“形式”
        區(qū)間對象族的可鎮(zhèn)定性分析
        国产一区二区白浆在线观看| 亚洲av无码专区亚洲av| 国产V日韩V亚洲欧美久久| 久久久国产视频久久久| 91三级在线观看免费| 国产特级毛片aaaaaa视频| 最新亚洲av日韩av二区| 欧美巨大xxxx做受中文字幕| 国产一区二区av在线免费观看| 粗大的内捧猛烈进出小视频| 无码国产激情在线观看| 国产在线高清无码不卡| 青青草手机免费播放视频| 国模吧无码一区二区三区| 天天躁人人躁人人躁狂躁| 久久国产av在线观看| av在线免费观看网站,| 丰满人妻一区二区三区视频53| 美女在线国产| 中文字幕亚洲精品一二三区| 91露脸半推半就老熟妇| 久久九九国产精品怡红院| av无码天堂一区二区三区 | 5级做人爱c视版免费视频| 日韩偷拍视频一区二区三区 | 精品国产一区二区三区不卡在线| 丰满人妻熟妇乱又伦精品软件| 国产人成无码视频在线| 国产精品午夜高潮呻吟久久av| 一本大道av伊人久久综合| 久久久精品2019免费观看| 麻豆AV无码久久精品蜜桃久久| 日本不卡一区二区三区在线视频| 天堂8在线天堂资源bt| 国产精品久久无码不卡黑寡妇| 亚洲男人的天堂色偷偷| 真实的国产乱xxxx在线| 日韩一线无码av毛片免费| 日本成人免费一区二区三区| 精品人伦一区二区三区蜜桃91| 野花社区视频www官网|