- 軟件需求分析實戰
- 楊長春編著
- 1365字
- 2022-07-27 19:16:55
2.6.4 分析報表邏輯
僅分析報表的數據來源是遠遠不夠的,還有大量的運算邏輯需要分析清楚。有些報表沒有什么運算邏輯,只是對一些數據的匯總顯示罷了,有些報表邏輯卻是相當復雜的,如果這個報表的專業性非常強,而你又對這個領域一竅不通,那么光弄明白這些邏輯就很麻煩。要理解報表邏輯,可以考慮以下這些方法。
1.使用常識判斷
有的報表比較簡單,通過一些基本常識就可以判斷它的運算邏輯。例如,報表中有字段“數量”“單價”“金額”,根據常識自然可以想到“金額=數量×單價”這個公式。隨著經驗越來越豐富,所掌握的知識越來越多,理解客戶報表也會變得越來越容易。不過,無論自認為自己的知識多么豐富,對這個領域多么精通,都需要跟客戶人員確認自己的判斷是否正確,有很多貌似是常識的東西,實際上遠不是想象的那樣。
2.研習客戶文檔
有些特別復雜的報表,客戶可能也會有特定的文檔闡述,如技術文檔、管理文檔、操作手冊等,此類文檔需要認真收集,仔細學習。
案例:研習關于如何制作報表的管理要求
某生產企業要求每個車間每個季度給公司管理層報送一份生產季報,公司有一份管理文檔詳細闡述如何填寫這個報表,在細則中詳細寫明了每個字段的數據來源是什么,計算公式是什么。小王通過研習這個文檔,非常高效地理解了這個報表的運算邏輯。
當然,研習客戶的文檔也需要小心,大部分企業的這種管理要求都沒有得到嚴格執行,有名無實的例子比比皆是,這種管理文檔中載明的算法,可以將它當成入門工具,具體是不是真正如此執行的,還需要更多的調研。
3.聽客戶講解
報表邏輯復雜了,就需要客戶人員給你講解,具體可以參見訪談法。雖然客戶人員有義務講解清楚所有的運算邏輯,但要注意,一者客戶人員的講解水平未必那么高,二者你的理解能力也未必那么強,所以還是建議在要求客戶人員講解前最好先使用自己的常識做一下分析,認真研習可以找到的相關管理文檔,如果需要相關的專業知識,還需要先準備一些業務知識。這個過程其實就跟上學時聽老師講課類似,如果能夠提前預習,就可以提高學習效率。先預習,抓住重點,再根據自己難以理解的地方準備好問題,然后再去聽講解,這樣可以大大提高效率。在這里要特別提醒,聽講解這個過程相當重要,客戶人員可以理解你不是這個領域的行家,不了解這些邏輯當然是應該的,但是,如果他講解后或者多次講解后,你還是遲遲理解不了或理解錯誤,他就會對你的能力產生懷疑,導致你在他心目中的地位逐漸下降,這會導致后面的工作越來越難做,因為你喪失了某種權威性。
4.研習電子表格公式
一般情況下,客戶會有兩種介質的報表,一種是紙質報表,另一種是用電子表格做出來的電子報表。在收集報表時,如果拿到的紙質報表是從電子表格中打印出來的,那么要讓客戶提供原始電子表格,原因很簡單,很有可能在其中嵌入了諸多公式,直接看公式了解報表的生成方式比讓某個人給你解釋要方便得多,也準確得多。要分析好Excel之類的電子表格中的運算邏輯,首先得熟練掌握這個工具,因此,精通Excel之類的辦公工具是一個需求分析者的必備素質。有些電子表格中的公式是相當復雜的,有些Excel高手設計出來的工作簿會讓你看得云山霧罩,一個公式可能有幾千字符,這里引用那里嵌套的,要分析清楚并不容易,這時候還需要相關人員對著這個工作簿詳細講解設計思路與運算過程。
不管怎么樣,有了電子表格,確實可以大大降低需求調研的難度。
- MATLAB與C/C++混合編程
- SpringBoot揭秘:快速構建微服務體系
- 敏捷開發的藝術(原書第2版)
- iOS App界面設計創意與實踐
- 嵌入式系統開發之道:菜鳥成長日志與項目經理的私房菜
- Docker源碼分析
- 中文版Revit 2018基礎培訓教程(全彩版)
- Arduino項目開發:智能家居
- 項目實踐精解:基于EJB 3.0和Web Services的Java應用開發
- 構建跨平臺APP:jQuery Mobile移動應用實戰(第2版) (跨平臺移動開發叢書)
- Kubernetes Operator開發進階
- 深入淺出Spring Boot 3.x
- 鋒利的jQuery(第2版)
- HTML5游戲編程核心技術與實戰
- 數據分析之道: 用數據思維指導業務實戰