交互式多媒體圖書平臺的設計與實現

1、需求分析node

1.功能性需求mongodb

交互式多媒體圖書平臺包括讀者端和做者端,這兩個客戶端的需求是不一樣的,分別以下:json

做者端:後端

 

  • 能夠編排圖書的目錄結構、章節內容
    • 章節內容中包括圖片、視頻、文字
    • 集成第三方軟件邊學邊練,能定義常見練習題好比問答題、選擇題
  • 設定閱讀順序
  • 編輯時能夠預覽讀者端的效果
    • 讀者端包括手機、Web和桌面軟件
    • 能夠限制只在某一種或幾種終端上使用 

讀者端:瀏覽器

  • 能夠經過手機、瀏覽器或桌面軟件使用交互式多媒體圖書
  • 能夠搜索圖書
  • 能夠查看圖書目錄
  • 根據做者設定能夠順序解鎖閱讀,或隨意跳躍閱讀,或部分章節內部必須順序閱讀
  • 集成或調用第三方軟件,閱讀過程當中能直接調出第三方軟件進行實際操做,並對操做作基本正誤判斷,而後回到圖書繼續閱讀。

2.質量需求併發

  • 高併發,能夠支持許多讀者和做者同時訪問該平臺
  • 響應時間小,用戶的操做須要及時進行響應
  • 交互簡單,易於用戶使用

3.設計約束與過程約束高併發

  • 給第三方軟件或者插件提供統一的接口
  • 調用第三方軟件由系統自動完成,不須要用戶操做
  • 讀者端的手機App、Web或桌面軟件使用統一的代碼實現,優先考慮先後端爲js+nodejs+mongodb
  • 做者端獨立部署,只有在做者發佈圖書時纔將數據導入到讀者端系統,以免做者端的操做對讀者端系統的影響

2、概念原型設計spa

用例圖插件

  • 做者端:

  • 讀者端:

 

數據模型設計

3、關鍵用例序列圖與分析

終端設備限制

  給Book類添加accessDevice屬性,系統經過客戶端請求時的設備信息來給與反饋,是否能返回圖書數據

解鎖閱讀

  將Contents爲包含chapterTitlepageId的json-list格式,因此包含位置信息,可經過下標訪問不一樣的Page的內容

  經過Pagelimit掩碼屬性和Ownfinished屬性來控制須要先完成那些章節的閱讀

  • finishedlimit按位與操做,獲得的結果若是和limit相同,則表示已完成所需章節的閱讀
  • 同時若是須要對某個章節不加限制,只需將某個章節limit屬性爲0便可

分析序列圖以下:

設計序列圖以下:

4、設計類圖

交互式多媒體圖書平臺設計類圖以下:

相關文章
相關標籤/搜索