日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件工程与计算II-20-软件交付

發布時間:2023/12/20 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件工程与计算II-20-软件交付 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

20-軟件交付

1. 什么是軟件交付

  • 軟件交付是軟件項目的結束階段,標志著軟件開發任務的完成
  • 軟件交付是軟件開發與軟件維護兩個既連續又不同的軟件產品生存狀態的分水嶺。
  • 只有做好軟件交付工作,才是真正地完成整個項目。
  • 2. 安裝與部署

  • 需求階段:考慮環境約束等
  • 體系結構設計階段:進行產品部署的設計決策,包括網絡拓撲、庫文件、動態鏈接庫、配置文件等
  • 32位環境還是64位環境等問題
  • 開發階段:使用的支持軟件也會影響到交付,可能要求客戶安裝特定支撐軟件或者硬件
  • 2.1. 安裝

  • 安裝是軟件交付的最常見形式,現在大多數產品都通過安裝的形式交付,它要求開發團隊創建一個安裝包,用戶可以通過的執行將軟件產品部署到工作環境。
  • 安裝包需要進行仔細的設計,并使用工具(例如Advanced Installer 、Setup Factory 等)幫助進行安裝包的創建。一個好軟件產品應該簡單、健壯、可靠、完全。要創建很容易使用的安裝包,讓用戶可以無需創建安裝包的人員的幫助就能使用。
  • 2.2. 創建安裝包的步驟

    2.2.1. 確定安裝環境

  • 確定安裝包需要支持的操作系統,這既需要考慮當前用戶的工作環境,又需要考慮產品未來的市場規劃;
  • 確定軟件產品的語言支撐環境,例如使用Java語言開發的軟件產品就需要安裝JDK;
  • 確定軟件產品需要的軟件支持,例如數據庫系統、網絡系統等;
  • 確定硬件等其他要求,例如有些軟件產品可能會要求掃描儀、視頻卡、通信設備等特殊硬件。
  • 例如,對超市銷售系統MSCS,它的安裝環境為:Window XP、 Window Vista、Window 7三種操作系統;Java運行環境JDK;數據庫管理系統軟件(如果使用了數據庫的話)。
  • 2.2.2. 列舉安裝清單

  • 要根據軟件產品的實現情況,結合所需的環境支撐,列舉需要安裝的文件、初始化數據、注冊表等清單信息,要清楚標明它們在安裝后將會出現的位置
  • 在考慮安裝位置時要遵守一致性,標記名稱的使用要意義清楚,讓用戶能便利地找出相應文件。
  • 例如,對超市銷售系統MSCS,它所有的可執行程序文件都是需要安裝的文件,初始化數據有兩處,一處是設置默認的管理員用戶帳號,另一處是設置數據庫管理系統連接數據。
  • 2.2.3. 設計和建立安裝包

  • 要對安裝包進行詳細的設計,包括一個漸進的安裝步驟,各步驟的人機交互方式等等。完成設計后就可以使用安裝工具創建安裝包。
  • 例如,超市銷售系統MSCS安裝包可以按照下列步驟建立:
  • 檢查操作系統環境
  • 檢查JDK,如果沒有合適的JDK,則提醒用戶安裝JDK
  • 檢查數據庫管理系統軟件,如果合適的數據庫管理系統軟件,則提醒用戶進行安裝
  • 設置數據庫管理系統連接參數
  • 連接數據庫管理系統,創建MSCS的數據庫
  • 拷貝文件
  • 設置初始化數據,包括數據庫系統連接參數和MSCS的默認管理帳號
  • 安裝成功。
  • 2.2.4. 測試安裝包

  • 安裝包需要在目標環境中進行安裝測試,以發現可能的問題。
  • 需要注意的是:必須以用戶的工作環境為目標環境進行測試,因為用戶使用的機器環境與開發者的機器環境有很大的不同(包括程序環境、操作系統版本、支撐軟件版本等等),在開發者機器上可以正確執行的安裝包未必能夠在用戶的機器上運行。
  • 2.3. 部署

  • 在軟件產品比較復雜時,僅僅通過一個安裝包無法完成軟件交付任務,這時可以使用另一種常見的軟件交付方式——部署。
  • 部署通常是由開發人員直接操縱軟件產品的目標環境,使得軟件產品能夠在目標環境中正常運行。
  • 部署的過程中通常需要執行安裝任務,但是還有很多比安裝復雜得多的其他任務,例如:安裝、設置或調整操作系統,尤其是權限管理參數;安裝、設置和調整數據庫系統,包括新建數據庫和設置訪問權限;安裝和設置庫文件、應用服務器等應用環境。
  • 2.4. 部署的步驟

    2.4.1. 確定部署環境

  • 和安裝一樣,軟件部署要首先要需要確定部署的目標環境,當然它比安裝要求的更高一些。它需要對目標環境進行調查分析,搞清楚部署前的環境細節,然后才能與軟件產品需要的環境細節進行比較,才能明確需要執行的部署任務。
  • 具體來說,軟件部署需要了解服務器與網絡拓撲、安全控制與權限管理、軟硬件系統的配置信息等。
  • 2.4.2. 確定部署任務

  • 將軟件產品需要的目標環境與部署前的環境進行比較,分析二者之間的差距,并將其確立為部署的任務。
  • 確定任務之后,還需要以漸進的方式安排任務之間的執行次序。例如,先安裝和配置操作系統,然后安裝和配置相應的軟硬件系統,最后完成軟件產品的安裝與配置,等等。
  • 2.4.3. 完成部署準備

  • 有些部署工作可以完全依靠現場執行,但多數的部署任務需要進行一定的事前準備,尤其是要綜合考慮部署工作可能出現的各種情況,制定完備的應對方案。
  • 2.4.4. 執行部署任務

  • 按照準備的計劃,執行相應的部署任務。
  • 3. 培訓與文檔支持

  • 幫助用戶理解產品,并使其能夠輕松地使用產品
  • 不能讓用戶學會使用軟件產品,那么就不算是完成了軟件交付任務
  • 幫助用戶學會使用軟件產品的兩個關鍵任務:
  • 培訓
  • 文檔支持
  • 3.1. 培訓

  • 培訓主要是教會用戶使用軟件產品的功能來完成其工作和任務。依據任務的不同,要為不同的用戶進行不同類型的培訓。
  • 例如,對超市銷售系統MSCS
  • 培訓收銀員使用系統進行銷售和退貨
  • 培訓客戶經理使用系統進行庫存管理和會員管理
  • 培訓總經理使用系統制定銷售策略和進行庫存分析
  • 培訓系統管理員進行用戶管理。
  • 3.1.1. 培訓的注意點

  • 尤其不能忽略的是對系統管理員進行培訓。要培訓系統管理員如何啟動和運行新系統、如何配置系統、如何授權或拒絕對系統的訪問、如何支持用戶、如何處理異常等。
  • 在培訓中,只介紹能夠幫助用戶完成主要工作和任務的功能,不要把培訓當作軟件產品所有功能的展示會。對于一些很少會被使用并且不太重要的功能,即使培訓也會很快被用戶忘記,可以讓用戶使用文檔支持來學會使用。
  • 培訓時,要關注用戶的工作和任務,不必涉及系統的內部操作,不必知道系統的存儲方式、訪問方式和權限控制方式。
  • 3.2. 文檔支持

  • 文檔是軟件交付的重要部分
  • 培訓時作為參考材料
  • 交付完成之后繼續幫助用戶使用系統
  • 用戶文檔
  • 系統管理員文檔
  • 簡單的系統只有用戶文檔,絕大多數系統都有用戶文檔和系統管理員文檔
  • 3.2.1. 用戶文檔

  • 用戶文檔是指為用戶編寫參考指南或者操作教程,常見的如用戶使用手冊、聯機幫助文檔等,統稱為用戶文檔。
  • 3.2.2. 用戶文檔的形式

  • 用戶文檔可以是紙質的,也可以是電子的,可以只有一份文檔,也可以是由多份文檔組成的集合,具體情況要視用戶的特點而定。
  • 用戶文檔的寫作要考慮用戶群體的特點,最好是圖文結合的方式,以方便普通用戶的使用。用戶文檔寫作應該使用逐層展開和系統化(例如層次編碼、列表)的方式描述復雜內容。
  • 3.2.3. 用戶文檔的內容組織

  • 文檔內容的組織應當支持其使用模式,常見的是指導模式和參考模式兩種。
  • 指導模式根據用戶的任務組織程序規程,相關的軟件任務組織在相同的章節或主題。指導模式要先描述簡單的、共性的任務,然后再以其為基礎組織更加復雜的任務描述。
  • 參考模式按照方便隨機訪問獨立信息單元的方式組織內容。例如,按字母順序排列軟件的命令或錯誤消息列表。
  • 如果文檔需要同時包含兩種模式,就需要將其清楚地區分成不同的章節或主題,或者在同一個章節或主題內區分為不同的格式。
  • 3.2.4. 用戶文檔的要素

    表格描述參加課本339頁

  • 標識信息
  • 包括文檔標題、文檔產生的版本和日期、相關的軟件 產品和版本
  • 標識信息應該放在包裝袋或者封面,用戶可以不用翻閱文檔就能看到
  • 引言
  • 正文的第一部分,描述文檔的預期讀者、描述范圍,以及對文檔目的、功能和操作環境的概要描述
  • 文檔使用信息
  • 文檔使用信息描述了關于文檔的使用信息,例如,解釋各種圖示的含義、介紹如何使用幫助等。
  • 操作模式
  • 操作模式是使用用戶文檔的模式,例如對操作流程的圖示或者文字性描述,再例如解釋操作的理論、原因、算法或者通用概念。
  • 操作規程
  • 指導模式文檔應該包括很多軟件功能都會涉及的常見活動規程:
  • 需要由用戶執行的軟件安裝與卸載
  • 圖形用戶界面特性的使用指導
  • 訪問、登錄或者關閉軟件
  • 通過軟件的導航,訪問和退出相關功能
  • 數據操作(輸入、保存、讀取、打印、更新和刪除)
  • 取消、中斷和重啟操作的方法
  • 對于完成用戶任務的操作流程,指導模式文檔應該從基本信息、指導步驟和結束信息三個方面來描述
  • 基本信息:
  • 簡要概述操作規程的目的,定義或解釋必要的概念
  • 標明執行任務前需要完成的技術活動
  • 列舉用戶完成任務所需要的資源情況,例如數據、文檔、密碼等
  • 對于完成用戶任務的操作流程,指導模式文檔應該從基本信息、指導步驟和結束信息三個方面來描述
  • 指導步驟:使用祈使語句描述用戶行為,并指出預期的結果。指導步驟要說明:
  • 用戶輸入數據的域值范圍、最大長度和格式
  • 相應的錯誤消息和恢復辦法
  • 其它可選的步驟和重復步驟
  • 對于完成用戶任務的操作流程,指導模式文檔應該從基本信息、指導步驟和結束信息三個方面來描述
  • 結束信息:標明操作規程的最后步驟,讓用戶知道怎樣判斷整個操作規程的成功完成,告訴用戶如何退出操作規程
  • 軟件命令信息
  • 解釋用戶輸入命令的格式和操作規程,包括必要參數、可選參數、缺省值等,要示例說明命令的使用,說明怎樣判斷命令是成功完成還是異常中止
  • 錯誤信息與問題解決
  • 文檔要詳細描述軟件使用中的已知問題,讓用戶清楚如何自行解決問題或者怎樣向技術支持人員報告準確的信息
  • 導航特征
  • 包括章節、主題、頁碼、鏈接、圖標等
  • 提高導航特征和效率
  • 3.2.5. 系統管理員文檔

  • 與用戶文檔注重系統使用細節不同,系統管理員文檔更注重系統維護方面的內容,例如系統性能調整、訪問權限控制、常見故障解決等等。因此,系統管理員文檔需要詳細介紹軟硬件的配置方式、網絡連接方式、安全驗證與訪問授權方法、備份與容災方法、部件替換方法等等。
  • 4. 項目評價

  • 開發者自我反省
  • 4.1. 為什么要進行項目評價

  • 設置"項目"是要保證項目中的各種事件與活動能夠依照計劃順利進行,項目評價就是檢查其事件與活動的實際執行情況。在理論上,項目評價可以發生在項目進行的任何時機,尤其是到達各個里程碑之后。但最重要的項目評價是在項目結束時進行的項目評價,這也是本章節所要描的項目評價。
  • 雖然從單個項目看,項目已經結束,評價似乎用處不大。但是考慮到一個組織會有很多項目持續進行,那么評價一個已結束項目就可以"以史為鑒",幫助更好地完成后續項目。而且因為項目已經完成,總結和評價就遠比項目進行中更加準確。
  • 項目評價工作也需要仔細組織,不是簡單的開個總結會完事,否則就無法獲得比較深入的信息。
  • 4.2. 項目評價的內容

  • 一個已結束的項目具有各種事件和活動的信息,通過組織對項目的不同方面內容進行評價,就可以獲得各種不同方面的經驗,就可以搞清楚出現了哪些問題、為什么會出現、怎樣解決、有哪些偏差、最終結果與質量、以及(最重要的是)在下個項目中有哪些需要提高。
  • 常見的項目評價針對四個方面:
  • 項目管理:可以幫助建立對項目的更準確認知,例如常見的管理問題與偏差、時間與成本耗費分布等。
  • 產品:可以幫助開發者建立對產品的更準確認知,提高產品的開發經驗。
  • 團隊:可以幫助開發者更好地組織分工,也可以幫助團隊建立更好的溝通與交流途徑。
  • 個人:可以幫助開發者更準確認知自己的生產力,學習常見問題及其處理方法,了解自己的長處和不足并持續提高。
  • 4.3. 項目評價方法

  • 評審
  • 度量數據分析
  • 4.3.1. 項目評審

  • 項目評審通過評審重要項目制品的方法來評價項目,這些重要制品包括項目計劃、管理文檔、會議記錄、歷史數據等。
  • 成功的評審需要評審方法,而不是自由處理。檢查列表是最為常用的評審方法。
  • checkList如下
  • 4.3.2. 有關項目管理的問題:

  • 項目所使用的過程是什么?瀑布/迭代開發
  • 實際的過程與原先確定的過程有什么不同?
  • 進度表是如何隨著時間的變化而改變的?
  • 有多少個同步點和里程碑按時達到或錯失?
  • 過程的哪些部分運行得好?
  • 過程的哪些部分本應該能運行得更好?
  • 工具支持這個過程嗎?
  • 從整體上講,這個過程運行得有效嗎?
  • 在今后,尤其要對哪些方面進行改進?
  • 在每個階段和每項任務上花費的時間是多少?
  • 4.3.3. 有關產品的問題:

  • 在項目的生命周期中,產品是如何變化的?
  • 有沒有出現重要的產品返工的情況?如果有,是在什么時候?
  • 工具支持產品的制造、維護和測量嗎?
  • 產品最后的規模有多大?產品的質量如何?
  • 4.3.4. 有關團隊和個人的問題:

  • 團隊(個人)工作中哪些個風險發生了,其影響又是怎樣的?
  • 在何時做出了哪項重要決定?
  • 所遇到的主要問題是什么?
  • 這個決定又是如何影響這個項目的?
  • 對這些問題的解決方法產生了什么樣的效果?
  • 開發團隊成員是如何看待自己的職責的?
  • 4.4. 度量數據分析

  • 度量數據可以提供豐富的信息,通過分析這些信息,開發團隊可以獲取正確和深入的結論。
  • 例如,通過分析項目活動的任務量,就可以了解每個人的生產力、項目的工作量分布、特殊任務的工作量耗費等。
  • 4.4.1. 產品信息定量的度量

  • 一個項目常見的產品信息度量應該包括:
  • (隨著時間而變化的)產品的增長情況和變化歷史。
  • 產品在每個里程碑上的測量。
  • 產品復雜度和內容的測量。
  • 過程和工具對產品的影響。
  • 4.4.2. 定性文件

  • 在進行度量數據分析時可能會遇到數據貧乏——這意味著沒有足夠的定量數據來支持項目評價,這時可以用問卷調查表和面談來補充數據信息。也可以通過檢查定性文件來建立數據信息,這些定性文件可能包括:
  • 對團隊會議和子團隊會議所做的記錄。
  • 項目電子郵件的存檔(來獲得問題確定和決策的日期)。
  • 任務列表、項目決策和行動條目中的信息。
  • 4.5. 評價的注意事項

    4.5.1. 項目的評價需要仔細的計劃

  • 作為項目管理活動的一部分,項目評價也需要進行計劃,計劃的內容包括:
  • 執行項目評價的時間,要在項目結束后,并且不能時間太久導致項目活動細節遺忘
  • 確定項目評價的關鍵主題
  • 確定參與項目評價的人員
  • 確定需要收集的數據,并將數據收集任務分配給相關人員。
  • 4.5.2. 評價要客觀

  • 對項目的評價要客觀,要保持對項目和過程的關注,不要偏離目標指責和突出個人。如果不能做到客觀,列舉沒有進行分析的測量數據或信息,而僅僅為了表明整個項目是一個巨大成功的話,那就無法得到有益的經驗,就是浪費時間。評價不是向高級管理層夸夸其談的文檔,而是團隊每個成員和組織通過一個又一個項目來不斷獲得提高的途徑。
  • 5. 總結

  • 不要忽視軟件交付階段的任務
  • 通過安裝與部署將軟件產品移交給用戶
  • 通過培訓與文檔支持保障用戶能夠有效掌握和使用軟件
  • 一個項目的成功或失敗都值得總結,以改進將來的項目,即要在項目結束后及時進行項目評價
  • 總結

    以上是生活随笔為你收集整理的软件工程与计算II-20-软件交付的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。