時間:2022-06-08 08:46:02
序論:寫作是一種深度的自我表達。它要求我們深入探索自己的思想和情感,挖掘那些隱藏在內心深處的真相,好投稿為您帶來了一篇軟件開發畢業論文范文,愿它們成為您寫作過程中的靈感催化劑,助力您的創作。
摘要:
進行冶金采礦類專業計算機實驗室管理系統的優化設計,確保實驗室管理的高效運轉。系統采用LabWindows/CVI進行實驗室信息管理系統開發,采用嵌入式Linux進行內核編譯,系統主要包括了信息處理模塊、網絡通信模塊和人機交互模塊。在于x86的標準PC環境實現計算機實驗室管理系統的軟件開發和實現。研究表明,該系統對計算機實驗室的管理信息的處理效率較高,進程跟蹤實時性較好,穩定可靠。
關鍵詞:
冶金采礦;計算機;實驗室管理;軟件開發
在物聯網和計算機網絡信息平臺下,設計冶金采礦類專業計算機實驗室管理系統,提高計算機實驗室的工作效率。大型計算機實驗室的信息管理系統是構建在物聯網環境下的,實現對計算機硬件設備的聯網管理和集成調度,保障計算機實驗室的穩定可靠運行。隨著信息處理技術和軟件集成開發技術的發展,對冶金采礦類專業計算機實驗室管理系統軟件設計,確保實驗室管理的高效運轉[1]。系統采用LabWindows/CVI進行實驗室信息管理系統開發,采用嵌入式Linux進行內核編譯,實現系統集成設計。首先進行了計算機實驗室管理系統的總體設計,然后進行模塊化設計和調試,得出有效性結論。
1計算機實驗室管理系統設計及技術指標分析
本文設計的冶金采礦類專業計算機實驗室管理系統主要分為計算機實驗室管理信息處理模塊、網絡模塊、數據存儲模塊、通信模塊以及人機交互模塊等,采用的DSP是AD公司的AD9225芯片進行計算機實驗室管理信息的高速處理和采集。搭建入式Linux軟件開發環境,在Windows或Linux計算機進行信息系統的數據庫開發和設計,采用交叉編譯環境,在Linux下編譯程序生成冶金采礦類專業計算機實驗室管理的目標文件[2]。在組件設計中,通過調用request_irq()函數實現譯碼和時序控制設置分頻器和信息存儲結構分布的脈寬值。根據上述參數設定,進行信息存儲系統的模塊化設計,在存儲系統的資源配置模塊設計中,先打開SCSI數據硬盤,設定源代碼,在LabWindows/CVI中為用戶提供GPIB488.2庫,基于X86架構編譯生成的可執行代碼,完成系統的總體設計,根據上述系統總體設計要求,得到本文設計的冶金采礦類專業計算機實驗室管理系統軟件的技術指標描述為:8通道同步計算機實驗室管理信息采樣;D/A分辨率:12位;X86架構下的代碼編譯功能。根據上述技術指標分析,進行系統的模塊化設計和軟件開發。
2計算機實驗室管理系統軟件模塊化
設計及集成開發實現在于x86的標準PC環境實現計算機實驗室管理系統的軟件開發和實現。軟件開發中,首先配置和編譯Linux內核,Linux配置系統包括:配置工具、配置文件、makefile。輸入“#makezImage”命令,開始編譯內核,計算機實驗室管理系統軟件的根文件系統采用庫文件、腳本、配置文件進行數據保存。使用tarjxvfbusybox-1.14.2.tar.bz2命令進行計算機實驗室管理系統的Busybox編譯,構建實驗室管理系統的數據庫訪問模型,計算機實驗室管理系統的Busybox編譯模塊如圖1所示。在上述進行程序編譯的基礎上,進行MVB總線控制設計,對冶金采礦類專業計算機實驗室管理系統D/A轉換器輸出進行調制解調。實現了計算機輔助視覺下的冶金采礦類專業計算機實驗室管理的網口、串口、USB口的控制,提高系統的集成管理和調度能力。
3系統調試和性能測試
根據上述設計的軟件系統,進行計算機實驗室管理系統的軟件調試測試,構建管理信息數據庫,實現冶金采礦類專業計算機實驗室管理文件系統配置和編譯集成開發,為測試性能,以實驗室管理任務執行時間為測試指標,得到仿真結果如圖2所示。從圖可見,采用本文方法進行計算機實驗室管理,實時性較好,執行時間較短。
4結束語
本文進行冶金采礦類專業計算機實驗室管理系統的優化設計,系統主要包括了信息處理模塊、網絡通信模塊和人機交互模塊。在于x86的標準PC環境實現計算機實驗室管理系統的軟件開發和實現。研究表明,該系統對計算機實驗室的管理信息的處理效率較高,進程跟蹤實時性較好。
作者:惠征 李倩偉 單位:南陽理工學院
摘要:
我國金融電子業的發展和進步使得銀行軟件行業進入到了一個關鍵時期。銀行之間激烈的競爭關系使得銀行對于軟件的的要求越來越高,國外優秀的同類軟件也在不斷的參與著國內市場的競爭。巨大的市場壓力迫使軟件開發商放棄了傳統模式的手工作坊的開發方式,轉而采取更加先進的技術和方法來提高軟件開發的質量,以保證企業的可持續發展和進步。
關鍵詞:
銀行;軟件開發;CMM;開發方法;改進
銀行軟件的開發過程的改進方法直接影響到銀行業的進步和發展,對銀行信息化水平的提高尤其重要。銀行軟件項目是由技術、過程和人才三個方面共同完成的,銀行軟件項目的開發和改進方法離不開以上三個要素的參與,只有提高銀行軟件的開發質量和工作效率才能吸引創造更多地利潤,提高客戶的滿意度。
一、銀行軟件的開發方法和改進方式
1、以產品化為核心的軟件開發方法銀行軟件業發展的初期階段,軟件商針對各銀行服務項目的不同進行軟件的定制是當時主要的銀行軟件開發方式。開發人員針對每個項目中實際的需求進行調研,設計出符合要求的開發方案再進行實施,但實際上,這種方式存在很大的局限性。首先定制軟件需要軟件開發商將大量的技術人員派遣到不同的項目中去,他們的工作重復率十分高,極大的浪費了人力資源,效率還得不到提高,使得開發成本的投入不斷增加,給企業的進步和發展帶來了阻礙,定制軟件的穩定性還非常差,出錯幾率較大,在客戶滿意度上始終達不到高標準。[1]使用產品化的銀行軟件開發方法可以很好地解決以上問題,作為一種工程技術的方式,產品化的開發方法基本的研究思路是在同類軟件產品的基礎上,提取出相關的業務特征來予以實現,對于不穩定的部分進行參數化的處理,使其能夠在較小的變化下滿足大部分客戶的需求。這樣項目在經過首輪的開發研究之后,對不同銀行的軟件都能在最短時間內進行維護和保養,非常有利于提高軟件質量、減少成本的投入和增加市場競爭力。銀行軟件的開發方式以銀行具體的業務標準作為基礎和標準。從理論化的角度來看非常適合產品化的開發方式。但是針對目前銀行界的發展情況來看,各銀行之間有自己獨特的業務處理程序,在流程和業務的處理方式上也大不相同,給產品化的開發帶來一定的阻礙。以產品化為核心的銀行軟件的開發過程是建立在技術平臺的基礎之上,通過業務邏輯的思維能力在部分定制條件下可以快速完成對于產品的開發和使用。銀行軟件業務的平臺的開發步驟是在技術平臺作為基礎的情況下,再深入理解和分析銀行內部的業務,建立和完善業務平臺,然后在基本業務平臺之上構建出一個完整的業務流程,對于具有近似流程的業務建立建立相關模板來用作更高層次的平臺,以支付系統為例,大筆金額交易的流程必須經過錄入、審核。傳輸、修改和修正等步驟,就可以做成一個完整的業務模板,通過對這個模板的修改和調整就可以用到其他類似的業務上。[2]以產品化為核心的開發方式除了開發制作方便快捷之外,在后期的軟件維修保養和升級方面也十分快速,雖然以產品為核心的開發方法的業務平臺并不是徹底的產品化方案,還需要相應的開發人員的針對具體的銀行業務進行第二次的開發,但是卻是非常適合當前銀行業的的一種改進方式。
2、以CMM為核心的軟件開發方法CMM是管理學理念在軟件行業中的具體表現,在過去的幾年時間內CMM用具體的成績證明了他對改進軟件開發過程的價值,是一種更加先進的改進方式,但是并不是所有銀行的軟件項目都適合CMM的管理理念,比如以算法為基礎的銀行研究性開發項目就不行,CMM為核心的軟件開發方式只適合控制方便的業務型開發項目。目前我國銀行的軟件大部分都是以業務作為核心的行業軟件,因此在具體開發技術上是不需要十分高深的算法和復雜的邏輯的,因此十分適合使用CMM的理念對銀行軟件項目進行開發和使用,由于開發方式的產品化等特征,雖然整體的研究成本得以降低,但是在第一次的開發程度上卻十分復雜,需要更加優良的管理方式才能保障以CMM為核心的軟件開發成功。[3]我國目前對于CMM的研究已經取得了很多的成果,例如對KPA中關鍵過程的實踐內容的解析和證明,每個目標如何在單獨的軟件開發項目中完成。但是CMM在銀行軟件的開發實施需要企業文化作為基本保障,才能確保該方法的順利進行。CMM的管理理念提供了一系列的方案來保障銀行管理的制度化,如在具體的銀行業務中,軟件工程作為立法機構提出相應的規范內容,所以軟件在在開發過程就必須按照這些制度來執行,保障軟件的質量監督規范的實施,這樣就能確保軟件管理的有效性。但是傳統制度下的銀行軟件開發企業的管理者來說,自身也處在制度之下,只有企業內形成法制化的企業文化,才能保障新方法的推行管理過程。需要參與CMM為核心的各組織相對獨立的發展空間。只有在不會互相影響的情況下,各組織的評估和監督工作才能從真實性和客觀性出發,對軟件的管理和理解才加具有意義。例如在對軟件工程過程組的計劃評估中,由測試組對軟件工程組的產品進行性能測試時雙方都需要相對獨立的空間的作為前提,但是在我國的發展過程中,企業管理人員的職責范圍不明確,各組織屬于從屬的關系非常多,個別企業甚至是一組人員負責兩個項目,自我監督效果極差。這樣雖然從客觀上采用了CMM的理念,但是在實際操作過程問題就會不斷的出現,對于開發過程并沒有起到明顯的作用,所以對于軟件開發企業來說這是必須要面對的問題。CMM是作為一個評估系統的依據和過程改進的結構出現的,主要是針對如何建立科學有效的管理方法給出了確切的目標和建議,CMM在銀行軟件的開發方法中的具體實現就需要結合實際的銀行業務水平和企業自身的結構,來制定出合理有效的管理方案。正確實施CMM的方法是根據各個項目中開發人員的技術經驗來完成對KPA關鍵過程的目標實踐并完成制定的目標。完成CMM2之后再從對多個項目的總結方案上開始對于CMM3的KPA研究分析,形成一個系統的組織結構,最后再反向推廣,以完成對過程管理的改進。[4]
3、重視對人才的培養工作不論是以產品化為核心的銀行軟件開發方式還是以CMM為核心的開發方式,這些方案的實施基礎是有足夠的技術人員來進行操作,對于軟件企業來說人才來說專業的技術人員可以分為單一的技術型、純業務型和管理者三種,他們各自傾向于自身領域中知識的學習和管理,目前我國的軟件企業內存在著管理缺乏的現象,更是在業務型人才的培養上十分薄弱,這對軟件的開發和推廣以及后期的維護和管理是十分不利的,軟件從性能上可以看成是一種針對其他行業發展的服務,缺乏業合格的管理人員和業務人員的軟件企業無法開發出優質的軟件系統的。從銀行軟件的角度來說,業務人員是最重要的組成部門,因為銀行業的主要工作就是以業務為主,本身也具備相對復雜的程序,只有技術豐富銀行軟件人員才能做好銀行軟件的開發工作。
二、結束語
銀行軟件的開發和改進方法主要就是包括對技術、應用過程和人才的培養上,這三個是相互關聯的相互影響的,如果其中一個方面有缺失必然會相應其他方面的進步和發展,造成資源地浪費,因此在對銀行軟件的開發和改進中要注意對這三個方面齊頭并進,避免造成短板效應,才能真正提升銀行軟件的質量和效率。
作者:徐偉 單位:上海浦東發展銀行
摘要:
在聚變堆氘氚燃料循環系統中,需要進行純或含氚混合氣體中氚分壓的在線測量,氚衰變產生β射線與材料組成原子相碰撞產生連續的軔致輻射X射線(BIXS),通過X射線的計數率與含氚混合氣體中氚分壓數值擬合關系即可實現對氚濃度的實時在線分析。氚分壓BIXS應用軟件就是為了實現實驗室氚分壓的在線測量,而獨立開發的基于美國國家儀器(NI)公司LabVIEW環境的軟件程序,氚分壓測量儀器使用NaI(TI)探測器作為探測部件,上位機通過USB口接收儀器所測得的數據計算出壓強進行實時顯示,軟件還根據實驗需求實現了參數設置、動態顯示、數據存取和壓強平均值計算等功能,最終滿足了用戶對于氚分壓在線直接測量的需求。所自主編制了軟件完成了純氚氣體(0-10kPa)的氚分壓直接測量標定實驗應用驗證,獲得了較為穩定的線性標定曲線,其測量精度在純氚壓100Pa以上時優于5%,從而為聚變堆氚分壓測量提供了一種簡便可靠的技術手段。
關鍵詞:
BIXS;LABVIEW;氚分壓;計數;壓強
從氚的安全和經濟角度來看,大型熱核聚變反應堆如ITER和未來的聚變設施都必不可少地需要大量的高濃度氚測量手段。Matsuyama等人最近研發了BIXS能譜法可以對含氚氣體的氚分壓進行測量。這個技術是基于一個專門設計的小室里含氚氣體放出的β射線與材料作用產生的X射線進行探測。通過探測氚衰變β射線與材料相互作用產生的韌致X射線,可分析材料中氚的深度分布或氣體中氚分壓。此方法一定程度上可較好彌補其它氚濃度測量方法(如電離室,激光拉曼光譜儀,質譜儀等)的缺陷,因此,日本JAERI與德國FZK都將BIXS氚分壓測量技術列為聚變堆氘氚燃料循環體系中的一項重要測氚手段。本文設計并編制了基于LABView平臺BIX-TP儀器應用軟件,實現了數據采集、數據分析與處理(包括氚壓力-時間、氚壓力-計數率、氚濃度-時間等變化圖)、數據記錄、數據存儲及計數率-時間實時顯示功能,并且完成了純氚氣體(0-10kPa)的氚分壓直接測量標定實驗應用驗證,獲得了較為穩定的線性標定曲線,其測量精度在純氚壓100Pa以上時優于5%。
1BIXS氚分壓上位機應用軟件系統結構
在需求分析的基礎上將軟件主要分為氚分壓測量儀驅動程序層、BIXS氚分壓應用程序層和面向對象接口程序層。氚分壓測量儀驅動程序層將實現對測量儀的控制與通信,考慮到USB總線具有數據傳輸率高、支持即插即用、使用方便等特點,BIXS氚分壓軟件選擇了基于USB的儀器控制與通信方法。BIXS氚分壓應用程序層建立在儀器驅動程序層之上,提供數據的采集、數值的計算和存取等操作功能。面向對象接口程序層直接面對操作者,提供友好的操作界面選擇所需功能及設置參數。
2BIXS氚分壓的儀器驅動和通信函數
驅動程序的創建首先使用DriverDevelopmentWizard(驅動程序開發向導)創建INF文檔;然后安裝INF文檔,安裝使用INF文檔的USB設備;最后使用NI—VISAInteractiveControl(NI—VISA互動控制工具)對設備進行測試,以驗證是否正確安裝,最終獲得USB設備的各屬性值。驅動成功后,進行USB通訊的軟件設計。在創建了USB設備的VISA驅動之后,就可以通過LabVIEW應用程序進行調用,實現對USB設備的控制和通信。該過程主要通過使用NI—VISA函數來實現。在LabVIEW軟件中集成了NI—VISA庫函數,USB通信軟件設計主要應用了VISAOpen、VISAWrite、VISARead、VISAClose四個函數。
3BIXS氚分壓上位機應用軟件系統功能模塊設計
3.1主控模塊BIXS氚分壓上位機應用軟件系統功能模塊設計思路如圖1所示。主控模塊主要包括兩部分,菜單響應程序和數據采集主程序。操作者界面采用方便靈活的事件結構(EventStructure)來設計和實現,即等待事件發生,然后按照指定事件的程序代碼對事件進行響應,此后再回到等待事件狀態,避免了輪詢(polling)方法對一定的CPU資源的占用(在沒有事件發生時)。開始采集后,主程序首先將變量進行初始化,然后通過VISAOpen打開設備,并通過VISAWrite發送采集開始命令給下位機儀器,成功發送后,再通過VISARead讀取從下位機接收到的數據并進行數據處理,在數據處理之前需要對接收到的數據進行檢驗,判斷接收到的數據是否正確,數據正確,則對該數據進行數據處理和壓強值計算,最后將時間-壓強圖像顯示于主控界面,采集結束。
3.2文件模塊文件模塊中包括對采集并計算得到的壓強數據的一系列操作,功能包括:(1)數據的默認保存和另存;(2)讀取并顯示已保存的數據;(3)打印主控界面。為了方便操作者對采集得到的壓強數據進行各種數據處理與操作,本軟件將壓強數據保存為EXCEL電子表格格式,當重新打開已保存的壓強數據文件后,主控界面中將會自動還原壓強圖像。操作者還可根據需要,對主控界面進行打印,尤其是可直接打印出當前實驗的時間-壓強圖像結果。
3.3設置模塊在采集開始之前,需要對下位機的儀器進行通訊和控制,設置模塊中提供了對應的功能項。在通訊口的設置中,用戶可以選擇采集儀器所對應的設備資源名稱,同時可通過對選擇的設備進行確定操作來判斷該設備是否連接成功,即檢查通訊狀態是否正常,如果設備連接成功,軟件將提示設置成功,反之,提示失敗,檢查設備連接狀態后重試。為了實現對下位機儀器的控制和操作,本軟件提供了參數設置對話框供用戶來改變所選擇的下位機儀器的高壓、增益以及需要的采樣時間,軟件同時對參數值進行了默認設置,也就是說,用戶可不需要改變參數值直接開始采集數據,其中高壓的默認值為700V,增益默認值為1倍。
3.4壓強計算模塊BIX-TP氚分壓通過USB接口按照一定的通訊協議,將得到的多組十六進制數據轉換為一組計數值,再按照公式推導,計算出其對應的壓強值。為了實現實驗過程中的自動化,減少操作者的工作量,添加了計算壓強平均值功能,該功能通過ElapsedTime子VI,可以實現自動計算1、3、5、10、15、20、30分鐘內的壓強平均值,避免了操作者從excel中提取一定時間內的壓強值,再計算平均值的繁復操作。操作者在實驗過程中發現,會出現本底值較高的情況,此時本底和真正的信號值混合在一起,影響計數值和最終壓力值的準確性和穩定性,所以在主控界面上添加了扣除本底輸入框,操作者可根據當前實驗環境和實驗條件下的本底值,自行輸入當前值,那么,圖像顯示和當前數據值顯示會自動扣除掉該本底值,以還原最真實的當前值。在主控界面上添加了壓強最大值輸入框,操作者可根據當前圖像的實際情況,隨時修改該壓強最大值,以便更好的觀察圖像所顯示的操作者最關注的區域。
4BIXS氚分壓上位機軟件的應用
如圖2是BIXS氚分壓上位機軟件操作界面及100Pa至10000Pa純氚分壓測量實驗曲線,圖2清晰顯示了計數率隨時間的變化,通過計數率得出氚分壓測量系統中氚壓強隨時間的變化,進而計算出氚濃度隨時間變化,得到氚分壓與計數率關系數據庫如表1所示,可以根據曲線擬合出純氚分壓(P)與計數率之間的公式:C=C0μP=2.28P,直接用于顯示壓強隨時間的變化趨勢,最終可以應用于聚變堆氚燃料循環系統中含氚氣體中氚分壓的直接測量。從上表的試驗結果可看出,在純氚壓大于0.1kPa時,測量精度結果優于3.40%,滿足項目內要求的技術指標<5%,此時測量精度較好;在較低壓部分(純氚壓<0.1kPa)精度稍差,分析其原因為:低純氚壓條件下有效計數率與本底計數率相差無幾,本底計數率對有效計數率引入的誤差較大。因此,在后續項目研究中,進一步控制本底的計數率,有望提高在低壓段的測量精度。
5總結
本文所研發的BIXS氚分壓上位機應用軟件基于LabVIEW編程環境實現了對下位機儀器簡單便捷的通訊與控制方式;完成了數據采集、計算、保存等多種功能;提供了人機交互友好,美觀簡潔的顯示界面,可實現氚工廠氘氚燃料及工藝氣中氚分壓的直接測量,并獲得了純氚分壓與計數率之間的擬合關系,實現了在0-2kPa范圍內BIXS測量純氚分壓的精度優于5%的預期目標,是聚變堆氘氚燃料循環體系中的一項重要測氚手段。該技術在國內屬于首創,并首次提出將其應用于我國聚變工程實驗堆氚工廠的氚測量與分析系統設計中。
作者:郭星辰 劉志珍 吉曉梅 楊洪廣 單位:中國原子能科學研究院
摘要:
與一般項目相比,軟件開發項目存在一些獨有的特點,而這些特點的存在使得要想真正做好軟件開發項目的管理工作是十分困難的,其在管理方法上與傳統項目管理存在著一定的差別,一些通用的項目管理理論或者項目管理方法并不適用于軟件開發項目的管理。在這種情況下,對軟件開發項目管理進行相應的實踐探究,就顯得非常必要。
關鍵詞:
軟件開發項目管理;實踐
進入21世紀后,伴隨著計算機技術和網絡技術的飛速發展,各種智能終端設備逐漸興起,也使得人們對于軟件的需求達到了一個前所未有的高度,推動了我國軟件產業的發展。而在軟件開發過程中,需要切實做好項目管理工作,提升管理水平,才能夠促進我國軟件產業的進一步發展壯大。
一、軟件開發與項目管理
簡單來講,軟件開發就是依照客戶的需求,構建軟件系統或者系統中的軟件部分,其是一項包括了需求捕捉、需求分析、設計、實現和測試的系統工程,需要借助某種本程序設計語言實現。軟件開發的主要流程包括:需求分析、總體設計、細部設計、編碼、單元測試、綜合測試、運行以及維護。項目管理則是指在一定的約束條件下,為了實現某個特定的目標,依照項目自身的內在邏輯規律所進行的系統管理活動。相對于軟件開發而言,項目管理需要遵循幾個基本的原則,一是依照分階段的生命周期計劃,進行嚴格管理;二是做好相應的階段性評審;三是重視產品控制;四是應用現代程序設計技術;五是確保開發人員的專業素質較高,同時對人數進行控制;六是必須能夠對結構進行清晰地審查;七是必須承認軟件工程實踐持續改進的必要性[1]。
二、基于軟件開發的項目管理實踐
以智能手機系統為平臺,針對手機軟件開發的項目管理實踐進行簡要分析和討論。
2.1需求分析需求分析是軟件開發的基礎與前提,能夠獲取和記錄系統需求,確保客戶與項目團隊在系統需求變更上的一致性,避免軟件開發過程中不必要的彎路。需求分析法包括了用戶問卷調查、研討會以及原型展示等,需要安排專人做好相應的記錄工作,并及時對其進行總結和歸納,做好應對策略。在該項目中,軟件需要滿足的需求包括:適用于主流手機操作平臺,充分考慮不同硬件配置以及操作系統版本的兼容性;可以跨平臺運行,同時不需要占用過多的系統資源;確保數據連接的速率以及操作的流暢性等。
2.2設計編碼系統設計包括了總體設計和細部設計兩個不同的階段,其中,總體設計應該大致規劃出軟件的功能模塊,做好相應的功能分區,并對其進行初步的設計分析,細部設計則需要給出每一個功能模塊的控制流程、算法以及數據結構等,確保每一個模塊都有不同的層次。對于一些難度較大、涉及面較廣的模塊,可以交給一些經驗豐富、心細縝密的技術人員完成,并做好模塊的測試與修改,保證其穩定可靠,盡可能降低風險與成本[2]。設計完成后,需要進行編碼工作,采用代碼版本管理工具SVN,以確保各個子系統的功能都能夠得到最大限度的發揮,實現系統之間的功能互補,從而降低軟件開發的風險和難度,提高軟件過程的跟蹤率。
2.3測試運行軟件測試并非單純的某個環節,而是貫穿于整個軟件開發項目中,制定出詳細全面的測試計劃,并對測試用例進行用心編寫。軟件中的每一個子模塊都應該由編程人員之外的技術人員進行反復測試,同時對測試過程中出現的問題進行記錄,提出相應的修改意見,由相應的編程人員進行修改。在對測試用例進行編寫時,需要對測試目標、測試環境、測試步驟、預期結果等進行記錄,形成具有代表性的數據信息。在測試完成后,需要首先在小范圍內,對軟件的子模塊進行試運行,確認無誤后再對軟件整體進行試運行,結合運行反饋結果,評估軟件的可靠性,采取相應的完善措施。試運行成功后,需要編寫相應的用戶手冊,制作視頻說明,幫助用戶了解和使用軟件,同時標注聯系方式,方便用戶進行反饋。
2.4后期管理在系統安裝試用一段時間,具備相應的驗收條件后,需要進行驗收準備工作,對之前的工作進行總結,列出工作成果和相應的文檔,審查相關技術文檔中的內容和信息。應該對系統當前的完成狀況進行明確,對于尚未完成的部分,應該采取有效策略去完成,或者設置相應的回避措施,確保客戶在驗收時不會提出這些未實現的需求。在交付使用后,需要做好軟件維護工作,結合需求變化或者硬件環境變化對程序進行修改,確保其具備良好的實用性和適用性[3]。
三、結語
綜上所述,軟件開發項目管理與一般的項目管理存在著很大的差別,需要相關技術人員結合軟件開發的具體流程,做好全過程管理,保證管理效果,在完成預定功能目標的基礎上,提升軟件的可靠性與安全性,確保軟件的有效應用。
【摘要】
大型冷水機組的開發中,控制軟件作為產品的一個部件,是設備穩定運行的關鍵,在設計、開發、更改等全過程中必須依據相關準則和符合管理標準,本文從大型冷水機組的控制軟件的設計和開發過程入手,分析了各個階段的控制管理方式及注意事項,使軟件更好滿足開發需求,并使開發過程具備可追溯性。
【關鍵詞】
控制軟件;過程控制管理
1引言
大型冷水機組的開發(簡稱產品開發)中,控制軟件作為產品的一個部件,是設備穩定運行的關鍵,這就意味著控制軟件的管理等同產品,控制軟件的管理成為必不可缺的工作。控制軟件作為產品開發過程中的一個部件的開發,必須符合開發管理的全過程控制、管理。沒有管理,編制的控制軟件控制邏輯考慮就會不全面,特別是當出現問題時,工程師現場進行修改會很隨意,沒有對問題進行系統分析,只是頭疼醫頭,腳痛醫腳,同時,因為更改沒有記錄,再發生問題,也無法查找原始記錄。
2控制軟件開發的過程控制
管理按照現行的管理體系標準GB/T19001/ISO9001,控制軟件作為產品的一個部件,包含管理體系的設計和開發全過程:設計和開發策劃;設計和開發輸入;設計和開發輸出;設計和開發評審;設計和開發驗證;設計和開發確認;設計和開發更改的控制。
2.1設計和開發策劃對于控制軟件編制,從從屬的產品開發開始,了解產品需要控制的全部細節,如I/O點的需求,以及關鍵部件的功能確認,參數設置等,形成軟件編制的邏輯圖,成為控制軟件的設計輸入,這一過程就是設計和開發的策劃。
2.2設計和開發輸入和輸出作為控制軟件的規劃來說,各功能進行模塊化管理,形成軟件的標準化管理,從長遠來看,是提高效率的有效辦法,也是標準化管理的要求,利用PaaS平臺技術的應用,實現產品在客戶端運行大數據采集,進行數據建模及MIS系統開發與管理,以了解客戶端產品的運行情況,實時為客戶提供及時的服務。作為控制軟件開發的輸入的邏輯圖是需要經過產品設計工程師及相關部件設計工程師,以及各相關部門如測試站、服務部等進行評審的,設計和開發評審是貫穿在設計和開發過程的每個階段節點,一旦評審通過,評審通過的邏輯圖將是控制軟件開發的輸入。每一開發階段的輸出均要滿足相應的需求及有關的開發管理和約定,并要包含或引用進入后續工作階段的驗收準則,對影響有產品安全和正常工作的重要的產品特性要進行標識。
2.3設計和開發驗證控制軟件編制完成后,必須進行驗證,驗證必須要有驗證的內容和達到的目的,驗證內容必須是經過評審的運行大綱,目前確認的方法有兩種:一是在模擬箱上,對照輸入的邏輯要求,設置產品工作的各個極限工作條件,按運行大綱運行控制軟件逐條檢查邏輯要求的功能,模擬測試,必須填寫模擬測試報告,如實記錄各功能測試的結果,軟件模擬測試工程師不能是軟件編制工程師;二是在正式產品上,前提是模擬測試通過,因為產品測試,不僅需要耗費巨大的電費和水費外,還需要相當長的時間,成本耗損巨大。按產品運行大綱,在產品工作的各個極限條件下,進行產品運行,并根據大綱要求檢查控制軟件的功能,這時的測試是動態的,通過實時的數據記錄(即便測試結果未達到目標,實時的數據記錄也將是后續軟件修改的依據),形成產品的測試報告,證明控制軟件運行正常,產品的各個極限工作條件下的測試報告將是控制軟件運行正常的重要證據,同樣控制軟件上機測試,必須是產品設計工程師和軟件測試工程師,而不能是軟件編制工程師。只有經過驗證的開發輸出才能提交配置管理并被驗收,供后續階段使用。
2.4設計和開發評審控制軟件驗證完成后,必須進行相應的評審,只有在所有已發現的缺陷的影響均被消除,或缺陷的影響雖未消除,但已弄清帶著缺陷進一步工作的風險之后,方可進行下一步的設計或實現工作。如有需要對控制軟件進行更改,則更改后,必須再進行相應的驗證,直至評審通過,并將控制軟件的邏輯圖、軟件驗證的運行報告和源代碼等開發過程的技術文件進行存檔管理。
2.5設計和開發測試與確認從單個軟件項到一個完整的軟件產品可能需要進行不同層次的測試,有一些不同的測試與集成方法,在某些情況下,可以將確認、現場測試和驗收測試合為一個活動。描述測試計劃的文檔可以是一個獨立的文檔,或是其他文檔的一部分,也可以由幾個文檔組成。在測試之前首先要制定和評審測試計劃、規格說明和規程,其中應涉及測試計劃、測試用例、測試數據、預期結果、測試類型、測試環境、測試工具、測試軟件以及測試是否完成的測試準則等。測試時應按有關規格說明記錄測試結果,同時記錄發現的問題,指出可能對軟件其他部分或冷水機組運作時帶來的影響,并通知對此負責的人員,以便對問題能進行追蹤直至問題解決;應確定受更改影響的部分,并對它們進行重新測試,同時對測試過程及結果進行評價。在需要的情況下,可以進行現場測試,可邀請供方和需求共同參與。在控制軟件交付使用之前,應盡可能在實際的使用環境下對整個軟件產品的運行進行確認。
2.6設計和開發更改的控制控制軟件應用在產品上是需要進行反復的評審,測試驗證、評審、修改,直至能達到設計目標,且沒有任何bug。修改控制軟件是一件很慎重的事情,修改分兩種:一種是為實現某個特定的目的或要求,只是針對某個特定的Case,通常是在客戶的特殊要求下進行;對于這種更改,由于是在標準軟件的基礎上增加特定的要求,需要在客戶端驗證后,將源代碼特殊標號存檔,并相應更改相應客戶的檔案信息,用于以后售后服務;二是因為某個功能性部件的更新或是存在開發過程中未發現的Bug,需要更新標準的控制軟件;這種更改必須在仔細列明部件更改前后的不同之處,或是Bug的問題,對不同處進行更改,更改前必須經過慎重的評審,確認是有必要進行更改,更改后的控制軟件需要重復開發過程的驗證、評審過程。從某種角度來說,更改過程視同一個完整的開發過程,因為更改部分對產品的運行的穩定需要進行完整的驗證,也就意味著對產品的每個極限工況條件都必須進行測試驗證,驗證前需要對驗證用的測試大綱進行評審,確認更改部分的測試都考慮到位,測試后需形成相應的測試報告,并將整個更改過程的技術資料,測試報告,源代碼等進行存檔。
3結語
當準備交付經確認的控制軟件產品時,應根據大型冷水機組應用需求及運行要求,同時結合相關的規定準則和方式判斷該控制軟件產品是否可以投入使用。在設計、開發、更改的全過程中必須符合管理標準的可追溯性,能很清晰的查閱到軟件的標準號和版本號。
【摘要】
針對軟件開發平臺應用的相關內容,對軟件開發平臺中配置管理應用的具體策略進行研究。先介紹了軟件配置過程中KPA的相關內容,并對其中存在的問題進行研究;再結合軟件開發平臺的實際技術內容,對其具體應用進行研究,以進一步提高軟件配置管理能力,為提高軟件開發能力奠定基礎。
【關鍵詞】
軟件開發平臺;配置管理;應用
隨著現代科學技術的進一步發展,軟件開發平臺開始受到社會的普遍關注,對相關人員而言,如何實現軟件開發過程中的高質量、低成本成為其工作的主要內容。CMMI(軟件能力成熟度模型集成)的出現有效的滿足了人們的要求,其主要分為5個成熟度,每個成熟度級別都包含若干個關鍵過程域(KPA),而軟件配置管理就是其中的一個重要KPA。在本次研究中,主要針對軟件開發平臺中配置管理應用的相關問題進行研究,希望洋酒內容能對相關學者研究有所幫助。
1軟件配置管理過程KPA
1.1配置管理的必要性裴樹軍等通過研究認為,隨著軟件規模不斷擴大,導致軟件研發過程中的中間產品數量不斷增多,嚴重增加了管理難度。而對整個軟件開發而言,配置管理是軟件開發的核心內容之一,若不做好配置管理工作,則勢必會引發一系列問題,具體表現為以下幾點:
1.1.1同時更新的問題當兩個或多個人員同時研發一種軟件時,同時更新現象會損害他人工作,影響了工作的整體進程。
1.1.2通用代碼問題在一些特殊的大型系統中,如果相關人員已經根據相關要求修改了軟件的部分功能,則會導致所有將該內容告知所有人員;如果不能及時的告知每一個軟件開發人員,則會導致部分出現嚴重的系統操作失誤問題。
1.1.3版本沖突問題從當前部分大型軟件的開發過程來看,其主要通過增量式的方式實現開發的。在這種背景下,一個大型系統可能涵蓋諸多活動版本,這樣很容易產生沖突現象,不利于保證軟件正常運行。對相關人員而言,若不能有效處理上述問題,將會造成嚴重的混亂現象,因此做好配置管理工作十分重要。
1.2軟件配置管理分析
配置管理過程是整個軟件生命周期過程中的重要元素內容之一,這在CMMI中,配置管理目標主要分為三種包括,建立基線、控制變更、跟蹤等。一般認為,建立基線主要存在三種特定的實踐內容:
(1)保證標示能在配置管理的配置項中,并建立一個能滿足配置管理的系統,完成基線創建等基礎過程。
(2)在使用一個配置管理系統后,所有的變更都能在第二個目標結束之前實現被跟蹤與控制。
(3)保持配置項的記錄,并按照基線的相關內容開展配置審計。
2配置管理研究
2.1配置管理的基本工具
當前在開展配置管理中,常用的工具包括:
2.1.1Starteam該工具提供了真正的協同工作,保證整個開發環境內外的所有團隊與功能模塊都能參與到目標活動中,保證了配置工作的順利開展。因此可以認為,Starteam是一個集合了版本控制、缺陷跟蹤等多種功能于一體的軟件。
2.1.2CC該工具是ROSE構建的主要組成部分,常被應用在復雜產品開發等特殊環境中,能有效解決多種產品開發與維護的要求,具有良好的應用價值。CC的主要功能包括建立管理體系、明確過程控制等,是實現配置管理的主要工具。
2.1.3VSS該工具能將所有項目原文件給進行管理,并通過特有的方式將原文件進行儲存。但在操作過程中需要注意的是,相關人員不能直接修改數據庫中的文件,而是需要通過該版本管理器,對項目項目的源程序進行控制,將其拷貝到成員自己的目錄中進行修改,再講修改結果提交給VSS,之后才能完成數據資料修改。
2.2軟件配置管理的基本流程
有項目經理負責監督整個項目配置管理的實際情況,重點研究配置管理中存在的問題,并根據問題提出相應的解決措施;項目組成員協助開展配置管理工作。在上述工作內容的基礎上,配置管理人員根據既定的項目目標計劃,在項目經理的指引下參與制定《配置管理計劃》并在日后工作中始終按照《計劃》的相關內容展開工作,并按照相關要求調諧《配置狀態報告》,做好相應的資料備份工作。在配置工作結束之后,資產管理人員收集組織資產資料,并維護組織資料庫。
2.3版本控制
總體而言,版本控制是實現軟件配置管理的核心內容,其主要目的就是根據具體的軟件管理規則保存配置項目的版本資料,以降低發生版本丟失的概率。一般認為,在確定配置項過程中,常見的狀態如圖1所示。在整個配置項最初建立過程中,其產生的狀態為“編輯”。在這種狀態下,開發人員能編制整個配置項。在編輯結束后,經過編輯的配置項進入“評審”狀態,此時若顯示評審通過,則會將配置項的狀態改變為“正式”;而評審未通過,則進入調試狀態,對配置項進行二次修改,直至成為“正式”狀態。
2.4變更控制
在整個軟件配置管理過程中,變更控制的主要內容是創建產品基線,并以此為核心,在整個產品生存周期的過程進行變更,最終建立一整套完成的軟件控制修改的機制,確保其質量能滿足運行的要求。從其應用過程來看,需要變更的軟件首先會處在“待修改”的狀態,并由具體的操作人員將其分配到具體人員的手中。在經過相關人員的修改并結束后,變更軟件將會改變為“關閉”狀態,此時由系統進行評審,若評審結果顯示無法修改,則會將其設置為“不修改狀態”。而如果認定為不需要進行修改,也能將其關閉,避免過度處理現象發生。3結束語主要研究了軟件開發平臺中配置管理的相關內容,并對其應用進行詳細的研究。總體而言,軟件配置管理在軟件研發中發揮著重要作用,因此對相關人員而言,在工作中要正確認識到軟件配置的實際要求,并提出針對性的管理措施,為保證軟件開發工作順利進行奠定基礎。
作者:殷媛 單位:南京航空航天大學金城學院
【摘要】
金融行業對于銀行軟件開發的關注度往往是比較高的,尤其在新媒體環境的影響下,銀行軟件的數量不斷增多、內容不斷豐富。銀行用戶為了時時了解銀行動態和自己的賬號安全,開始越來越頻繁的使用銀行軟件。對銀行軟件開發進行項目管理,能夠為軟件開發技術提供一個較為安全的環境,防止軟件在使用過程中出現風險。文章對銀行軟件的開發技術和與之相關的項目管理做了詳細分析。
【關鍵詞】
銀行軟件;開發技術;項目管理
對銀行軟件開發進行項目管理,主要對其軟件開發技術的成本和質量,以及它在使用過程中可能出現的風險等進行的管理。這種管理能夠為銀行軟件開發提供一個良好的開發環境,而且能從側面反映項目管理的重要性。對銀行軟件進行項目管理,需要從多方面開展。在開發軟件的過程中,可能會涉及到銀行的機密信息,這在無形中增加了項目管理的難度。對銀行軟件開發進行項目管理,能夠為銀行在網絡環境中的各項業務的開展,提供一個更加安全的支付環境,進一步保證用戶和銀行自身在各項交易中都能夠有安全保證,有效的將操作過程中可能出現的風險控制在一定程度之內。
一、銀行軟件開發技術的需求
銀行軟件開發,能夠實實在在的為用戶提供更加方便的銀行業務服務,有效的減少辦理業務時花費的時間和與業務相關的各項手續過程,能夠大大提高銀行金融業務的服務效率。特別在銀行業務繁忙的時段,使用銀行軟件進行操作服務,能夠減少銀行在業務方面出現的失誤,使銀行處理業務的能力得到不同程度的提高。這對銀行來說有很重要的意義。銀行軟件開發,主要是通過計算機計算以及其他軟件支持進行開發的,并且開發結果要達到一定要求,這樣的銀行軟件才能為銀行提供更加安全的網上業務環境,為銀行的網上系統提供便利的發展機會。
1、技術需要銀行軟件開發的主要內容,是銀行軟件開發技術。擁有開發技術做后盾的銀行軟件,能夠使銀行業務具備更加完善的服務能力,而且各個銀行的分行能夠將數據庫連接起來,為銀行數據信息的傳輸提供更加安全、穩固的傳輸環境,且傳輸速率也會有很大提高。在進行銀行軟件開發的過程中,對所需設備和數據的質量有很高的要求,而且銀行開發技術中較為重要的數據需要備份。備份數據主要是為了防止突發狀況。[1]銀行軟件一旦受到攻擊,或者銀行的系統出現漏洞,備份數據能在這種關鍵時刻立即啟用,有效的防止銀行軟件系統的崩潰。銀行軟件開發完成之后,要對整個銀行系統進行及時維護。這種有效維護,能夠防止系統在運行過程中出現問題,彌補了系統中存在的漏洞,能夠為技術需求提供有力的保障。
2、操作需求C/S開發模式,是銀行軟件開發技術所采取的一種有效模式。這種模式能夠使銀行開發技術以狀體界面的形式存在于銀行系統中。這種模式有它的優點,它能夠有效降低開發軟件在操作上的難度。銀行軟件開發過程中,一定要對其在現實中的應用進行全面考慮,銀行工作人員在開展業務服務時不會出現操作上的困難,而且軟件開發技術要符合工作人員在操作上的需求,技術開發要最大限度的滿足銀行操作的可進行性,為銀行業務和其他各項事物的開展提供更加準確的操作支持。
3、服務需求銀行軟件開發技術,主要是為了提高銀行在各項業務上的服務質量,這種高質量服務是銀行軟件開發最希望達到的主要目標。所以,銀行軟件開發首先需要滿足的,就是銀行在服務上的需求。這樣才能使銀行軟件開發有一個科學、合理的過程。銀行軟件開發技術對設備的要求比較高,尤其對計算機磁盤容量的大小和計算機操作系統運行速度的快慢,有比較高的要求。只有設備的性能比較優越的時候,銀行軟件開發技術才能達到更好的效果,才能使銀行系統在數據庫的建設上有更加完善的成果。
二、銀行軟件開發技術
1、銀行軟件開發的總體技術銀行的事務比較多,相應的銀行軟件該具備的事務也多,這些繁雜的事務給銀行技術開發帶來了比較大的壓力。用戶管理以及用戶相關業務的辦理工作,是銀行軟件開發技術要解決的兩個比較重要的內容。尤其是業務辦理,不同的業務辦理項目的內容和辦理流程不同,銀行開發技術應該就這些不同的內容和流程進行不同的設計和管理,只有這種規范的技術設計,才能為銀行系統提供相對安全的運作條件。用戶有存取款或者轉賬業務需求時,銀行工作人員只需要在銀行軟件上進行相關操作,就能完成整個業務。[2]所以銀行軟件開發技術需要支持的業務需求必須具備類型更加豐富設計,而且各項業務的安全保衛工作系數也要進行提高,以免在交易過程中出現信息泄露的情況,為用戶提供貼心、方便、安全的服務,也從側面顯示了銀行開發技術的使用價值。
2、銀行軟件開發技術的設計銀行軟件開發技術要對銀行的所有業務進行設計,其中就包括了銀行的計算機儲蓄系統。對銀行計算機儲蓄系統進行技術開發,編程部分比較重要。設計編程所用的語言,要根據銀行工作人員的一定操作需求進行設計,為用戶提供業務服務時,選擇“是”或“否”。銀行軟件開發技術需要對銀行業務中的數據輸入、數據處理和數據結果的輸出進行設計。銀行軟件開發技術對業務中的輸入情況進行設計,輸入時必須將賬號和密碼輸入完整,而且密碼和賬號要匹配,不匹配的賬號及密碼,在銀行軟件限制的情況下是不能允許用戶登錄的。接下來要對處理步驟進行設計,在輸入的賬號和密碼正確且匹配的前提下,銀行開發技術對條件檢測的標準進行設計。只有用戶登錄銀行軟件之后,才能選擇并操作相關的儲蓄系統。且為保證用戶能夠進行正確的操作,開發技術需要設計操作提示,為銀行用戶提供周到的服務。銀行軟件開發技術對輸入步驟進行設計,在系統完成輸入和處理步驟之后,要將相關儲蓄數據顯示出來,并且在用戶的要求下打印業務存儲單據,運用完備的銀行軟件開發技術完成這些業務的軟件設計。
三、銀行軟件開發項目管理的措施
銀行軟件開發不是一個一成不變的結果,軟件開發設計人員會根據金融市場的變化和用戶的需求對銀行軟件做出相應的調整和修正,它是一個不斷更新、變化的過程。而且變化的過程比較快、使用周期比較短,這無疑給銀行軟件開發項目管理帶來一定難度。對銀行軟件進行有效項目管理,主要通過以下三種方式:
1、構建責任制度針對責任感比較弱的銀行軟件開發項目管理人員,在管理工作中出現隨意完成工作的現象,進行項目管理時必須設置完備的責任制度。這樣做能夠使管理人員對自己的工作重加重視,而且在重視的基礎上約束自己的工作行為。責任制度必須對管理人員在工作中的責任和義務進行明確要求,要求管理人員在自己的責任范圍內,做好自己的工作,完成自己任務,一旦在技術開發的過程中,出現了一定的問題,可以對管理人員進行責任追究,并且在第一時間制定出相應的、有效的解決措施。[3]
2、強化部門溝通銀行軟件開發需要各個部門通力合作才能完成,只有各個部門保證流暢溝通,才能全面了解軟件開發的進程。各部門相關的項目管理人員在投入到管理工作之前,需要了解相關信息。而且軟件開發技術要保證一定的先進性,管理人員可以將先進技術的相關訊息告知與開發人員,這樣能夠提高軟件開發的水平。
四、結束語
銀行軟件開發項目管理,能夠通過有效的責任制度約束管理人員的行為,確保項目管理過程中出現的問題能夠得到有效處理。完備的項目管理能夠防止軟件開發過程中出現風險。
作者:欒家明 單位:上海浦東發展銀行
摘要:
探討在高校現有的軟件開發相關專業構建Android軟件開發工程師課程體系,闡述如何經過半年的實訓,快速培養有一定項目開發經驗的工程師,助推移動互聯網行業發展。
關鍵詞:
Android;軟件開發工程師;課程體系;移動互聯網
1建設背景
隨著3G/4G技術的不斷發展和智能手機的普及,移動互聯網繼承了互聯網所有的應用,并有自己獨特的優勢。互聯網的應用系統幾乎全部延伸到智能手機應用,例如手機銀行、移動商務等。據亞太地區手機使用調查顯示:2015年中國手機用戶達到10億[1],遠高于寬帶用戶數;移動應用系統發展潛力更大,將成為全球信息通信行業的萬億元級新興產業,急需大量的移動應用開發工程師。據計世資訊的相關研究報告,國內移動應用開發人才缺口將達到50萬人以上[2]。目前主流的智能手機操作系統有谷歌公司的Android、蘋果公司的iOS、微軟公司的WindowsPhone,只有Android是開源的操作系統,華為、三星、小米、中興、聯想手機制作商都采用了Android操作系統,ARM、英特爾、高通等半導體制造商也采用了Android操作系統。因此Android必將成為智能手機主流操作系統,用戶數最多,與之對應的軟件開發工程師缺口最大;而目前少數高校開設移動應用開發專業或方向,培養周期長,培養人數少,遠不能滿足移動互聯網行業發展對人才的需要。
2建設思路
Android軟件開發工程師實訓課程體系是在原來的軟件技術專業基礎之上構建的,結合AndroidAPP開發崗位及流程進行設計,采用基于模塊化、導師制、項目化的Android開發工程師人才培養體系[3],共分成4個遞進的模塊,每一個模塊又細化為一個教學單元,詳見圖1。每一個模塊有基礎知識學習和項目實戰,前導模塊考核[4]過關之后再進行下一個模塊的學習,重點積累學員的項目開發經驗,注重學員綜合素質的培養。
3課程體系
1)模塊一:JavaSE開發技能強化(約120課時)。高校軟件開發相關專業基本都開設過Java程序設計或C#程序設計,兩者觸類旁通,因此本模塊主要針對Android開發打下Java編程基礎,鞏固面向對象的基本概念和編程思想,為下一個模塊作準備,所謂磨刀不誤砍柴工,見表1。2)模塊二:Web及服務平臺開發(約200課時)。Web及服務平臺是移動端訪問的基礎,后端服務器的架構決定系統的穩定性,接口的開發決定終端開發和運行的效益,因此本模塊著重學習JSP和Servlet核心編程,完成服務器端業務邏輯和數據庫開發,見表2。3)模塊三:移動端APP開發(約220課時)。此模塊真正進入Android項目開發,首先從Android基礎控件入手,掌握Android開發基本原理和流程,逐步引入實際案例,綜合掌握Android控件使用、UI設計、內置數據庫設計、消息推送、GPS定位應用、網絡接口應用等開發技術,見表3。4)模塊四:作品匯報與就業指導(約30課時)。前3個模塊是練好內功,本模塊主要通過作品匯報會暨Android開發軟件工程師專場招聘會,把學生送到對口的崗位工作,同時把參加實訓的同學拉進即時交流的QQ群和微信群,方便日后在工作與學習過程中就技術與思想動態,進行交流溝通指導,提供增值服務,見表4。
4實訓過程
每個模塊實訓過程包括實訓預備期和實訓期兩個階段[6]。實訓預備期:參與實訓的學生對Android課程體系中必須掌握的業界實用技術知識清單和相關課件進行學習,必要時進行相關課程的考試,考試合格者才能進入項目實戰。實訓期:以模擬公司為平臺,以仿真的商業案例項目為載體,將企業文化及職業素養訓練、IT技能培訓、行業知識以及業務流程實踐等實訓內容完全貫穿在模擬公司的運營過程中,使學生在實踐中體驗企業工作環境,獲得一定的實際經驗和職業磨煉。實訓中由實訓教師統一指導,基本過程如下:(1)搭建環境:主要講解搭建各種手機操作系統開發環境所需具備的軟硬件及網絡知識。(2)完整的軟件開發過程:主要講解實際項目所涉及的軟件開發過程的各個環節,如需求開發、設計、編碼與測試、項目管理、項目驗收及技術文檔整理等。(3)Android手機軟件應用開發:這是本實訓課程體系的核心部分,主要是使學員掌握軟件開發的技術、編程思想與方法,了解軟件開發過程中常犯的錯誤。課程注重實用性,重在培養學員對代碼分析的能力、掌握編碼規范、掌握調試知識和分析程序錯誤的能力。同時學習內存檢查工具和軟件配置管理等知識,課程中貫穿著一個開發項目,以增加學員開發項目的經驗。(4)測試計劃與軟件缺陷:主要介紹軟件測試的基本概念和基礎知識、如何編寫測試計劃、識別軟件缺陷、編寫缺陷報告等。(5)數據庫:通過對數據庫基礎的講解,讓學員掌握這些技術,數據庫是以主流的Oracle和MySQL數據庫的運用為主。(6)職業導向訓練:進行職業引導,包括就業指導和職前引導,通過座談會等輔助訓練明確就業方向,進一步了解職業發展形勢。
5結語
我校2012級軟件技術班在大三下學期引入Android開發工程師實訓課程體系進行實訓教學試點,教學效果顯著,絕大多數畢業生進入Android開發領域。在實訓過程中,教師帶著學生承接了企業項目“好售掌上批發系統”,完成了Web平臺、Android手機APP、IOS手機APP等功能設計與實現。通過第一期的試點教學,進一步優化了教學內容和實訓過程,把好售批發平臺分解成若干個實訓項目,構建了上述課程體系,彌補了目前Android開發工程師實訓體系實用性和可操作性不強的局面,供有計劃開設Android開發工程師實訓課的學校和老師進行參考,同時滿足傳統的應用系統開發工程師向移動應用開發方向發展的自學教學資源,有利于他們快速轉崗,助推移動互聯網發展。
作者:鐘石根 張振軍 張良杰 單位:廈門南洋職業學院 信息工程學院
摘要:
設計了一種基于嵌入式系統的高清晰、便攜式的車載播放系統。該播放系統的軟件設計以Mplayer為后臺,實現對音視頻文件的解碼播放等工作,并以Qt的基礎類庫為基礎設計了嵌入式多媒體播放器的前端控制圖形界面,通過創建QProcess進程,實現對播放過程的控制,與后臺Mplayer進行通信,實時獲取并顯示播放信息,并在指定窗口對音視頻碼流進行輸出顯示。
關鍵詞:
汽車多媒體;車載播放;嵌入式系統;多媒體播放器
目前,國內車載電子設備市場極度缺乏多媒體綜合軟件,該軟件能有效地將車載導航、影音圖像、倒車雷達、娛樂互動等多個功能整合,方便乘客和車主的使用[1]。將多種娛樂和使用功能整合統一,使得設備簡潔美觀,同時降低了重復安裝的成本和投入。可以極大地減少車內空間消耗,降低整車油耗[2]。多媒體共屏展示也能保證駕駛員的操作強度,保證行車安全。因此,將行車信息、娛樂互動、交流通信、車載導航等功能集于一體的嵌入式綜合媒體系統符合市場和環境的發展要求[3]。
1車載嵌入式播放器總體設計
出于應用領域、自帶資源、可擴展資源、功耗等多方面的考慮,選擇Linux內核為嵌入式多媒體播放器的操作系統核心。將多媒體技術應用于嵌入式系統中面臨著諸多的技術難題,嵌入式設備的特點決定了其資源通常非常有限,而有限的資源意味著需要進行多方面技術的優化[4]。首先,嵌入式設備采用蓄電池提供能源,所以對系統的功耗要求比較嚴格;第二,嵌入式設備上通常沒有實用的圖像加速器,聲卡等硬件加速設備的支持;第三,不存在DirectX,DirectShow等高層多媒體的支持。基于上述考慮,有必要設計適用于嵌入式應用的嵌入式處理器,嵌入式操作系統。根據嵌入式多媒體播放器的功能需求及技術特點,通常將嵌入式多媒體播放器的體系結構劃分為硬件層、內核層和應用層,具體如圖1所示。系統的硬件層的硬件平臺包括嵌入式微處理器和外圍設備,通過合理選型和匹配可以完成滿意的底層硬件組合。本系統的嵌入式MCU使用三星公司的S3C2410高速微處理器,S3C2410高速微處理器作為整個硬件系統的控制核心,接收、處理相關數據并實時發出控制指令。與其配合的系統外圍設備是完成系統功能的必要組建和模塊,涉及系統存儲模塊FLASH和E2PROM,LCD輸出單元、主控外圍電路和音頻輸出模塊等。軟件部分包含應用層和內核層兩個部分。應用層包含嵌入式Linux操作系統和硬件驅動程序,包括BootLoader,Linux內核,根文件系統3部分。應用層包含嵌入式用戶應用程序、音頻解碼器和GUI。本系統選擇嵌入式Linux操作系統作為操作系統[5]。
2操作系統平臺的構建
內核是整個Linux系統的核心,根據實際情況針對內核的配置進行選擇,本質上指根據開發系統的功能需求對已有的操作系統進行選擇,保留開發需求的系統單元,刪除不需要的模塊單元。在本系統中,嵌入式Linux內核選擇ARMLinux內核。Linux內核的配置系統由Makefile、配置文件(config.in)、配置工具組成[6]。完成內核的數據參數配置后,不能將程序數據直接下載到嵌入式系統中進行調試運行,因為此時數據仍然以源代碼的形式存在。此時,為了生成最終能在嵌入式操作系統上運行的可執行代碼[7],需要進一步對內核進行編譯。過程結束后,Image和zImage兩個內核映像文件會在arch/arm/boot目錄下生成,zImage為壓縮后的映像文件,Image為正常大小的映像文件。得到內核映像文件后,首先在開發板使用的宿主機(PC)上建立一個tftp服務,使用DNW工具,在開發板上電時按任意鍵進入UBoot提示符,執行以下命令。在嵌入式操作系統正常運行時,需要使用根文件系統支持各種功能[8],在內核剛啟動運行時根文件系統需要掛載起來用于支持訪問外部設備,同時完成內核模塊應用程序的裝載和運行,避免出現Kernelpanic的情況,防止系統內核在啟動時沒有根文件的支持。在實際應用中,嵌入式操作系統使用動態隨機存取器、同步動態隨機存取器、FLASH存儲器作為存儲設備[9]。基于存儲設備,使用JFFS2,YAFFS,CRAMFS,ROMFS,RAMFS等常見系統作為存儲設備的嵌入式文件系統。在本系統中,選擇NANDFLASH作為硬件提案所使用的存儲芯片,選用NANDFLASH上使用比較廣泛的Cramfs文件系統作為嵌入式根文件系統。嵌入式Linux操作系統的啟動流程如圖2所示。系統啟動流程包括六個步驟:(1)系統復位,從地址0x00開始執行,進入步驟(2);(2)啟動Bootloader模塊,進入步驟(3);(3)判斷系統是否進入Linux,啟動Linux內核映像,不啟動則進入Uboot的命令操作環境,如果啟動內核,進入步驟(4);(4)系統從NANDFLASH加載內核到內存中,完成對硬件設備的初始化工作,進入步驟(5);(5)掛載根文件系統,執行init進程,并從/etc/inittab取得配置文件,進入步驟(6);(6)提示執行用戶應用程序或用戶登錄信息。
3視頻播放器軟件設計
3.1基于Mplayer實現多媒體播放器Mplayer是一個Linux下的電影播放器(也能運行在許多其他的Unices和非X86的CPU上)。Mplayer的邏輯結構可以分為四個層次,即:輸入層、分流層、解碼層和輸出層,其結構如圖3所示。本文選擇Mplayer作為后臺設計播放軟件。利用Qt/E為軟件平臺設計GUI圖形控制界面,對多媒體播放器的播放過程進行控制。由于條件限制,本實驗在宿主機上編譯并安裝了Mplayer,通過Qt設計基于X86的多媒體播放器。
3.2軟件總體模塊設計由于Qt/Embedded工具可以繞過XWindowsSystem協議客戶端庫,直接讀/寫幀緩存的FrameBuffer的數據信息,因此實現Qt類庫對幀緩存的直接讀/寫操作,使用基于Qt/Embedded的應用程序可以完成。本系統使用嵌入式Linux作為操作系統,通過Qt的圖形平臺和函數庫完成嵌入式多媒體綜合播放。多媒體播放系統采用模塊化設計思想,其架構如圖4所示。嵌入式多媒體播放器包含五個主要的模塊:(1)I/O(輸入/輸出模塊):用于多媒體文件的讀入和輸出。(2)UI(用戶界面單元):用戶界面單元的作用是方便用戶操作嵌入式媒體播放器的各項功能,提供良好的人機操作互動界面和使用體驗。(3)插件接口單元:讀入多媒體數據(通過輸入插件獲取I/O模塊發送過來的數據)、調用Mplayer對文件進行解碼播放、文件總的時間長度、編碼類型、比特率等信息的獲取、暫停、快進、快退、停止、輸出、輸入等的動作,輸入動作具體指將輸出插件完成解碼的數據信息傳送到系統輸出輸入單元的過程。(4)Mplayer解碼單元:為了對不同類型的多媒體文件進行解碼操作,系統選擇的Mplayer解碼單元由分離器、音視頻解碼器等部分組成。(5)GUI單元:為了方便快捷的產生讀/寫FrameBuffer以及用戶界面,GUI單元通過使用Qt/E嵌入式工具作為底層圖形庫。軟件總體模塊中各單元之間的相互連接關系是:通過輸入/輸出單元讀入音視頻信息數據,用戶界面單元在接收到播放信息指令后,調用插件模塊相應的函數,產生相應的信號,調用Mplayer完成對多媒體文件的解碼,完成解碼之后將數據送到I/O模塊輸出。
3.3控制流程設計主程序設計流程如圖5所示。當從菜單項打開視頻文件時會觸發triggered()信號,執行slotopen()槽函數,調用Qfiledialog的getOpenFileName()函數從對話框中選擇要播放的視頻文件。系統首先判斷文件格式是否為*.avi格式,如果是,則創建一個Qprocess進程,通過該進程調用Mplayer后臺對視頻文件進行播放,并在指定區域進行輸出顯示。
4交互式圖形界面設計
QImage類提供了一種與硬件訪問無關的圖片存儲方式。QPainter則主要用來完成繪圖事件。QPushButton提供了圖形用戶界面最長用到的命令按鈕部件。此GUI交互界面利用QtDesigner以QMainWindow類為基礎設計了主框架,包括菜單欄以及狀態欄等;同時,以QWidget類為基礎創建了一個對視頻播放進行控制的插件接口,并通過合理的布局與主窗體組合在一起。
5播放系統測試在指定目錄打開
avi格式視頻文件,運行效果如圖7所示。在播放過程中,通過狀態欄實時顯示當前視頻文件的播放時間。通過界面下方的按鈕對播放器的播放過程進行音量調節、暫停、快進、快退、停止等控制,基本達到了預期的效果。打開視頻文件時,終端開始輸出文件的加載路徑,開始讀取并輸出ANS_TIME_POSITION(視頻播放時間)參數值,在Qt與Mplayer之間完成了通信。當在控制臺實施各種控制操作時,在終端輸出執行的操作動作并發送該信號,調用相應的槽函數完成對視頻播放的控制動作。以上是在主機上運行播放程序執行播放控制的過程。在主機上運行的Qt程序是基于X結構的,而在實際的嵌入式開發中,需要直接通過FrameBuffer進行顯示。由于條件限制及其他因素,通過qvfb模擬程序在嵌入式開發板中運行的情況,如圖8所示。從圖8中可以看出,在qvfb中運行該程序時,菜單項的中文顯示出現了方塊型的亂碼,這說明菜單項已經得到了識別,只是qtopia中缺少相應的中文字體庫,在默認的情況下,qvfb會調用字體庫中的默認字體,這樣在顯示中文時會出現如上問題。可以在網絡上下載相應的中文字體庫并拷貝到Trolltech/Qtopiacoreopensource4.3.0/lib/fonts中。
6結論
本文通過對車載播放系統的設計,根據車載嵌入式多媒體播放器的功能需求和技術特點,選擇一款合適的嵌入式處理器,在此平臺上構建了功能完整的嵌入式Linux系統開發平臺。經過對Qt的GUI設計的研究,以Qt的基礎類庫為前端設計嵌入式多媒體播放器的前端控制圖形界面。通過創建QProcess進程,實現了對播放過程的控制,與后臺Mplayer進行通信,實時讀取并顯示播放信息,并在指定窗口對音視頻碼流進行輸出顯示。通過測試表明,本系統達到了應用于車載音視頻播放的要求,對相關開發具有重要參考價值。
作者:李飛 單位:云南工商學院 設計學院
[摘要]
對象編程、嵌入式開發等新開發模式的應用,使計算機軟件開發更具有智能化、服務型和網絡化的特點。本文主要是介紹計算機的具體應用模式,并且探討了計算機軟件的發展趨勢。
[關鍵詞]
新時期;計算機軟件;開發技術
當前計算機技術的飛速發展,給人們的日常生活帶來極大的便利,網絡的普及更是推動額計算機軟件開發。軟件開發程序主要是通過代碼實現功能的系統化定位,為我國各行各業提供更多的便利。
1計算機軟件開發的重要性
計算機發展過程中以軟件工程為主要發展核心,其是推動信息技術的主要力量。軟件領域的發展對計算機網絡有著至關重要的影響,網絡化的普及也帶動軟件行業的長遠發展,網絡與軟件相輔相成,共同推動計算機的整體發展狀況。當前是計算科學不斷前行和發展的時代,軟件開發技術要緊跟時展潮流,抓住機遇,迎接挑戰,為用戶帶來更多安心的服務。
2計算機軟件開發現狀
2.1計算機軟件的概述計算機軟件主要是通過開發技術得到的相應應用軟件和系統軟件,這是計算機發展中的重要產物。應用軟件的最終工作目的是為了解決用戶的具體問題,并且為用戶提供方便快捷的工作方法。大到淘寶和銀行客戶端,小到單機游戲、應用軟件,都是計算機軟件的實際使用案例。系統軟件是計算機本身的軟件,其中比較常用的軟件是監督控制軟件、操作系統軟件、應用軟件等,其是用戶正常使用計算機的必要保障。
2.2計算機軟件的發展現狀計算機軟件具有發展迅速、方便快捷等特點,在短短的幾年發展中,逐步普及到千家萬戶,也推動了計算機技術的發展。我國軟件產業的迅速升溫,造成了軟件開發人才缺失,尤其在應用領域內,對技術開發人員的需求極大。
3計算機軟件常用的開發方法
隨著科學技術的飛速發展,計算機技術也開始日趨成熟,因而,選擇合理的計算機開發方法,可以保障其開發質量,控制開發進程。當前開發時間非常重要,現在在美國硅谷,一項技術的更新換代周期是一周,所以作為開發人員要爭分奪秒的開發新產品,創新理念,適應變化發展的市場。目前,比較熱門的軟件開發方式有三類:第一是生命周期法;二是自動系統開發法;三是原型化法。
3.1軟件生命周期法該方法的出發點是時間,從時間角度拆分軟件的各類問題,將軟件劃分為若干個開發階段。不同的階段開展不同的技術方法,每一個階段都要適應階段發展要求。通常情況下,軟件生命周期分為6個階段,換句話也是就是6個月左右。
3.2自動系統開發法該方法主要運用的工具是第四代技術中經常運用的開發軟件,開發過程中強調更多的是開放的內容和實現方式,但是沒有對如何實現作出具體說明。
3.3原型化法軟件開發者在沒有確定軟件適用性的基礎上,通過描述詳盡的軟件目標法,采用合適的原型化法開展研發工作。開發過程中開發人員要處理好整體系統化功能,并且分析和認定相關的其他事宜。
4計算機軟件開發技術的應用
計算機軟件開發的前提是優化創新現有軟件,為社會發展提供基礎性的服務,因此,相對于一種計算機軟件開發技術而言,能夠開發成功的關鍵所在就是軟件的具體實用價值。接下來筆者主要通過計算機具體的開發實際例子,簡要說明軟件開發技術的應用價值。當前比較常用的兩種運作模式,包括單機版的運作模式和VB6.0+Access開發模式,VB6.0+Access開發模式開發涉及的數據庫開發對象是Web+XML+ActiveX。兩個技術開發形式分別安裝到客戶端上面,單機運作模式的安裝相對來說較為簡單,直接安裝就能解決問題,這主要是受到Access驅動和VB虛擬機微軟歷史版本的影響,也是說系統能夠做到兼容,因而軟件安裝很方便。但是如果想要安裝第二款產品,就需要在安裝ActiveX時,更改瀏覽器,才能順利地完成安裝活動。安裝結束后,用戶在一定時間內做好兩種使用效果的比對,在兩種方法的比較中,可以發現第一種安裝方法沒有任何問題,并且運行比較穩定。特別是在做修復安裝時,要求用戶之間相互獨立,簡單地實現兼容。但是使用中必然會有利有弊,長時間的運行中,速度必然會減低,所以需要做好轉檔。第二種運行方法在系統運行和維護中,通過限制瀏覽器的安全設置,給用戶帶來諸多不便。
5計算機軟件的發展趨勢
第一,網絡化是計算機軟件當前的開發背景,計算機軟件是依賴網絡才能運行的系統,因而在運行時通過帶動網絡化發展模型,讓網絡和計算機軟件兩者雙贏,網絡的產生為發展平臺提供更多的便利條件,因而軟件開發要趨向網絡化發展。第二,服務化。軟件開發主要目的是更好地服務用戶,在發展中為用戶提供更多便利,未來的計算機軟件發展應通過運用先進技術,樹立人性化發展理念,滿足客戶需求,所以服務化是計算機發展的未來趨勢。第三,智能化。在計算機的發展中,智能化是必要的發展趨勢,開發人員要運用計算和其他智能化運行模式,讓計算機接近人的思維,這也是新技術的革新理念。
6結語
計算機軟件在現代社會經濟生活中占有極其重要的地位,其發展能夠帶動整個社會的科學和技術的進步。計算機軟件在發展中不斷推動網絡化的普及,并且重視計算機軟件開發狀況,使用新的開發技術,這為人類社會的發展提供不竭的技術支持。
作者:程艷楠 單位:大慶油田第九采油廠 信息中心