【摘 要】隨著我國社會(huì)水平的提升,經(jīng)濟(jì)步伐的推進(jìn),我國的軟件事業(yè)也在這個(gè)過程中得到了較大程度的發(fā)展。而對(duì)于軟件來說,其自身所具有的維護(hù)性是軟件自身質(zhì)量的重要屬性,軟件維護(hù)性的好壞將直接對(duì)軟件后期的維護(hù)性能產(chǎn)生影響。對(duì)此,就需要我們能夠在對(duì)軟件進(jìn)行設(shè)計(jì)的過程中保證好其維護(hù)性。在本文中,將就一種基于場(chǎng)景的軟件維護(hù)性需求分析方法進(jìn)行研究與分析。
【關(guān)鍵詞】基于場(chǎng)景;軟件維護(hù)性需求;分析方法
0.引言
我們現(xiàn)今所處的時(shí)代可以說是一個(gè)計(jì)算機(jī)的時(shí)代,而要想使計(jì)算機(jī)能夠更好的為我們服務(wù)、為我們實(shí)現(xiàn)多種功能,優(yōu)秀的軟件則是必不可少的,而辨別軟件的好壞,其自身的性能固然重要,而其所具有的維護(hù)性也是我們必須進(jìn)行重點(diǎn)考慮的功能。雖然對(duì)于軟件的維護(hù)性能來說,其僅僅是屬于軟件內(nèi)部功能之外的一種屬性,且只有通過對(duì)于軟件實(shí)際進(jìn)行維護(hù)才能夠得到表現(xiàn),但是我們也應(yīng)當(dāng)能夠看到它也是軟件自身所具有固有特性的一種,是被我們?cè)O(shè)計(jì)出來的,其主要方式是通過對(duì)于軟件自身特點(diǎn)、編碼等設(shè)計(jì)環(huán)節(jié)進(jìn)行結(jié)合而得到實(shí)現(xiàn)的,如何能夠在對(duì)軟件進(jìn)行設(shè)計(jì)的過程中能夠獲取到非常一致、清晰的維護(hù)需求則成為了我們后續(xù)做好軟件維護(hù)工作的重中之重。但是,就我國目前對(duì)于軟件進(jìn)行設(shè)計(jì)的過程中,無論是在設(shè)計(jì)環(huán)節(jié)還是在需求分析環(huán)節(jié)都沒有對(duì)軟件維護(hù)性所具有的需求進(jìn)行全面的應(yīng)對(duì),在很多方面還是僅僅在維護(hù)上較為寬泛,從而使軟件最終的可操作性以及設(shè)計(jì)性都較差。對(duì)此,就需要我們能夠?qū)@種需求分析的方法進(jìn)行更好的探尋。
1.基于場(chǎng)景進(jìn)行軟件維護(hù)需求分析的原理
要想做好軟件維護(hù)性需求的分析工作,首先就需要對(duì)軟件維護(hù)性需求的概念進(jìn)行充分的了解。對(duì)于一個(gè)軟件來說,軟件具有良好的維護(hù)性最為關(guān)鍵的就是需要具有較好的實(shí)現(xiàn)以及設(shè)計(jì)方面可操作性,而對(duì)于一個(gè)維護(hù)需求信息較為明確的軟件來說,其主要的內(nèi)容有:實(shí)現(xiàn)信息、約束信息以及維護(hù)屬性信息,而正是由這三個(gè)重要的因素,則能夠形成我們對(duì)于軟件維護(hù)性需求進(jìn)行分析的一個(gè)模型,即操作模板、維護(hù)以及約束性模板。對(duì)于這三個(gè)模板來說,其則能夠以較為清晰、明了的方式對(duì)軟件自身維護(hù)性的需求以及對(duì)其進(jìn)行實(shí)現(xiàn)的方式進(jìn)行定義,從而更好的對(duì)軟件需求進(jìn)行研究。而在軟件需求分析的過程中,就需要我們能夠在設(shè)計(jì)研究階段對(duì)于未來的維護(hù)場(chǎng)景進(jìn)行獲取,并能夠?qū)?chǎng)景對(duì)于軟件模型的影響進(jìn)行更深入的分析,從而在深入分析的基礎(chǔ)上對(duì)軟件的需求以及組件等等提出最佳的措施。
2.軟件維護(hù)場(chǎng)景
軟件維護(hù)場(chǎng)景也是我們進(jìn)行軟件需求分析過程中非常重要的一個(gè)因素,其能夠?qū)浖M(jìn)行一定部署之后所發(fā)生的維護(hù)活動(dòng)進(jìn)行較為全面的描述。對(duì)于一個(gè)完整的軟件維護(hù)場(chǎng)景來說,其可以分為以下幾個(gè)部分:首先,是軟件場(chǎng)景中進(jìn)行實(shí)施的目標(biāo);其次,是在不同維護(hù)場(chǎng)景中對(duì)于軟件所開展的維護(hù)活動(dòng),而這部分活動(dòng)則主要有對(duì)于軟件信息的增刪改查等等;最后,則是在維護(hù)場(chǎng)景中對(duì)于軟件體系結(jié)構(gòu)所具有的影響信息,即軟件維護(hù)的場(chǎng)景中我們所開展的活動(dòng)將能夠?qū)浖w系統(tǒng)產(chǎn)生哪個(gè)方面的變化。對(duì)此,我們?cè)O(shè)Object Set{o1 o2...on}這個(gè)非空有限集合作為我們對(duì)于軟件場(chǎng)景進(jìn)行維護(hù)所需要實(shí)現(xiàn)的目標(biāo)集,而將Action set{a1 a2...an}作為我們對(duì)于進(jìn)行軟件維護(hù)所執(zhí)行的活動(dòng)的集合。而將Main set{c1 c2...cn}作為我們軟件維護(hù)場(chǎng)景中所能夠產(chǎn)生影響的構(gòu)建集。
3.基于場(chǎng)景的軟件維護(hù)性需求分析
在基于場(chǎng)景的軟件維護(hù)性需求分析工作中,主要具有兩個(gè)主要的步驟,即首先要對(duì)軟件所具有的維護(hù)場(chǎng)景進(jìn)行全面的分析以及獲取,并能夠?qū)ζ溥M(jìn)行全面、精確的表示,之后則應(yīng)當(dāng)對(duì)不同軟件維護(hù)場(chǎng)景對(duì)于整個(gè)軟件體系結(jié)構(gòu)產(chǎn)生的影響進(jìn)行分析,從而能夠更好的對(duì)軟件體系結(jié)構(gòu)的維護(hù)性需求進(jìn)行獲取。
3.1 軟件維護(hù)場(chǎng)景的獲取
通常來說,對(duì)于軟件的維護(hù)場(chǎng)景可以通過同軟件的用戶、開發(fā)者、維護(hù)者以及軟件設(shè)計(jì)人員等軟件的風(fēng)險(xiǎn)承擔(dān)著進(jìn)行適當(dāng)?shù)慕徽劧@取他們的期望,而通過上述步驟所獲得的集合則可以用一個(gè)集合來對(duì)不同的維護(hù)場(chǎng)景進(jìn)行表示,即s={s1s2...sn}。而在對(duì)于軟件場(chǎng)景的表示方面,則需要通過下面幾個(gè)步驟來完成:即首先對(duì)于軟件的維護(hù)場(chǎng)景進(jìn)行分析,從而能夠更好的獲取軟件全部的維護(hù)活動(dòng),其次則應(yīng)當(dāng)對(duì)于不同維護(hù)活動(dòng)對(duì)于體系結(jié)構(gòu)所產(chǎn)生的影響進(jìn)行分析。
3.1.1 軟件維護(hù)活動(dòng)的獲取
對(duì)于軟件維護(hù)活動(dòng)來說,我們需要對(duì)于因?yàn)閷?duì)于軟件進(jìn)行維護(hù)所引起的場(chǎng)景變化而對(duì)其進(jìn)行實(shí)現(xiàn)。在這方面變化中,主要具有以下幾個(gè)環(huán)節(jié):首先,需要我們能夠根據(jù)場(chǎng)景的維護(hù)情況來對(duì)這部分場(chǎng)景所產(chǎn)生影響的用例進(jìn)行統(tǒng)計(jì)以及分析;其次,則可以根據(jù)我們已經(jīng)獲取的變化用例情況同軟件的需求進(jìn)行分析,從而確定我們對(duì)于實(shí)現(xiàn)用例的對(duì)象情況已經(jīng)產(chǎn)生了何種的更改;最后,我們則應(yīng)當(dāng)根據(jù)對(duì)象的變化情況來對(duì)于軟件內(nèi)部中需要實(shí)施更改的區(qū)域等進(jìn)行確定,通過這種方式,我們則能夠?qū)浖w系結(jié)構(gòu)中所有產(chǎn)生的軟件維護(hù)活動(dòng)進(jìn)行確定,并在此基礎(chǔ)上對(duì)于軟件自身所發(fā)生的變化情況進(jìn)行適當(dāng)?shù)挠涗浺约皩?shí)現(xiàn),并根據(jù)每一個(gè)軟件維護(hù)場(chǎng)景情況的變化情況以及構(gòu)件所發(fā)生的變化信息等等進(jìn)行全面的記錄。
3.1.2 軟件維護(hù)活動(dòng)對(duì)軟件結(jié)構(gòu)產(chǎn)生的影響
在軟件內(nèi)部的構(gòu)件之中,同時(shí)也存在著較多的相互之間的關(guān)系,而其中如果某一個(gè)構(gòu)件在應(yīng)用的過程中發(fā)生的改變,則很可能會(huì)對(duì)與之相關(guān)的構(gòu)件產(chǎn)生影響,同時(shí)也需要我們能夠?qū)@部分構(gòu)件進(jìn)行更改。而對(duì)于這種現(xiàn)象的存在,我們則稱之為對(duì)于軟件維護(hù)的波及效應(yīng),通過這種效應(yīng),我們則能夠較為簡(jiǎn)單的確定在某一個(gè)軟件維護(hù)場(chǎng)景中,我們所發(fā)生的軟件更改對(duì)于整個(gè)軟件體系結(jié)構(gòu)會(huì)發(fā)生多大的影響。而如果我們想獲取軟件維護(hù)場(chǎng)景對(duì)軟件體系結(jié)構(gòu)的影響程度,則主要需要以下方式,首先,我們需要建立起此軟件系統(tǒng)結(jié)構(gòu)的可達(dá)矩陣,通過這個(gè)矩陣,則可以較好的對(duì)不同軟件構(gòu)件之間所存在的可達(dá)性進(jìn)行分析。之后,我們則可以在對(duì)此可達(dá)矩陣進(jìn)行構(gòu)建的基礎(chǔ)上對(duì)每一個(gè)軟件場(chǎng)景的維護(hù)活動(dòng)及進(jìn)行確定,從而以此來進(jìn)一步的確定我們所開展的軟件維護(hù)活動(dòng)對(duì)于整個(gè)軟件不同構(gòu)件所產(chǎn)生影響程度的大小。
3.2 軟件維護(hù)性需求的獲取
軟件維護(hù)性需求是我們對(duì)已經(jīng)具有軟件維護(hù)場(chǎng)景進(jìn)行一定詳細(xì)分析之后所獲取的,其思路是需要對(duì)于軟件維護(hù)場(chǎng)景對(duì)于軟件體系結(jié)構(gòu)所產(chǎn)生的影響情況確定一個(gè)影響程度的值,如果該值大于恒定值,那么則可以發(fā)現(xiàn)我們?cè)摯蔚木S護(hù)場(chǎng)景將較大的對(duì)整個(gè)軟件系統(tǒng)的穩(wěn)定性產(chǎn)生影響,我們需要嚴(yán)格的對(duì)此類維護(hù)事件進(jìn)行限制,對(duì)此,我們就需要能夠在體系結(jié)構(gòu)設(shè)計(jì)的過程中對(duì)原有的更改進(jìn)行一定的變化,從而避免對(duì)軟件產(chǎn)生較大的影響。
4.結(jié)束語
總的來說,對(duì)于軟件維護(hù)性需求進(jìn)行分析是我們對(duì)軟件性能進(jìn)行保證的重要舉措,對(duì)此,就需要我們能夠在軟件設(shè)計(jì)的過程中做好維護(hù)需求分析工作,從而更好的保證軟件的可維護(hù)性。
【參考文獻(xiàn)】
[1]宋萍.工業(yè)過程控制計(jì)算機(jī)系統(tǒng)的軟件架構(gòu)設(shè)計(jì)及開發(fā)[J].鋼鐵技術(shù),2010(03):30-31.
[2]黃寧,陳未如,彭弗楠.軟件架構(gòu)中連接件可靠性計(jì)算[J].沈陽化工學(xué)院學(xué)報(bào),2009(01):72-75.
[3]唐井雄.基于WebServices軟件架構(gòu)的企業(yè)信息子系統(tǒng)集成模式研究[J].煤炭技術(shù),2009(11):175-177.
[4]沙嘉祥.基于模式構(gòu)建企業(yè)級(jí)應(yīng)用原型系統(tǒng)[J].煤炭工程,2010(04):107-110.