時間:2022-09-12 08:28:31
序論:寫作是一種深度的自我表達。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內心深處的真相,好投稿為您帶來了七篇計算機軟件論文范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創作。
[論文摘要]計算機軟件作為一門學科得到了迅速發展,相關技術和方法層出不窮,研究領域不斷深入和發展,計算機的應用范圍也得到了很大程度的普及,人們對軟件系統的需求急劇上升,隨之而來的軟件規模越來越大,開發費用越來越高,開發的質量和效率不斷降低的問題日益嚴重,如何解決這些日益復雜的矛盾,滿足高質量、高效率地開發各種各樣日趨復雜、大型的軟件系統的需求,消除所謂的“軟件危機”,成為計算機軟件學科所面臨的重要課題。
軟件復用技術的提出成為消除這種危機的一種解決方案。近年來,特別是20世紀90年代以后,面向對象方法和技術成為主流的軟件開發技術,使得軟件復用被視為解決軟件危機一條現實可行的途徑。與此同時,模型構件技術、分布式系統、領域工程、自動生成技術又為軟件復用注入了新的活力,本文對面向對象系統分析階段軟件復用模型進行了研究和探討。
一、軟件復用
軟件復用的概念是在1968年NATO軟件工程會議上被第一次引入的,在其后的幾十年中,進行了許多復用技術的研究和實踐活動,但因技術和非技術方面的種種因素,造成復用技術在整體上對軟件產業的影響不盡人意。面向對象方法和技術的出現及成熟,為軟件復用提供了強有力的技術支持,尤其是軟件構件技術的發展為其注入了新的活力,使得軟件復用研究重新成為熱點,被視為解決軟件危機、提高軟件生產效率和質量的一個現實可行的途徑,同時也成為了避免軟件開發中重復勞動的解決方案,并在一定程度上降低了軟件開發的費用。目前,軟件復用技術主要從兩個方面來考慮:產品復用、過程復用。
產品復用:所謂產品復用是指復用已有的軟件產品。目前基于構件的和面向服務的軟件開發模式就是建立在這種軟件復用的基礎上的。這兩種開發模式主要通過對現有的構件和服務進行合成或集成,從而生成所需要軟件的過程。產品的復用是目前軟件復用技術研究的焦點,在這個復用的過程中涉及到的關鍵技術是構件技術和軟件架構技術,在成熟的構件和架構的技術上,可以使產品復用達到良好的效果。
二、面向對象系統分析(OOA)階段軟件復用模型
1.OOA階段可重用性的本質
編程階段不同類型的編程軟件和類有不同深度的可重用性:高深度、中深度、低深度。
所謂高深度重用是指在不進行任何改變就可以直接使用重用產品的重用,像可視化開發工具中的所有控件,就屬于這方面的重用;目前,面向服務的軟件開發技術中對服務的重用,只要程序員獲得服務者提供的接口,就可以直接使用別人開發的產品,這種復用也是高深度的復用技術,因此高深度的軟件復用,可重用性最好;所謂中深度的重用,程序員可以根據自己的開發經驗,開發出一些比較通用的組件,在具體的使用中,對這些通用的組件只要稍作修改就可以應用于具體的項目中去,這種復用可重用性較好。當然,對于低深度的可重用性就于具體的項目相關,它只能局限于該項目,可重用性最差。由此可見,可重用性與業務邏輯的相關性是成反比例關系的:越是與業務邏輯無關的重用,重用性越好;反之則越差。
2.OOA階段軟件復用模型研究
OOA階段的軟件復用,在一定程度上可以說是建立在許多優秀的系統分析員實踐和經驗基礎之上的復用,是一種思想上的復用。在這個階段的軟件復用更具有通用性和重用性,因此,構造這個階段的軟件復用模型,可以使復用達到更好地效果。
3.范式抽象
所謂范式就是抽象的解決方案模板,它可在不同具體項目中使用。范式抽象就是在此基礎上提出的對范式的設計方法。針對不同的問題域,就應該有與之對應的設計方法,這樣可以使范式的設計達到很高的重用性。針對OOA階段具體現狀,有三種范式抽象方法:
(1)關系抽象
在OOA階段,針對具體的項目,會分析出大量的關系模型。例如在學校排課表系統中,需要定義教師類,它包括教師姓名、性別、職稱等有關教師的基本信息,同時,為了便于教師很快得出自己的上課表,還需要定義一個與教師對應的教師課表類,這個類顯示了一周中教師的課程安排情況;在網上購物系統中,需要定義一個購物者類,包括了購物者的相關信息,同時為了得到購物者所購的物品,還需定義一個購物車類,該類描述了購物者與所購買的物品的對應關系。這兩個系統的具體業務是不同的,但教師類與教師課表類、購物者類與購物車類的關系卻是基本相同的,都是一個實體對另一個實體的擁有關系,同樣,所進行的操作也基本相同,諸如都涉及到對所擁有實體的查詢操作等。因此可將這種關系抽象出來,定義為擁有關系,然后在此關系的基礎上定義相應的操作。這種關系就可以以范式的形式保存起來,在不同的項目中都可重用這種范式。同樣,還可抽象出許多其他的關系范式,如實體——內容關系,上下級關系等。這些關系都是不依賴于具體的項目和業務的,可重復使用,只是在針對具體的業務時,在相關屬性和方法上稍作修改就可以了。
(2)相似對象抽象
在不同項目的OOA階段,還會分析出大量的相似對象或類,例如用戶、用戶組、角色、權限等在所有涉及到權限管理的系統中都會出現這類對象;在一些相同領域的項目中,由于涉及的領域的標準化,有些對象的相似性以及相同的機率會更大。對于這些相似程度如此大的對象來說,由于其在項目開發中的相對獨立性,把這些對象模型以范式的形式保存起來會使分析的結果得到更大的重用。
按照上述思想進行的范式抽象稱為相似對象抽象,這種抽象依據的是分析階段的對象模型,這種對象模型具有獨立的、高度的相似性,抽象出來的范式可稱為對象范式。這種范式與具體項目之間的相似可稱為表面相似性。表面相似越接近,范式的重用性就越大。
(3)領域抽象
所謂領域抽象是用于某一領域的抽象問題的解決方案。在同一個領域的項目開發過程中往往能夠總結出更多的相似性,包括關系相似性和表面相似性,將二者相結合,可構建出與行業有關的構件。這種構件是建立在具體領域上的一種抽象,稱為領域抽象。領域抽象的過程可借助領域工程的知識和方法。其中在OOA階段主要用到了領域分析的方法。所謂領域分析是被稱為領域工程更大的學科中的第一項技術活動。當業務、系統或產品域被定義為長期的業務策略,則可以展開持續的創建強健的可復用庫的工作,其目標是能夠在領域中以非常高的可復用構件率來創建軟件。領域分析在領域抽象過程的作用是從OOA得出的對象、關系、行為模型的抽象出與領域相關的領域范式,其中包括關系范式、相似對象范式和處理過程范式等。這些范式與前面提到的范式唯一不同就是有了特定領域的標識,這在同一領域的開發中將達到高度的重用性。
三、總結
本文通過對軟件復用技術的分析,提出了一種面向對象系統分析階段軟件復用的模型,并對此模型中所涉及到范式抽象方法做了探討,并把它們應用于具體的項目中去,從而很好地利用的設計思想,大大提高了項目的完成速度。另外,對于范式庫的研究也為建立在高層上的軟件復用庫管理提出了新的研究課題:例如對于編碼階段復用構件庫的檢索條件也可以擴展為以范式為索引的檢索等。這些都成為下一步的研究課題。
[參考文獻]
[1]RogerS•Pressman著,黃柏素、梅宏譯:《軟件工程實踐者的研究方法》,機械工業出版社1999年版。
[2]黃靖、趙海光:《軟件復用,軟件合成與軟件集成》,《計算機應用研究》2004年。
[3]王麗娟:《軟件復用技術及其在軟件開發中的應用》,《中山大學學報論壇》2004年第24卷第1期。
計算機軟件系統的保護技術發起于上世紀九十年代,是以計算機保護卡為基礎,基于DOS系統設計的,至此計算機軟件系統的保護技術研究開始受到重視。受當時科技發展限制,計算機軟件保護技術的發展受到了很大制約。第一,當時的計算機軟件系統保護是基于DOS系統設計的,所以有很大的局限性,只適合DOS系統應用。第二,計算機軟件系統的保護技術不完善,計算機系統的兼容性很差,導致計算機的啟動、運行速度緩慢。第三,計算機軟件系統保護對用戶的限制過多,影響了用戶對計算機各項資源的利用,不利于計算機工作效率的提高。第四。計算機軟件系統的保護技術不能完全的保護計算機軟件,通過一些高級工具、非常手段很容易對計算機軟件系統構成威脅和破壞,導致系統癱瘓、資源流失等,計算機的使用安全得不到充分的保障。第五,計算機軟件系統的保護技術對系統的恢復考慮不足,軟件系統被破壞后無法補救。隨著計算機安全保護技術的發展,計算機軟件系統保護技術的這些缺點逐漸的被克服,用戶在計算機使用中只會在軟件程序運用上受到限制,但可以通過注冊解決這一問題,會的完整的軟件程序使用權。此外,現在的計算機軟件系統的保護使用了加密工具,提高了計算機硬件對計算機軟件系統保護的支持度,利用訪問權限設置,有效的預防的黑客的攻擊、病毒的入侵,確保了計算機軟件系統應用的安全、穩定。
2計算機軟件系統的恢復技術
計算機軟件系統保護技術是在“假寫原理”指導下,利用保護卡技術,在計算機啟動后對計算機的軟件系統進行保護,而計算機恢復技術是先將計算機的重要軟件資源進行備份,在計算機軟件系統被破壞后對計算機系統進行有效恢復,以確保計算機重要數據、信息等的完整。計算機軟件系統的恢復技術研究發起的時間較晚與計算機軟件系統的保護技術,但卻是計算機軟件維護中不可缺少的一部分,其與計算機保護技術相輔相成,形成了可靠、穩定、無后顧之憂的計算機軟件系統保護屏障,保障了計算機運行的安全和效率。在常規下,計算機保護技術會結合計算機系統漏洞,對系統問題進行修補處理,以確保計算機軟件系統的安全。計算機恢復技術主要應用與計算機軟件系統遭受嚴重破壞的補充,促進了計算機運行效率的提高。其主要的技術手段是利用硬盤克隆技術,將計算機內部的具體文件、重要內容、硬盤主引導、分區等重要信息進行拷貝,當計算機軟件系統遭受到嚴重破壞時,利用這些數據對計算機軟件系統進行恢復,使計算機能迅速的恢復到工作狀態,以此提高計算機應用的效率。
3結語
1.1還原軟件
還原軟件和還原卡類似,都可以對計算機系統進行快速的還原,而且不需要硬件支持,操作簡單。基于電子商務的計算機軟件系統集成化維護探究文/肖立志本文主要分析了計算機軟件系統運用中常見的一些管理漏洞和存在問題,闡述了在當前形勢下,加強計算機軟件系統集成化維護的重要性,針對目前計算機軟件系統維護工作中存在的問題進行研究。筆者通過研究,總結和歸納自身多年工作經驗,提出一些加強計算機軟件快速安裝和維護的對策。希望通過本文的分析能幫助相關單位提高工作水平和質量,能更好地應對工作中存在的問題。
1.2Ghost鏡像版恢復系統
目前經常使用的是XP操作系統還原光盤恢復系統,該系統恢復速度快而且可以自行加載驅動,同時還進行了一些常用軟件的安裝,極大的方便了對該系統的使用。但是里面含有大量的盜版軟件并且還存在著木馬和流氓軟件。
1.3操作系統自帶的系統還原
計算機操作系統內通常自帶了一些系統還原功能軟件,該軟件使用方便,但是也存在一定的局限性,只能在操作系統可以正常運行的情況下,才能夠恢復,否則想要恢復系統比較困難。
1.4其他還原系統
在一些品牌計算機內,廠家一般都設計了一鍵還原方式,但這些大都是專用的。
2集成化系統的體系構造
為了可以個計算機用戶提供更好的應用環境,我們進行了一個基于電子商務平臺的計算機軟件集成化維護系統。整個系統采取的是B/S模式設計,可以通過登陸該系統的專用服務器進行注冊。注冊成功后,用戶可以根據自己的需要進行對軟件的選擇,然后系統根據客戶的選擇自動建立系統恢復鏡像以方便客戶下載安裝,在此基礎上可以直接生成費用清單,并在該系統的電子商務交易平臺上進行繳納費用。費用繳納完成后,可以利用Ghost等鏡像恢復軟件進行一鍵恢復安裝。
3系統功能
3.1以提供一站式的正版軟件購置的電子商務平臺
隨著人們對知識產權意識的加深,以及正版軟件帶來的優勢。人們對正版軟件的需求量也逐漸增加,但是由于在不同的地方進行軟件選購以及進行注冊用戶所需要軟件的過程相當繁瑣,因此,集成化系統可以提供一站式正版軟件購置的電子商務平臺,該系統可以提供各種類型、各種級別的正版軟件,用戶可以根據自己的需要進行軟件的選擇,而且還可以對所有的用戶實行在線服務。
3.2系統與應用軟件集成化下載安裝。
該功能主要是通過進行軟件預安裝的方式,根據客戶的需要對系統和相關軟件進行設置,將操作系統、計算機硬件驅動、應用軟件集成為一個系統鏡像文件,提供給客戶。用戶下載之后可以利用恢復軟件進行恢復即可使用。這種方式不僅極大的給客戶提供了便利,而且由于系統的恢復時間短,提高了工作效率。3.3安全存儲策略指導我們一般在進行文件存儲的時候,通常會把文件直接放置在桌面或是我的文檔里面。而這樣的存儲方式存在著相當大的隱患,主要系統一崩潰,那么所有的文件數據就都沒有了。因此,集成化系統通過把桌面上、“我的文檔”、收藏夾等里面容易丟失的部分設置在操作系統以外的地方,把應用軟件和用戶數據進行分離,保證用戶數據的安全性,同時也將系統的設計更趨向于完美化。
3.4數據備份
計算機在被病毒、木馬或是其他方式導致系統崩潰,都有可能造成數據的流失,在進行集成化系統應用時,我們對在平臺上購買軟件的每一個客戶單獨配置一定的安全存儲空間,將用戶的系統分區表和其他的數據進行存儲,并提供實時更新。
3.5供在線技術咨詢交流平臺
大部分的計算機用戶都是非專業的,對計算機系統構成和數據維護了解的非常少,往往出現問題后,不能及時解決。因此,集成化系統可以為客戶提供一個專家指導的技術交流平臺,實時的為客戶提供各種問題的解決方案。
4結束語
計算機是該型雷達的一分機設備,主要完成了控制該型雷達的工作模式以及在不同模式下與其它分機的數據通信。基于此功能,該型雷達中心機在設計時應滿足:根據上級系統控制整個雷達系統進入指定狀態,并將此指令傳輸給其它分機,控制雷達的其他分機各司其職。同時收集來自其他各分機的數據,匯總并計算并將數據傳遞給上級系統,以作為雷達下一狀態的選擇依據。另外,作為雷達主要的實時控制系統,中心機將數據采集處理、計算、控制、通訊于一體,操作控制復雜,處理的信息量大。因此,在設計上應對軟硬件采用模塊化、系列化、通用化設計,盡量選用成熟技術;同時采用CPLD、專用集成電路,高可信算法等進行數字化和軟件化處理,提高處理性能和可靠性。
2軟件功能
雷達中心機軟件的主要功能是對雷達系統進行狀態管理,參數控制,信息綜合與處理,最終完成對雷達的自動化控制。同時與雷達系統的其它分機、雷達操控臺進行信息交換,控制雷達進行作戰、訓練、檢查及自檢。對外部來說,中心機軟件通過讀寫并行I/O端口,與信號處理、發射機、接收機、頻率合成器等雷達分機進行通訊。通過雙口RAM接口,發送控制命令及數據到伺服分機,接收伺服分機返回的狀態和數據。中心機接收信號處理分機發送的終了脈沖信號,中心機軟件以此脈沖作為中斷信號,與雷達其它各分機交換數據,讀寫結束時釋放信號量EndIntSem。中心機軟件通過以太網接口接收雷達操控臺發送的控制命令及數據,發送雷達狀態和數據到操控臺。對內部來說,中心機軟件按照使用的不同分為本控模式和遙控模式。其中本控模式是雷達進行研發、調試、維修、維護等狀態下所處的模式,本控模式下雷達接收來自操控臺的控制指令和數據信息來控制雷達進入不同的工作狀態,同時將其它分機發送的數據信息匯總后發送給操控臺并在操控臺上顯示出來,以便于設計人員觀察雷達此時的狀態。遙控方式是雷達的常態工作方式,遙控模式下,中心機接收來自系統的指令控制雷達進入不同的狀態。與本控狀態不同的是,此時中心機接收系統的命令而不與操控臺通信,整個雷達處于全自動操控無需人員值守。
3軟件分析
由于中心機在雷達系統中起到了控制雷達狀態,信息匯合并處理的功能,結合跟蹤雷達跟蹤目標從搜索到捕獲再到跟蹤的過程,以及整個過程中射頻、重頻、脈寬等信息的傳遞,確定中心機軟件的狀態和數據包括以下方面:中心機的雷達狀態包括:搜索、截獲、跟蹤自檢和關機等。中心機的雷達參數包括:射頻頻率,重復頻率,脈沖寬度等。數據處理包括目標跟蹤角誤差計算,跟蹤數據處理等。中心機軟件還具有在線BIT(機內檢測)功能,中心機軟件運行期間,周期性的檢查雷達各分機在線BIT結果,確保雷達處于正常、安全的工作狀態。檢測到故障時,及時將故障信息發送給系統及雷達操控臺。
4軟件設計
雷達中心機軟件選用嵌入式實時操作系統VxWorks,以滿足雷達高效的實時任務調度,中斷管理,實時的系統資源調用以及實時的任務間通信等要求。將中心機軟件按照功能由粗到細,由開始到結束將軟件進行模塊劃分,整個雷達中心機劃分為五層結構,上層模塊是由下層模塊組成,下層函數是上層模塊的細化,這樣的設計方便了上層模塊對下層模塊的復用,減少了代碼量,設計思路也更加清晰。第一層為初始化層,完成中心機的初始化以及主任務進程的開啟。主要包括接口初始化及數據初始化。第二層為本/遙控選擇層,選擇雷達是處于本控模式還是遙控模式。本控模式下接收來自操控臺的指令控制,而遙控模式下接收來自系統的指令控制。第三層為雷達工作模式層,選擇雷達是進行自檢還是正常工作。第四層為雷達工作狀態層,這層主要負責雷達工作狀態的選擇,參數的控制,數據交換。第五層為數據處理及交互層,完成對雷達數據的收集,交互以及處理。
5軟件優先級及實時性
雷達中心機的任務優先級以及實時性是中心機控制雷達并對命令及時響應的關鍵。如前所述,中心機的本質任務一個是收發指令,控制雷達狀態;一個是聚合各分機數據,與之通信。因此,中心機的實時性就是保證要及時將雷達的指令和數據傳輸給各分機,軟件優先級就是制定指令和數據之間的優先級。在中心機軟件中,設置兩個中斷服務程序,一個用于與各分機交換數據,一個用于接收控制臺的指令:(1)設置中斷“終了中斷服務程序”,完成在在雷達工作休止期內,中心機與雷達各分機交換數據;(2)設置中斷“外時統中斷服務程序”完成釋放雷達數據網絡發送信號量。
6結束語
隨著計算機軟件開發領域的不斷拓展,分層管理軟件的含義已經發生改變,變得更加豐富。從抽象角度來說,分層管理軟件是指多個概念層,每個概念層采用不同的解決方案,進而形成垂直的軟件系統。分層管理軟件中的每個層在一定程度上都具有相同的核心方案,實現各個分層之間的聯系。分層管理軟件的開發技術是建立在發展框架設置的基礎上,所以軟件結構更加完善。上個世紀80年代,計算機技術比較落后,只能進行小型數據庫的結構化編程,并開發出單層結構性軟件。隨著計算機技術的不斷發展,雙層結構性軟件很快問世。雙層結構性軟件雖然可以滿足客戶的需求,但自身存在嚴重的缺點。很多軟件開發者意識到雙層結構性軟件的問題,即不能滿足未來計算機網絡數據的需求。目前,三層結構性計算機軟件已經具備了開發基礎,成為未來計算機軟件開發的主流結構。
2軟件開發分層技術應用分析
2.1兩層和三層結構技術兩層結構的計算機軟件是由數據庫的服務器和客戶端共同組成,其中客戶端主要是面向客戶的服務界面,其功能為邏輯處理、顯示服務器的指令以及供客戶對服務器進行查詢。這種邏輯結構被稱為胖客戶,一旦客戶數量增加,客戶端不能進行相應的擴展。同時,這種邏輯結構不能進行良好的交互,維護成本比較高,存在一定的安全風險。隨著計算機技術的發展,大型計算機系統需要更加復雜的軟件結構,兩層和三層結構的應用系統出現。兩層和三層結構的軟件,主要由客戶端、應用服務器和數據服務器構成,提供人機交互、數據訪問、數據存儲和優化,服務器和應用程序服務器可以實現邏輯服務,大大降低了客戶端的負擔,被稱為瘦客戶端。通過三層的C/S結構可以實現程序的應用目的,并向數據層提出數據請求。相對于二層結構來說,三層結構技術可以有效降低客戶端和服務器之間的網絡負荷。同時,三層結構技術具有可重用性、強擴展性、安全性和易維護性。如果客戶端用戶數量不多,兩層結構更具有優勢,所以計算機軟件開發人員,應該依據實際的需要,采用適合的軟件結構。
2.2四層技術隨著計算機和網絡技術的進步,應用軟件的計算環境也發生變化,所需要處理的數據和邏輯變得更加復雜。在軟件實際編程過程中,數據處理更加迅速、計算更加準確、邏輯更加復雜。三層結構軟件技術在拓展性、安全性方面具有優勢,但不能實現三個技術的彼此獨立,也不能滿足Web技術的計算要求。在這樣的背景下,就需要在三層結構的數據層和邏輯層之間增加封裝層,形成四層結構技術。四層結構技術由存儲層、業務層、數據層和Web層構成,其中Web層是依據客戶的需要選擇適當的處理方式。如果用戶需要少的結構,Web層就向數據處理層直接發送信息,以滿足數據處理層的表達需求。如果用戶需要較多的結構,Web層通過大量的數據和信息分析,改進各方面的工作效率,以此滿足大規模的數據需求,實現網絡層業務的邏輯處理。在技術架構方面,雖然四層結構技術尚不成熟,但在未來將取代三層結構軟件,成為計算機軟件開發架構的主流形式。
3中間件技術伴
隨不同的軟件開發技術的發展,系統中的中間件數量不斷增加。目前,中間件技術在交通、金融和郵電等領域得到廣泛應用。MOM分層技術作為中間件技術的一種,被廣泛地應用于各種中間件的開發中。該技術不僅具有一般中間件技術的優點,還具有異步傳送的優點。當對應用消息列隊中的中間件進行編程的時候,MOM分層技術可以將信息同步傳輸,更加安全、可靠。中間件技術可以實現不同區域之間的信息通訊,簡化軟件的開發形式。用戶只需將消息交給對的管理器,無需關心數據的丟失和數據的傳輸問題。因此,中間件技術可以克服軟件間結構不同帶來的問題,兼容各種發展的開發技術,滿足用戶需求。
4總結
1.1軟件工程項目自動化的應用
軟件工程自動化技術主要使用可編程控制器來進行,編程人員在可編程控制器內部的閃存上進行反復擦寫代碼調試,通過軟件代碼燒寫硬件芯片的方式將控制器電路的邏輯進行分門別類地控制,使得各個電路邏輯可以發揮其對應的作用,將內部一系列復雜的運算操作變得直觀而簡單。可編程控制器的指令由內部存儲器來完成運算過程,例如計時與計數等操作,進行數模或者模數轉換來讓機器進行人機交互等。這一系列自動化過程以計算機軟件工程技術為基礎,實現了對工商業的便捷與高效操作,對于人類生活領域的進步起到了巨大的推動作用。當前計算機軟件工程項目的自動化主要用于自動化控制系統的工作方面,例如機床的自動化加工生產,通過已完成的軟件工程項目控制機器芯片,由芯片發出操作指令,可以完全實現機床零件的生產和加工的自動化過程。除此之外,在計算機界越來越受關注的人工智能領域也受到軟件工程項目自動化的影響,人工智能技術通過軟件工程項目自動化開發的芯片指令模擬人類的行為模式來使得機器進行仿真工作,極大地解放了人力物力,使得計算機數據庫的利用效率達到一個新的層次。
1.2軟件工程項目自動化的開發
軟件工程師應當對所需開發的軟件本身以及計算機系統有一定的了解深度。首先,軟件工程師要明確相應用戶的需求問題,并針對這些問題給出相應的解決方法來滿足這些需求,這個過程主要考慮以下問題:①準備做什么?即軟件工程項目的功能是什么?②I/O分別需要哪些數據?如何處理?③用什么樣的平臺來進行開發?這些問題將和用戶進行共同協商,最后由開發者的團隊以及廠商共同擬定所開發軟件的規格參數。軟件工程項目的系統設計應從硬件和軟件兩方面著手。硬件方面,需明確整個開發與維護環境的硬件框架,包括機房的大小、機箱的配置、服務器的架設、電纜與通信設施的完整性、控制臺的規格等;軟件方面,需要把待燒寫芯片的程序規模、程序處理規格、操作系統規格、I/O數據信號的定義、I/O來源與接口等條件明確清楚。除此之外,還需要定制計算機處理程序的算法,規定程序與硬件之間的相互關系、維護處理的時鐘周期,軟硬件的可擴充性等。所有有關程序方面、接口方面、硬件方面、數據庫方面的各種條件參數都要在系統設計的初級階段規劃好,軟件工程項目的設計就像一個金字塔,而地基就是這些條件參數,只有打好了地基,才能保證接下來的工作順利進行。
2軟件工程項目自動化管理
2.1數據管理
軟件工程項目的自動化管理人員需要定期對自動化操作設備各項指數進行嚴格的校驗,按照相應的標準規范對設備數據進行抽樣采集與處理,通過人工的校驗計算或者其他可用的軟件工具來對數據進行比對與調試,調試后根據結果來判斷設備是否運行有誤。經過一系列校驗之后若確定了設備可以正常運行,則將本次校驗過程與數據記錄在數據庫中,然后開始啟動設備使其開始運轉。軟件工程項目自動化運行中產生的數據非常重要,這些數據對于整個系統的擴展與改進都是至關重要的,所以需要做到實時的、多重的備份,避免一臺存儲設備故障后造成不可避免的數據丟失,可以使用類似企業內部的具有云存儲功能的軟件進行備份。云存儲具有如下優點:①可擴展性。云存儲往往具有無限擴展能力。按照目前的云存儲技術來說,存儲空間已經徹底不是瓶頸了,企業及個人不再需要擔心空間不足而增加投資;②效率高。云存儲的存儲技術是非常先進的,比如多重備份、壓縮備份、加密備份、重復數據篩選、虛擬化服務器、虛擬化存儲、數據優化等,為企業和個人提供了各種高效的存儲方案;③可恢復性高。本地磁盤中的數據被誤刪之后,恢復工作往往非常耗時。從云存儲中的數據恢復則非常快捷,只需找到刪除時間點然后通過廣域網進行傳輸即可,既省去了本地設備控件,又節約了時間;④可復用性。建立本地磁盤存儲需要大量的資金支持,而一旦出現災難性事故,則所有數據不可避免遭受損壞。對于無力負擔災難恢復或者想降低成本的企業來說,通過云存儲離線備份將是最佳選擇。
2.2環境與設備管理
軟件工程項目自動化運行過程中,環境因素對硬件設備的影響是至關重要的,環境要保持干燥,避免塵土、煙霧以及磁場干擾,盡量消除噪音以及避免溫度過高或者過低等等。在軟件工程項目的擴展過程中,需要對第三方硬件設備進行仔細的考察,確定其是否能夠和當前的系統以及項目兼容,并且應用了第三方硬件之后應當在一定時間內記錄數據變化,以及時發現是否存在問題,若存在問題,要及時向有關職能部門匯報。若有必要將硬件設備進行調整更換,也必須在經過了嚴密的數據與邏輯分析之后,確定所需要更換的設備可行,向有關職能部門匯報后進行更換。除此之外,企業員工還應當遵循如下規定:①每個人對所分配的設備必須愛護與定期維護;②每個人只能使用本部門的設備,未經同意禁止跨部門使用;③所有設備未經授權時,不得自行拆、改、換任何配件;④未經同意不得擅自加入外來設備。
2.3軟件測試管理
軟件測試管理是軟件工程項目的結晶,是軟件工程中的一個重要組成部分,對于整個系統都具有重要的意義,軟件測試管理不僅僅能夠揀選系統中出現的漏洞與錯誤,更是體現了在經過各種技術方法測試之后,對于軟件工程項目質量提高的信心所在。但是個人的智慧總是有限的,開發者無法預先知道所開發的軟件中有多少漏洞和錯誤存在,所以即便經過了測試階段,依然不能保證軟件中不再存在問題。不過,在通過了數次的軟件測試之后,可以對軟件系統中存在的一些問題以及可能出現的后果進行定性地評估,將出現錯誤的幾率控制在可以接受的范圍之內,這些都可以大大提高軟件系統的可靠性,尤其對于醫療監控、航空航天系統來說,軟件測試更是必不可少的環節。軟件工程項目自動化測試相對于傳統測試來說具有很多優勢。自動化測試由一套邏輯縝密的測試標準組成,具有一套完整的自我測試過程,它可以在很大程度上避免個人習慣性思維所造成的疏忽,也可以減少傳統測試中重復工作所帶來的誤差。同時,自動化測試是具有縝密邏輯的一套測試步驟,能夠追蹤到錯誤信息出現的時間與位置,并且進行場景再現。由此可見,自動化測試將給測試人員帶來很大的方便,所以自動化測試也成為了提高測試效率與確保測試成功率的重點研究對象。常見的軟件測試模型有CMM模型、TMM模型等。
2.4安全管理
通常情況下,企業或公司內部所進行的軟件工程項目自動化開發的數據都是屬于該公司的內部保密數據,所以從開發人員到管理維護人員來說人人都必須遵守公司的內部保密規章制度,在未取得權限之前不得向外界任何關于保密數據的信息。在保密措施方面,可以在計算機設備中使用暗碼,阻止不相干人員接觸到核心數據,并且這種暗碼的特性決定了它是很難被破解的;含有保密數據信息的工作間須安裝監控攝像頭,隨時記錄各個員工對于計算機的使用情況;計算機內部安裝記錄軟件,使其保留每個員工的操作記錄;含有敏感數據的計算機不得連接公共網絡,需做到只連接內網或徹底斷網運行。各種保密措施應用到位之后,基本上就可以杜絕因個人原因而導致的敏感信息外泄的可能性。例如國內著名的奇瑞汽車集團,其內網安全體現在“4個管理”上,即為外設安全管理、核心數據管理、互聯網應用管理與應用程序管理。這4個管理關系著奇瑞內部員工工作的方方面面,能夠有效阻止內部敏感數據信息泄露。數據信息在存儲和傳輸過程中也面臨著一些安全風險。通常來說,存儲介質必須符合以下規定:包含敏感信息的移動設備必須由專人保管與看守;刪除存儲介質上的敏感信息后,必須對存儲介質進行徹底格式化并且在存儲區域填入無用信息對存儲區域進行覆蓋;存儲媒介出入庫的情況必須通過安全系統授權并保留記錄;對數據信息的傳輸過程應采取對應安全級別的加密技術(對稱加密與不對稱加密等);敏感數據信息在傳輸過程中必須使用數字簽名,這樣可以使信息具備不可否認性。除此之外,還應當保證系統中計算機密碼的安全性,密碼安全應當遵循如下原則:采用大腦記憶密碼,不得在書面媒介上出現密碼,更不能出現在電子郵件中;不采用缺省密碼;密碼由專人設置記憶,不與其他人分享;若密碼泄露,必須第一時間修改;密碼強度要足夠高;強制指定密碼的有效期;禁止交互式登錄;每周檢查一次口令強度。
3總結
用戶體驗是貫穿在計算機軟件開發利用的一切過程之中的,設計者從軟件性能設計出發,結合了用戶操作習慣,能夠對用戶體驗產生一個正確的軟件預估,在用戶體驗中,我們能夠認識到用戶對軟件產品的期待,發現用戶真實的使用目的及軟件期待,在用戶體驗之中,設計者能夠不斷改善軟件核心功能及細節修改,減少軟件BUG,逐步完善軟件用戶個性化。用戶體驗在計算機軟件開發中的作用相當于一把標尺,在設計-測試-再設計-測試-修改的反復循環的軟件開發過程中,用戶體驗為這個循環的進行提供了一把可量的指標。完善的軟件成品,滿足了用戶的個性化需求,提高了軟件運行的舒適度。
2提高軟件市場競爭力,占領市場
用戶體驗能使得軟件設計的更完善,在設計-體驗-再修改的過程之中,軟件得到不同程度的修飾和完善。軟件產品經歷了以下幾個階段:有用-易用-友好-視覺設計-品牌推廣-占領市場。產品有用也就是用戶需求得到了滿足,下一步使軟件變得易用,就是方便使用,友好的軟件語言能夠使用戶感到親切,通過不斷改進設計的軟件,使得軟件在視覺上能夠傳達出一種吸引力,讓用戶在使用中愛上軟件,產生用戶黏度。在用戶中樹立良好的口碑,從而認定品牌,在品牌推廣之后,市場推廣變得簡單易行。經歷用戶體驗的軟件永遠比直接開發上線的軟件擁有更多的用戶。因此用戶體驗在計算機軟件開發中有著完善軟件,提高軟件市場競爭力的作用。
3計算機軟件開發中提高用戶體驗的主要途徑
3.1營造良好的軟件運行環境
3.1.1優化編程代碼軟件程序開發的一個必不可少的組成要素就是編程代碼,因此想要提高計算機軟件開發中的用戶體驗,首先應從編程代碼著手,優化軟件用戶體驗。首先編制代碼時應盡量考慮代碼的簡潔性,能使用簡單地算法就不復雜化,簡化算法程序也不僅僅針對那些復雜的編程代碼,還應考慮代碼解算處理耗費時間長的軟件代碼,盡可能的為用戶節省時間,也減少他們在等待過程中可能減少的焦慮情緒,提高用戶體驗感受。如無法避免軟件運行速度緩慢的問題,則在最佳優化后設計后臺運行的方式輔助運行,也可添加進度條來提示用戶下載進度,避免用戶在運行軟件時產生煩躁情緒。3.1.2完善軟件安裝流暢性用戶并非專業的電子計算機軟件工作人員,因此在軟件安裝遇到問題時并不能妥善處理,甚至遇到無法下載的情況就放棄某款軟件,因此我們在極高計算機軟件開發中的用戶體驗時一定要考慮軟件安裝的流暢性,快速簡潔方便的安裝成功是一款軟件成功應用的基礎,在軟件設計中,設計人員應充分考慮用戶能力特點之后降低軟件安裝難度,完善安裝步驟,設計多種安裝方式,設計推薦安裝和自主安裝等多種安裝方式供用戶安裝,完善軟件的安裝流暢性。3.1.3優化處理軟件接口軟件接口即軟件和一般常用軟件實現數據互換、互相聯系的一種重要途徑。一個完備的軟件不僅僅應該正常運行,還應與其他軟件可以共享數據相互聯系,因此開發人員應優化軟件的接口問題,完善設計,避免用戶出現使用順手的軟件卻無法和其他順手的軟件數據交換、從而放棄軟件的問題。在實例中,軟件的接口問題也是一個讓大家關心的提高用戶體驗的重要途徑,注重相關諸多軟件的數據共享、信息過渡,在滿足用戶需求的同時提升用戶體驗。
3.2注重軟件的界面設計,給用戶留下良好第一印象
用戶對一款軟件的第一印象,就是這個軟件的圖標、外觀形象,不同風格的軟件界面會給用戶留下不同的印象,這和認識人是一個道理,外表光鮮的人更容易被別人結識,因此為了提高軟件開發中的用戶體驗,必須在用戶打開軟件的第一眼就愛上并想要使用。在軟件的界面設計中,首先考慮的是簡潔大方的設計方案,大眾都喜歡的東西才能夠設計使用。軟件界面設計中,應充分綜合考慮用戶的使用習慣。視覺心理、個人感受以及用戶偏好等角度,對軟件具體的各個部分進行設計。設計中應考慮的要素有:界面的色彩搭配、小圖標按鈕的放置、標題字體的大小、頁面內容的編排位置等等。設置智能記憶功能來保存用戶的軟件使用習慣,在用戶使用軟件時就能夠以最快速度實現要求。在用戶習慣的研究中,用戶在某個陌生軟件中停留的時間最多不超過三分鐘,三分鐘之后如果他們沒有找到自己需要的內容就會退出軟件并不再打開,用戶不能在第一時間找到吸引人的東西,軟件界面的不清晰,這就是用戶失流問題的原因,在軟件設計中,應利用研究成果,在設計中體現用戶閱讀的F型閱讀習慣,在軟件的上欄和左欄中放置更有價值的東西,合理地進行界面的主次安排。盡量少使用老舊模板設計軟件界面,避免缺乏創意和亮點的界面問世。
3.3努力提高和優化軟件運行效率
重視效率是軟件開發更好的為大眾服務的基礎,軟件設計必須遵循一條規則就是提高用戶使用軟件的效率。設計人員在進行軟件算法設科技前沿計時應將各類算法作出比對,減少那些功能不強耗時巨大的軟件,避免它們拖慢軟件運行的速度,提高軟件的運行效率,防止用戶出現等待焦急躁動甚至放棄軟件等不良情緒。計算機本身對軟件運行速度的反作用只是一部分,運行緩慢的軟件并不單單因為硬件不強大的計算機本身。開發者應從軟件編碼尋找原因,排除拖慢軟件的惡編碼,提高軟件運行效率,減少用戶軟件差評。需要注意的是我們應該在可控環境下提高軟件運行速度,注意開發成本和經濟核算。如不能減少運行時間的則設置后臺運行或者顯示進度條來減少用戶等待時間,提升用戶體驗。
3.4軟件功能設計要滿足擁護的人性化需要
人性化的設計體現在軟件設計的諸多方面,也可以這么說,軟件設計的許多角度都能夠體現人性化的設計理念。我們在軟件實際開發中,盡量避免全盤模式化的克隆,將為大眾服務作為軟件產品開發的最終理念,因此必須將用戶體驗的優良感受作為首要衡量標準。在軟件設計中,設計出人性化的軟件應做到以下幾點:第一,使用戶打開軟件和查詢信息能夠更加便捷,在用戶使用軟件的過程中,也是信息數據積累的過程,用戶想要從大堆數據中調出自己需要的數據往往不夠便捷,而騰訊設計出智能調取聊天記錄就是一個很好的個性化服務典例。在軟件設計中,合理的設計快捷鍵也是人性化服務的一個方面,易于掌握的快捷鍵能夠使軟件操作更加方便,充滿人性化。百度公司曾經在剛剛成立百度聯盟時軟件設計并不充滿人性化,當百度批準你成為百度聯盟會員時,會接收到這樣一條郵件:百度已批準你加入百度聯盟,而批準往往不是平等的語言,更像是上級批準下級,之后百度就將這一點做出更改:祝賀你成為百度聯盟的一員。這個案例告訴我們軟件設計不僅要在大方面上以用戶為核心,而且在細微之處也要體現出軟件的人性化服務。
3.5提高軟件的信息查詢和處理能力
浩瀚的信息時代,軟件也需要一個強大的信息檢索能力,這樣才不會使我們面臨無法找到所需信息的窘況,軟件開發案中加入信息檢索技術也就是是軟件具備在集合中挑選目標信息的技術,隨著我們對軟件的使用和軟件技術的開發,我們對軟件的信息查詢功能有了更多的要求,既不能使雜亂無章的信息丟失,又不能在想要查詢信息的時候逐條翻閱,這就要求我們在軟件設計開發中提高軟件的信息查詢能力,首先保證信息的可查詢性的前提是擁有穩定良好的內存來儲存信息,其次良好的可查詢性是通過小查詢框來實現的,設計查詢算法來幫助信息查詢,輸入條件就能查詢到符合條件的全部信息,諸如音樂播放器建立的媒體庫,在查詢框中輸入歌名就能檢索出全部符合條件的歌曲。在用戶實用軟件的過程中,用戶信息只會堆積越來越多,因此必須通過智能的信息查詢功能來優化用戶體驗。
4對提高用戶體驗的再認識
軟件設計成品的目的就是解決使用者的問題,因此軟件不僅炎解決用戶個體在功能上的需求,又要服務大眾,向廣大用戶提供服務。計算機軟件開發中提高用戶體驗的途徑多種多樣,在具體羅列了以上幾點之后,筆者還想從軟件開發設計的角度出發,再談談如何使用戶體驗得到更好地提高。
4.1樹立“以人為本”的設計開發理念
用戶體驗的核心就是用戶,提高用戶體驗在軟件開發中的作用是及其突出的,開發者在設計開發時應樹立“以人為本”的觀念,重視用戶的心理體驗,關心用戶的自我感受,在實現軟件設計功能的保證下抓住用戶心理,吸引用戶長期使用。人性化的軟件設計和靈活多變的軟件服務是實現“以人為本”的基礎,在之前軟件設計的經驗上,改進模板,合理搭配軟件信息模塊,在廣大用戶中選擇他們共性的東西,尋求最多的受眾欣賞。“以人為本”要求設計者關注用戶,學習每一個用戶不同的操作特色,綜合這些特色,讓軟件更加靈活的服務用戶。在實際軟件操作中,可以設置不同的操作方案和主題搭配,供用戶自行選擇和隨意保存。“以人為本”的開發理念要滲透在軟件設計開發的各個過程,在設計中應考慮用戶,在測試中應觀察用戶,在再修改中應體現用戶。
4.2注重市場信息反饋,不斷改進和完善軟件
信息的傳播有五大要素,發出者、接受者、媒介、訊息、反饋。這五個環節構成了一個完整的信息傳播途徑,軟件設計和開發也需要市場信息的反饋,設計好的軟件經過上線,用戶開始使用,但此時并不是開發者工作的完成,而是新的開始。在這一階段的工作中,開發者扮演的是信息收集者的角色,他們需要在市場上收集用戶對軟件使用的評價、軟件的推出程度和適用領域、人們是否經常使用這款軟件以及這款軟件出現的問題。收集這些問題再將軟件優化,最新軟件,供用戶更新,充實了新的功能和修補了軟件BUG。市場是軟件接收測試的搖籃,開發者要注重市場信息的反饋,根據反饋修補軟件,不斷改進和完善軟件。
5結束語