對于商業(yè)智能系統(tǒng),有超過90%的用戶并沒有真正從頭開始自行構(gòu)建報表系統(tǒng),致使最終的報表不一定滿足決策者的需要。所以,企業(yè)中的數(shù)據(jù)倉庫(DW)或商業(yè)智能(BI)隊(duì)伍就不得不提供一種更簡單的數(shù)據(jù)訪問方法。本文就介紹一套基本的商業(yè)智能標(biāo)準(zhǔn)報表的規(guī)劃設(shè)計方法。
商業(yè)智能或者商業(yè)智能應(yīng)用并沒有得到公認(rèn)的定義,所以本文給出了自己的定義:商業(yè)智能應(yīng)用就是提供商業(yè)智能的機(jī)制——報表和分析應(yīng)用為企業(yè)提供了有用的信息。商業(yè)智能應(yīng)用包括:一系列廣泛的報表和分析應(yīng)用,從固定格式的簡單報表,到復(fù)雜的分析應(yīng)用程序(使用復(fù)雜的嵌入算法和領(lǐng)域?qū)iT知識),不一而足。有必要根據(jù)復(fù)雜程度來劃分這一系列報表和分析應(yīng)用。我們把標(biāo)準(zhǔn)報表稱為簡單類型,把分析應(yīng)用稱為復(fù)雜類型。
在沒有數(shù)據(jù)倉庫的幫助下也有可能創(chuàng)建商業(yè)智能應(yīng)用,但這種情況很少出現(xiàn)。精心設(shè)計的數(shù)據(jù)倉庫通過商業(yè)維度模型(dimensional model)以及抽取、轉(zhuǎn)換和加載(ETL)流程來添加價值,所以重復(fù)這項(xiàng)工作來構(gòu)建獨(dú)立的商業(yè)智能應(yīng)用是毫無意義的。最成功的商業(yè)智能應(yīng)用往往是數(shù)據(jù)倉庫實(shí)現(xiàn)面向用戶應(yīng)用必不可少的一部分。
標(biāo)準(zhǔn)報表通常擁有固定格式,是參數(shù)驅(qū)動的,而最簡單的報表是預(yù)運(yùn)行的。標(biāo)準(zhǔn)報表提供了有關(guān)某個商業(yè)領(lǐng)域方面的一組基本信息。聽上去很枯燥,但這些報表是商業(yè)智能應(yīng)用的基礎(chǔ)。不同行業(yè)的例子包括:本年迄今的銷售額與銷售代表的預(yù)測數(shù)字、按照服務(wù)計劃的每月流失率以及按產(chǎn)品促銷的直接郵寄回復(fù)率等。
標(biāo)準(zhǔn)報表系統(tǒng)包括幾個技術(shù)部分:它必須為報表設(shè)計人員(IT部門的人員或者技能嫻熟的商業(yè)用戶)提供工具,用來定義報表;需要有管理服務(wù)用于報表存儲、執(zhí)行和安全;最后,報表系統(tǒng)應(yīng)當(dāng)有一個導(dǎo)航門戶,幫助用戶找到他們所需的報表。
分析應(yīng)用比標(biāo)準(zhǔn)報表來得復(fù)雜。它們以特定的業(yè)務(wù)流程為中心,對有關(guān)如何分析及解決該流程的領(lǐng)域?qū)iT知識進(jìn)行封裝。它們可能包括復(fù)雜的算法或者數(shù)據(jù)挖掘模型。有些分析應(yīng)用為用戶提供了這項(xiàng)高級功能:根據(jù)使用分析應(yīng)用獲得的寶貴信息,把變更內(nèi)容返回到事務(wù)處理系統(tǒng)。
其他分析應(yīng)用作為黑盒系統(tǒng)或者托管系統(tǒng)來銷售。分析應(yīng)用的常見例子包括:預(yù)算編制和預(yù)測系統(tǒng)、促銷效果和商品類別管理應(yīng)用、欺詐檢測及Web路徑分析等。
構(gòu)建還是購買
大多數(shù)組織自行構(gòu)建標(biāo)準(zhǔn)報表集,使用買來的報表工具來設(shè)計報表,并且在企業(yè)內(nèi)聯(lián)網(wǎng)上發(fā)布——通常是在相應(yīng)的報表門戶上面。市面上有許多流行的工具,可以簡化定義及發(fā)布報表,并且定制捆綁的門戶。
對分析應(yīng)用而言,決定采用自己構(gòu)建還是購買全比較復(fù)雜。無論數(shù)量還是質(zhì)量,套裝應(yīng)用市場都在增長,組織購買套裝應(yīng)用也越來越常見。不過,實(shí)施的每個套裝分析應(yīng)用所需要的定制量幾乎都超過預(yù)先構(gòu)建的事務(wù)處理系統(tǒng)。要對套裝應(yīng)用的靈活性和定制簡易性進(jìn)行評估。它是否基于設(shè)計良好的維度模型?如果是這樣,把你的數(shù)據(jù)模型映射到應(yīng)用的數(shù)據(jù)模型應(yīng)當(dāng)很容易。如果數(shù)據(jù)模型與應(yīng)用本身緊密相關(guān),實(shí)現(xiàn)起來可能需要大量工作,即使該應(yīng)用來自你的維度數(shù)據(jù)倉庫。
有些組織仍構(gòu)建定制的分析應(yīng)用,結(jié)合使用標(biāo)準(zhǔn)工具和定制代碼,以捕獲及運(yùn)用符合最佳實(shí)踐的業(yè)務(wù)規(guī)則。如果組織在分析業(yè)務(wù)流程方面具有特殊專長,或者擁有不同尋常的系統(tǒng)和業(yè)務(wù)模型,它們更有可能自行構(gòu)建應(yīng)用。
設(shè)計報表系統(tǒng)
只有快要部署數(shù)據(jù)倉庫或商業(yè)智能項(xiàng)目了,才可以具體構(gòu)建報表,不過可以并且應(yīng)當(dāng)及早開始啟動設(shè)計過程。一旦完成了向業(yè)務(wù)部門詢問他們的信息和分析需求這一步,就可以創(chuàng)建報表規(guī)格了——等的時間越長,就越難記住細(xì)節(jié)。這個步驟包括以下任務(wù):
創(chuàng)建目標(biāo)報表列表。盡快為業(yè)務(wù)部門提供價值,這點(diǎn)很重要,不要等上百個報表開發(fā)、測試完畢再讓用戶使用系統(tǒng)。確認(rèn)第一輪要創(chuàng)建的10到15個報表。
創(chuàng)建目標(biāo)報表列表的最佳辦法就是,從備選報表的完整列表開始著手,辦法就是對業(yè)務(wù)需求進(jìn)行審查,了解任何人表達(dá)的每一個信息請求、愿望或者設(shè)想。為每個報表賦予名稱和描述,根據(jù)從1到10分的范圍,對報表的商業(yè)價值及構(gòu)建所需的工作量進(jìn)行評分。
一旦擁有了備選報表的完整列表,就要確定各自的優(yōu)先級,把相關(guān)報表分成一組,然后與一組有能力、感興趣的業(yè)務(wù)部門用戶共同審查報表優(yōu)先級。定好首次交付的報表為10到15個。提醒用戶:許多優(yōu)先級比較低的報表可以交給對它們最感興趣的部門專家。
創(chuàng)建標(biāo)準(zhǔn)模板。不妨把報表系統(tǒng)看成刊物、把報表設(shè)計人員看成編輯。為了有效溝通,就需要有一致的格式和內(nèi)容標(biāo)準(zhǔn)。創(chuàng)建一個模塊,確認(rèn)將在每個報表上出現(xiàn)的標(biāo)準(zhǔn)元素(參見以下的模型)。基本元素包括:
● 報表名稱和標(biāo)題
● 報表主體
● 數(shù)據(jù)調(diào)整、數(shù)據(jù)精確度和數(shù)據(jù)格式
● 列和行標(biāo)題格式
● 背景填充和顏色
● 總計和小計的格式編排
● 頁眉和頁腳
● 報表名稱和導(dǎo)航類別
● 報表運(yùn)行日期和時間
● 所用的數(shù)據(jù)源和參數(shù)
● 報表附注,包括重要的例外情況,譬如“不包括公司內(nèi)部銷售額。”
● 頁面編號
● 保密聲明
● 數(shù)據(jù)倉庫/商業(yè)智能引用(數(shù)據(jù)倉庫/商業(yè)智能系統(tǒng)的名稱和標(biāo)記)
● 報表文件名稱
不是所有的報表信息都在報表本身上面顯示。可以使用規(guī)格文檔或者儲存庫來收集以下的報表元數(shù)據(jù):
● 用戶變量及其他用戶交互關(guān)系,譬如深入分析(drill downs)
● 報表計算、導(dǎo)出、作者及創(chuàng)建日期
● 安全需求
● 執(zhí)行周期或者觸發(fā)事件,如果報表自動運(yùn)行的話
● 分發(fā)機(jī)制,譬如電子郵件、網(wǎng)站、文檔目錄或者打印機(jī)
● 標(biāo)準(zhǔn)輸出格式,譬如HTML、PDF或者Excel
● 頁面定向、尺寸和邊距等設(shè)置
創(chuàng)建報表規(guī)格和文檔說明。對于目錄報表列表上的每個報表,都要創(chuàng)建包括以下部分的規(guī)格:
● 如上所述的報表模板信息
● 報表模型
● 用戶交互列表
● 詳細(xì)的文檔說明
報表模型是傳達(dá)報表內(nèi)容和用途的一個好辦法。使用符號來表明這些函數(shù),譬如:
< > = User entered variable
< < > > = Drillable field
{} = Application entered variable
\\ \\ = Link to another report or documentation source
( ) = Page or section break field
[ ] = Report template comments
函數(shù)符號告訴設(shè)計人員哪種交互關(guān)系是可能的,但它們沒有明確規(guī)定該交互關(guān)系是如何進(jìn)行的。所以需要創(chuàng)建用戶交互列表來確認(rèn)用戶與每個報表之間的交互關(guān)系的性質(zhì)和程度,其中包括變量規(guī)格、選擇列表描述、深入分析以及字段添加或者替換。
把與報表顯示沒有直接關(guān)系的所需信息記入文檔,譬如報表類別、數(shù)據(jù)源、每個行和列的計算以及添加到查詢里面的任何異?;蚺懦馇闆r??梢园言撐臋n添加到用戶交互列表后面。
模型、用戶交互列表和附加文檔說明必須提供足夠信息,以便開發(fā)人員可以構(gòu)建報表。
設(shè)計導(dǎo)航框架。一旦知道了要構(gòu)建哪些報表,就要對它們進(jìn)行分類。這種結(jié)構(gòu)應(yīng)當(dāng)讓知道企業(yè)情況的任何人都能夠迅速找到所需信息。最好的辦法就是,按照業(yè)務(wù)流程來組織管理報表——就像數(shù)據(jù)倉庫總線矩陣那樣。這種導(dǎo)航框架是進(jìn)入商業(yè)智能系統(tǒng)的主要入口點(diǎn)。我們稱之為商業(yè)智能門戶。
進(jìn)行用戶審查。與用戶群體一起審查報表規(guī)格,以便:
● 驗(yàn)證所選擇的高優(yōu)先級報表,并且檢驗(yàn)規(guī)格的清晰程度;
● 驗(yàn)證商業(yè)智能門戶里面的導(dǎo)航層次;
● 讓用戶參與進(jìn)來,突出他們的作用,讓他們做出承諾;
● 讓用戶了解幾個月后有可能出現(xiàn)什么。
一旦規(guī)格審查完畢,就可以把它們擱到一邊、暫不考慮,直到需要開發(fā)報表時再拿出來。如果要評估前端工具,這些規(guī)格很有用,因?yàn)閭溥x報表應(yīng)當(dāng)能夠易于處理初始報表集里面的那部分報表。
★ 小經(jīng)驗(yàn)
設(shè)計標(biāo)準(zhǔn)報表快速入門
標(biāo)準(zhǔn)報表是為絕大部分用戶提供商業(yè)智能的主要機(jī)制。收集用戶需求后不久,就要采取以下方法來為數(shù)據(jù)倉庫中的每個業(yè)務(wù)流程維度模型設(shè)計一套基本的標(biāo)準(zhǔn)報表:
● 創(chuàng)建高優(yōu)先級報表的目錄列表;
● 設(shè)計確認(rèn)報表布局和內(nèi)容的模板;
● 為每個目標(biāo)報表創(chuàng)建規(guī)格和文檔說明;
● 設(shè)計導(dǎo)航框架,組織管理報表,便于用戶找到所需的信息;
● 與重要的商業(yè)用戶一起審查報表規(guī)格和導(dǎo)航框架。
報表設(shè)計應(yīng)趕早
對90%的商業(yè)用戶來說,商業(yè)智能應(yīng)用——無論是標(biāo)準(zhǔn)報表,還是先進(jìn)的分析應(yīng)用——通常都是使用數(shù)據(jù)倉庫或商業(yè)智能系統(tǒng)的惟一方法。標(biāo)準(zhǔn)報表是這種系統(tǒng)的基礎(chǔ),所以用戶應(yīng)該做好設(shè)計報表、創(chuàng)建導(dǎo)航框架方面的工作。這項(xiàng)工作要在項(xiàng)目的早期階段進(jìn)行,這時候商業(yè)用戶的需求在你腦中記憶猶新。