為保證可擴展的、靈活的和越來越快的應用軟件,數據庫開發者應該注意實踐出真知的軟件工程原則。 數據庫應用軟件開發的典型階段--實際上所有類型的開發--都包括分析,設計,實現,數據轉換,測試,訓練,以及維修。 來自InformIT的這篇文章討論4 種創建軟件應用的方法:
瀑布式
最優秀生命周期范例是瀑布式方法。 開發者以一種嚴格的線性順序進行軟件開發,這種方法中不會走回頭路。
瀑布式方法適用于易于理解的從分析到設計都有著可預測輸出的應用程序。它也用于合同式的場合,特別在為政府工作時,它常常使用(不考慮它的適用性的話)。
瀑布式方法不適合用于過程中有很大不確定的應用程序,對于你將遇到的大多數應用都是這樣類型的。 當需求是處于變化中的時候,太多的組織仍然試圖使用瀑布式方法。這會導致開發者抱怨在變化的需求,企業抱怨不靈活的信息系統的組織。瀑布式方法直到完成時才能交付一個有用的系統,這使得評估程序和在項目出問題時更正變得很困難。
摘要:
強項——適用于具有可預測的結果的應用程序。
弱項——不適用于具有變化需求的應用。直到項目完成才能交付一個系統。
快速原型方法
使用這種方法,你可以迅速開發軟件的一部分,并使用它、評估它。然后你再合并你所學到的,然后再重復這種循環。最終,你交付一個最終原型作為完成的應用程序,或者在你得到一些原型之后轉向另一種方法。你必須迅速地在原型開發時完成循環(通常,2到3個月)并成功。 快速原型方法集中于用戶探詢的輸入;如果你能從其他輸入源搜集信息,你就能減少原型的數量。
快速原型增強了通信。你了解了用戶的需要,并且用戶也知道了自動化的方法能提供什么。 因此,原型瞄準了一個軟件開發的核心困難——找到真實的需求?焖僭吞峁┻m合向用戶保證開發正常運行的頻繁的關節點。它也讓開發者能夠實驗設計和實現容易出錯的方面。它們能測試很難的算法,并且在進行完整實現之前,知道它能否正常工作。
原型可能是廢品,或者也可能通過逐漸的精心制作得到你想要的工作系統?焖僭偷娜觞c是: 經常地,一件原型不合適于增強,但是你可能會收到業務方面的壓力,要求增強它。成功的關鍵是做好準備丟掉早期的原型。原型應該被增強,只要它們能早在其領域上獲得成功并且有堅固的架構。
摘要:
強項——可以引出需求。提供關節點。允許做問題檢查的實驗。
弱項——可能有業務壓力而不得不擴展一個已經很脆弱的原型。必須拋棄代碼。
增量開發
增量開發類似于瀑布方法, 除了你必須劃分應用并同時開發各個部分之外。 多個增量被交付,并且積累成為被完成的應用。 (把這與快速原型對比,每次交付的新內容都會替換先前的代碼。)
增量開發的一個優點,是你能有很密集的關節點。當遇到困難時,你可以及時發現并調整你的實踐。
挑戰在于為相應的開發找到有意義的增量——把一個應用分成相互間關聯很少的幾片。最好,在增值之間的接口應該最小并且容易確定。 此外,你必須進行一個最先的分析; 否則,隨后的變化可能會擾亂早期的增量。在功能的有用增量對用戶可見之前,大多數應用都需要很大的基礎方面的努力。在簡化后勤部署之前一個企業可以把幾個增量結合起來。
摘要:
強項—— 交付應用的有用部分。提供關節點。
弱項—— —些問題劃分困難。在交付功能之前,必須先完成基礎設施。
第4 代語言
第4 代的語言(4GL)是提供屏幕布局和簡單計算以及報告的直接數據庫應用的一種框架。4GL 提高實現介質層的高度,使得它更接近分析層。分析工作仍然保留,但是對于設計和實現只需要更少的努力就可以完成。 如果你的應用程序適合4GL框架,開發者能只出現很少錯誤就迅速地構造好它。
4GL的優勢在于重用:多個應用程序調控相同的4GL軟件。通常地,4GL從廠家那里購買,因此你的組織不必自行開發它。如果能夠熟練地使用,4GL 應用程序的性能可能會十分好。
4GL的不利是框架的剛性。開發者習慣于范例;他們可能嘗試把它用于不適當的應用場合,例如帶有復雜的計算的那些。4GLs還缺乏重用應用軟件邏輯的工具; 開發者必須反復對相似的形式進行編碼。4GLs是復雜的軟件,想要精通必須投入時間和努力。
摘要:
強項——開發者能迅速創建應用程序,卻產生很少的錯誤。
弱項——很多應用軟件不適合使用4 GL。4GL是要學習的另一項技術。
結合的方法
你可以結合各種各樣的方法。例如,對于增量開發的困難部分,你可以使用快速原型方法來充實需求。 有時,把一個大型系統分成不同組件并且與不同的方法構造組建是有幫助的。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/