微信小程序> 详细设计说明书

详细设计说明书

浏览量:873 时间: 来源:寒冰团长

F.1 引言

F.1.1  编写目的

      本详细设计说明书是针对电子科大校园地图(UESTC Campus Map)小程序的项目编写。目的是对该项目进行详细设计,在概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试做准备。本详细设计说明书的预期读者为本项目小组的成员以及对该小程序感兴趣,在以后想对系统进行拓展和维护的人员。

F.1.2  背景

说明:

a、待开发软件系统的名称:电子科大校园地图小程序(UESTC Campus Map)

b、本项目的任务提出者:金成哲,陆冠臣,罗子建

           本项目的开发者:金成哲,陆冠臣,罗子建

           本项目的用户:在校学生,教师,校园游客

           本项目的计算中心:微信小程序

F.1.3  定义

(1) MVC Model View Controller ,是模型 ( model )-视图 ( view )-控

制器(Controller)的缩写。

(2) CURD 代表创建( Create )、更新 Update )、读取 Retrieve

和删除( Delete )操作。

  (3)    UCM 是 UESTC Campus Map 的简称。

 

 

F.1.4  参考资料

(1)《软件工程》(第三版)·钱乐秋等编著·清华大学出版社

(2)《设计模式之禅》)《设计模式之禅》(第二版)·秦小波著·机械工业出版社(第二版)·秦小波著·机械工业出版社

(3)《玩转DjangoDjango 2.0》·黄永祥著·清华大学出版社》·黄永祥著·清华大学出版社

(4)《数据库要求说明书》

(5)《数据库设计说明书》

(6)微信小程序开发文档

F.2 程序系统的结构

整体架构:整体架构设计演示如下:

                                       

 

名称

标识符

说明

客户端

Client

客户系统提供本地服务

服务端

Server

向客户端提供资源,保存客户端数据

数据库系统

Database

存储客户端资源及相关信息

本地操作系统

Local operating system

客户端提供交互界面的服务

电子科技大学统一身份认证系统

Authentication system

电子科技大学学生认证系统,提供学生认证平台

微信服务器

Wechat  server

提供UCM的应用生态服务

微信小程序后台管理系统

Miniprogram admin system

小程序开发者管理小程序的版本更新及用户数据分析

 

客户端:采用 MVC 软件架构设计,框图演示如下

 

               

 

模型(即数据表):

名称

标记符

说明

标记点表

Location

记录校园地图的地点描述以及具体地理位置

功能表

Function

记录标记点的功能信息以及标签分类

轮播图表

RollingImage

记录某标记点的轮播图片

讨论表

Discussion

记录用户发布讨论的内容信息

评论表

Comment

记录用户参与评论的信息

用户表

User

记录用户登录账户以及学生认证等基本信息

 

控制:

名称

标记符

说明

网络请求

Internet request

提供连接服务,响应界面

存储处理

Storage Processing

根据存储请求,将相关数据存储到对应数据表

数据清洗

Data cleaning

根据内置算法设计,对数据表的数据进行再处理

 

视图:

名称

标记符

说明

地图界面

Map

根据不同校区的需要,提供地图的功能介绍

讨论界面

Discussion

给用户提供论坛讨论的服务,针对不同标记点发布讨论内容

功能界面

Function

给对应标记点提供不同的功能介绍

认证界面

Authentication

为区分不同用户,利用电子科大校园信息门户的平台,本小程序设计了一个校园身份认证的系统

历史关注界面

Historical Concerning

为方便用户查看以前参与的讨论与功能的建设,故提供历史关注的服务

轮播图界面

Rolling Image

为丰富用户对该标记点的认知与理解,提供对该标记点的轮播图展示服务

登录界面

login

用户首次登录小程序

服务端:

                                     

 

名称

标记符

说明

日志系统

Logging System

自动记录流式数据,各进程,异常信息

网络模块

Network module

提供连接服务

控制模块

Controling module

根据服务请求,进行不同模块的控制

数据库操作模块

Database operation module

写入,查询,修改或删除数据库的信息

F.3 网络模块

F.3.1  程序描述

网络模块主要是客户端对服务器的网络请求功能的模块化实现,整个客户端采用规范化的统一格式对服务器进行网络请求。主要是为了更好的鲁棒性以及可读性。

F.3.2  功能

功能范例:

 

功能

输入

输出

格式/请求

校园身份认证

openid、学号、密码

codemsg

identity

json/POST

微信登录

code

encryptedData

iv

code、msg、uid

uNickName、uavaUrl:

json/POST

发布功能

uid

functionCode

locationID

code

msg

uid

identity

datatype

data:[

{functionID

functioncontent

functiondescription

locationID

locationdescription

locationLatitude  

locationLongitude}]

json/POST

发布讨论

uid

discussionCode

locationID

code

msg

uid

identity

datatype

data:[

discussionID  

presenttime

locationID

locationLatitude

locationLongitude

]

json/POST

评论他人

uid

uidor

discussionID

commentCode

locationID

code

msg

datatype

commentID

json/POST

获取发布历史

identity

uid

dataType

code

msg

uid

identity:

dataType

data:[

discussionID

discussionContent:                

locationID

locationLatitude

locationLongitude

imgUrls:[

"https:********",          

]    

]    

json/POST

获取讨论列表

locationID

uid

code

msg

dataType

data:[

{

discussionID

discussionCode

discussioncontent:

uNickName

uavaUrl

imgUrls:[]

presenttime

locationID

locationLatitude

locationLongitude

comment:[

{commentID

commentcontent

uNickName

uorNickName}]}]

json/POST

获取功能列表

uid

locationID

dataType

code

msg

data:[{

functionID:

functionCode

functioncontent

functiondesription:

locationID

locationLatitud

locationLongitude:

}]

json/POST

获取轮播图

uid

string

dataType

code

msg

imgUrls:[

"https://123.png",

"https://124.png",]

json/POST

获取所有标记点

uid

dataType:

code

msg

locationID:[]

json/POST

删除

dataType

uid

dataType

uid

code

msg:

json/POST

F.3.3  性能

运行

模块组合

响应时间(ms)

校园身份认证

网络模块、数据库模块

1000

微信登录

登录模块、数据库模块、网络模块

500

发布功能

功能模块、数据库模块、网络模块

200

 

发布讨论

数据库模块、讨论模块

1000

评论他人

数据库模块、讨论模块、评论模块、网络模块

200

 

获取发布历史

数据库模块、讨论模块、评论模块、功能模块、网络模块

1000

获取讨论列表

数据库模块、讨论模块、评论模块、网络模块

1000

 

获取功能列表

功能模块、网络模块、数据库模块

300

获取轮播图

轮播图模块、数据库模块、网络模块

1000+

获取所有标记点

数据库模块、网络模块、标记点模块

200

删除

所有模块

100

 

添加标记点

数据库模块、网络模块、标记点模块

200

 

F.3.4  输入项

输入输出等参考功能F.3.2;

安全保密:对请求数据进行签名,防止非法请求和重放攻击,同时,对用户敏感数据进行加密;

F.3.5  输出项

输入输出等参考功能F.3.2;

安全保密:对请求数据进行签名,防止非法请求和重放攻击,同时,对用户敏感数据进行加密;

F.3.6  算法

  1. API接口防止重放攻击和第三方滥用攻击算法:

算法示例:

字段名

类型

含义

必填

备注

a

text

请求的字段

True

 

b

text

请求字段

True

 

appKey

text

客户端应用标识

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎