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