交互式多媒体图书平台的设计与实现
一 需求分析
1 功能需求
- 交互式多媒体功能需求包括作者端和读者端
- 作者可以编排图书的目录结构、章节内容,章节内容中包括图片、视频、文字、和集成第三方软件边学边练,能定义常见练习题比如问答题、选择题
- 作者编辑时可以预览读者端的效果,手机效果、Web和桌面软件效果,作者可以限制只在某一种或几种终端上使用
- 读者端可以通过手机、浏览器或桌面软件使用交互式多媒体图书,可以搜索图书,查看图书目录,根据作者设定可以顺序解锁阅读,或随意跳跃阅读,或部分章节内部必须顺序阅读
- 软件能集成或调用第三方软件,比如阅读过程中能直接调出vscode或linux shell等第三方软件进行实际操作,并对操作做基本正误判断,然后回到图书继续阅读
2 质量需求
- 高性能,保证用户相关操作相应及时
- 简单易用,UI设计要精简,用户使用能很快的掌握软件的基本使用
- 健壮性,软件使用过程不易发生崩溃,卡顿等情况
- 安全性,保护用户的个人信息
3 设计约束
- 读者端的手机 App、Web 或桌面软件使用统一的代码实现,前后端为 JS + Node.js + MongoDB
- 作者端独立部署,只有在作者发布图书时才将数据导入到读者端系统,以避免作者端的操作对读者端系统的影响
- 调出第三方软件应该通过统一的插件模型调用,第三方软件与图书之间的相互转换要自动流畅完成,不需要读者操作
二 概念原型设计
1 用例图
作者端
读者端
2 数据模型
三 关键用例深入分析
选择读者进入系统查找图书打开阅读的过程
1 剧情描述表
Subject | Action of Subject | Other Data/Objects | Object Acted Upon | |
1 | 读者 | 进入图书系统 | 服务器 | |
1.1 | 服务器 | 返回书籍列表 | 书籍列表 | 读者 |
1.2 | 读者 | 查询书籍 | 书籍名称 | 服务器 |
1.2.1 | 服务器 | 返回选择的书籍 | 书籍简介 | 读者 |
1.3 | 读者 | 打开目录 | 书籍目录 | 服务器 |
1.3.1 | 服务器 | 返回书籍目录 | 书籍目录 | 读者 |
1.3.2 | 读者 | 选择相关章节 | 章节名称 | 服务器 |
1.3.2.1 | 服务器 | 打开相关章节内容 | 章节内容 | 读者 |
2 设计序列图
四 设计方案
设计类图