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