需求管理利器:如何制作一張可視化的用戶需求地圖?

6 評論 23708 瀏覽 140 收藏 11 分鐘

本文將介紹一種需求規劃、管理的可視化方法—用戶需求地圖,該方法將軟件開發項目的需求變成一張二維地圖,而不是傳統的簡單列表,只要這一張圖,就可以完成全部用戶需求的管理工作。

該方法有如下一些優點:

  • 讓你更容易看清軟件產品的全貌,了解產品功能的完整性
  • 為用戶需求篩選和劃定優先級提供可視化的工具,幫助你做出決策
  • 更好的進行迭代增量式開發,同時確保有計劃、可控的發布產品
  • 為傳統的項目計劃提供了一個更好的替代工具
  • 有助于管理項目范圍,避免范圍的無限制蔓延

先上一個用戶需求地圖的樣例,后續介紹如何創建這樣的地圖

一、需求的獲取

常用的需求獲取方法包括以下幾種:

1、用戶訪談

用戶訪談是一種最基本的需求獲取手段,它是指分析人員以個別訪談或小組會議的形式與用戶進行初步的溝通。用戶訪談的形式包括結構化和非結構化兩種,結構化是指分析人員按照一定準則事先準備好一系列問題,通過用戶對問題的回答來獲取有關目標軟件方面的內容;非結構化則是只列出一個粗糙的想法,根據訪談的具體情況來進行發揮。

2、用戶調查

在進行用戶訪談時,由于很多關鍵人員的時間有限,不易安排過多的時間或者項目涉及的客戶面較廣,不可能一一訪談。因此,就需要借助用戶調查的方法,通過精心設計要問的問題,然后下發到相關的人員手中,讓他們填寫,再從所填寫的內容中獲取系統的需求信息,這樣就可以克服上述的問題。

用戶調查最大的不足就是缺乏靈活性,而且可能存在受調查人員不能很好表述自己想法的限制。

3、現場觀摩

俗話說,百聞不如一見,對于許多較為復雜的流程和系統而言,是很難用自然語言表達清楚的。因此,為了能夠對系統的需求獲得全面的了解,實際觀察用戶的操作過程就是一種行之有效的方法。現場觀摩就是走到客戶的工作場所,一邊觀察,一邊聽客戶講解,甚至可以安排人員跟隨客戶一起工作一段時間。這樣就可以使得分析人員對客戶的需求有更加直觀的理解。但是,在現場觀摩過程中必須切記:建造軟件系統不僅僅只是為了模擬客戶的手工操作過程,還必須將最好的經濟效益、最快的處理速度、最合理的操作流程和最友好的用戶界面等作為軟件設計的目標。

4、競品分析

可以將競品分為兩大類:用與我們相同或相似的功能滿足用戶同樣需求的產品、用與我們不同的功能滿足用戶同樣的需求的產品。所謂競品分析,就是尋找出有代表性的競爭產品,從多個維度對比該產品與我們的產品之間的相同之處與不同之處,從中分析出兩者的優劣之處,得出結論,為產品的設計與迭代提供突破口或帶來啟發(這是指單次的競品分析)。

二、需求分析

需求分析方法有:

  • 結構化分析方法:包括面向數據流的結構化分析方法,面向數據流結構的Jackson方法和面向數據結構的結構化數據系統開發方法。
  • 面向對象的分析方法:從需求分析建立的模型的特性來分,需求分析方法又分為靜態分析方法和動態分析方法。

結構化分析方法

結構化分析方法的實質是著眼于數據流,自頂向下,逐層分解,建立系統的處理流程,以數據流圖和數據字典為主要工具,建立系統的邏輯模型。
結構化分析的步驟如下:

  1. 通過對用戶的調查,以軟件的需求為線索,獲得當前系統的具體模型
  2. 去掉具體模型中非本質因素,抽象出當前系統的邏輯模型
  3. 根據計算機的特點分析當前系統與目標系統的差別,建立目標系統的邏輯模型
  4. 完善目標系統并補充細節,寫出目標系統的軟件需求規格說明
  5. 評審直到確認完全符合用戶對軟件的需求面向對象的需求分析方法

面向對象的需求分析方法

面向對象的需求分析方法的核心是利用面向對象的概念和方法為軟件需求建造模型。它包含面向對象風格的圖形語言機制和用于指導需求分析的面向對象方法學。目前已經衍生許多種OOA方法。

每種方法都有各自的進行產品或系統分析的過程,有一組可描述過程演進的圖形標識,以及能使得軟件工程師以一致的方式建立模型的符號體系。現在廣泛使用的OOA方法有統一的建模語言(UML)已經在企業中廣泛使用,它把Booch、Rumbaugh和Jacobson等各自獨立的OOA和OOD方法中最優秀的特色組合成一個統一的方法。UML允許軟件工程師使用由一組語法的語義的實用的規則支配的符號來表示分析模型。

在UML中用5種不同的視圖來表示一個系統,這些視圖從不同的側面描述系統。每一個視圖由一組圖形來定義。

三、創建需求地圖

1、需求地圖的組成

需求地圖主要由三部分組成,由上自下分別是模塊區、待排期需求區和已排期需求區,已排期需求區由多個發布計劃組成,如下圖所示:

2、模塊的分解

模塊就是將待開發的產品的功能進行分解,按功能從屬關系表示的樹狀層級視圖。待開發產品的各子系統、子模塊可以看作是產品目標下層的功能,對其中每項功能模塊還可以繼續分解為第三層、第四層……甚至更多層級的功能模塊,理論上根據待開發產品的規模,可以無限極的分解產品的功能模塊。

通過需求分析得到的模塊形成了待開發產品的“骨骼”,把這些模塊錄入翼發云軟件研發管理系統后,能夠自動在用戶需求地圖中自動生成層級的、包含關系的模塊關系圖,顯示在需求地圖第一部分“模塊區”中。

郵件管理系統通過需求分析得到第一層級的四個模塊:郵件組織、郵件管理、日歷管理、聯系人管理。依次再將這些模塊分解為更小、粒度更細的第二層級的模塊,郵件組織分解為郵件搜索、郵件整理兩個子模塊;郵件管理分解為發送郵件、讀取郵件、刪除郵件三個子模塊;聯系人管理分解為創建聯系人、編輯聯系人、刪除聯系人等。(注:橙色的模塊是最下層的模塊)

對應的樹形視圖如下所示:

3、用戶需求的生成

根據用戶需求調研和分析,把用戶需求的基本信息如名稱、需求描述、驗收標準、預估工作量、優先級等錄入系統。

三、用戶需求的排期

當用戶需求錄入系統后,會出現在需求地圖的待排期區域里,待排期區域里的需求就是還沒有安排開發時間的需求,這時可以通過拖拽的方式,把需求拖到發布計劃里,從而完成需求的排期工作,排期區域里的需求就是已經安排了開發的需求。是不是很簡單。

通過多次拖拉用戶需求后,最終完成了用戶需求地圖:

 

作者: 趙裁,翼發云高級產品經理,12年互聯網產品設計經驗,曾主導翼發云多款重量級產品的產品策劃、開發和運營工作。

本文由 @趙裁 原創發布于人人都是產品經理。未經許可,禁止轉載。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 原來是軟文

    來自廣東 回復
  2. 等畫完客戶都跑了

    回復
  3. 原來是軟文

    來自江蘇 回復
  4. 統一回復:文中用的是免費的翼發云軟件研發管理系統,詳見 http://www.effapp.com

    來自云南 回復
  5. 還不錯??

    回復
    1. UI再優化下就更好了

      回復