zoukankan      html  css  js  c++  java
  • 交互式多媒体图书平台的设计与实现

    需求分析

    • 交互式多媒体图书平台包括读者端和作者端;
    • 作者可以编排图书的目录结构、章节内容,章节内容中包括图片、视频、文字、和集成第三方软件边学边练,能定义常见练习题比如问答题、选择题;作者编辑时可以预览读者端的效果,手机效果、Web和桌面软件效果,作者可以限制只在某一种或几种终端上使用。
    • 读者端可以通过手机、浏览器或桌面软件使用交互式多媒体图书,可以搜索图书,查看图书目录,根据作者设定可以顺序解锁阅读,或随意跳跃阅读,或部分章节内部必须顺序阅读。
    • 软件能集成或调用第三方软件,比如阅读过程中能直接调出vscode或linux shell等第三方软件进行实际操作,并对操作做基本正误判断,然后回到图书继续阅读。调出第三方软件应该通过统一的插件模型调用,第三方软件与图书之间的相互转换要自动流畅完成,不需要读者操作。
    • 读者端的手机App、Web或桌面软件使用统一的代码实现,优先考虑前后端为js+nodejs+mongodb;作者端独立部署,只有在作者发布图书时才将数据导入到读者端系统,以避免作者端的操作对读者端系统的影响。
    • 以上需求的不足可以适当补充和调整。

    功能需求

    作者端需求

    • 作者可以编排图书的目录结构、章节内容,章节内容中包括图片、视频、文字和集成第三方软件边学边练,能定义常见练习题比如问答题、选择题
    • 作者编辑时可以预览读者端的效果,手机效果、Web和桌面软件效果,作者可以限制只在某一种或几种终端上使用
    • 作者可以设定图书阅读顺序,比如顺序解锁阅读,或随意跳跃阅读,或部分章节内部必须顺序阅读
    • 默认给初次使用的作者提供导航功能,引导作者熟悉作者端系统,导航功能可随时查看
    • 作者可以上传图书及相关资料,供读者下载查看

    读者端需求

    • 读者可以通过手机、浏览器或桌面软件使用交互式多媒体图书平台
    • 读者可以搜索图书,查看图书目录,根据作者设定阅读顺序阅读图书
    • 读者端可以调用第三方软件并操作、判断正误,返回读者端
    • 默认给初次使用的读者提供导航功能,引导读者熟悉读者端系统,导航功能可随时查看
    • 读者可以在将图书及相关资料下载至本地查看

    管理员需求

    • 可以审查作者上传图书是否符合相关法律法规,对于不合规图书可以强制下架或者不允上架

    质量要求

    • 图书加载超时提醒
    • 界面设计简约,主体功能说明及使用方法应清晰简明
    • 操作响应及时
    • 易于扩展

    设计约束

      • 读者端手机app、Web和桌面客户端使用统一的代码
      • 优先前后端js+nodejs+mongodb
      • 作者端和读者端分别部署;
      • 读者端调用第三方软件时通过统一的插件模型;
      • 读者端和第三方软件之间自动切换,无需读者操作

    用例图

    作者端

    读者端

    关键用例序列图与分析

    读者对已拥有图书的阅读:

    终端设备限制

    Book类添加accessDevice属性,系统通过客户端请求时的设备信息来给与反馈,是否能返回图书数据

    解锁阅读

    Contents为包含chapterTitlepageId的json-list格式,所以包含位置信息,可通过下标访问不同的Page的内容

    通过Pagelimit掩码属性和Ownfinished属性来控制需要先完成那些章节的阅读

    • finishedlimit按位与操作,得到的结果如果和limit相同,则表示已完成所需章节的阅读
    • 同时如果需要对某个章节不加限制,只需将某个章节limit属性为0即可

    章节阅读序列图

    设计类图

  • 相关阅读:
    玩转树莓派《二》——用python实现动画与多媒体
    pygame(一)
    玩转树莓派(一)
    pythonchallenge(七)
    springmvc定时器
    maven打包成第三方jar包且把pom依赖包打入进来
    mybatis之动态SQL
    黑马12期day01之html&css
    千万级数据表删除特定字断
    自动跳转
  • 原文地址:https://www.cnblogs.com/buzhidao1/p/12760091.html
Copyright © 2011-2022 走看看