软件系统整体设计.docx
《软件系统整体设计.docx》由会员分享,可在线阅读,更多相关《软件系统整体设计.docx(14页珍藏版)》请在冰豆网上搜索。
![软件系统整体设计.docx](https://file1.bdocx.com/fileroot1/2023-2/1/358b2d84-b47d-4080-9bc5-3d0dfeb7bad4/358b2d84-b47d-4080-9bc5-3d0dfeb7bad41.gif)
软件系统整体设计
技术文件
技术文件名称:
系统总体设计方案
版本:
v0.1
拟制
绿网天下()网络科技股份
修改记录
文件编号
版本号
拟制人/
修改人
拟制/
修改日期
更改理由
主要更改容
(写要点即可)
V1.0
蔡
2016.01.12
初稿
注:
文件第一次拟制时,“更改理由”、“主要更改容”栏写“无”。
1.编写目的
本文件阐述了绿网市场系统的软件总体设计、系统运行配置与应用方式以及使用的关键技术等。
本文件适用于绿网市场系统的开发研制工作。
2.设计依据
依据产品部输出的《绿网市场1.0.rp》文档中阐述的产品功能,进行对应的技术方案输出。
参考业主流WEB系统架构方案,结合公司产品实际业务情况、功能演进规划,进行技术架构设计和演进规划。
3.术语、定义和缩略语
3.1.术语、定义
名词
解释
SeaJS
一个遵循CommonJS规的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制
JQuery
轻量级的Javascript库
ECharts
XX开源的可视化图表工具
ImageLoader
Android开源组件,图片异步加载库
pulltorefresh
Android开源组件,下拉刷新控件
NavigationDraw
Android开源组件,导航组件
3.2.缩略语
本文件应用了以下缩略语:
缩写
英文全称
中文全称
APP
mobile application
手机应用程序
4.概述
4.1.系统目标
●用户基数:
1-N年用户数达到XXX万,市场占有率达到XX%
●用户体验:
尽量贴近用户操作习惯,化繁为简
●应用库规模:
逐步积累自己的应用库,初期先使用第三方应用库
●智能推荐:
能够较为精准的推送给用户感兴趣的应用
●行为分析:
分析用户使用APP的类型和频次,分析用户会感兴趣的事物
●线下互动:
定期组织同一圈子用户的线下互动活动,与线上的行为分析互相补充
4.2.设计原则
●快速响应:
快速发布、快速响应业务变化
●方便扩展:
响应新业务无需推倒重来
●稳定运行:
通过弹性伸缩和便捷的容灾恢复来保障稳定性(参考阿里云解决方案)
●高效运维:
提高运维效率、减少运维成本
4.3.演进规划--待补充
5.整体方案
5.1.技术架构
用户使用层
✓支持在android手机、pad电脑、PC电脑等终端上的使用
应用服务层
✓系统基于业主流WEB框架LAMP进行应用的开发(LAMP框架具有Web资源丰富、轻量、快速开发等特点)
✓系统WEB前端使用主流的模块加载框架SeaJS,轻量级的js库JQuery,XX开源图表组件ECharts以及引入来自Twitter的CSS框架bootstrap
✓系统后台基于phpthink框架进行开发。
phpthink是一款轻量级国产PHP开发框架,能够解决应用开发中的大多数需要。
其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便
数据存储层
✓关系型数据存放在:
MySQL数据库
✓非关系型数据存放在:
文件
5.2.功能架构
5.3.运行流程
运行步骤
1)android客户端或pc浏览器发起http请求
2)apache处理来自客户端、管理端、外部系统的http请求
3)apache根据请求容返回响应请求,如是PHP对象,调用PHP应用进行处理
4)PHP应用根据请求容按需调用mysql或memcache进行数据处理,并将结果返回给apache
5)Apache将结果返回给andorid、pc浏览器
5.4.部署架构
部署架构方案
✓应用与数据分离
✓缓存服务独立--根据实际需要进行剥离
✓文件服务独立--根据实际需要进行剥离
✓数据服务提供统一的访问接口,应用不直接访问数据--根据实际需要进行开发
5.5.性能设计
性能指标(样例数据,真实需求待补充)
✓整体用户量200000
✓并发数>15000
Web服务器要求指标见下表
序号
参数
指标
备注
01
平均每秒响应次数
<3S
02
成功的请求
>98%
03
失败的请求
<2%
04
成功点击次数
>99%
05
失败点击次数
<1%
06
每秒成功的点击次数
>95%
07
每秒失败的点击次数
<5%
6.功能详述
6.1.管理平台
6.1.1.软件列表
6.1.1.1.模块说明
✓平台管理所有应用的操作入口
✓以分页表格的方式进行数据展示
✓支持对“软件列表”记录的增、删、改、查操作
✓支持对“软件列表”记录的批量操作
✓支持关键字搜索应用
✓支持审核功能
6.1.1.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.1.2.推荐排行
6.1.2.1.模块说明
✓推荐应用的操作入口
✓以分页表格的方式进行数据展示
✓支持对“推荐应用”记录的增、删、改、查操作
✓支持数据的批量“推荐”、“取消推荐”操作
✓支持关键字搜索应用
6.1.2.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.1.3.热门搜索
6.1.3.1.模块说明
✓热搜应用的操作入口
✓以分页表格的方式进行数据展示
✓支持“热搜应用”记录的增、删、改、查操作
✓支持数据的批量“删除”操作
✓支持对记录的“上移”、“下移”
6.1.3.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.1.4.用户管理
6.1.4.1.模块说明
✓平台用户的操作入口
✓以分页表格的方式进行数据展示
✓支持对“平台用户”记录的增、删、改、查操作
✓支持数据的批量“删除”操作
✓支持“账号”、“用户名”、“手机号”的搜索功能
6.1.4.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.1.5.用户标签
6.1.5.1.模块说明
✓用户标签的操作入口
✓以分页表格的方式进行数据展示
✓支持“用户标签”记录的增、删、改、查操作
✓支持数据的批量“推荐”、“取消推荐”操作
✓支持关键字搜索应用
6.1.5.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.1.6.数据统计
6.1.6.1.模块说明
✓数据统计的操作入口
✓支持柱状图或饼图或分页表格的方式进行数据展示
✓支持“用户标签”记录的增、删、改、查操作
✓支持记录按“时间”和“分类”进行查询
✓支持数据的“导出”功能
6.1.6.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面--引用XX图形组件ECharts
6.1.7.软件审核
6.1.7.1.模块说明
✓软件审核的操作入口
✓以分页表格的方式进行数据展示
✓支持“软件审核”记录的增、删、改、查操作
✓支持数据的批量“通过审核”操作
✓支持关键字搜索应用名称
6.1.7.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.2.客户端应用
展示平台主要负责各类功能模块的界面展示,也负责提供用户增、删、增、查等一系列操作功能,方便用户对各个设备的资源数据、告警数据、性能数据以及其它配置数据,进行统一的管理和监控。
6.2.1.APP应用
6.2.1.1.模块说明
✓应用的主页面,包括“个性化选择”、“APP排行”、“应用分类”三个功能(3个菜单)
✓“个性化选择”以卡片的形式推荐给用户,用户可选择“喜欢”或“不喜欢”来逐步聚焦感兴趣的APP,可对APP进行评论和分享
✓“APP排行”以列表形式展现下载量最高、最热门、最被关注的前50个应用
✓“应用分类”将应用重新做了分类,如:
男生最爱、女生必备、数理化等比较贴近学生群体的分类名称。
应用类别可在管理平台进行自定义的增删改。
6.2.1.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.2.2.搜索
6.2.2.1.模块说明
✓首页右上角有“搜索”图标,点击进入搜索页面
✓搜索页面包含“热搜标签”、“搜索历史”
✓用户可在输入栏输入想要搜索的应用关键字进行查询。
✓如果搜索不到结果,可通过“求神器”提交相关信息。
✓管理平台会进行人工处理。
如果相关应用已经添加,系统
✓会发通知信息告知用户。
用户在下次登录的时候就可以看到。
6.2.2.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
6.2.3.个人中心
6.2.3.1.模块说明
✓在首页有个头像图标,点击进入“个人中心”
✓“个人中心”包含个人信息、应用下载列表、可升级软件列表、已安装软件列表、通知消息列表等功能
✓“个人中心”的右上角有“设置”按钮,点击可进入设置界面。
设置具有头像修改、昵称修改、安装设置、下载设置以及信息反馈等功能
6.2.3.2.实现方案
1)WEB前端获取用户的操作请求
2)Web前端直接操作数据库,进行数据的增删改查
3)Web前端将操作结果反馈到页面上
7.接口说明
7.1.部接口--待补充
7.2.外部接口
7.2.1.1.卓易
卓易提供应用市场APP的库(100多万款APP),作为外部资源到系统中。
整体方案如下:
绿网应用市场上架应用如果使用的是卓易的资源,URL下载指向对方,用户实际下载地为对方提供的地址
绿网应用市场上架的应用如果是绿网自行增加上架的资源,URL下载指向本地,用户实际下载地为绿网提供的地址
绿网应用市场本地会下载并保留一份卓易提供的apk资源
卓易提供同步接口,以获取新增应用或者应用是否有版本更新
卓易提供同步接口,以获取最新的下架应用
8.开发和运行环境
8.1.硬件环境
●X86服务器
8.2.软件环境
●开发工具
Linux,mysql,apache,Hibernat,Spring,JBPM,HTML5,EXT,ECharts等
●基础版本
基于现有的XXX2.0版本演进