時間:2022-04-21 07:13:28
導言:作為寫作愛好者,不可錯過為您精心挑選的10篇軟件開發論文,它們將為您的寫作提供全新的視角,我們衷心期待您的閱讀,并希望這些內容能為您提供靈感和參考。
將軟件開發周期從幾年縮短到一個月甚至兩個星期,這需要制定詳盡的軟件開發和交付流程。而詳盡的軟件開發和交付流程也是實現Scrum所必須遵守的。在Scrum中一個交付周期被稱為一個Sprint。在每個Sprint開始之前,要有一個Sprint的計劃會議(Sprintplanmeeting)。Sprint計劃會議是在業務分析師和用戶確定好當前階段的需求分析之后,將可以進行開發的部分按照需求的優先級順序排列好開發任務(Story),再由開發人員對任務進行難度評分,最后團隊根據可變因素如團隊成員情況,開發環境狀態等確定下一個Sprint的任務。為了加強團隊內部的溝通和及時掌握開發交付情況,Scrum要求團隊每日開站立會議(Standupmeeting),站立會議通常1到2分鐘每人,主要說明前一天的工作內容,存在什么問題,以及今天的工作計劃。當然在每個Sprint快結束的前一天,要開評審會議,來報告進度,通常情況下是軟件會議制定軟件當前Sprint的軟件計劃。中國有句古話叫做“吾日三省吾身”,每個Sprint結束還有一個最為重要的會議就是回顧會議(Retrospectivemeeting)。回顧會議主要是總結上一個Sprint,保持優點,克服缺點。確保每個會議的有效性是Scrum實現的基礎。
2.淺談軟件項目開發過程中的需求分析
3.軟件開發方法的創新發展過程研究
4.基于Java語言的安卓手機軟件開發
5.軟件開發的風險分析與控制
6.軟件開發過程模型的發展
7.需求工程對于軟件開發的重要性
8.軟件復用技術及其在軟件開發中的應用
9.試論VB編程語言在軟件開發中的應用
10.軟件開發的風險分析與控制
11.分析軟件開發中數據庫設計理論的實踐
12.基于WBS-RBS的軟件開發風險識別與控制
13.敏捷軟件開發的雙迭代模型
14.基于MATLAB的汽車制動系統設計與分析軟件開發
15.軟件開發勞動計量方法與軟件成本估算
16.基于計算機軟件開發的JAVA編程語言分析
17.一種以軟件體系結構為中心的網構軟件開發方法
18.基于構件的軟件開發的方法與實踐
19.ABC:基于體系結構、面向構件的軟件開發方法
20.面向軟件開發信息庫的數據挖掘綜述
21.淺談三層架構在軟件開發中的應用
22.使用開源軟件進行軟件開發的風險分析
23.汽車電子控制單元軟件開發模式研究
24.軟件開發與層次化思維方式
25.SQA規范對于教育軟件開發的啟示
26.基于證據理論的軟件開發風險評估方法
27.軟件開發人員績效管理中的問題及對策
28.敏捷型軟件開發方法與極限編程概述
29.信息化軟件開發項目經理績效考評研究
30.基于“眾包”的軟件開發模式
31.軟件開發模型研究綜述
32.支持第四代語言的并行進化式軟件開發模型CESD
33.光滑粒子動力學核心算法與軟件開發中的關鍵問題
34.面向重用的軟件開發價值鏈
35.基于MVC模式的應用軟件開發框架研究
36.支持模型驅動式軟件開發的建模語言框架研究
37.3G智能終端軟件開發實驗教學改革的思考
38.軟件開發國際合作模式研究
39.地理信息系統專業學生GIS軟件開發能力的培養
40.有色Petri網在軟件開發中的應用
41.淺談軟件開發的成本核算
42.一種高效率的軟件開發方法——以用戶為中心的軟件開發方法(UCD)
43.軟件開發成本估算技術綜述
44.基坑雙排樁支護結構設計計算軟件開發及應用
45.軟件構架設計在軟件開發中的意義
46.面向軟件開發信息庫的數據挖掘綜述
47.談軟件開發中的需求分析
48.淺談插件化軟件開發
49.計算機軟件技術在植保軟件開發中的應用
50.Onboard:以數據驅動的敏捷軟件開發協同工具
51.軟件開發綜合能力培養的案例教學
52.軟件配置管理在軟件開發平臺中的應用
53.軟件開發成本估算模型的研究
54.軟件開發績效評價指標體系的構建
55.淺談計算機軟件開發技術的應用研究與趨勢
56.軍用軟件開發工程化質量管理研究
57.計算機軟件開發中的分層技術探討
58.基于學生軟件開發團隊的溝通機制研究
59.項目管理在軟件開發中的應用
60.面向農業軟件開發的構件庫研究與實現
61.搭建式GIS軟件開發及其對軟件工程的影響
62.軟件開發過程中的質量管理探析
63.軟件開發本體構建與模塊化的應用研究
64.基于CDIO的高職軟件開發專業課程體系設計
65.典型建筑火災風險評估體系及其軟件開發
66.有效的軟件開發項目風險管理模型
67.框架技術在軟件開發中的研究與實踐
68.淺論新時期計算機軟件開發技術的應用及發展趨勢
69.基于軟構件的軟件開發框架研究
70.面向軟件開發信息庫的數據挖掘綜述
71.模型驅動的軟件開發模式研究
72.以《數據結構》為核心的軟件開發課程群建設
73.護理信息網絡化管理的研究與軟件開發
74.分層技術在計算機軟件開發中的應用
75.軟件開發生命周期法比較之敏捷與傳統
76.基于虛擬硬件在環的控制軟件開發
77.項目管理在軟件開發中的應用分析
78.項目管理在軟件開發中的應用研究
79.軟件開發中的設計原則
80.基于學習遺忘作用的人員調度實驗設計及其軟件開發
81.基于網絡的可信軟件大規模協同開發與演化
82.華池油田結垢預測及軟件開發
83.探析計算機軟件開發的規范化
84.軟件開發自動化平臺的研究與應用
85.架構和面向對象技術在PLC軟件開發中的應用
86.國外XBRL軟件開發技術比較及啟示
87.企業軟件開發標準化探討
88.智能手機操作系統及其Google Android上的軟件開發
89.淺析軟件測試在軟件開發中的重要意義——從軟件功能測試的作用談起
90.軟件開發方法及其應用
91.使用嵌入式Linux操作系統進行軟件開發的特點及優勢
92.基于VB中MSComm控件的通信軟件開發與實現
93.軟件開發管理中的溝通與協調問題研究
94.基于Java語言的安卓軟件開發的研究
95.關于計算機軟件開發語言的研究
96.新時期計算機軟件開發技術的應用研究
97.培養大學生軟件開發創新能力的探索與實踐
2C++程序設計語言跨平臺開發的策略
我們在編寫程序代碼的時候,總是要把編輯策略放在首位,針對于不同的OS,在其上創建和編輯文本文件,就要遵循不同的規則。比如行結束符,在Windows操作系統和DOS操作系統中普遍采用回車鍵,而在Unix中卻使用的是換行符號。這種細微的差別就是跨平臺軟件開發必須考慮的問題。那么當我們要想把其中一個平臺上編寫的代碼放在另一個操作系統上運行,極有可能出現不被正確解釋的現象。另外,對于不同的操作平臺其tab鍵的功能也有很大的區別,主要體現在間距上。那么我們在編程的時候要注重這些差別,保證代碼的書寫和閱讀對于不同的操作平臺都是一致的,增加程序的可讀性,進而也就實現了跨平臺的思想。所以在每次開發之前都需要針對開發策略制定相應的規則:統一使用四個空格鍵來代替tab,也就是\t格式。Windows下的源文件代碼需要存儲在UNIX的文件格式,或者說是在Windows下的文件編寫完成之后,通過DOS2UNIX命令實現文本格式的轉換。
3處理器差異的控制
鑒于C++語言自身語言的特點,建立了一個跨平臺的抽象代碼庫,在不同的平臺和編譯器上進行合理的規劃代碼。C++語言里普遍使用了抽象,像BOOST和StardardTemplateLibrary。Boost標準類在不斷的發展和改進過程中,完全能夠幫助跨平臺操作中的軟件和程序來適應OS系統庫的內部接口的不同,可惜這些不足以解決全部問題,主要是因為目前Boost沒有包含所有的庫函數的類庫,又會出現不確定的情況,那么關于C++語言的部分也應該及時的維護和更新。在平臺上,利用庫封裝代碼,又在不同的平臺下調用已達到統一代碼的目的。
4利用wxWidgets開發跨平臺軟件
wxWidgets是一種跨平臺開發的軟件包,目前使得在跨平臺的圖像設計方面使用自身的程序。因為其兼容性相當的好,對于Windows,Linux,Unix等都兼容。而且,wxWidgets的底層是用C++程序設計語言實現的。下面用一個實例將說明wxWidgets的跨平臺問題。首先創造一個wxFrame的實例,并制定長寬和屏幕上的位置。然后,新建一個垂直的sizewidget和頂層窗口的子sizer。然后,再創建一個垂直sizerwidget和一個水平子sizer。最后創建wxStatic實例以及為這個敞口應用中添加事件響應。以下將展示一部分核心代碼。在設置完這個窗口之后,還需要新建一個類實現一寫功能。
2軟件開發的測試匱乏
銀行在應用軟件開發后,需要安排相關的測試技術,檢測應用軟件的安全及可用性,同時檢測銀行軟件開發程序是否合理,測試屬于銀行應用軟件開發的主要技術,能夠保障銀行軟件的安全應用。實際銀行軟件開發后,測試技術出現嚴重的匱乏情況,例如:某銀行開發的AS400,其中的應用軟件是由開發人員監督測試的,本身不具備完整的測試系統和專業的測試人員,引發嚴重的技術問題,最主要的是整個測試過程中并未發現任何程序問題,與軟件開發技術的實際不符,應用軟件在AS400的開發過程中,需經多次測試技術監督后,才能達到安全的狀態,表明軟件開發測試技術的缺陷。
3開發文檔不足
銀行應用軟件的開發文檔是指軟件設計、編程到開發所有的文檔資料,跟隨應用軟件的開發而產生,其與應用軟件的程序一致,屬于一項不能缺失的資料。銀行應用軟件開發人員不重視開發文檔,將軟件開發的重點放在實踐部分,忽略開發文檔的存儲,直接影響了銀行軟件的應用與維護,導致銀行軟件因缺乏維護根本而失效,降低軟件開發使用的壽命,更重要的是科研知識得不到充分應用。
4銀行應用軟件開發問題的解決對策
4.1引進軟件開發新技術
銀行應用軟件開發需要專業的技術支持,開發人員既要熟悉銀行軟件的業務知識,又要具備專業的技能,開發銀行應用軟件項目時,才能保障銀行軟件具備優質的實踐性。銀行在應用軟件開發技術方面,可以采取引進的思想,推進新技術的發展,針對軟件開發新技術的引進,提出兩點技術性的原則,如:(1)引進更為精細化的大數據處理,比如Oracle、DB2等,應用在銀行軟件開發中,發揮此類技術精確、專業的能力,確定新技術后才能輔助于銀行應用軟件的開發技術。(2)通過軟件開發新技術的引進,實現全能技術,銀行軟件開發系統內比較常見的是C語言、Java和vb,開發人員必須掌握所有語言基礎,同時還要對其中一門語言做到精通,用于適應銀行系統內繁瑣的IT運行,有利于銀行應用軟件技術的精細化發展。
4.2完善軟件測試技術
銀行應用軟件開發的測試技術,偏重于業務類的軟件。結合銀行應用軟件開發的過程,分析軟件測試技術的應用,其在應用軟件開發測試中體現在三個方面,分析如:(1)界面測試。(2)容錯性測試。(3)響應測試。
4.3強化文檔管理
銀行應用軟件開發可以通過評審的方式,強化文檔管理。因為文檔管理在軟件應用中發揮重要的作用,既可以做為通信工具,又可以指導軟件操作,所以開發人員需要保障文檔資料的完整性,確保文檔資料符合標準。
2軟件工程開發技術
2.1軟件標準化應用技術
軟件標準化應用技術又分成軟件標準和軟件過程標準,其是軟件構件和軟件重用技術開發與發展的先決條件,可有效保障軟件工程產業的健康發展。軟件標準化應用技術直接關系到軟件工程各項指標能否達到相關標準,其也是衡量軟件工程成熟度的重要條件。國際標準化工程和系統工程委員會詳細指出了軟件工程的標準結構,加之美國國防部關于軟件標準相關內容的提出,并列成為當代軟件工程的兩大重要標準。
2.2軟件構件和軟件重用技術
軟件構件和軟件重用技術一直是軟件工程開發中的重要環節。軟件重用是開發和研究軟件的必要手段,構件作為一項基礎條件有著不可小覷的重要作用。其中,軟件重用技術可讓軟件工程師從大量寫代碼的工作中解脫出來,促使其更好的投入到更具適用性軟件系統的開發中,從而確保空間和相關問題的一致性。軟件構件技術是實現重用技術的前提,兩者相輔相成,互相促進。這一過程中,各類開發工具是軟件開發和應用的依托,如集成開發環境、構件庫管理及運行環境等。
2.3中間件技術的采用
中間件平臺作為軟件系統開發和運行的支撐,是實現構件技術的前提。中間件適用于合適的平臺上,加速軟件的隔離和抽象,最終形成構件。因此,中間件技術在軟件行業中備受青睞,根據分布對象、通信、事務處理、調用遠程過程、訪問中間件這五大類進行劃分,具有劃時代的意義。
3軟件工程開發過程
3.1用戶需求分析
用戶需求分析即為在構建或改變軟件系統時,應根據新系統的定義、范圍及功能等內容進行用戶群體需求分析,并綜合分析數據準確把握系統定位,以開發出優質的系統軟件。該過程中,協調需求分析員和軟件工程師之間的關系是十分關鍵的,兩者強強合作后,應首先找準目標用戶群,并針對用戶的實際需求確定系統軟件的各項功能,最終制定出最佳系統開發方案。
3.2軟件系統分析
軟件系統分析主要是指歸納和整合需求調查中的各項數據和相關資料,并針對軟件內部實際管理和信息處理情況進行分析。軟件系統分析的主要目的是為了落實用戶的相關需求,并尋求出最具適用性的解決方法,其是軟件設計過程中不可或缺的組成部分。
3.3軟件測試
在整個軟件系統進入使用之前,軟件測試是最為重要的環節之一,在進行軟件測試時,不僅能對軟件的需求進行分析,還能對軟件的功能及性能進行驗證。軟件測試是指,根據運用軟件的測試方法和測試工具,按照測試流程及測試方案,對被測試軟件的功能與性能進行檢測。在對軟件進行測試的過程中,編程人員可以按照不同的軟件和不同的架構編寫出各種測試系統以及測試方案和工具,以控制將有可能出現的問題。在軟件開發的整個過程中,都要緊抓各個開發環節及時進行同步的測試內容,并且針對測試中發現的問題加以解決,同時完善相關的開發程序。在此之后進行重復測試,在反復測試中不斷完善各種問題,直到軟件最終成為完整產品。
4軟件工程開發的基本特征與應用情況
4.1明確性
軟件工程在進行軟件設計時就已經根據人們多種多樣的需求制定了明確的目標。軟件工程設計的任務是在工程實施或者產品投產之前,為這項工程或產品提供各種需求的標準,這一任務正是體現了軟件工程中“需求分析”的特點,并且需求分析的質量對軟件開發的成敗有著直接影響。在這個階段中,開發技術人員需要不斷的與用戶進行溝通和交流,完全明確軟件開發項目的概念,最終形成一個完整的、清晰的、明確的開發目標。
4.2完整性
在用戶或者服務器系統的應用中,保證信息準確無誤的重要條件是數據及數據處理的完整性。因此,在軟件開發的過程中,確保數據及數據處理完整性的邏輯要求是最為嚴密的。例如,有時在處理一個事物的過程中,會修改多個表格數據,如果在修改中發生了任何細小錯誤,都必須放棄整個處理過程,而不是其中的一個過程,然后返回最開始的階段,以確保操作的完整性,從而保證了數據及數據處理的完整性。
4.3規范性
應用軟件的開發工作在不同人員進行修改時需要能較為容易的接手,因此開發應用軟件必須保證規范性。由于軟件在開發的過程中需要按照一定的規則進行對象組合,所以能符合標準。但是如果是群體開發軟件,由于每個程序員的想法及工作習慣都不相同,因此不容易符合標準,而軟件開發的標準極為重要,必須保證其規范性,所以在軟件開發的過程中,程序員之間需要多溝通交流,確保軟件的順利開發。
4.4易維護性
由于在軟件開發的過程中,對象組合具有繼承性,在對祖先對象進行修改時,也會對其繼承對象造成直接影響,提高了軟件程序在一定程度上的維護性。并且,邏輯規定和語法規定相同,群體開發軟件不會因為個人特有的思想與工作習慣受到影響,從而使軟件開發的維護性得到了保證,也提高了相互之間互相彌補的可能性。
4.5創新性
科學技術需要發展,發展離不開創新。隨著工程技術的不斷創新,軟件開發出的產品在滿足人們高要求的同時不斷進步,為了獲得廣大用戶的信任與支持,系統分析員在進行系統分析時,應當全方位了解廣大用戶的需求,針對用戶的各種需求提出可行性方案,并且在不斷的與用戶交流中完善與改進方案,在如此反復中完成整個設計開發的過程。
軟件開發論文參考文獻:
[1]胡迎鋒,基于嵌入式Linux系統的應用程序開發[J].商場現代化,2010,(11):6.
[2]何先波,嵌入式軟件開發平臺中的文件系統封裝機制[J].計算機應用,2010,(1):118-120,123.
[3]高晶、王建華,JNI技術在嵌入式軟件開發中的應用[J].哈爾濱師范大學自然科學學報,2007,(6):62-65.
[4]周淳、鄧中亮,嵌入式組件技術的研究及應用[J].現代電子技術,2009,32(6):50-52.
[5]HenrikKniberg.ScrumandXPfromtheTrenches[M].C4MediaInc,2007
[6]商惠華.計劃驅動下敏捷開發過程的軟件質量管理[J].汕頭大學學報(自然科學版),2011(4)
[7]陳國棟,羅省賢.Scrum敏捷軟件開發方法實踐中的改進和應用[J].計算機技術與發展,2011(12)
軟件開發論文參考文獻
[1]李郁峰,陳念平.建設計算機實驗教學中心培養應用型人才[J].實驗科學與技術,2008,6:172-174,230.
[2]吳徽,劉陠升.VMware在Linux實驗教學中的應用[J].沈陽教育學院學報,2009,10:99-101.
[3]董良,寧方明.Linux系統管理[M].北京:人民郵電出版社
[4]矯文成,張冬麗.應用軟件項目管理研究[J].軟件導刊,2006,13:172-174
[5]吳曉琴.淺析面向對象程序設計特點[J].安徽大學學報(自然科學版),2006,3:267-269
[6]楊鴻雁,耿新青.數據庫系統原理課程群建設與實踐[J].鞍山師范學院學報,2010,6:375-376
[7]何方,馬武剛.面向對象設計UML技術在考試系統設計中的實踐[J].安陽師范學院學報,2006,5:125-128
軟件開發論文參考文獻:
[1]于世文,麗.敏捷軟件開發方法在軟件維護中的應用研究[J].計算機仿真技術,2012(15):13-16.
[2]高宇,馮向忠.敏捷軟件開發方法在軟件維護中的應用研究[J].科學學研究,2013(10):11-12.
[3]謝東強.敏捷軟件開發方法在軟件維護中的應用研究[J].計算機應用與軟件,2014(13):22-24.
[4]李曉鵬,等.軟件功能測試[M].清華大學出版社,2015.
2軟件維護不夠規范化
任何產品在售出后,消費者都有享受產品的售后服務的權利,而商家也必須承擔為消費者提供售后服務的義務。對于計算機軟件,也同樣有著“售后服務”,即軟件開發者對于軟件的后期維護和調試。在當前的軟件維護過程中,主要存在著兩方面問題:一是一些軟件開發者將完成的軟件交付后,就一走了之,面對軟件使用者在軟件使用過程中出現的問題也常常置之不理,推卸責任;二是有些軟件開發者在處理軟件使用者所遇到的問題時,超出市場的價值規律,漫天開價,索取高昂的維護和調試費用,有些使用者出于無奈也常常忍氣吞聲,吃了啞巴虧。可以說,以上這四方面的不規范問題不僅影響計算機開發人員的工作形象,還會形成計算機軟件領域的同業惡性競爭,長久之,將會使充滿信心的軟件開發這一朝陽產業變得暗淡無光,最終使軟件使用者和消費者蒙受損失。
3加強計算計軟件開發規范化對策思考
3.1提高計算機軟件開發規范化的認識
計算機軟件開發是一項與人們學習、工作和生活有著密切聯系的系統性工程,計算機軟件只有在人們的認可和使用中才能發揮出自身的作用和價值。然而當前計算機軟件過程中所存在的規范化問題,已經對計算機軟件在市場中的推廣和使用造成了很大的影響。要使這一問題得到根本解決,首先必須從思想觀念上進行轉變。為此,我們只有不斷提高軟件開發的準入門檻,提高軟件開發者對于軟件開發規劃范的責任意識,使其從思想層面加強對自身的工作要求。同時,還應當不斷完善計算機軟件開發方面的相關法律和行業標準,使軟件開發的各個過程受到制度監督和法律約束,保證軟件開發者以誠信、敬業知心開展計算機軟件開發工作。此外,我們還要認真思考,對計算機軟件開發的設計、檢測、維護等一系列的環節所存在的問題進行深入分析,提出切實可行的對策,最終推動計算機軟件開發實現規范化發展。
3.2加強計算機軟件設計規范化
計算機軟件設計開發主要是依據用戶要求設計研發的計算機系統軟件或計算機系統中的某一部分應用軟件,是一項涉及很多方面的系統工程。因此,軟件開發者需要對市場的需求、客戶的要求、設計人員的技術層次等方面進行綜合的分析,而后開始設計軟件。為此,在設計開發前要充分了解軟件的運行環境,在深入調研后再進行設計開發。同時根據用戶的不同需求,確定設計風格和內容,進而嚴格遵循計算機軟件設計標準,進行概要設計和詳細設計,把具體設計策略、軟件內部構造和制作流程進行安排部署,并呈現給用戶。1)軟件概要設計的規范化。概要設計的標準就是按照用戶的需求,根據產品的不同建立各個系統模塊的目標軟件系統,對這些模塊的接口下達指令,使他們緊緊聯系在一起并鏈接到下一個模塊,做到層層相聯系。為此,開發者要不斷規范概要設計,有能力建立起能夠管理整個軟件系統的數據庫,并使其中的每個模塊都要形成相配套的管理方案,并在這一過程中,把各模塊的接口盡可能的簡單化處理。不僅各模塊都能分工合作,還能緊密的聯系,這樣才能有效保證了系統持續穩定的運行,進而保障用戶能夠清晰地理解軟件的設計。2)軟件詳細設計的規范化。所謂軟件詳細設計,就是對概要設計標準全面進行細化,把概要設計一項一項地分解開來,使概要設計的內容得到更加詳盡的解釋說明,然后把各個模塊進行系統、精確、全面的闡述,最終使各個模塊的概要設計功能進一步細化分解。為此,開發者要具體圍繞算法和軟件內部構造這兩個方面,及時規范模塊的輸出輸入以及它們的性能,把每一個模塊進行細化,劃分具體的功能。需要注意的是,開發者在進一步規范計算機軟件設計研發中,必須要使軟件的設計具有精確的算法和內部構造,這樣不僅會對擬寫的源代碼有幫助作用,還會使軟件設計更為的科學合理。最后軟件開發者還要根據用戶需求,在積極完善詳細設計標準的基礎之上,才可以進行系統規范的計算機軟件設計研發。在研發過程中,仍需要對軟件各個模塊都進行程序上的劃分,只有在準確評估了檢測報告后,利用各個模塊接口的精準性能,才能對計算機軟件進行系統的、有程序的、循序漸進的設計研發,才能保證計算機軟件的先進、合理和高效。
3.3計算機軟件開發編碼的規范化
在進行軟件的設計與開發方面,要首先對軟件進行的設計有一個相對清晰的標準,即對軟件進行概要設計的標準以及軟件詳細設計的標準,在設計完成后,要對軟件進行加工編碼工作。為計算機軟件進行編碼,是開發設計計算機軟件的重中之重,只有將計算機編碼開發設計正確,才能夠保證程序的完整無缺,進而保證軟件的正常運行。計算機軟件在編碼過程中,要按照軟件設計規范化的標準,并把用戶需求的方方面面都考慮在內,然后根據軟件的運行環境,進行軟件編碼,這樣才能設計開發出適合用戶特點、滿足用戶需求、操作簡便的計算機軟件。
3.4加強計算機軟件檢測規范化
我們在檢測軟件過程中,發生錯誤是在所難免的,如何避免和消除所犯的錯誤,使軟件能夠較長時間使用,是軟件檢測必須面對的實際問題。這樣的問題存在于軟件設計研發的各個階段,軟件檢測的效果同樣也決定了軟件的使用壽命和軟件設計研發的質量。因此,必須加強軟件的檢測工作,切實地解決好軟件研發過程中存在的問題。目前,我們主要檢測用戶所要求的軟件功能以及計劃內容、性能需求等。所以,我們必須要保證在檢測軟件的過程中要有用戶共同參與,專業人員要把軟件設計思路和所想達到的目的進行系統了解,利用專業知識和規范化檢測方法對所開發的軟件進行詳細認真的檢測,從而發現設計漏洞和存在的問題,看是否達到了用戶的要求。同時,要進一步規范檢測過程,對軟件系統的各個功能模塊要進行全面完整的檢測和測試,同時對檢測的數據和檢測結果進行存檔,以備在修改時能夠及時找到問題所在,通過對存在問題加以修改和完善,使軟件性能得到進一步提高,反復修改檢測后,把軟件的性能調試到最好的使用效果。此外,還要組成獨立的軟件測試小組對軟件進行反復驗證和全方位測試,確認軟件的各種性能達到良好的效果。在檢測工作結束后,要撰寫檢測報告,對軟件設計研發及檢測結果進行全面分析總結,做出正確的評估。計算機軟件設計研發是根據用戶需求來實現的,是一種計算機系統或系統中的部分軟件,計算機軟件不是每一臺計算機都相同的,它是根據用戶的不同需求而添加的,它包括辦公軟件、商業軟件、家庭應用軟件等不同類型,軟件的研發是由用戶需求、專業人員設計、最后經過測試和用戶認可的一種產品,軟件的使用者要想得到合法的軟件使用權,就必須得到軟件研發機構的許可,這樣,一個計算機軟件才具有了真正的生命力。
3.5加強計算機軟件維護規范化
計算機軟件產品維護也是軟件開發規范化的最后一道程序,它主要是把在運行過程中出現的問題進行及時維修,把在測試中遺漏的錯誤進行修改,不斷完善軟件的各種性能,讓軟件更好地適應運行環境。軟件維護同樣要具有規范化要求,我們必須要使軟件開發者認真按照程序進行操作,不能出現舊的問題沒有解決有出現了新的問題,要減少軟件維修的所產生的負面影響,維護和維修過程要有詳細記錄,填寫維修報告,做到軟件維修正規化和標準化,從而實現軟件功能的不斷擴展和補充,使軟件達到最好的運行和使用效果。此外,還要培養軟件開發者在維護軟件工作中的責任心意識,要從市場實際出發,遵循價值規律,誠信真實地開展軟件維護,最終使軟件開發行業的環境得到凈化,促進整個行業向前發展。
2、程序驗證
本文利用MSRE的實驗數據對程序進行驗證,MSRE功率為8MW,慢化劑為石墨,氟化鹽以648.9℃的溫度流經由石墨柵陣構成的矩形管道。根據橡樹嶺國家實驗室(ORNL)熔鹽堆運行報告[5]建立MSRE的簡化模型(圖1)。近似的MSRE幾何模型為圓柱體,半徑為71.2cm,高度為200.7cm,堆芯填充石墨柵陣,高度為17.15cm的上下腔室分別在石墨柵陣頂部和底部。石墨管道中燃料流速與上下腔室中的流速不同。計算中使用的熱工水力參數取自文獻[6]。燃料組成部分取自MSRE運行報告,為減少實驗結果與計算結果的偏差,模擬過程選取了2套不同的DNP數據:①基于ENDF/B-VI庫由HELIOS組件計算產生;②由ORNL提供的緩發中子數據。堆芯內有效DNP份額的計算方法取自文獻[7]。
2.1MSRE穩態運行下DNP損失
第1個基準題計算MSRE穩態運行下的DNP損失。MSRE實驗結果與文獻[8]的計算結果作為參考解。本文計算了MSRE在采用235U燃料和233U燃料的2種情況下的緩發中子份額損失。表1、表2列出了2種燃料類型下本文計算的六組緩發中子份額損失與參考值的比較。從表中可以看出,本文的計算結果與試驗值吻合較好,與其他單位的計算值差別不大。偏差的原因主要來自:①進行MSRE模擬時采用的簡化幾何模型不同;②評價緩發中子份額損失的模型不同。
2.2MSRE起泵和停泵瞬態
第2個基準題模擬MSRE在無保護狀態下的燃料起泵和停泵瞬態過程。在這2個瞬態過程中,堆芯通過調節控制棒的位置使功率保持不變,反應性的損失可通過控制棒的位置進行計算。與上一基準題類似,模擬過程中使用了2組緩發中子數據。起泵過程中,燃料流量在10s內從0升高到正常值,停泵過程中,燃料流量在22s內從正常值降低為0。燃料流量的變化數據取自文獻[9]。由圖2可知,MOREL能很好地模擬MSRE在起泵和停泵過程中緩發中子份額的變化。MSRE在實驗過程中對控制棒的提棒速度有一定限制,本文模擬過程中沒有考慮到這個因素,這可能是高估反應性損失的一個原因。從圖2可知,在約13s時,反應性損失曲線有一個波動,這是由于堆芯外未衰變的先驅核重新進入堆芯。
2軟件功能設計
1)管理端軟件功能。管理端軟件設計有“校驗任務管理”、“文檔管理”、“校驗歷史調閱”與“相關信息配置”四大類功能,下圖3所示為管理端軟件的功能設置圖。管理端軟件界面從左到右分別為基本信息錄入欄、功能按鈕區和待檢驗任務列表欄三個區域,界面簡潔,功能按鈕作用一目了然,軟件的使用非常簡便。下圖4為管理端軟件主界面設計。2)測試端軟件功能設計。測試端軟件整合了接收待檢驗任務、檢驗測試、數據上傳、服務器數據庫配置、檢驗儀器設置等功能,軟件的核心是實現檢測數據的自動識別與保存,并將測試數據與檢驗結論上傳至服務器上的SQLServer數據庫中。測試端軟件界面風格和特點與管理端基本一致,其主界面見下圖6所示。選中即將要實施的檢驗任務,其參數將顯示在左面的基本信息欄中,如果信息中有差錯,檢驗人員可以現場進行修改。在對基本信息核對無誤后,點擊“開始校驗”按鈕,將進入下圖7所示的測試界面。測試數據與結論將自動保存到本機后臺的Accesss數據庫中,在網絡環境下,點擊“數據上傳”(見圖6),所有檢驗結束任務的測試數據與檢驗結論將通過網絡寫入服務器上的SQLServer數據庫中。點擊管理端軟件上“文檔管理”(見圖4)按鈕,將彈出下圖8所示界面。在文檔管理功能模塊中,可以預覽限速器檢驗報告與檢驗原始記錄,并能夠直接輸出打印。檢驗報告可以通過網絡進入審核和簽發流程,檢驗報告中的檢驗員、報告審核與審批人員均使用電子簽名簽署檢驗報告。
引言:隨著存儲程序式通用電子計算機在上世紀40年代的誕生,和計算科學的快速發展以及取得的大量成果。計算科學這一學科也也應運而生。《計算科學導論》正如此書的名字,此書很好的詮釋了計算科學這一學科,并且指導了我們應如何去學好這一學科。使得我們收獲頗多。并且讓我深深的反思了我的大學生活。正如趙老師書中所講的:“計算科學是年輕人的科學,一旦你選擇了計算科學作為你為之奮斗的專業類領域,就等于你選擇了一條布滿荊棘的道路。一個有志于從事計算科學研究與開發的學生,必須在大學幾年的學習中,打下堅實的基礎,才有可能在將來學科的高速發展中,或在計算機產品的開發和快速更新換代中有所作為。
<一>什么是計算科學和它的來歷
計算科學主要是對描述和變換信息的算法過程,包括其理論、分析、設計、效率分析、實現和應用的系統研究。全部計算科學的基本問題是,什么能(有效的)自動運行,什么不能(有效的)自動運行。本科學來源于對數理邏輯、計算模型、算法理論、自動計算機器的研究,形成于20世紀30年代的后期。
隨著存儲程序式通用電子計算機在上世紀40年代的誕生,人類使用自動計算裝置代替人的人工計算和手工勞動的夢想成為現實。計算科學的快速發展以也取得大量成果,計算科學這一學科也也應運而生。
<二>計算科學的發展
a、首先先介紹圖靈機
圖靈機的發明打開了現代計算機的大門和發展之路。圖靈機通過一條兩端可無限延長的袋子,一個讀寫頭和一組控制讀寫頭的(控制器)組成它有一個狀態集和符號集,而此符號集一般只使用0和1兩個符號。而就是這個簡潔的結構和運行原理隱含了存儲程序的原始思想,深刻的揭示了現代通用電子數字計算機的核心內容。現在通用的計算機是電子數字計算機,而電子數字計算機的發展是建立在圖靈機的基礎之上。他的二進制思想使計算機的制作的簡化成只需兩個穩定態的元器件。這在今后的計算機制作上無論是二極管或集成電路上都顯示了明顯的優越性。
b、計算機帶動的計算學科
1946年隨著現代意義上的電子數字計算機ENIAC的誕生。掀起了社會快速發展的嶄新一頁。計算機工作和運行就擺在了人們的面前。
1、計算機語言
我們要用計算機求解一個問題,必須事先編好程序。因此就出現了最早的機器指令和匯編語言。20世紀50年代后,計算機的發展步入了實用化的階段。然而,在最初的應用中,人們普遍感到使用機器指令編制程序不僅效率低下,而且十分別扭,也不利于交流和軟件維護,復雜程序查找錯誤尤其困難,因此,軟件開發急需一種高級的類似于自然語言那樣的程序設計語言。1952年,第一個程序設計語言ShortCode出現。兩年后,Fortran問世。作為一種面向科學計算的高級程序設計語言,Fortran的最大功績在于牢固地樹立了高級語言的地位,并使之成為世界通用的程序設計語言。Algol60的誕生是計算機語言的研究成為一門科學的標志。該語言的文本中提出了一整套的新概念,如變量的類型說明和作用域規則、過程的遞歸性及參數傳遞機制等。而且,它是第一個用嚴格的語法規則——巴科斯范式(BNF)定義語言文法的高級語言。還有用于支持結構化程序設計的PASCAL語言,適合于軍隊各方面應用的大型通用程序設計語言ADA,支持并發程序設計的MODULA-2,支持邏輯程序設計的PROLOG語言,支持人工智能程序設計的LISP語言,支持面積對象程序變換的SMALLTALK、C等。
2、計算機系統和軟件開發方法
現代意義上的計算機絕不是一個簡單的計算機了而也包括了軟件(系統軟件、應用軟件)。各種各樣的軟件使得計算機的用途大大增強。而軟件開發也成為了一個重要課題和發展方向。軟件開發的理論基礎即是計算模型。隨著計算機網絡、分布式處理和多媒體的發展。在各種高級程序設計語言中增加并發機構以支持分布式程序設計,在語言中通過擴展繪圖子程序以支持計算機圖形學程序設計在程序設計語言中已非常的流行。之后,在模數/數模轉換等接口技術和數據庫技術的支持下,通過擴展高級語言的程序庫又實現了多媒體程序設計的構想。進入20世紀90年代之后,并行計算機和分布式大規模異質計算機網絡的發展又將并行程序設計語言、并行編譯程序、并行操作系統、并行與分布式數據庫系統等試行軟件的開發的關鍵技術依然與高級語言和計算模型密切相關,如各種并行、并發程序設計語言,進程代數,PETRI網等,它們正是軟件開發方法和技術的研究中支持不同階段軟件開發的程序設計語言和支持這些軟件開發方法和技術的理論基礎----計算模型
3、計算機圖形學
在計算機的硬件的迅速發展中。隨著它的存儲容量的增大,也掀起了計算機的巨大改革。計算機圖形學、圖像處理技術的發展,促使圖形化界面的出現。計算機圖形學是使用計算機輔助產生圖形并對圖形進行處理的科學。并由此推動了計算機輔助設計(CAD)、計算機輔助教學(CAI)、計算機輔助信息處理、計算機輔助測試(CAT)等方向的發展。圖形化界面的出現,徹底改變了在一個黑色的DOS窗口前敲代碼輸入控制命令的時代。同時也成就了一個偉大的公司Microsoft。
4、計算機網絡
隨著用戶迫切需要實現不同計算機上的軟硬件和信息資源共享。網絡就在我們的需求中誕生了。網絡的發展和信息資源的交換使每臺計算都變成了網絡計算機。這也促進計算機的發展和廣泛應用。
<三>計算機學科的主線及發展方向
圍繞著學科基本問題而展開的大量具體研究,形成學科發展的主流方向與學科發展主線和學科自身的知識組織結構。計算學科內容按照基礎理論、基本開發技術、應用以及他們與硬件設備聯系的緊密程度分成三個層面:
1、計算科學應用層
它包括人工智能應用與系統,信息、管理與決策系統,移動計算,計劃可視化,科學計算機等計算機應用的各個方向。
2、計算科學的專業基礎層
它是為應用層提供技術和環境的一個層面,包括軟件開發方法學,計算機網絡與通信技術,程序設計科學,計算機體系結構、電子計算機系統基礎。
3、計算科學的基礎層
它包括計算科學的數學理論,高等邏輯等內容。其中計算的數學理論涵蓋可計算性與計算復雜性理論形式語言與計算機理論等。
<四>計算機的網絡的發展及網絡安全
(1)計算機網絡與病毒
一個現代計算機被定義為包含存儲器、處理器、功能部件、互聯網絡、匯編程序、編譯程序、操作系統、外部設備、通信通道等內容的系統。
通過上面定義,我們發現互聯網絡也被加入到計算機當中。說明了網絡的重要以及普及性。21世紀是信息時代。信息已成為一種重要的戰略資。信息科學成為最活躍的領域之一,信息技術改變著人們的生活方式。現在互聯網絡已經廣泛應用于科研、教育、企業生產、與經營管理、信息服務等各個方面。全世界的互聯網Internet正在爆炸性的擴大,已經成為覆蓋全球的信息基礎設施之一。
因為互聯網的快速發展與應用,我們各行各業都在使用計算機。信息安全也顯得格外重要。而隨著計算機網絡的發展,計算機網絡系統的安全受到嚴重的挑戰,來自計算機病毒和黑客的攻擊及其他方面的威脅也越來越大。其中計算機病毒更是很難根治的主要威脅之一。計算機病毒給我們帶來的負面影響和損失是刻骨銘心的,譬如1999年爆發的CIH病毒以及2003年元月的蠕蟲王病毒等都給廣大用戶帶來巨大的損失。
我們想更好的讓計算機為我們服務,我們就必須很好的利用它,利用網絡。同時我們也應該建立起自己的防護措施,以抵抗外來信息的侵入,保護我們的信息不受攻擊和破壞。
(2)計算機病毒及它的防范措施:
計算機病毒是一組通過復制自身來感染其它軟件的程序。當程序運行時,嵌入的病毒也隨之運行并感染其它程序。一些病毒不帶有惡意攻擊性編碼,但更多的病毒攜帶毒碼,一旦被事先設定好的環境激發,即可感染和破壞。
<一>、病毒的入侵方式
1.無線電方式。主要是通過無線電把病毒碼發射到對方電子系統中。此方式是計算機病毒注入的最佳方式,同時技術難度也最大。可能的途徑有:①直接向對方電子系統的無線電接收器或設備發射,使接收器對其進行處理并把病毒傳染到目標機上。②冒充合法無線傳輸數據。根據得到的或使用標準的無線電傳輸協議和數據格式,發射病毒碼,使之能夠混在合法傳輸信號中,進入接收器,進而進人信息網絡。③尋找對方信息系統保護最差的地方進行病毒注放。通過對方未保護的數據鏈路,將病毒傳染到被保護的鏈路或目標中。
2.“固化”式方法。即把病毒事先存放在硬件(如芯片)和軟件中,然后把此硬件和軟件直接或間接交付給對方,使病毒直接傳染給對方電子系統,在需要時將其激活,達到攻擊目的。這種攻擊方法十分隱蔽,即使芯片或組件被徹底檢查,也很難保證其沒有其他特殊功能。目前,我國很多計算機組件依賴進口,困此,很容易受到芯片的攻擊。
3.后門攻擊方式。后門,是計算機安全系統中的一個小洞,由軟件設計師或維護人發明,允許知道其存在的人繞過正常安全防護措施進入系統。攻擊后門的形式有許多種,如控制電磁脈沖可將病毒注入目標系統。計算機入侵者就常通過后門進行攻擊,如目前普遍使用的WINDOWS98,就存在這樣的后門。
4.數據控制鏈侵入方式。隨著因特網技術的廣泛應用,使計算機病毒通過計算機系統的數據控制鏈侵入成為可能。使用遠程修改技術,可以很容易地改變數據控制鏈的正常路徑。
<二>病毒攻擊的防范的對策
1.建立有效的計算機病毒防護體系。有效的計算機病毒防護體系應包括多個防護層。一是訪問控制層;二是病毒檢測層;三是病毒遏制層;四是病毒清除層;五是系統恢復層;六是應急計劃層。上述六層計算機防護體系,須有有效的硬件和軟件技術的支持,如安全設計及規范操作。
2.嚴把收硬件安全關。國家的機密信息系統所用設備和系列產品,應建立自己的生產企業,實現計算機的國產化、系列化;對引進的計算機系統要在進行安全性檢查后才能啟用,以預防和限制計算機病毒伺機入侵。
3.防止電磁輻射和電磁泄露。采取電磁屏蔽的方法,阻斷電磁波輻射,這樣,不僅可以達到防止計算機信息泄露的目的,而且可以防止“電磁輻射式”病毒的攻擊。
4.加強計算機應急反應分隊建設。應成立自動化系統安全支援分隊,以解決計算機防御性的有關問題。
很多公司都有因為電腦被入侵而遭受嚴重經濟損失的慘痛經歷,不少普通用戶也未能避免電腦被破壞的厄運,造成如此大損失的并不一定都是技術高超的入侵者所為,小小的字符串帶給我們的損失已經太多。因此,如果你是數據庫程序開發人員、如果你是系統級應用程序開發人員、如果你是高級計算機用戶、如果你是論壇管理人員......請密切注意有關字符漏洞以及其他各類漏洞的最新消息及其補丁,及時在你的程序中寫入防范最新字符漏洞攻擊的安全檢查代碼并為你的系統安裝最新的補丁會讓你遠離字符帶來的危險。經常殺毒,注意外來設備在計算機上的使用和計算機對外網的鏈接。也可以大大有效的避免計算機被攻擊。
<五>總結
在學了計算科學導論之后,讓我更深入的了解了我將來要從事的學科。計算科學導論指導著我們該怎么學習計算機。讓我更清楚的知道我們信息安全專業的方向。正如計算科學這座大樓一樣,在不斷的成長。信息安全也必將隨著網絡的進一步發展而更多的被人們重視。總之學習了這門課之后讓我受益匪淺,也知道自己應該好好努力,爭取在自己的專業領域上有所成就。
參考文獻:
1、《計算科學導論》(第三版),趙志琢著,科學出版社2004版