Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

客服系統的軟體架設計分享

1,323 views

Published on

The topic shows the design process for software architect.Also there are serveal architect style descibed int the topic.
In the end , to demo a call center atchitect design.

Published in: Software
  • Login to see the comments

客服系統的軟體架設計分享

  1. 1. Learn from the Expert Software Architect Design For CTI (Computer Telecommunication Integration) 客服系統的軟體架構設計分享 Johnson Gau 高榮章 2017.3
  2. 2. Agenda 軟體架構要關注的事 幾種架構介紹 設計架構的步驟 一個實例
  3. 3. 軟體架構要關 注的事
  4. 4. 一個軟體架構
  5. 5. What Is Software Architecture? 軟體架構是:  關於定義一個結構性方案,用來滿足所有技術和 商業操作需求。  並最佳化品質因子:像是效能, 安全性, 可維護性 其決策基於很廣泛的因素。  是屬於較高階(High Level)的決策,往往在後面 就不能改變了。
  6. 6. 架構設計應關切的事 使用者如何 使用系統 產品部 署和管 理? security performance concurrency configuration 彈性 維護性 電腦 伺服器 程式 未來發展
  7. 7. 設計心法 架構要隱藏細節,只展示結構 理解所有use case和情境 試著列出所有參與者的需求 掌握所有功能性和品質需求 責任集中 不重複設計
  8. 8. 幾種架構介紹
  9. 9. 架構的型態(Styles) 可以 多個組合 • 服務導向(SOA) • 訊息(Message Bus) Communication • 多層式/ 3層式(N-Tier / 3-Tier) • 主從式(Client/Server) • Web-Based Deployment • Domain驅動架構(DDD) Domain • 元件式(Component-Based) • Object-Oriented • 分層(Layered Architecture) Structure
  10. 10. Client/server-Web/Winform 優點 • 高安全性 • 中央集中資料存取 • 程式好維護 缺點 • winform更版必須更新所有Client 資料庫應用伺服器群組 客戶端 客戶端 客戶端
  11. 11. Component-Based Architectural Style(Com+/java EJB) 優點 • 可重用 • 不需知道細節 • 可延伸 • 封裝 • 獨立 缺點 • 更版比較麻煩 • 未來技術不再發展
  12. 12. Domain Driven Design Architectural Style 優點 • 容易了解Domain • 溝通容易 • 擴充性高 • 可測試性高 缺點 • 成本高 • 必須很懂domain
  13. 13. Layered Architectural Style 優點 • 抽象化 • 封裝 • 清楚描述功能 • 高內聚 低偶合 • 重用性高 缺點 • 需要足夠經驗和知識 • 錯置功能 • 程式碼較多
  14. 14. Message Bus Architectural Style 優點 • 可非同步, 減少等待時間 • 不同環境(公司)的整合 • 有兩類型態: • Enterprise Service Bus (ESB). • Internet Service Bus (ISB).-BPM 缺點 • 流程邏輯複雜
  15. 15. N-Tier / 3-Tier Architectural Style 優點 • scalability • availability • Manageability • Availability(resource utilization) 缺點 • 部署比較複雜 • 程式必須同步到不同主機 Tier: 實體上切分, 部署不同主機切 Layer: 邏輯上切分, 以proj切
  16. 16. Object-Oriented Architectural Style 優點 • 抽象化 • 封裝 繼承 聯合 • 易懂 • 高內聚 低偶合 • 重用性高 缺點 • 需要足夠經驗和知識 • 錯置功能 • 程式碼較多
  17. 17. Service-Oriented Architectural Style 優點 • 使用別人的Domain知識 • 抽象化 • 可找尋 • 整合性高 缺點 • 速度可能有瓶頸 • 不易Debug
  18. 18. 設計架構的步驟
  19. 19. 設計步驟 • Identify Architecture Objects 功能性和非功能性目標 • Identify Key Scenarios 主流程是否適用、CRUD 有機敏資料? 介接其他系統? • Create Application Overview 架構類型 • Identify Key Issues Availability/Interoperability /Manageability/Performance /Reliability/Scalability/Security/Authentication /Authorization/Caching/Communication/Confi guration Management/Exception Management/Logging Instrumentation/Validation. • Define Candidate Solutions Cloud, CS vs Web
  20. 20. Security issues identified
  21. 21. 一個實例
  22. 22. 客服系統 (CTI) 參與者 • Customer • Supervisor • Agent • CRM System CRM System
  23. 23. Genesys Core Applications Positioning and Architecture
  24. 24. Architecture Object • 在CTI系統下客製化 • 整合原有CRM • 多渠道 • UI與原本系統不可差異太大 • 改善原有系統效能
  25. 25. common架構
  26. 26. 替代方案選擇-多屬性決策分析 決策分析方法論: • ELECTRE • AHP • MAVT • TOPSIS Window Form Browser(Web Form) 開發限制性 少。如需要Web功能,只要嵌入 Web browser控制項。 多。每一動作都需返回Web server處理。 整合性 直接在Windows Form裡呼叫。 *本項為主要決策因素 參考原廠的元件,透過TCP/IP與伺服器溝通,在web page只能透過 ActiveX來實現,ActiveX為了要跟原網頁互動,需加入Java Script與 之互動,增加Web Form複雜度和限制。 部署 需在每一Client端部署AP。 但Windows Form 允許以 ClickOnce 進行 「不需接觸」的 部署,您可在使用者電腦上直接下載、安裝並執行應用程 式,而不需變更登錄。 另外可以自行撰寫下載程式,達到自動更新機制。 Web Form 沒有用戶端部署。只要更伺服上的程式碼。 Performance 快。 用戶端電腦上完整執行 Windows Form;提供高度互動的 應用程式提供最快的回應速度。 慢。 除少部分的互動可透過Java script進行。大部分的處理 (包括與 UI 相關的工作,例如驗證) 需要往返於 Web 伺服器,而可能影響回應 性。 平台 Windows Form 需要用戶端電腦安裝執行 .NET Framework 版本。 用戶端只需要瀏覽器就能執行Web Form。 Web 伺服器必須執行 .NET Framework。 程式撰寫模式 Windows Form 是以用戶端、Win32 訊息幫浦模式為基礎, 其中元件的執行個體 (Instance) 是由開發人員建立、使用 和捨棄。 程式的控制較為單一。 Web Form 倚賴多數時間為非同步且中斷連接的模型,伺服器的元 件彈性地與應用程式前端結合。通常會透過 HTTP 叫用應用程式元 件。 程式的控制需有Client端間,Client-Server間交互控制。 安全性 Windows Form 會在程式碼存取安全性的實作上使用權限, 以保護電腦資源和機密資訊。這樣可謹慎地提供功能而同 時又能維持安全性。 本地端因需執行ActiveX需要降低IE安全型來滿足。 方案1: Browser Server 方案2: Window form 選擇 方案2: Window form
  27. 27. • Final architect Multi-Channels Facebook Voice iOS, Android APP Web Chat Genesys CIM T C P I P 制訂 協定 AP協定
  28. 28. 其他議題 • 雲端 • Container
  29. 29. 參考文獻 • MI C R O S O F T AP P L I C AT I O N AR C H I T E C T U R E GU I D E 2nd Edition • Genesys Core Applications Positioning and Architecture

×