夏韓平
摘 要 隨著科學(xué)技術(shù)的快速發(fā)展,我國(guó)軟件開(kāi)發(fā)領(lǐng)域?qū)崿F(xiàn)了較為長(zhǎng)足的進(jìn)步,SEMAT理論的廣泛應(yīng)用便是這一進(jìn)步的最直觀體現(xiàn),基于此,本文結(jié)合SEMAT理論基本需求進(jìn)行了基礎(chǔ)模型的構(gòu)建,并對(duì)應(yīng)用SEMAT工具后的實(shí)際效果進(jìn)行了檢查,希望由此能夠?yàn)橄嚓P(guān)業(yè)內(nèi)人士帶來(lái)一定啟發(fā)。
【關(guān)鍵詞】軟件工程 SEMAT理論 Alpha
本文基于軟件工程方法的SEMAT理論與實(shí)踐展開(kāi)具體研究的原因所在。
1 需求分析
結(jié)合SEMAT理論進(jìn)行分析,即可為系統(tǒng)的設(shè)計(jì)提供基礎(chǔ)性支持,分析主要圍繞SEMAT內(nèi)核、基本元素、基礎(chǔ)活動(dòng)共三方面開(kāi)展。
1.1 SEMAT內(nèi)核
SEMAT內(nèi)核主要由基礎(chǔ)進(jìn)展元素和基礎(chǔ)活動(dòng)兩大部分組成,前者包含部分軟件系統(tǒng)開(kāi)發(fā)時(shí)“我們一直在使用的事物”,而后者則包含部分“我們一直在從事的事情”。進(jìn)一步分析SEMAT內(nèi)核不難發(fā)現(xiàn),其組織可以細(xì)分為Customer、Solution、Endeavor三個(gè)離散關(guān)注領(lǐng)域,其中Customer主要包含實(shí)際使用與開(kāi)發(fā)軟件系統(tǒng)有關(guān)的任何事情,而Solution則包含與軟件系統(tǒng)規(guī)劃和開(kāi)發(fā)有關(guān)的任何事情,Endeavor則由團(tuán)隊(duì)開(kāi)發(fā)和團(tuán)隊(duì)工作模式有關(guān)的任何事情組成,三者可以理解為客戶、解決方案、努力。
1.2 基本元素
Alpha指的是軟件開(kāi)發(fā)過(guò)程中需要監(jiān)控進(jìn)展可健康度的事物,關(guān)于進(jìn)展和健康度、致力于良好結(jié)果產(chǎn)生、本質(zhì)為集合屬于Alpha所強(qiáng)調(diào)的三點(diǎn)。SEMAT內(nèi)核包含Opportunity、Stakeholder、Requirements、Software System、Team、Work、Work-of-Working共7種Alpha,7種Alpha分別表示機(jī)會(huì)、涉眾、需求、軟件系統(tǒng)、團(tuán)隊(duì)、工作、工作方式。
1.3 基礎(chǔ)活動(dòng)
activity執(zhí)行在軟件開(kāi)發(fā)工作中發(fā)揮著重要作用,如估算工作量、同意產(chǎn)品擁有者的用戶故事等,內(nèi)核本身則單純發(fā)揮著活動(dòng)空間的定義作用,由此三類活動(dòng)空間必須得到重視,活動(dòng)控制的具體展示如下:
1.3.1 第一類活動(dòng)空間
在探索可能性、理解涉眾需要、確保涉眾曼儀、使用系統(tǒng)的支持下,該空間能夠較好用于理解機(jī)會(huì)以及支持和吸引涉眾參與。
1.3.2 第二類活動(dòng)空間
在理解需求、塑造系統(tǒng)、實(shí)現(xiàn)系統(tǒng)、測(cè)試系統(tǒng)、部署需求、運(yùn)營(yíng)系統(tǒng)的一系列過(guò)程中,該空間便能夠較好用于適合的解決方案開(kāi)發(fā),贏得機(jī)會(huì)、滿足涉眾也將由此實(shí)現(xiàn)。
1.3.3 第三類活動(dòng)空間
準(zhǔn)備做動(dòng)作、協(xié)調(diào)活動(dòng)、支持團(tuán)隊(duì)、跟蹤進(jìn)展、停止工作均屬于第三類活動(dòng)空間內(nèi)容,由此團(tuán)隊(duì)的形成、按一致同意的工作方式進(jìn)行將真正得以實(shí)現(xiàn)。
2 系統(tǒng)設(shè)計(jì)
為滿足結(jié)合SEMAT理論的系統(tǒng)設(shè)計(jì)需求,開(kāi)展的具體設(shè)計(jì)應(yīng)遵循系統(tǒng)建模、概要設(shè)計(jì)兩部分開(kāi)展。
2.1 系統(tǒng)建模
結(jié)合需求分析即可進(jìn)行兩個(gè)基礎(chǔ)架構(gòu)的構(gòu)建,其中基礎(chǔ)元素架構(gòu)主要體現(xiàn)Alpha之間的關(guān)系,而活動(dòng)空間架構(gòu)則按照事情完成順序進(jìn)行,也就是說(shuō)只有在完成理解需求后方可進(jìn)行系統(tǒng)塑造。
2.2 概要設(shè)計(jì)
為了更好實(shí)現(xiàn)對(duì)Alpha的應(yīng)用,需要為各個(gè)Alpha設(shè)計(jì)狀態(tài)卡片用以反映其具體狀態(tài),Alpha的狀態(tài)由此將得以較好體現(xiàn),具體開(kāi)發(fā)工作的步驟理解也將得有力支持。而在完成Alpha的狀態(tài)卡片設(shè)計(jì)后,設(shè)計(jì)人員還需要結(jié)合設(shè)計(jì)成果進(jìn)行以組為單位的相關(guān)聯(lián)判定準(zhǔn)則構(gòu)成的集合設(shè)計(jì),表1對(duì)設(shè)計(jì)成果的部分進(jìn)行了直觀展示。
值得注意的是,上述設(shè)計(jì)使用了走查這一設(shè)計(jì)方法,該設(shè)計(jì)方法可以描述為:將Alpha卡片排列并將其中狀態(tài)卡片依次從左向右排列→結(jié)合卡片詢問(wèn)各狀態(tài)完成信息→將完成的Alpha卡片放到左邊直至出現(xiàn)未達(dá)到的狀態(tài)卡片→將卡片及之后的卡片放到右邊,由此具體軟件工程的開(kāi)展就將獲得較好支持。
3 質(zhì)量分析
在完成Alpha卡片的開(kāi)發(fā)后,即可結(jié)合項(xiàng)目實(shí)例進(jìn)行SEMAT工具的實(shí)際效果分析,因此本文對(duì)某軟件開(kāi)發(fā)的五次例會(huì)進(jìn)行了綜合分析。
3.1 第一次例會(huì)
按照任務(wù)板情況骨干成員、中級(jí)開(kāi)發(fā)人員分別負(fù)責(zé)測(cè)試培訓(xùn)和測(cè)試環(huán)節(jié)搭建,而協(xié)調(diào)項(xiàng)目經(jīng)理則與客戶代表討論要實(shí)現(xiàn)的需求項(xiàng)。
3.2 第二次例會(huì)
完成1任務(wù)但工作方式未達(dá)到“工作良好”狀態(tài),因此增加新的任務(wù),同時(shí)跟進(jìn)3、4、5任務(wù)。
3.3 第三次例會(huì)
中級(jí)開(kāi)發(fā)人員完成任務(wù)2,任務(wù)3、4由實(shí)習(xí)生分別進(jìn)行,項(xiàng)目經(jīng)理、開(kāi)發(fā)骨干、客戶代表負(fù)責(zé)任務(wù)7進(jìn)行新需求的確認(rèn)。
3.4 第四次例會(huì)
任務(wù)3、4完成,且項(xiàng)目達(dá)到“工作方式:工作良好狀態(tài)”,任務(wù)5和任務(wù)7分別由開(kāi)發(fā)人員和開(kāi)發(fā)骨干接受。
3.5 第五次例會(huì)
所以軟件系統(tǒng)狀態(tài)卡片均被移入“已完成”列表,圖1對(duì)其進(jìn)行了直觀展示。
結(jié)合某應(yīng)用SEMAT工具的軟件工程開(kāi)發(fā)實(shí)例不難發(fā)現(xiàn),Alpha卡片的應(yīng)用為開(kāi)發(fā)工作的有條不紊開(kāi)展提供了有力支持,SEMAT理論的實(shí)踐價(jià)值由此可見(jiàn)一斑。
4 結(jié)論
綜上所述,SEMAT理論理論能夠較好用于軟件工程領(lǐng)域。而在此基礎(chǔ)上,本文涉及的應(yīng)用SEMAT工具的某軟件開(kāi)發(fā)實(shí)例,則直觀證明了研究的實(shí)踐價(jià)值。因此,在相關(guān)領(lǐng)域的理論研究與實(shí)踐探索中,本文內(nèi)容便能夠發(fā)揮一定參考作用。
參考文獻(xiàn)
[1]鐘南.面向Agent軟件工程的現(xiàn)狀與挑戰(zhàn)[J].硅谷,2013,612:1+3.
[2]賈應(yīng)煒.云計(jì)算環(huán)境下的GIS軟件工程設(shè)計(jì)分析[J].現(xiàn)代電子技術(shù),2015,3817:133-134+138.
作者單位
浙江科技學(xué)院 浙江省杭州市 310023endprint