確保一個有效的定制軟件開發項目的第一個關鍵是確保確實需要定制軟件,而不是打包的解決方案,而且有充分的理由來確定。調查顯示,75%的企業和it高管預計他們的軟件項目會失敗,其中不到三分之一的人能夠在一年內按時按預算完成。構建和購買比較分析的一種方法是詢問是否有打包的軟件解決方案,它可以提供80%以上的以下功能:[/p>
支持或自動化獨特的業務流程和交易
處理特定于業務或業務線的信息和數據
滿足獨特的隱私或安全要求
促進和自動化獨特的業務流程和交易事務傳統應用程序和數據的集成
以較低的成本替換或幫助整合現有解決方案
替換或幫助整合現有解決方案以提高生產率
創造新的機會或提高競爭優勢
增長并適應不斷變化的需求。如果你想做一個決定,一個重要的初始考慮是從主要參與者那里購買,并確保他們在項目上進行溝通和協作。合作者包括贊助者、用戶、開發人員,甚至組織外的客戶和業務伙伴。”
協作意味著“與業務用戶就需求展開合作,在全球開發團隊之間共享知識,并在開發和運營團隊中共同提高質量和響應能力。”合作的一個關鍵成果是對軟件需要做什么(不需要做什么)有一個清晰的、共同的愿景。”組織需要有效地定義和管理需求,以幫助確保滿足客戶需求,同時解決法規遵從性問題,并在計劃和預算的基礎上這樣做,“需求定義和管理是一項有可能實現以下目標的活動:高、快的投資回報率。”根據我們的“良好”要求,它是正確的(技術上和法律上可行的)
完整的(表達一個完整的想法或陳述)
清晰的(清晰的和正確的)
一致的(與其他要求不沖突的)(/p>
可驗證的(可以確定申請是否符合要求)
可追溯的(只有一個識別和跟蹤)
可行的(可在成本和進度范圍內完成)
模塊個性化(可在不產生太大影響的情況下更改)
獨立于設計(對設計沒有具體的解決方案)。在定義了需求(它們可能會多次更改)之后,應用成熟的現代開發方法和實踐可以幫助快速有效地交付有效的甚至創新的軟件。需要考慮的開發方法是:
敏捷開發將需求分解為易于使用的功能,并通過增量開發快速實現這些功能。隨著功能的繼續部署,反饋循環有助于識別和修復缺陷。開發與運營的結合是Devops。它是一種基于敏捷的方法,將軟件開發和It操作集成到軟件設計、開發、部署和支持中。快速應用程序開發是一種非線性方法,它可以將設計和代碼構造集中到一個相互關聯的步驟中。擴展敏捷框架提供了一種將敏捷方法擴展到大型組織(如全球開發團隊)的方法。要考慮的技術和實踐:
開源是對公眾和開發社區開放的軟件源代碼。例如,Linux是一個開源操作系統。它可以通過重用軟件組件來提高開發效率,并通過避免專有體系結構來提高互操作性。通過在云中托管開發環境,基于云的開發將云計算的優勢帶到了軟件開發中。這些環境支持編碼、設計、集成、測試和其他開發功能,以構建本地應用程序和云本地應用程序,并以云技術承諾的成本控制、速度和按需便利性來實現它們。該軟件可以模擬人的決策和人工智能的學習。它可以用來改進開發過程。例如,自然語言處理(計算機和軟件理解人類語言的能力)可用于分析需求文本,并根據最佳實踐提出改進建議。機器學習和建模等人工智能技術也可以通過應用程序編程接口(API)和