Systems Analysis and Solution Architecture
如果你不想讀700頁的教科書,才知道什麼是MIS,本系列講義可以讓你立刻認識「MIS 管理資訊系統」的目標、開發方法、實務應用,提供「TX 1-2-3-4簡則」作為「系統分析與設計(SA&D)」最簡明的指導,特別適合中小型系統之開發與分析。
並隨時更新最新發展,如UML, NoSQL資料庫, 決策支援,
人工智慧‧大數據‧決策參數庫,
知識管理, 與網路大數據數位分析...等。 |
先讀:什麼是MIS(管理資訊系統)?
SA(Systems Analyst) 原為 MIS 的「系統分析與設計」,而新世紀以來,擴充為 Solution Architecture,更強調資訊系統與商業模式的整合,以提供最適與最完整的服務,也出現了如下更多的概念。
SA 已經由「系統分析與設計」上升到「商業模式分析與設計」的境界,但當前中文教科書大多數仍然只及於舊觀念。如何在本系列講義中吸收新知識,是請各位同學,特別要注意的地方。
什麼是CIM(電腦整合製造)?
CIM (Computer-Integrated Manufacturing) 即電腦整合製造系統,是資訊系統 IS 的一個分支,其系統分析與設計與 MIS 大同小異,唯服務對象為製造業,在於將工廠內部各個原本獨立的工具機、或生產系統加以整合,以發揮整體的效益。
MIS 與 CIM 最大的不同,是 CIM 通常無業外使用者,可以是封閉系統。而會收集工具機的運作資料,而把不同的工具機,視為不同的虛擬使用者群組。
製造資訊系統存在已久,為何再出現CIM?也就是製造資訊系統與管理部門的 MIS 的商業模式整合,譬如新近的趨勢,已經把客戶滿意度,也加入為 CIM 欲達成的功能,形成了新的 SA 整體解決方案架構觀念。
什麼是ITSM(資訊科技服務管理)?
ITSM(IT Service Management)為資訊科技服務管理,或稱IT服務管理,也是傳統電算中心或組織內資訊服務系統與新商業模式的整合,其系統分析與設計與 MIS 大同小異,最通俗的觀點就是 MIS+ Help Desk,而將其雲端化、遠端服務化,亦即承包各個公司組織的 IT 部門。
很多ITSM系統的實現都是以IT 基礎設施庫(ITIL, Information Technology Infrastructure Library)為基礎,就是整合 MIS, DSS 和公文管理的系統。
SA 語意的變遷SA 系統分析與設計由於資訊科技的變遷快速,領域內的職掌與職稱也常有變化,但並無一致的定義。 以出版美國大學排行榜的 US News and World Report 而論,其同時製作的最佳科技工作 Best Technology Jobs 的第一名,仍按傳統定名為 Systems Analysis 系統分析,而其從業員職稱為 Systems Analyst 系統分析師,均簡稱為 SA。 但2000年後,有新名稱出現,以 Forbes 的「就業分類」為例,其職務變為 Solution Architecture 整體解決方案架構,而其從業員職稱為 Solution Architect 方案架構師,還是簡稱為 SA。且也被選為最高薪、最多彈性工作之一。 兩者在程序上、技術上的差異不大,但後者產生的原因是,更強調:創造商業模式、滿足客戶的需求、對領域知識的深入、資訊系統與商業模式的整合,以提供最適與最完整的服務。 |
四、MIS/ CIM/ ITSM...系統分析與設計
競爭者分析、需求分析、可行性分析、與系統實作分析的程序與技術
預料除了 MIS/ CIM/ ITSM 之外,未來可能還會出現許多不同概念,但只要是資訊系統分析與設計,其基本程序還是一致的。
統雄老師的系統分析/方案架構
SA 1-2-3-4簡則
大多數的教科書為了銷售目的而灌水,寫得太複雜了,也因此不很實用。
統雄老師將主要4分析程序的實施方法,歸納為「TX. SA 1-2-3-4簡則」,共10個步驟建議如下。
系統開發文件
每個步驟均應產出「資料收集」與「資料分析」的成果報告文件,所有分析的總合就是系統開發文件。
作好系統開發文件與UML標準化,系統的設計才能具備整合性,功能規畫可有漸進性、模組化、可擴充性、有因應技術變遷可相容性。 同時,有利團隊發展、並防人事流動。
(一)MIS/ CIM/ ITSM...競爭者分析:特色第一、知己知彼,百戰百勝!
如果不是世界上第一個系統,你一定建立自己存在價值的特色。而特色不是靠直覺式或出來,而要先要分析當前既有系統的現況。如果當前競爭者非常多,則至少要比較5家以上,具備個別代表性的系統作分析。
如果是自有系統要升格為新版,則舊版也應列為一個「競爭者」作為檢討。
注意:一般教科書經常忽略此一程序,因為教科書作者多為在學校體系中養成,缺乏實務經驗。而在業界,開發產品的第一步,就是要確定有沒有競爭者,競爭者的優劣勢為何?
競爭者分析的摘要與闡述
競爭者分析報告,通常會以摘要表呈現各系統的「結構↔功能」。
從系統開發者的角度,是先構想功能,再以結構實現。
但從使用者的角度,是先接觸系統的結構,再實現想要達成的功能。
結構與功能互為因果,故以↔表現。
再根據摘要表闡述以下重點:
系統必要結構與功能為何?
競爭者間同一結構與功能的優劣比較與適當抉擇為何?
競爭者的缺失、或可超越之結構與功能是什麼?
以MIS管理資訊系統個案研究之「世新資訊公司」為例,可能之競爭者分析報告為:
1、系統應分為:策略、採購、庫管、生產、業務、財會6個子系統結構;而功能包括資訊流、物流、金流等。
2、抉擇:當前競爭者多打固定配備之價格戰,本公司系統是否可開發「個人化自由配備」之「服務導向市場」?
3、創新:當前電子商務多採用貨到付現款,但當貨款超過2萬元時,是否可以考慮貨到付信用卡?但又應如何防偽卡?
競爭者分析實務範例:
兒童網路學習網站「金蟠桃」
範例是統雄老師在開發兒童網路學習網站「金蟠桃」時,所作的競爭者分析。通常,會就「設計理念」(即開發目標)、與「使用功能」兩方面作比較分析。
(二)MIS/ CIM/ ITSM... 需求分析:2個問題
需求分析一般即對使用者的調查,其結果即需求分析書,最早是以敘述形式表現,後來改進為條列式,再發展為表格式。而當前工業標準,是再以 UML 視覺模型圖的方式表現。
當前與過去的需求分析,均以調查系統使用者為主。唯現在已面臨整體解決方案架構時代的變革,從今天起到未來,必須增強整體解決方案架構式之需求分析。
使用者調查可以簡化為2個問題:誰?作什麼?
誰?/使用者分析
誰是系統使用者,通常會分為4類:
管理員
管理員有4大權限:
發佈:資訊與多媒體物件。
管理:新增、刪除、查詢、修改前後端資料。
授權:授權使用者與其類型、級別。
監察:可使用伺服器之各種 log, traceable 資料。
系統開發師
可開發前後端程式與介面,測試特定資料,但不可管理資料庫。
當前的趨勢是同時有2個系統網址,1個實用,1個專作測試。測試系統可自實用系統下載資料,但不可異動實用系統。
使用者
一般使用者可瀏覽資訊、查詢、通訊,或可加新增。
高級使用者可加刪除、修改資料。
外部使用者/虛擬使用者
又可分為有條件之會員:可瀏覽資訊、查詢、通訊,或可加新增、或可加刪除、修改資料。
無條件之訪客:可瀏覽資訊、通訊,查詢可公開展示之資料。
在電子商務盛行後,許多客戶實行線上交易,而「交易」其實就是「查詢加新增」的權限。
對 CIM 而言,較少會開放外部使用者,但經常會加入收集工具機、或生產線資料,是為虛擬使用者。
群組與級別
而各類下,又因授權使用的「區域」不同,而又可分作「全域」或不同「群組」,而同類人員又可有級別之分。
使用者分析範例
以MIS管理資訊系統個案研究之「世新資訊公司」為例,經由訪談,可作使用者分析表如下:
紅色:可以同時管理系統功能與資料。
綠色:可以管理系統功能,不能管理資料。
白色:可以管理資料,不能管理系統功能。
其中的「限定權限」,譬如對非採購部門職員,只能看到交易中廠商資料;對廠商,只能看到自己的資料;對客戶,只能看到有庫存資料…等。
類別 |
人員 |
權限 |
管理員 | 總經理、特助、系統專案經理 | 全域管理 |
系統開發師 | 系統專案經理、主任系統分析師 | 全域系統開發 |
群組管理員 | 各部門經理、部門特助、部門系統分析師 | 群組管理 |
群組系統開發師 | 介面設計師、資料庫設計師、媒體設計師、程式設計員 | 群組系統開發 |
高級使用者 | 部門高級職員 | 查、增、修、刪、核 |
使用者 | 部門內職員 | 查、增、修、刪 |
限定使用者 | 跨部門職員 | 限定:查、增、修、刪 |
廠商 | 上下游協力廠商 | 限定:查、增、修、刪 |
客戶 | 線上註冊客戶 | 限定:查、增、修、刪 |
訪客 | 非註冊訪客 | 限定:查 |
自訂 | 自訂定義 | 自訂定義 |
作什麼?/使用者作業分析
通常經由訪談的方式,將不同使用者的工作項目,製作出「資料庫概念模式圖」。
再將「資料庫概念模式圖」萃取出整合之系統/表單,將使用者所需求的項目以表格列出,即成為需求分析書。
以前者之範例中的「供應商系統」為例,最基本的作業是管理已經在合作中的「協力廠商管理」表單、與其關聯的「物料管理」表單;如果開放線上招商,則應有「召募廠商管理」作業表單;如果使用者不僅操作交易,還要發布訊息,再增加「採購訊息發布」作業表單。同理,可舉一反三。製作「採購部需求分析書」如下。
人員 |
權限類別 |
協力廠商管理 |
物料管理 |
召募廠商管理 |
採購訊息發布 |
採購部主管 | 高級使用者 | Y | Y | Y | Y |
採購部職員 | 使用者 | Y | Y | Y | Y |
庫管部人員 | 限定使用者 | Y | Y | Y | |
財會部人員 | 限定使用者 | Y | Y | Y | |
上下游協力廠商 | 廠商 | Y | Y | Y | |
召募中廠商 | 廠商 | Y | Y | Y |
當前通常會再以統一塑模語言(Unified Modeling Language, UML)之圖形表現,以便進入系統實作。
媒體系統之需求分析
由於時代的變遷,資訊系統從早期的 MIS 系統更發展出「媒體系統」(中文書仍多習慣用早期的「多媒體」名稱);使用目的從「辦公室、管理」轉為「媒體、生活」;使用者也從「企業、組織使用者」擴展為「外部一般使用者」;所以後者的需求調查,其實就是「市場調查」。
市場調查的理論與方法
整體解決方案架構式之需求分析
整體解決方案架構之核心就是必須與商業模式整合,如果能夠創造新利潤,必定須借助創新的發想與能力。
唯本文作者在指導資訊系統發展數十年後發現,對線上使用者之調查與需求分析,多數只能反映制式作業程序;少數會提出抱怨,即值得注意與改進的問題;而極少能夠提出創新解決的方案。
在過去系統分析與設計之觀照,僅限於內部時,或已足夠。但要與商業模式整合,發展整體解決方案架構時,需求分析必須更借助 SA, Solution Architect 方案架構師個人或團隊的研究能力、與領域知識。
這部分將在 UML 商業模式使用個案圖 Business Use Case diagram 之設計實務階段,繼續介述。
(三)MIS/ CIM/ ITSM... 可行性分析:3個可行
資料可行性?
假設需求:因當前偽造身分流行,使用者希望客戶在加入時,系統能夠提供信用評估。
〉有無外在資料庫可提供連結查詢?
技術可行性?
假設需求:為減輕客戶消費手續、與手機的流行,希望建立客戶對自己拍照,就可以交易的機制。
〉當前人臉辨識與符合度的技術成熟度如何?與手機連結的技術分析?以及此技術與外在環境、如隱私權等互動的考量?
資源可行性-如資金、人力…?
假設以上資料、技術均有。
〉資料庫查詢費用為何?影像辨識軟硬體導入費用為何?本組開發人員有無導入、建置能力?
(四)MIS/ CIM/ ITSM... 系統實作分析:4 個分析
系統實作分析或稱為系統發展分析,就是根據前述規畫,系統從開始到結束,對不同使用者、不同工作的完整途徑, 進行系統實務開發。
包括:作業流程分析、輸出入介面分析、資料流與資料庫分析、軟硬體資源分析。
而2000年後,第一、第三項,則有共同使用統一塑模語言(Unified Modeling Language, UML)的趨勢,同時並可達成資訊系統與商業模式的整合,以提供最適與最完整的服務。
作業流程分析
作業流程分析常用圖形的方式呈現,早期系統開發,或當前中小型的系統,可用作業流程圖(Workflow Chart, WFC)法,而2000年後推薦使用統一塑模語言(Unified Modeling Language, UML)法。
作業流程圖(Workflow Chart, WFC) /歷史回顧
WFC是自1960年代始,最傳統、簡便的分析方法。但隨著系統發展愈來愈大型化,同時WFC中有一些圖示是為了當前已逐漸稀少的 mainframe, mini 級電腦,所以,設計流程有改用 UML (Unified Modeling Language)的趨勢。後者的優點是考量極為周詳,不過,對大多數的中小型資訊系統,又有殺雞焉用牛刀之感。
在2000年前,對中小型系統的流程分析,WFC仍不失為實用而便利的方法。
但2000年後,還是應該轉用 UML,為了避免「牛刀」,統雄老師特別提供了簡捷版的「雞刀」。
隨著網路系統的盛行趨勢,系統前端使用Web介面,所以WFC最好能與以下「使用者介面」分析方式共同使用。
WFC基本圖示與符號如下,其中常用的幾項為:
開始(Start 1, Start 2):圖形、橢圓形,如果連接其他的模組,也常用此一圖示。
處理程序(Process):長方形。
選擇(Decision):菱形,這是小型系統最重要的圖示,也是主要需要控制的「流程」。
結束(Terminator):橢圓形。
不過,早期電腦的輸出入媒體,和現在有很大的不同,當前的WFC,在應用上也與原始有所變遷:
資料庫:圓筒形。
資料輸出入:簡化為梯形(如 Manual input)。
其他的圖示可能都用不到了。
範例:調查知識管理系統
UML 的行為圖形組(Behavior diagrams)
統一塑模語言(Unified Modeling Language, UML)於1996年問世,21世紀後逐漸成為系統分析工具的標準、或常用工具。
它具備 2 大圖組,分別負責前端(流程/介面)分析與後端(資料庫)分析。
UML 的前端(流程/介面)分析工具,稱為行為圖形組(Behavior diagrams),另以UML 統一塑模語言專文介述。
輸出入介面分析
輸出入介面為使用者所接觸的部分。
輸出介面分析
根據使用者需求的介面,是應最優先的設計項目;但一般人容易先設計輸入,是錯誤的。
輸入介面分析
為了達成需求,而必須輸入相關資料的介面。老師建議:輸入介面要盡量簡化,並避免要求非必要(或容易不實)的資料。以當前的電子商務系統來說,許多都太繁瑣與並無資料價值。
Web-based 使用者介面導向式開發
當前資訊系統絕大部分都是採用Web 介面,故根據以上流程,將所有介面以「殼」的方式作成連結。
首頁確認使用者分類:總經理、部門主管、職員類別…系統管理者。
範本頁確認結構與樣式:
結構包括:導覽區(主導覽、子導覽)、工作區(子工作區…)工具區…、控制物件與互動方式的統一規則。
樣式包括:標題的階層、使用 controls, icons ... 的一致原則。
深入參考:網站使用者介面與範本頁設計
資料流與資料庫分析
資料流與資料庫分析即後端分析,是系統產生互動功能的主要部分。
資料輸出入的方式,建立資料表、輸出入表單、查詢表單,與其他資料庫功能。
在分析工具上,至少有代表性的三代,當前第三代,為合併使用統一塑模語言(Unified Modeling Language, UML)。。
資料流程圖 DFD (Data Flow Diagrams) /歷史回顧
DFD (Data Flow Diagrams)自1960年代始,早期分析後端資料流最傳統的方法。
雖然許多教科書裡還要求作DFD ,但實務上後端資料庫分析,已陸續被E-R Model 和 UML 取代了。已落後時代二代的工具,仍然存在不少教科書上,亦可見當前教學生態的一般。
但仍以歷史回溯的意義,介紹一個簡單 DFD 如下:連結使用者(方型)、工作程序(使用者介面,橢圓形)、資料檔案(磁帶型)的符號與圖形。
實體關聯模式圖 E-R Model (Entity - Relationship) /歷史回顧
E-R Model (Entity - Relationship)實體關聯模式,是美籍華裔計算機科學家陳品山發明的工具,於1980年後盛行一時。在UML興起前,為重要的後端分析模式,另以專文介紹,如以下各連結。
不過,當前也可被UML取代了。
E-R Model詳細說明與示範專文
E-R Model 的範例如下,雖然許多教科書與文獻仍然在介述,但本講義已不推薦。
UML 的結構圖形組(Structure diagrams)
統一塑模語言(Unified Modeling Language, UML)具備 2 大圖組,它的後端(資料庫/資料流)分析工具,稱為結構圖形組(Behavior diagrams),另以UML 統一塑模語言專文介述。
根據系統規模,建議採用統雄老師的「UML 雙對象解決方案」
進階;決策參數庫-有生命的系統設計
軟硬體資源分析
包括:作業量、軟體開發工具、硬體等級、儲存媒體類型、網路頻寬與安全機制等分析。
作業量:使用者數、單位作業量數、單位作業時間數…?
軟體:開發工具何者為宜?FP, ASP.net, XML, SQL...?
可以用2種以上開發工具,如老師網站。
硬體:伺服器等級?儲存媒體類型(Disc Array, 遠端保全…)與容量...?
網路:頻寬? Protocol? 安全機制…?
注意:當前許多系統專案並沒有作「作業量與資源分析」,在硬體規畫上只是「有什麼、列什麼」。這在小型專案或許可以,但對大型專案就很可能出問題。
問題:臺彩失敗的原因是什麼?
(五)MIS/ CIM/ ITSM... 系統分析實作摘要表
以上系統分析在實作時,重要工作的摘要表如下。
程序 |
內容 |
呈現方式 |
用途 |
競爭者分析 |
當前所有/或有代表性5個以上的輸出。 | 功能與結構 比較表 |
最低系統功能 改善項目檢討 |
需求分析 |
|||
使用者分析 | 系統使用者分類與級別定義。 | 訪談 | |
使用者作業分析 | 定義作業與授權階層。 | 概念模式圖 需求項目列表 |
系統發展 階段規畫 |
可行性分析 |
|||
資料可行性 | 定義原始資料與可轉換資料,含資料格式。 | ||
技術可行性 | 系統整合性、漸進性、模組化、可擴充性、是否有因應技術變遷可相容性之檢討。 | ||
資源可行性 | 資金、人力、時間,總業務發展預測與系統結構功能適配性之檢討與規畫。 | 規格書 合約書 |
系統分析 |
系統分析 |
|||
流程分析 | 系統從開始到結束,不同使用者、不同工作的完整途徑。 | UML | |
前端分析 | 先輸出介面/後輸入介面分析 | Web-based 介面 | |
後端分析 | 資料流與資料庫分析 | UML | |
軟硬體資源分析 | 作業量、軟體開發工具、硬體等級、儲存媒體類型、網路頻寬與安全機制。 |