一.任务描述
根据上述概要设计阶段性成果物 ,编制完整的概要设计说明书
二.任务目的
一方面锻炼架构设计文档编写能力,另一方面通过对内容评价,掌握架构设计方法
三.任务详情
1.分工
讨论参与:李彦林、朱国宇、张号、黄博
文档撰写:李彦林、朱国宇、张号
文档校准:黄博
2.文档内容
1. 引言
1.1 编写目的
本文档可以全面系统地表述高校调查问卷管理系统的架构设计,详细说明系统的功能需求、逻辑框架、模块交互以及数据库的结构设计等信息,以满足系统相关人员的不同关注重点,明确系统具体开发什么以及如何开发的关键问题,以实现对开发资源的妥善规划和利用。
1.2 读者对象
项目发起人和系统管理人员:高校调查问卷管理系统的使用者和管理人员,运用系统设计发布和分析问卷。
系统开发和维护人员:高校调查问卷管理系统的开发人员,负责系统各类需求和功能的分工开发工作,以及交付使用后的维护升级工作。
1.3 参考资料
(1)Karl Wiegers、Joy Beatty,《软件需求》,清华大学出版社,2016。
(2)Leszek A. Maciaszek,《需求分析与系统设计》,机械工业出版社,2009。
1.4 术语与缩写解释
缩写、术语 |
解 释 |
调查问卷 |
通过制定详细周密的问卷,要求被调查者据此进行回答以收集资料的方法 |
Windows |
微软公司研发的一套操作系统 |
Android |
一种基于Linux内核的开源操作系统 |
Mysql |
开源关系型数据库管理系统 |
JDK |
Java语言的开发工具包,包含JAVA的运行环境和工具 |
类图 |
用于显示模型的静态结构,展现模型中的类、类的内部结构以及与其他类的关系 |
时序图 |
一种UML交互图,通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作 |
伪代码 |
一种非正式的,类似于英语结构的,用于描述模块结构图的语言 |
Visual Studio |
微软公司的开发工具包系列产品,包括整个软件生命周期中所需要的大部分工具 |
MySQL WorkBench |
一款专为 MySQL 设计的集成化桌面软件 |
2. 系统概述
高校调查问卷管理系统是由政府发起,旨在开发一款支持问卷创建、设计、发布与回收分析的管理系统。管理人员可登陆系统生成问卷,问卷经邮箱直接发送至待调查人员手中,免去了通知下发的时间损失,使得问卷反馈结果更加客观,也便于政府和高校及时收集教学反馈信息、掌握教育教学情况。
本系统的业务需求如下:
(1)首先由项目发起人定义问卷的主题、内容和调查对象,并在系统中创建一个以该主题命名的项目页面。
(2)接着,系统管理人员中负责问卷设计的人员在项目页面中创建问卷,进行调查对象设置、截止时间设置和编辑问题等工作,设计完毕后保存提交。然后,项目发起人对管理人员提交的问卷进行审核,若审核通过则管理人员可以发布问卷,若审核不通过则通知管理人员重新编写问卷。
(3)问卷发布后,待调查人员通过邮件、链接等方式获取并填写问卷,填写完毕点击提交。所有填写的回答会上传到系统中并被保存,等待统计与处理。
(4)问卷截止后,系统管理人员中负责问卷分析的人员对问卷的调查结果进行分析汇总,并将结果交给项目发起人查看。
本系统的主要功能需求如下:
(1)实现用户的注册与登陆功能,支持忘记密码找回。
(2)实现问卷项目定义、问卷编辑设计、问卷审核、问卷发布功能。问卷问题类型包括选择、填空、判断和主观题,用户可自行选择修改。
(3)有完善的用户管理机制,支持手动输入或使用excel表批量导入待调查人员信息数据。
(4)各问卷项目支持撤回发布、修改、删除、复制等多项基本操作功能。其中问卷发布采用邮件发送链接至待调查人员的手机或电脑设备的方式。
(5)系统有完善的问卷统计分析机制,能依照用户的需求来处理待调查人员的反馈信息,为用户提供便利。
(6)待调查人员通过问卷链接填写问卷,再点击提交即可完成填写操作。
3. 架构设计目标和约束
3.1 架构设计目标
通过系统架构设计,可确定系统的逻辑架构和各功能模块的具体内容,建立架构设计图和功能交互模型,明确每个功能模块之间的关系,完整表述出系统的功能。以下目标是架构设计需要做到的:
(1)功能完备:系统的使用和管理必须非常可靠,各需求功能必须准确、完整地呈现。
(2)系统安全性:本系统储存有高校及其师生的信息,因此系统安全性必须有保障,以避免信息泄露。
(3)易操作性:系统的用户界面和UI设计必须保证用户体验良好,做到易操作、使用简便、防止误操作情况。
(4)可维护性:系统开发时应考虑后续维护情况,既要及时解决现有的问题,也要考虑到系统未来的变化,以降低未来维护的技术花费。
(5)可扩展性:系统应考虑到未来用户和存储数据的增长情况,预测系统未来可能出现的发展趋势,预留空间和解决方案,以保证系统长期正常运行。
3.2 约束需求
(1)系统运行环境最低配置要求:Windows7、内存2G、硬盘20G。
(2)系统支持浏览器环境:IE浏览器、谷歌浏览器、QQ浏览器、火狐浏览器。
(3)操作系统:Windows、Mac、Android、iOS。
(4)接口/协议约束:本系统无接口约束,协议使用TCP/IP协议。
(5)用户界面约束:所有界面应布局简洁、UI易于操作。
(6)软件质量约束
a.可靠性:各需求功能必须准确、完整地呈现。。
b.易用性:界面简洁、用户操作简便。
c.安全性:成功登陆系统并有权限的用户才能进行待调查人员信息的导入和修改;系统的一切功能需用户成功登陆后才能使用;系统数据应自动定时备份,当出现故障时可以防止数据丢失;定时检查系统,检测并防止病毒侵入系统。
d.可扩展性:考虑未来用户和存储数据的增长情况,预留解决方案。
e.兼容性:系统可在多个浏览器中运行,同时支持电脑端和PC端操作。
f.可移植性:设置语言选择功能,支持中午和英文,便于移植到不同语言的操作系统环境中使用。
3.3 开发与运行环境
类别 |
标准配置 |
最低配置 |
开发环境 |
Windows10 |
Windows7 |
JDK 1.8 |
JDK 1.8 |
|
4G内存、64G硬盘 |
2G内存、20G硬盘 |
|
测试环境 |
Windows10 |
Windows7 |
Android10 |
Android9 |
|
4G内存、64G硬盘 |
2G内存、20G硬盘 |
|
运行环境 |
Windows10 |
Windows7 |
Android10 |
Android9 |
|
4G内存、64G硬盘 |
2G内存、20G硬盘 |
4. 系统总体设计
4.1 设计思想
高校调查问卷管理系统逻辑架构包含用户界面层、商业逻辑层、数据处理层三层架构模式。
用户界面层包含用户操作界面和系统管理员界面,此设计依据两类系统相关人员:待调查人员和系统管理人员进行划分。
业务逻辑层是接收来自用户界面层的操作请求以实现数据的应用和处理,故本设计也是依据两类用户的操作特点,分为问卷设计、问卷审核、问卷发布、问卷填写、查看结果等子系统。
数据处理层应有外部服务接口,可通过业务逻辑层对数据库进行增删改查等操作,本层用于存储用户和问卷的数据信息。
4.2 软件逻辑架构设计
基于三层架构思想,创建系统逻辑架构包图如下图所示。
(1)用户界面层模块:本模块的主要功能是显示数据和接收传输用户的数据,可以为网站的系统运行提供交互式操作界面,向用户展示系统的信息、数据等等,满足用户的需求。
(2)业务逻辑层模块:本模块的主要功能是对系统的具体功能用例进行逻辑判断与执行操作,是用户与数据库间沟通的桥梁,可以对接收的数据进行逻辑处理,支持用户实现问卷创建、设计、发布、查看分析和用户管理等业务的实现。
(3)数据处理层模块:此模块用于存储用户和问卷信息。在业务过程中访问数据系统中的文件,实现对数据库中数据的读取保存操作。
4.3 系统主要业务流程设计
(1)用户登陆交互模型
模块职责:该模块负责对用户的登陆操作予以交互反馈。当用户输入账号密码并点击登录后,系统将登陆信息传送到服务器处理,验证是否存在用户及密码是否正确。然后将验证结果返回到登陆页面显示。具有数据库和服务器的接口,便于处理指令、调取用户信息验证。
(2)定义问卷项目交互模型
模块职责:该模块对项目发起人创建问卷项目的操作进行交互反馈。当项目发起人定义新的问卷项目时,服务器会接收信息并将其存储到数据库中,更新问卷项目信息,最后反馈结果显示成功添加或添加失败。具有数据库和服务器的接口,便于处理指令、储存问卷项目信息。
(3)问卷设计交互模型
模块职责:该模块对问卷设计人员的问卷设计操作进行交互反馈。当问卷设计人员创建新问卷后,服务器会接收信息并添加新问卷信息,再显示创建结果。当问卷设计人员设计问卷问题并提交后,服务器会接收信息并更新问卷信息,反馈结果。具有数据库和服务器的接口,便于处理指令、储存和更新问卷信息。
(4)问卷审核交互模型
模块职责:该模块对项目发起人的问卷审核操作进行交互反馈。当项目发起人查看某个问卷时,服务器会接收信息并从数据库调取问卷内容进行显示。当项目发起人提交审核信息后,服务器接收信息并更新数据库中问卷的状态,最后将更改后问卷状态进行显示。具有数据库和服务器的接口,便于处理信息、更新问卷状态。
(5)问卷发布交互模型
模块职责:该模块对问卷设计人员的问卷发布操作进行交互反馈。当问卷设计人员查看某个问卷时,服务器会接收信息并从数据库调取问卷内容进行显示。当问卷设计人员点击发布后,服务器接收信息,从数据库的用户信息中调取待调查人员邮箱信息,而后将问卷以链接的形式发送到对应邮箱中,并显示发布完成。具有数据库和服务器的接口,便于处理接收信息。
(6)问卷填写与提交交互模型
模块职责:该模块对待调查人员填写和提交问卷的操作进行交互反馈。当待调查人员打开问卷进入问卷填写界面后,系统会对填写信息实时显示。当待调查人员填写完毕点击提交后,问卷被上传到服务器接收,服务器将填写信息存储到数据库的问卷结果信息中储存,等待处理。具有数据库和服务器的接口,便于接收上传的问卷、存储填写结果。
(7)查看分析结果交互模型
模块职责:该模块对问卷分析人员查看分析结果的操作进行交互反馈。当问卷分析人员点击查看分析结果时,服务器会接收指令并从数据库调取分析结果进行显示。当问卷分析人员点击导出分析报告时,服务器接收指令并对数据库中的分析报告进行打包、生成下载链接,并在用户界面显示。具有数据库和服务器的接口,便于获取和打包分析结果。
4.4 功能模块划分
4.4.1. 模块一描述
模块名称 |
模块功能(职责)概述 |
用户界面层 |
本模块包含系统内的用户界面,可根据不同用户的特点、操作命令来采用不同的界面进行显示反馈。 |
业务逻辑层 |
本模块包含系统所有功能用例,可接收用户的指令和信息,对数据库进行增删改查等处理,是用户界面层和数据处理层之间沟通的桥梁。 |
数据处理层 |
本模块以数据库为主体,负责存储系统的用户信息、问卷信息等数据内容,对业务逻辑层的请求进行数据操作。 |
4.4.2. 模块一接口设计
(1)用户界面层模块:本模块需与系统后台登陆系统对接,获取并验证用户名和密码是否正确,并予以反馈。其伪代码如下:
get 用户名和密码;
if 存在用户且密码正确
then do进入管理页面;
else return error;
(2)业务逻辑层模块:本模块与用户管理层对接,接收用户各种操作的指令,并对数据库进行对应操作。其伪代码如下:
get 操作代码code
switch code
case value1:进入问卷项目界面;
case value2:进入问卷设计界面;
case value3:进入问卷查看界面;
...
default:进入主界面;
(3)数据处理层模块:本模块对接业务逻辑层,首先对用户权限予以判定,再根据指令对数据库进行处理。其伪代码如下:
get 用户等级和操作等级
if 用户等级满足操作等级
then do 执行操作;
else return error;
5. 数据库设计概述
5.1 数据库环境说明
数据库系统:MySQL
设计工具:MySQL WorkBench
编程工具:Visual Studio 2019
配置要求:内存2G以上,硬盘容量20G以上
5.2 系统概念架构设计
基于需求分析创建本系统的实体类类图如下:
5.3 数据库逻辑架构设计
数据库的逻辑架构设计如下,分别是ER图和各类属性信息。
5.4 表汇总说明
表汇总 |
用途 |
用户管理表 |
分为项目发起人、问卷设计人员和问卷分析人员三个表,用于存储系统管理用户的信息,便于登陆系统时进行验证 |
问卷项目表 |
存储问卷项目信息,对应其创建人员、时间等信息 |
问卷表 |
存储问卷信息,包含问卷主题、内容、状态、结果 |
待调查人员表 |
存储教师和学生的基本信息,其中邮箱信息是发布问卷的必要信息 |
问卷设计分析表 |
将问卷设计、分析人员和其管理的问卷联系起来,不同管理人员在其界面只显示自己创建的问卷,避免程序误删改等问题 |
6. 用户界面设计
用户登陆界面:
问卷填写界面:
系统管理界面: