時間:2023-05-24 17:22:47
序論:寫作是一種深度的自我表達。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內心深處的真相,好投稿為您帶來了七篇軟件設計與開發范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創作。
關鍵詞:醫療輔助軟件 WPF Blend
中圖分類號:TP316 文獻標識碼:A 文章編號:1007-9416(2012)02-0132-02
無錫尚沃生物科技有限公司開發了應用于呼吸系統檢測儀器“納庫侖一氧化氮分析儀”,產品在投入市場后,發現兒童在使用儀器時與成人有很大的不同,存在不配合性、數據采集時間不同等情況。企業急需一套能夠被醫療兼容,又能夠讓不同年齡段的兒童適用的軟件。根據企業提出的相關業務需求,并且為配合醫療儀器的使用,開發制作的側重點在于開發出一些適合于兒童,并帶有簡單游戲性質的故事情節的游戲軟件。為此,我們選擇了Visual Studio 2010下的WPF(Windows Presentation Foundation)技術。本文對WPF以及WPF在項目中的實際運用進行了介紹。
1、WPF體系架構及特點
WPF的全稱是Windows Presentation Foundation,是未來十年里Windows平臺GUI開發的最主要的技術之一。它是微軟開發的一款基于.NET(目前最新版本為.NET Framework 4.0)平臺的最新的軟件界面顯示系統。為用戶界面、文檔和多媒體等等,提供了統一的描述和操作方法。而相對于以往的通用編程方式GDI(Graphics Device Interface),這個已經應用于十多年的技術在.NET框架中已經被微軟進行了多次的擴充,但是對它的種種擴充已經不能很好的滿足當前軟件開發中對越來越復雜、越來越趨向于完美的軟件界面的需求,為了在完成相同界面時能夠達到更好的效果,同時也為了能夠滿足下一代操作系統的兼容。為此,了這一新的程序界面開發技術。
1.1 WPF體系架構
WPF主要是由Presentation Framework、Presentation Core和mil core三層組件構成,它們是WPF的子系統。其中Presentation Framework、Presentation Core這兩者是托管組件,而mil core卻是非托管組件。而托管組件Presentation Core提供了像事件處理、布局等一系列的功能。在組件Presentation Core提供的基本功能上,組件Presentation Framework實現了WPF的各種外觀,例如圖像效果的實現、按鈕控件的實現等.而非托管的mil core是以非托管代碼來編寫的,其目的是實現與DirectX的交互,從而來提高效率。體系架構中的User32、DirectX和Kernel是Windows子系統。如WPF應用程序運行過程圖1所示。
1.2 XAML語言
XAML是eXtensible Application Markup Language縮寫,名為可擴展應用程序標記語言。從名稱可以看出它是一種標記語言,也就意味著它具有其他標記語言所具有的諸多特點。 XAML是微軟創建的一款新的描述性語言用來構建應用程序用戶界面,即用來編寫WPF(Windows Presentation Foundation) 的應用程序。XAML引入了XML中的名字空間、屬性等多個元素,即XAML是基于XML的。并且它和XML的使用方式很接近,所以對XAML來說它本身就是一個很好的XML文檔。
在以往的程序編寫中,我們常常為使內部數據與界面很好的聯系在一起而大傷腦筋,而WPF提供了數據綁定這一有效的方法,從而很好的解決了這一難題。在XAML中使用數據綁定,而使用數據綁定的關鍵就是去創建System.Windows.Data.Binding這樣一個實例對象。當然,該對象也可以在C#中被創建。數據綁定其實是使界面顯示的數據值與內部數據值保持相同,而數據綁定這一功能的使用,使得我們項目組的開發人員在很大程度上提高項目開發工作的效率。
1.3 Microsoft Expression Blend
Microsoft Expression Blend是一個全新的、全功能的專業設計工具,用于創造基于Microsoft Windows平臺的易于使用且豐富的應用界面。使用它的首要和最終目的是作為一種可應用于WPF的設計界面工具。Microsoft Visual Studio 可以與Microsoft Expression Blend 完美的相結合在一起使用.Expression Blend 自動生成 WPF應用程序,也就是說,所顯示的界面設計都可以由XAML代碼來表示。當然,也可以將可擴展應用程序標記語言(XAML)導入到Expression Blend設計界面中。
2、WPF應用程序在實際開發項目中的運用
基于WPF的特點以及相關技術,本文創建了醫療輔助系統軟件項目。下面介紹利用Microsoft Expression Blend創建醫療輔助系統應用程序的基本過程。
(1)打開Microsoft Expression Blend,并新建名為Balloon的項目。
(2)我們進入了Microsoft Expression Blend的工作區,打開工具箱,添加背景(backimage)圖片、氣球(balloonimage)圖片、滑動軸(silder)控件、提示使用者檢測失敗的文本(txbfailed)控件和成功的文本(txtSucessed)控件、移動路徑([path])、設置下拉菜單(MenuItem)、設置下拉菜單下的起始無效時間(Startinvalid)控件和成功時間(Succeedtimer)控件、開始按鈕(btnStart)控件等。初始狀態下令文本txbfailed控件可見,設計應用程序界面。
(3)Microsoft Expression Blend將自動生成 Windows Presentation Foundation (WPF)應用程序,是由 XAML代碼來表示的。在成功的添加諸多控件的基礎上,并在代碼窗口里實現事件響應代碼的編寫。
(4)應用程序運行效果。開始檢測時,進入游戲系統界面,點擊設置下拉菜單(MenuItem),設定下拉菜單下的起始無效時間(Startinvalid)和成功時間(Succeedtimer)的有效值,例如,起始無效時間為2秒,成功時間為5秒。點擊開始按鈕(btnStart),根據吹氣時的氣量大小,滑動軸(silder)左右移動。當氣量小時,滑動軸(silder)向左移動,同時氣球降落;當氣量大時,滑動軸(silder)向右移動,氣球上升。成功時間達到已設定的有效值時,提示使用者檢測成功的文本(txtSucessed);相反,當成功時間未達到已設定的有效值時,提示使用者檢測失敗的文本(txbfailed),當兒童完成游戲的同時,完成了檢測。利用Microsoft Expression Blend技術可以使得WPF應用程序更加方便、更加出色的完成。
3、結語
WPF給Windows應用程序的開發帶來一次劃時代的革命,它提供了一種全新的、全功能的開發模式。為企業的醫療儀器提供這一相配套的兒童檢測軟件,可以使得不同年齡段的兒童克服不安定心理,更好的配合醫療檢測,從而提高治療的效果,并增加了企業儀器的新服務人群,開拓了新的醫療市場。
參考文獻
[1]張晗雨.WPF全視角分析[M].北京:機械工業出版社,2008.
[2]technet.省略/zh-cn/office/ms750441(v=VS.95)
作者簡介
關鍵詞:計算機;軟件設計;嵌入式
計算機軟件設計對嵌入式實時軟件有一定的需求,拓寬了軟件開發的范圍,為計算機軟件開發提供穩定的基礎,體現嵌入式實時軟件的實踐性。計算機軟件具有復雜的特性,其在設計的過程中遇到諸多困難,全面推行嵌入式實時軟件的運用,目的是規范軟件的規劃,避免其在計算機運行中出現缺陷,維護軟件使用的可靠性。
1計算機軟件設計中的嵌入式實時軟件
嵌入式實時軟件,能夠以程序設計的方法,融入到被設計的軟件對象中,按照需求面向需要設計的軟件,促使軟件設計的調用過程中,逐漸朝向獨立、安全的方向發展,全面提高軟件設計的質量,發揮嵌入式實時軟件在設計中的可靠性優勢。
目前,嵌入式實時軟件在計算機軟件設計中,可以降低軟件設計的失誤率,消除潛在的缺陷,嵌入式實時軟件的開發流程如圖1所示,嚴格按照軟件設計的需求進行,提高軟件的設計質量,保障軟件設計的產品,更加符合計算機系統的需求,盡量在性能和質量上,為計算機軟件設計提供基礎的保障和根本的需求,強調計算機軟件設計的標準。
2計算機軟件設計中嵌入式實時軟件的開發流程
計算機運行中,設計可用的軟件,需要規范嵌入式實時軟件的開發流程,決定了軟件使用的質量和性能。結合嵌入式實時軟件的實際情況,分析開發流程中的內容如下:
2.1開發結構
嵌入式實時軟件在計算機軟件開發結構的設計中,主要分為3個階段。首先分析軟件的需求,掌握軟件在計算機中的運行功能,根據需求加強軟件的管理力度,落實開發結構中的管理工作;然后是代碼編寫、功能測試的環節,發揮實施控制的作用,軟件功能的模塊化處理過程中,需要開發子模塊結構,在代碼或測試的過程中,還要規范模塊程序的開發過程,便于執行相關的開發任務;最后是任務地址的設計,保障計算機軟件達到時效性的要求。
2.2硬件設計
按照嵌入式實時軟件的需要,分析計算機軟件中的硬件配置,一般情況下,使用AT91RM9200微處理器,構成如下圖2所示。AT91RM9200的外部接口比較多,處理器與控制器需要保持協同的狀態,方便規劃計算機的軟件設計,即使計算機軟件設計中存有突發事件,也能迅速訪問到事件的功能,確保軟件具備充足的響應時間,還要保障軟件響應的實時性。
2.3軟件設計
計算機軟件設計中的嵌入式實時軟件,其在軟件設計方面,需要面向模塊設計,提高計算機軟件設計的開發能力,重點控制實時軟件的操作流程。軟件設計中,比較重要的是組件接口,其可根據計算機軟件的需求,接入更多的服務信息,或者構建高級別的組件系統。軟件中的組件,獨立性高,其可參與到計算機軟件系統開發的過程中,保持計算機軟件的實時性特征,加強軟件設計的控制力度,達到計算機軟件開發的實踐要求。
2.4程序設計
基于嵌入式實時軟件的計算機軟件程序設計中,采用了C++語言,把嵌入式實時軟件寫入到軟件設計的程序內,通過編程控制軟件的運行。不同的計算機軟件設計,對嵌入式實時軟件程序設計的要求不同,編程也明顯不同,按照計算機軟件設計的實踐,編寫程序,遵循軟件設計的基本原則。
3嵌入式實時軟件在計算機軟件設計中的運用
嵌入式實時軟件在計算機軟件設計中的運用,主要體現在5個方面,規范計算機軟件的開發過程,發揮嵌入式實時軟件的設計優勢。
3.1劃分任務
嵌入式實時軟件的最高層,是指應用軟件部分,與軟件的功能存在直接的關系。嵌入式實時軟件在劃分任務方面,比較注重操作系統的應用,負責資源管理、任務分配等多項工作。計算機軟件設計將嵌入式實時軟件的任務劃分環節,做為基礎的部分,提供基礎的服務平臺,有目的的規劃計算機軟件的系統,保持軟件開發的獨立性。嵌入式實時軟件在開發計算機軟件的任務時,應該注重系統的協調性,分析計算機軟件設計中的應用程序,分配需要進行轉換的數據,確定轉換數據的順序,任務劃分要注意兩個方面的內容,如:(1)設計軟件的內部功能,包括接口、控制項目等,在激活事件后整合其余的任務,采取事件驅動的方法,降低軟件設計的難度;(2)I/O功能,I/O事件在計算機軟件設計中,占據了很大一部分的cpu資源,需要利用中斷方式驅動I/O事件,在實時性要求上達到計算機軟件設計的要求。
3.2布局和組織
嵌入式實時軟件的布局和組織,是指通過存儲映像的方式,保障數據之間的連貫性,連接計算機軟件設計中的各項任務,注重計算機軟件設計的邏輯性控制。布局和組織在軟件開發設計中,對嵌入式操作系統的要求比較高,促使系統內的數據可以存儲到ROM、Flash內,維持系統的穩定性,必須根據布局和組織,優化計算機軟件設計中的組織。因為計算機軟件設計中,需要考慮到存儲映像規劃,所以嵌入式實時軟件主動調取程序命令,選擇原有的物理地址,設計執行代碼,提高ROM的啟動速度,把中斷數據存儲到零地址以后,提高計算機軟件的處理速度。
3.3實時性控制與調度
嵌入式實時軟件在計算機軟件設計中的調度和實時性控制,體現在硬實時性與軟實時性2個方面。硬實時性是指計算機軟件在規定時間內需要執行并完成的指令,而軟實時性是指既可以在規定時間內,也可以出現適當的時間延遲。硬實時性和軟實時性的相互配合,提高了計算機軟件的工作效率,計算機軟件設計在調度方面,按照優先級的調度原則,當優先級調度的任務增多時,系統的微內核,能夠按照任務的性質,增加優先級,把調度的任務劃分到不同的隊列中,降低系統任務的響應時間,保障計算機軟件的操作效率和時效性。
3.4時鐘服務
計算機軟件設計中的時鐘服務,是建立在任務與時鐘間通信的基礎上的,采用嵌入式實時軟件,規范時鐘服務的設計,在軟件設計中提供獨特的時鐘,有效的控制計算機軟件中的執行命令。嵌入式實時軟件的時鐘服務過程里,應該根據軟件設計的要求,規范時鐘服務的執行動作,促使計算機軟件具有恰當的時鐘服務,有效控制時鐘服務的過程。嵌入式實時軟件的時鐘服務方面,能夠在信號量、隊列等方面,提供控制機制,保持軟件與計算機操作系統的同步性,協調軟件和系統的時鐘服務。
3.5系統初始化
軟件設計在系統初始化方面,利用嵌入式實時軟件的方法,執行軟件的初始化。嵌入式實時軟件根據計算機軟件的實際要求,編寫抽象的初始化代碼,以此來處理硬件和微內核的各項任務,指示系統準確的完成初始化的任務。計算機軟件設計對嵌入式實時軟件的應用,使用BIOS,通過固定的指令,輔助軟件進行初始化,特別是處理器、RAM方面,加載實時軟件時,設計程序指令,方便計算機軟件設計中的任務調度。系統初始化是計算機軟件開發中的一項工作,關系到軟件的運用,所以,嵌入式實時軟件在軟件的初始化設計中,需要注重性能與質量的設計,落實并完成系統的初始化。
對嵌入式實時軟件在計算機軟件設計當中的應用,概況分析主要包括應用原理、應用特點以及應用前景。
1)應用原理嵌入式實時軟件被應用在計算機軟件設計當中,其基本原理主要是將實時處理技術與計算機科學技術進行全面融合,進而構建CORBA模型[1]。與此同時,在計算機軟件設計的遠程調用環節,能夠通過嵌入式的實時軟件實現更多的設計服務,進而對整個設計環節進行優化,增強計算機軟件設計的系統獨立性要求。
2)應用特點對嵌入式實時軟件應用特點分析,將其具體運用到計算機軟件的預測指令執行、動態分配、緩存機制等相關的設計環節當中,增強整個計算機軟件的協調處理能力,保證處理科學性與處理實時性的基本目標得以實現。在嵌入式實時軟件的本質結構上分,包括軟件與硬件兩個部分。軟件的正常運行,主要是通過應用程序進行控制,結合計算機的操作實現程序的編寫,進而做到軟件與硬件之間的交互。嵌入式微處理器是整個實時軟件的核心,能夠支撐軟件系統多任務執行與操作,具有較強的交互功能與存儲區的保護功能。并且嵌入式實時軟件處于一種模塊化的結構形態,便于維護與處理,具備良好的拓展性。可見,嵌入式實時軟件在計算機軟件設計中的應用,能夠表現出良好的設計特點。
3)應用前景由于嵌入式實時軟件在計算機軟件的開發過程中具有很強的便利性和高效性,并且這一軟件能夠在很多計算機軟件的設計中得到應用,即這一軟件的設計領域很廣。因此具有極高的使用價值,這也意味著嵌入式實時軟件具有極高的開發前景和應用前景。除此之外,嵌入式實時軟件具備較強的靈活性特點,能夠表現出環境層面的良好交互能力。該技術在計算機軟件設計方面的應用,已經逐漸取得良好的發展效果,并且憑借著良好的自身拓展功能,逐漸在合理規劃的基礎之上,增強硬件規劃與軟件方面的靈活性因素,使得嵌入式實時軟件的價值得以突顯。綜上所述,在計算機軟件設計的過程中,嵌入式實時軟件能夠促進企業軟件開發的效率,具備較強的社會效益與經濟效益。
2嵌入式實時軟件的設計要點與開發流程
嵌入式實時軟件的設計與開發流程明確,是優化計算機軟件設計的關鍵環節。設計要點,主要是針對計算機軟件開發的各個環節進行處理,對嵌入式實時軟件的應用各個關鍵點進行控制,旨在對各個環節實現優化。開發流程,則需要依據開發順序,實現具體應用環節的有效控制。
2.1設計要點
嵌入式實時軟件在計算機軟件設計當中的應用,需要明確具體的設計要點,進而保證應用的規范性與準確性,增強計算機軟件設計的能力。涉及的設計要點主要表現在以下幾個方面:
1)計算機軟件設計的過程中,需要基于一定需求的基礎之上展開設計與分析,進而使得計算機軟件的設計能夠符合相關標準及要求。同時,嵌入式實時軟件作為軟件設計的重要工具,在計算機軟件設計之前需要對嵌入式實時軟件需求進行解析。
2)明確需求之后,對計算機軟件設計系統進行設計,并將應用程序代碼進行編寫。
3)計算機軟件的設計人員充分發揮出主觀能動性,對計算機性能進行完善與優化。在這一過程中,嵌入式實時軟件能夠增強系統流暢性,使得軟件的開發流程得到全面優化,增強軟件設計的效率與可靠性。計算機軟件設計是一項系統性的工程,嵌入式實時軟件作為計算機軟件設計的關鍵性工具,準確地把握設計要點,在充分保障計算機軟件設計實現的同時,能夠發揮出內在價值與優勢。
2.2開發流程
開發流程是計算機軟件設計的核心所在,良好的開發流程掌握對軟件設計的正確性作用顯著。結合實際軟件設計狀況,應該盡量的避免人為設計所出現的失誤狀況。例如,對計算機軟件設計中的結構設計,軟件設計人員應該注意將計算機硬件結構與軟件設計進行分離,降低計算機軟件設計對硬件方面的依賴性,在緩解這一現象之后,為計算機軟件設計的實效性提供基礎保障。在另一個角度分析,嵌入式軟件在計算機軟件設計當中的應用,有助于格式化的數據結構與初始化的軟件數據得以實現。遵循開發流程實現的軟件設計,在軟件操作過程中,可直接對軟件資源以及硬件設備進行操作,增強計算機軟件設計的實效性。由此可知,計算機的開發流程決定著整個計算機軟件的設計狀況,良好的開發流程能夠增強軟件的設計功能。
3計算機軟件設計中嵌入式實時軟件具體應用
作為計算機軟件設計當中的關鍵性工具,在具體應用的過程中,主要表現在劃分任務、任務組織及存儲布局、應用實時與任務調度、任務與時鐘間通信以及系統初始化等多方面。嵌入式實時軟件的作用及效果已經得到充分明確,對計算機軟件設計的作用顯著,下面對具體應用做出探究,旨在為嵌入式實時軟件的應用廣泛性奠定基礎。
3.1劃分任務方面的應用
應用軟件作為嵌入式系統的最高層,在整個系統功能當中具有重要的作用。在計算機操作系統當中,任務管理、任務控制、任務之間的互相通信環節的實現都需要依據嵌入式的微處理器內核得以實現[2]。在這一基礎之上,計算機軟件設計應用程序的基礎平臺則是嵌入式的微內核。嵌入式實時軟件為主導設計工具,需要將各個計算機系統劃分為不同的處理環節,通過獨立任務的形態,對系統運行進行全面協調,在系統優化的基礎之上使得簡化目標得以實現。劃分任務方面的應用,對應用程序數據轉換實現深入的分析,最終按照數據并行轉換與執行的順序,以此作為標準實現對任務的轉換與歸類。當然,嵌入式實時軟件工具的應用,應該充分注重兩個方面的基本內容:一方面,計算機軟件系統的內部功能。對計算機軟件的內部并行任務進行劃分處理,具體分為周期任務、異步任務以及同步任務、應用控制任務、用戶接口任務,通過多任務模式的劃分,使得軟件各個協同的功能能夠健全與完善。將同一時間段完成系統功能與時間激活任務的事件進行激活,發揮出整合效用。在整合成一個獨立的任務之后,進而發揮出任務驅動的基本目標,最終滿足對計算機實現的資源共享。另一方面,充分運用應用程序輪詢與中斷的方式,驗證計算機軟件系統的I/O事件驅動。該方式的處理要求,主要是計算機軟件在運行的過程中,CPU資源會被應用程序所占用。通過輪詢與重點方式進行操作處理與驗證,根本目標是滿足系統實時性與實用性方面的要求。
3.2任務組織與存儲布局應用
嵌入式實時軟件完成對任務的劃分之后,需要對任務進行組織管理。當然,在任務組織的過程中,受到數據轉換關系以及任務相互之間的邏輯因素的影響。主要表現在操作系統對任務組織與管理功能方面的限制。對于嵌入式的實時軟件而言,其任務組織以及管理功能的實現,主要是在ROM以及FLASH上得以保存[3]。對計算機的軟件系統進行優化,確保整個計算機軟件的協調運作與發展。軟件設計過程的存儲器設計是關鍵,存儲映像的合理布局是整個計算機系統布局的關鍵控制點,計算機軟件系統將程序的指令進行調用,執行物理地址當中的執行代碼。ROM的初始化過程位于物理零地址,將終端向量存儲在零地址之后,通過協調與處理中斷向量之后,使得軟件在調取數據的過程中,發揮處理器調取存儲數據的效率,增強計算機軟件操作實效[4]。
3.3應用實時與任務調度
關于嵌入實時軟件的應用,主要包括有軟實時性與硬實時性兩種嵌入式的實時性。其中關于軟實時性方面,表現在可以允許軟件操作過程存在一定的延遲。在選擇環節,盡量選擇具備優先級的調度方式,對整個計算機系統實現任務調度。如果軟件系統具備較多的優先級,則需要依據任務目標及要求對優先級的級數進行控制,可適當增加優先級。在實現對任務拆分之后,提高關鍵任務的響應時間[5]。可見,在應用實時以及任務調度方面,應該增強系統響應時間,發揮出良好的價值與作用。
3.4任務與時鐘間通信
嵌入式實時軟件在計算機軟件設計過程中的應用,需要充分發揮出時鐘服務的內在價值與要求。進而使得系統能夠設計自己的時鐘,對執行動作進行控制與處理。通過軟件自行的設計自己的時鐘,定期對執行動作進行處理。針對嵌入式實時軟件系統實現對信號量、信號以及列隊等機制進行處理,做到實現軟件資源以及系統任務方面的同步,滿足通信要求[6]。在這一基礎之上,保持良好的價值與內在優勢。
3.5系統初始化
對于軟件的系統初始化要求,應該在嵌入式操作系統的底層硬件和微內核之間的硬件抽象層編寫初始化代碼要求,最終滿足對整個系統的初始化與引導作用。關于嵌入式的實時軟件系統,應該確定固定的執行指令,滿足初始化的操作要求。在系統初始化的過程中,主要包括轉換處理器狀態、初始化RAM變量、設置異常中斷等,進而在接入口都處于明確的狀態下,對嵌入式的軟件系統進行處理,實現程序指令的有效設置,便于嵌入式實時軟件在計算機軟件設計過程中的任務調度要求[7]。
4結論
關鍵詞:計算機;軟件開發;難點;策略
【中圖分類號】G623.58
【文獻標識碼】B
【文章編號】2236-1879(2017)15-0294-01
引言
計算機軟件的質量優劣對于計算機的整體水平有著決定性的作用,軟件的生存期一般都包括分析、設計、測試和運營維護等,計算機軟件的設計需要按照一定的規范和要求進行,最終建立起適應某項系統的同一層次的模塊結構。當前我國計算機軟件開發的研究成果豐碩,出現了多種多樣的設計軟件方法和支持軟件設計的工具,給軟件開發帶來便利的同時也存在著不利影響。軟件設計的過程是一個并發性、在線性、實時性同步的過程,對于軟件設計工作具有一定的影響,面臨許多難題。
1目前主要的軟件設計方法
1.1數據流設計法。
數據流設計法應用的領域最為廣泛,通常都是結合具體的領域加以設計和開發。數據流設計法的突出優勢表現在能夠有效解決工程和科技領域的應用問題,它采用面向數據流信息的方法,利用階段使用的結構分析產生的數據流圖,對數據流圖的信息特征加以檢查、分析和判斷,對信息流的性質進行分辨,以此通過變換分析和事物分析設計出軟件結構。
1.2面向對象設計法。
面向對象的設計法是將程序以及模塊等程序當作對象的概念加以分解,用自然語言將問題內容進行陳述,同時運用簡易的運行規則將問題加以約束和處理,最終對對象和對象上的屬性進行確定,同時實現在對象上的相關操作,獲得用對象表示現實的最終模型。接下來映射該模型,獲取所需的對象模型,以此解決軟件設計中的難點。
1.3模塊化設計法。
模塊設計法是一種運用時間較長的方法,該方法的優勢在于通過減化繁雜的程序避免軟件系統的復雜性,通過分解整體設計過程為一個個具體的小的程序問題,從而輕易地將小問題各個擊破。模塊化設計法呈現出的具體形態是模塊化的層次結構,設計過程中只能看見接口部分,因為內部的操作、數據是隱藏者的。
模塊化的設計法能夠容納多人的同時參與,在編程、測試和集成的環節,由于多人參與能夠提高程序設計的可讀性和可修改性。設計出的軟件隨著分解系統和思想準則的不同而不同。
1.4數據結構設計法。
數據結構設計法主要包含Warnier和Jackson這兩種,前者提供詳細設計過程的主要方式是采用圖;后者表示數據結構的主要方式是層次圖,所以說二者具有一定的相似性。數據結構的主要應用范圍是商業的數據處理。
數據結構設計法的主要宗旨是面向問題,通過發現問題、解決問題的思路進行工作。基于問題以及問題的解決方式之間必然存在一定的聯系和規律的前提,直接在數據結構上建立程序結構,最終獲得程序結構的過程描述。主要的設計結構方式包括順序、重復和選擇。
2計算機軟件開發設計的難點
2.1計算機軟件不能有效地結合實際。
軟件的更新換代速度很快,市場上軟件的開發規劃不是建立在用戶的需求上,而是通過理想化的推斷來進行,導致軟件的用戶體驗性差。造成這種現象的主要因素有軟件設計開發人員限于地域、時間、成本等因素而缺乏對實際情況的考慮,對軟件實際應用中的各種情況和問題的重視度不夠,影響軟件的質量。
2.2缺乏良好的開發環境。
我國計算機軟件的開發事業取得了巨大的進步,但是相較于發達國家還有著很大的差距,造成這種差距的一個主要原因在于我國缺乏一個良好的軟件開發的環境。軟件開發的過程中缺乏正規的商品化開發工具,這對軟件的開發工作有著不利影響。
2.3計算機軟件開發測試工作需要規范化。
在軟件正式被投入運營之前需要對其進行充分的測試,當前的軟件測試現狀是總體水平良好,但是不夠規范。一些軟件開發人員不重視標準化的軟件檢測,為了客戶的具體需求增設了許多軟件功能,導致軟件程序過于復雜,為軟件的后期運用埋下隱患。
2.4新特性的不斷增加。
軟件在正式運營的過程中會不斷增加新的特性,對軟件程序造成不良的影響,使其變得混亂、復雜。針對這種狀況,軟件設計人員要盡量避免添加新的需求;如果不得不添加新的需求就要及時更改軟件計劃。
3軟件開發設計的策略
3.1對設計需求加以合理分析。
在軟件設計之前要對用戶的需求進行市場調研,從而以用戶需求為導向制定軟件的具體設計內容,制定與之相配套的軟件設計計劃,最終將軟件開發過程中的籠統問題化為清晰的解決對策,避免不可被測試的問題的發生。
3.2提供一個良好的工作環境。
首先提供給設計人員以良好、舒適的工作環境,使軟件設計人員保持愉悅的工作心情。其次給設計人員配備正規化的開發工具,通過硬件上的服務為設計人員開發出合格、優質的產品提供支持和服務。
3.3根據實際需求切實規劃軟件設計。
為了最大限度地節約人力和物力,在最短的時間做出最有效的成果,需要提前按照規范要求制定出切合實際的軟件設計規劃。詳細制定軟件設計的具體內容,明確軟件設計的重點、難點,合理安排軟件設計的具體行程,減少與軟件無關緊要的事項與環節。
結束語
中圖分類號:TP31 文獻標識碼:A
隨著經濟的快速發展和科技的進步,嵌入式實時軟件已經廣泛應用于社會發展的各個行業,在計算機軟件設計中使用嵌入式實時軟件,能有效的提高軟件的質量,降低軟件存在的缺陷,嵌入式實時軟件在計算機軟件設計中有不可替代的作用。
1 嵌入式實時系統的基本特征
嵌入式實時系統是一種計算機系統操作方式,嵌入式實時系統的主要影響因素有時間、可靠性、及工作環境。時間是嵌入式實時系統的重要管理資源,任務的分配和調度必須在規定的時間內完成,時間還會對計算機的正確性造成影響;可靠性是嵌入式實時系統的關鍵,如果嵌入式實時系統出現錯誤,很可能造成嚴重的經濟損失;工作環境是嵌入式實時系統的重要組成部分,只有保證有安全、穩定的工作環境,才能確保嵌入式實時軟件安全、穩定的運行。嵌入式實時軟件要具有一定的魯棒性,當系統出現故障或錯誤的操作時,還能提供應有的服務,嵌入式實時軟件是一項工業自動化和計算機技術相結合的產物,在日常生活、儀器儀表、辦公設備、軟件開發等各領域中有十分廣泛的應用。
嵌入式實時軟件的時限可以分為十分嚴格、比較嚴格、寬松三種情況,如果不能符合時限的要求,會給系統造成災難性的影響,這個時限是十分嚴格時限;如果時限一到,任務產生的結果就沒有用,并且造成的后果不是很嚴重,這個時限是比較嚴格時限;如果時限不屬于上述兩種情況,則這個時限是寬松時限,寬松時限產生的結果會隨著時間的推移而減少。
2 嵌入式實時軟件在軟件設計中的特點
嵌入式實時軟件和生活的聯系十分緊密,在日常生活中,許多通信設備和電器系統都是有嵌入式系統組成的,例如數碼相機、手機、數字電視等都是嵌入式系統。由嵌入式系統組成的計算機,無論是鍵盤、硬盤,還是鼠標、耳機,都比普通計算機的功能良好。嵌入式實時軟件是一個運作平臺不能獨立進行軟件開發,需要依靠其他硬件和軟件,嵌入式實時軟件具有良好的實時控制能力,在計算機軟件設計中有十分廣闊的應用前景。
嵌入式實時軟件在計算機軟件設計中,能設計的系統有動態分配、緩存機制、預測指令等,嵌入式實時軟件能有效的提高軟件設計產品的質量和軟件的可靠性。在計算機軟件設計中,嵌入式實時軟件最重要的部分是嵌入式微處理器,嵌入式實時軟件可以用于軟件和硬件同步設計,嵌入式實時軟件在計算機軟件設計中能支持多任務的實時,能在短時間內中斷多任務,具有良好的保護功能,能進行軟件檢測和修復。嵌入式實時軟件在計算機軟件設計中有極其重要的作用。
3 嵌入式實時軟件在計算機軟件設計中的應用方法
3.1 劃分各程序的職責
為保證軟件系統的實時性功能,在進行嵌入式實時關鍵設計時,要劃分各程序的職責,避免軟件和硬件出現脫離現象,在計算機軟件設計過程中,要根據不同的程序的功能在軟件中安排特定的位置,在系統中使用優先有序的分配模式,從而減少系統對任務的反應時間。
3.2 嵌入式實時軟件的控制
在進行計算機軟件設計時,嵌入式軟件的要求會更高,在軟件運行過程中,如果出現時間偏差,就可能對整個軟件造成嚴重的影響,因此,在進行嵌入式實時軟件設計時,要嚴格的控制時間,創建一個良好的嵌入式實時軟件運行環境,確保計算機軟件安全、穩定的運行。
3.3 嵌入式實時軟件開發的作用
在進行嵌入式實時軟件設計過程中,需要和系統的軟件和硬件緊密的結合起來,將實時處理技術融入軟件開發中,利用實時機制進行事件處理,可以實現CORBA及相關模型,還可以在遠程調控中增加多種服務。在計算機軟件面向組件的設計過程中,嵌入式實時軟件能有效的增強軟件的獨立性和重用性,
4 軟件設計實例
在本次計算機嵌入式實時軟件設計中,選擇能提高嵌入式實時系統的響應時間,可以同步控制的AT91RM9200微處理器。軟件設計使用到的系統有C++語言、數字信號處理器、微機保護系統、IO設備等。本次計算機軟件設計是在軟件和硬件的系統同時進行設計開發的。在進行計算機嵌入式實時軟件設計過程中,要先分析的系統的需求,然后進行計算機軟件設計、軟件測試固化、代碼生成等步驟。在進行計算機嵌入式實時軟件設計時,將軟件系統的功能分成多個模塊,將軟件設計開發模塊化,從而將系統中不同任務區分開來,建立硬件和軟件交互系統,從而提高軟件設計的穩定性。
本次計算機嵌入式實時軟件的設計,中斷驅動方式采用可以提高嵌入式系統實時性的事件驅動方式,在進行計算機嵌入式系統內部功能設計時,為確保系統內部功能的積極響應,將設計任務周期化。在軟件設計過程中,為實現軟件內部資源共享,將控制任務轉換成圖形結構,從而簡化設計流程。在設計計算機嵌入式實時軟件結構時,要控制好軟件和硬件結構的脫離現象,降低硬件對普通計算機軟件設計的影響。軟件設計過程中將每個任務設計在軟件系統中制定的位置中,從而提高系統對任務的響應時間。最后使用C++語言進行嵌入式實時軟件編程。
5 嵌入式實時軟件的應用前景
嵌入式實時軟件具有良好的靈活性和現實環境交互能力,在社會生產中有很廣泛的應用領域,在進行計算機軟件設計時,嵌入式實時軟件能用于微處理器、程序編程、圖形控制器等硬件和軟件系統中,能有效的提高軟件產品的質量和軟件的可靠性,嵌入式實時軟件的實時性強、操作性和易控性強,在計算機軟件開發中有十分廣闊的應用前景。嵌入式實時軟件有效的解決了系統布線復雜的問題,控制過程中能源消耗比較少,能滿足市場客戶的要求,具有很強的應用價值。
結語
嵌入式實時軟件系統能有效的提高軟件的質量,降低軟件存在的缺陷,嵌入式實時軟件在計算機軟件設計中有不可替代的作用。將嵌入式實時軟件應用在計算機軟件設計中,能有效的提高軟件的實時性和可操作性,保證軟件的多任務操作功能,嵌入式實時軟件在計算機軟件設計中有極其廣闊的應用前景。
1 軟件開發的條件及現狀
當今世界,全球化和信息化已經成為不可抵擋的發展趨勢。信息網絡技術飛快發展,科學技術前進腳步加快,促使我國計算機事業的發展,軟件開發技術也在不斷的提升。但與世界其他發達國家進行對比,我國的計算機技術還是比較落后的,尚且處于發展的初級階段,并且在開發設計過程中還存在較多問題。因此,找出我國計算機軟件開發設計的問題和難點,進而提出有效的解決對策,這樣才能為計算機軟件設計工作的順利進行提供保障。
2 開發設計中存在的問題
2.1 缺乏分析
目前,我國計算機開發人員能力不足,在具體開發過程中,設計人員無法對軟件開發進行分析和研究,因而導致在實際運用過程中出現大量問題。例如用戶數據容易丟失、計算機程序被破壞,計算機聯網不穩定等。這些問題的出現,對于計算機軟件開發企業的發展造成了阻礙,還會使計算機軟件使用者的個人信息泄露,嚴重的甚至會影響生活。尋根究底,這主要是因為開發人員對于開發工作不重視造成的,他們不充分分析開發流程和設計涉及的數據信息,使得用戶電腦所安裝的程序不穩定,沒有達到設計預算要求的效果。此外,一些軟件開發人員對于開發過程中涉及的項目數據和使用目的不進行分析,使得開發設計環節籠統性大,數據不完整,從而降低計算機軟件用戶的使用效率,這在一定程度上阻礙了我國計算機軟件的開發進程。
2.2 質量得不到保障
與其他產品的設計相比,計算機軟件開發設計是一項較為復雜,并且要將多個程序組合起來的工作。在實際的開發操作中,工作人員切不可馬虎大意,如果開發人員工作不認真或是沒有按照相關的要求和標準開展工作,那么軟件開發設計工作是得不到有效規劃的。例如一些軟件程序的開發正常情況下只需要半小時就能完成,但相關的開發人員沒有遵循相關規定程序工作,這樣就會延長軟件開發的時間,而軟件的質量也會大打折扣。軟件開發設計復雜,需要開發人員按照國家相關法律法規的標準進行開發,這樣才能保證開發的效率和工程的質量。
3 開發設計問題的解決對策
3.1 方法模塊化
計算機軟件開發設計的方法模塊化是軟件開發工程未來發展的方向和目標。從我國當前軟件開發的情況看,由于開發人員工作疏忽,并且沒有按照相關的規定對軟件開發所涉及的數據信息進行實質性的分析,這樣就使軟件設計的質量得不到提升。而模塊化設計方法則解決了這一問題。
3.1.1 模塊化設計方法的優勢
隨著網絡科技的發展,模塊化軟件設計方式是計算機軟件設計領域發展的趨勢,運用模塊化設計方法,不僅可以保證計算機軟件的使用效率,還能夠提升軟件開發人員的工作效率。模塊化設計方法具有很大的優勢,這主要體現在利用這種方法設計的計算機程序可以隨意的更改軟件程序內容,這一定程度上能夠降低軟件設計的復雜性。
3.1.2 模塊化方法的工作原理
模塊化軟件開發設計方法將整個設計程序分為若干個小的程序,開發人員完成小程序設計后,需要將小程序逐個組合起來,從而形成完整的計算機軟件程序。但在這個方法的使用當中,軟件開發設計人員需要注意,設計小程序的過程中,要把小程序作為獨立個體進行設計,并且保證設計的小程序的正確性,這樣才能保證大程序的順利組合。
3.1.3 模塊化設計方法的缺陷
雖然模塊化設計方法能夠提高軟件設計人員的工作效率和軟件質量,但這種模式也存在一定缺陷。它是一種獨立存在的形式,如果計算機系統發生自動分解,那么很多的程序就只能夠根據分解的具體情況都程序進行修改、刪減或增添,而計算機的下級模塊就無法調試為更高級別的模塊。因此,計算機軟件設計人員必須嚴格遵循相應的統計原則,這樣才能保證模塊化設計方法在軟件開發設計中的使用。
3.2 層次化設計
數據結構信息是計算機軟件開發設計工作中的重要一部分,也在計算機系統中占有重要地位。從我國目前計算機軟件設計發展情況看,大多數企業已經實現了軟件設置程序結構化,并且對設計結構進行層次化,但大部分企業卻沒有對數據結構進行層次化,這就容易使軟件設計數據信息流失或是出現圖文信息特征不明確的問題。因此,加快數據信息結構層次化是當前要考慮的主要問題之一。通過信息的全面采集和調整優化內部數據結構,再以詳細的圖文和信息流特征為基礎對軟件數據結構進行準確分析,得出合理的軟件設計結構。另外,還需要控制好影響數據結構設計的禍合和內聚,這樣才能解決數據結構難點問題。
3.3 設計多元化
目前,Warnier是我國計算機軟件數據結構設計的方式,它不僅能夠利用圖標結構將計算機軟件中數據難點直觀的表達出來,還能根據相應的數據結構設置控制結構,為計算機軟件中的難點問題提供解決辦法。數據結構設計主要有三種類型,表現為重復、順序以及選擇。數據結構設計操作流程分為四步,一是分析數據結構,二是得出相關結論,建立程序控制結構,三是列出數據結構設計的整個過程,四是將數據結構分配到對應的內部系統中。總之,重視計算機數據結構設計這一環節,并且加大投入力度,對于解決開發中的難點問題很有幫助,同時還能夠使數據結構向多元化方向發展。
4 結語
綜上所述,隨著科技發展步伐的加快,我國計算機軟件開發技術也在不斷的提升,與發達國家還有一定的距離,并且處于初步發展階段。為此國家出臺了相關的法律法規保障計算機軟件開發工作的順利進行,與此同時,企業也制定了發展的相關措施,利用模塊化設計方法,確保層次化的實現,達到提升計算機軟件設計效率和質量的目的。
關鍵詞:計算機;軟件開發;規范化
中圖分類號:TP3 文獻標識碼:A 文章編號:1009-3044(2014)11-2537-02
Abstract: The new century, with the development of modern information technology, application of computer software technology more widely, computer software development to promote the development of computer technology became an important foundation link, and how to strengthen the standardization of computer software development also become a major social concern. In this paper, based on the current status of computer software development, focusing on analysis should be enhanced from what computer software development standardization in order to effectively regulate plus computer software development to provide some references and recommendations.
Key words: Computers; Software Development; Standardization
現代信息技術的快速發展加快了我國金融市場信息化建設的進程。而信息化發展是建立在不斷更新和發展的計算機軟件開發技術基礎之上的。努力提高計算機軟件開發人員的專業技術水平、積極促進計算機軟件開發規范化的落實是目前一個十分重要的課題。從某方面來說,計算機軟件開發的規范化程度決定了軟件的生存周期的長短。加強計算機軟件開發的規范化的主要內容是指在特定條件下對計算機軟件的運行環境進行設定,在滿足軟件的應用性能和質量需求的基礎上,擬定完善的軟件用戶須知準則,并對軟件開發和應用進行必要的說明。要規范計算機軟件開發,首先必須對用戶對軟件的需求進行詳細的了解,對計算機軟件的運行環境進行分析和評估,在此基礎上明確軟件開發的規則。
1 計算機軟件開發存在的問題
目前,我國的計算機軟件開發還存在一些問題,尤其是軟件檢測不夠規范給計算機軟件開發留下了比較大的漏洞。軟件檢測不規范問題主要表現在這幾個方面:一、軟件檢測程序不規范,措辭模糊不清。軟件檢測不規范,呈交給領導的檢測報告不夠清晰、明了,此外,沒有對檢測出來的錯誤進行登記劃分,例如應該按照檢測錯誤的性質將其分為一般性錯誤、警告性錯誤以及致命性錯誤這三種。在發現錯誤后,也不能及時對錯誤進行分析并提出相應的修改意見。大多數檢測修改意見幾乎都是大同小異,沒有什么有建設性的意見。這樣的檢測報告是非常容易引起研發部門以及領導層的反感的,也不利于軟件開發的順利進行,對軟件的質量也會產生一定影響。二、軟件檢測過程模糊。軟件檢測報告不能詳細、完整地呈現檢測錯誤發生的環境和過程,增加了軟件修改和調整的難度,此外也影響軟件研發部門的修改。可能出現因為一個極小的表格錯誤而給整個系統造成難以修復的損壞。
2 軟件設計研發標準
計算機軟件設計主要包括概要涉及和詳細設計這兩個方面的內容。作為軟件設計的重要組成部分,概要設計和概要設計一般為合成為軟件涉及,而在實際的操作過程中,軟件設計具有結構化的特點。軟件設計是在對用戶需求和市場環境進行詳細分析的基礎上獲取產品的設計風格、軟件構造以及制作流程等方面的內容。獲取軟件設計的研發標準能夠促使計算機軟件設計更加標準化。
2.1 軟件設計中的概要設計研發標準
概要設計的標準就是根據軟件的功能需求,建立能夠聯系各大模塊的目標軟件系統,給各個模塊的接口以及控制接口下定義。建立一個能夠控制全局的數據庫,對軟件設計的功能范圍進行設定,并且擬定軟件檢測方案。軟件設計的概要設計研發標準對創建全面的系統構造進行了合理的規定,軟件各功能模塊必須滿足高內聚度和低耦合度的要求,只有這樣,才能使得系統持續保持優良的形態。而在進行整體的系統目標構建時,要盡可能使模塊的接口趨于簡單化。在進行具體操作時,模塊接口一定要滿足軟件目標系統共的整體構造。在進行大型軟件的系統設計工作時,可以將軟件的核心部門分成若干個小的子系統,再對子系統進行功能模塊的創設并且建立它們之間的關系,還要對功能接口進行注解,為功能系統建立一個數據庫。而對一般性質的軟件功能系統,則不需要進行子系統的劃分,可以直接創設功能模塊以及它們之間的關系,在對數據接口進行注解,建立系統數據結構,擬定系統檢測策略。此外,軟件設計所創設的系統必須包含產品的全部信息需求。對系統各模塊的性能以及它們之間的關系進行明確,還要明確個接口的控制特性,保證軟件檢測文件的全面性。
2.2 軟件設計中的概要設計研發標準
軟件設計中的詳細設計研發標準是對概要設計研發標準進行細化,它需要對概要設計中的內容進行更詳細的解釋,能夠系統地、精細化地闡述概要設計的功能模塊。詳述系統功能模塊的內部細節,必須把握好算法以及模塊的內部構造這兩個方面的內容。算法和內部構造的明確能夠對擬寫源代碼起到一定的有益影響。因此,軟件設計的研發標準,一定要圍繞算法和內部構造這兩方面的內容來規定。對模塊輸入輸出等性能的處理一定進行細化和區分,在完善的詳細設計研發標準的前提下進行規范化的軟件設計。對每個模塊進行程序劃分,并對檢測報告進行準確的檢測和評估,保證模塊接口的精準性。保持計算機軟件設計的漸進性、一步一步地求精求好是軟件設計最重要的一項要求。
3 軟件檢測的規范化
一般來說,在規模比較大的軟件開發實施過程中,犯錯是難以避免的,而要有效地消除錯誤,在軟件生存周期中進行軟件檢測是十分必要的,它幾乎是軟件研發過程中一個不可或缺的階段,軟件檢測決定著軟件的生存周期以及其產品的研發質量。加強軟件檢測的最主要的目的是根據軟件研發的需求規定中的功能和性能需求以及檢測計劃等內容來對軟件的功能系統進行檢測,看起是否達到質量要求,還要提供相應的用戶使用需求準則和應用操作說明書等。規范軟件檢測的過程,首先,必須要有用戶代表一起加入軟件檢測;其次,必須對軟件系統的各功能模塊進行完整的檢測測試;再次,要對檢測數據、預期結果等進行預留存檔;最后,還要建立相對獨立的軟件測試小組對軟件性能等進行最后的確認測試。軟件檢測結束后,要寫項目總結報告,對檢測結果進行分析、評估。
4 進一步加強對軟件開發規范化的認識
軟件設計檢測標準的規范程度依賴于軟件檢測環境的規范化發展,通過建立完善的檢測環境來提高軟件功能檢測性能。軟件檢測部門應該對軟件研發人員提供更多的技術支持。目前,隨著科技的進一步分站,軟件檢測工具也有了比較大的變化,許多企業的軟件檢測都有過去傳統的手動檢測發展到現如今的自動化檢測,檢測標準也逐漸過度到以量化標準為準,而隨著軟件檢測標準的不斷完善,軟件檢測工具的應用也更趨于全面。目前,越來越多的企業開始趨向于由檢測方為研發方提供檢測工具,讓軟件研發人員的開發行為更加順暢。此外,檢測方還很樂于為軟件研發方提供軟件檢測的教育指導,以此來促進軟件檢測標準的完善化發展。這種兩個部門之間的合作關系有利于軟件研發方在進行軟件開發的過程中充分落實軟件檢測制度,也能夠有效減輕研發方的軟件檢測壓力,促使軟件研發過程更加標準化,這樣通過檢測方與研發方的合作一起提升軟件產品的研發質量和研發標準,保證軟件產品最終實現軟件研發和軟件檢測雙向水平的提升和發展。
5 軟件維修的規范化
計算機軟件維護是保證軟件生存周期的一個重要內容。軟件維護的主要任務是對軟件的任務系統進行維修,對在計算機研發階段未被檢測出來的錯誤進行改正,使得軟件系統能夠正常運行,保證其功能和性能的良好狀態。軟件維護階段的規范化要求維修必須在嚴格的規范和相關準則的規定下進行,不能出現舊的錯誤沒有解決,又出現新的錯誤的情況,盡可能地減少軟件愛你維修的負面效果。軟件維修應該在嚴格的規范和制度控制下按部就班地進行,維修步驟和過程必須有詳細的記錄,即填寫規范化的維修檢測報告。此外,軟件維修人員還要對維修檢測報告進行評估分析,主要包括檢測軟件原有的問題是否得到解決、維修所需要的人力物力資金以及軟件維修所需要的時間周期等內容。在確認檢測后,填寫最后的維修檢測確認報告,通知用戶軟件維修已結束。
現代社會,隨著計算機技術的廣泛應用,計算機軟件開發成為計算機技術應用發展過程中的一個中內容。只有加強對計算機軟件開發規范化的要求,才能讓計算機軟件技術更好地適應市場經濟的發展要求。
參考文獻:
[1] 陳妍.計算機軟件開發的規范化探析[J].軟件,2013(7).
[2] 范中平.計算機軟件的深度開發應用[J].才智,2012(12).