第3章 系统分析
3.1 可行性分析
3.1.1技术可行性
研发设计程序流程挑选面向对象设计、功能齐全、简单实用的Java编程设计核心理念。MySQL数据库存储数据。Idea工具作为编程软件,win10计算机操作系统作为应用系统,以及数据库可视化工具等技术职称。一般来说,该程序流程的开发能够从技术上开展是可行的。
3.1.2经济可行性
开发的程序并不是向着商业服务程序方向设计与开发的,反而是做为毕业设计论文新项目开发的,主要运用于检测孩子在学校所学的知识,也锻练用户们使用互联网、书籍和别的方法进行自学能力。因而,该程序软件的开发不容易涉及到边际效益,也不会为软件的挑选付钱。你可以在开发软件的官网上下载所需要的软件,并根据要求的安装方法将软件安装在你的电脑中。一般来说,开发这一程序并没有经济发展开支。
3.1.3运行可行性
由于程序软件就是针对大部分一般操作用户,考虑到他的知识与文化水准,尤其开发了一个可操作度高的程序软件,能够轻而易举地让用户应用,数据可视化操作页面。一般来说,从用户操作程序的角度看,这一程序其实并不难操作。只需用户开启程序,就能避免专职人员学习培训开展程序作用操作,可以得出程序软件能够开发和操作。
3.2 系统流程
流程图这样的工具可以直观反映出系统内部的操作逻辑,可以帮助用户更好的理解系统。
3.2.1 操作信息流程 具体操作流程见下图
图3.1 操作流程图
3.2.2 登录信息流程
登录模块流程见下图
图3.2 登录流程图
3.2.3 删除信息流程
图3.3 删除信息流程图
3.3 性能需求
需求分析报告包含依据用户的实际需要制订作用,及其将要定制的系统的性能需求分析报告。因而,在一般剖析系统时,一方面要剖析系统的功效,另一方面要搞清楚系统的性能。终究,一个性能好一点的系统的设计开发可以确保系统质量以及稳定性。 下面,从易学易用性、系统时间特性、系统稳定性等多个方面系统性能展开分析表明。
系统容积规定:明确系统进行数据处理方法容量更大化。换句话说,假如系统建立模型容量临界点超出这一临界点,系统可能设备异常。
(2)系统精度规定:明确传送数据所需要的精度值,包含数值计算方法的精度值、数据信息精度系数的设定等。
(3)时长特点规定:系统建立模型有时限要求,那也是系统的时间也特点。一般剖析数据处理方法的时间也,设定用户标准的响应速度,及其系统在超负荷运行中能够偏移的范围值,要提前剖析明确。
(4)适应能力规定:当系统应对系统环境变化时,其融入这些变化的能力也要根据参数信息来反映。比如,应对变动的必须,系统必须通过强调必须设计方案的一个过程或系统来适应变化来反映系统的适应能力。
(5)易学易用性:除开作用应该考虑用户要求外,人机交互设计还要考虑到用户的用户习惯,包含界面风格、页面色彩选择与色彩搭配。尝试让用户接受简单学习后单独实际操作系统。
第4章 系统设计
市面上设计比较好的系统都有一个共同特征,就是主题鲜明突出。通过对页面简洁清晰的布局,让页面的内容,包括文字语言,或者视频图片等元素可以清晰表达出系统的主题。让来访用户无需花费过多精力和时间找寻需要的内容。
4.1系统整体结构
摄影分享网站选用B/S架构模式,即网页页面和网站架构设计的开发方式。这类系统构造可以理解为正确的 C/S 系统构造的改变与推广能够进行信息分布式存储,减少资源成本,提升订制系统性能。在这种设计下,极少有事务处理在前进行,绝大多数重要事务管理的思路需要在服务端完成。
系统的性能层为表明给用户页面,用以表明与理解用户的数据,回到用户所提供的数据,递交给系统解决方法,同时提供用户与系统之间的沟通控制面板;系统通讯层承担为性能层给予后面数据,并把性能层和系统后台管理间的通信连接下去。HTTP/HTTPS协议书采用,系统控制层主要是针对从HTTP规定中获得信息,获得基本参数。并把它发放给不一样的处理方式服务(service层),并把service层处理后的数据回到前边(本系统运用JSON数据);系统业务逻辑层的主要作用是挑选用户的键入信息,进行特定业务逻辑和数据访问;系统数据访问层主要是针对操作过程数据,为业务逻辑层或控制层给予数据服务;系统数据库是系统存放数据的地区。进行独特业务需要数据可用,务必纪录信息才能达到工作流程。
4.2系统功能设计
为了让系统的编码可以顺利进行,特意对本系统功能进行细分设计,设计的系统功能结构见下图。
图4.1 系统功能结构图
4.3数据库设计
一般来说,对用户进行调查,了解其需求,主要还是完成功能上的分析设计,殊不知,设计功能时,也要展示对数据库的设计。数据库服务于程序,它可以按照设定的规则对程序的数据进行保存,因此,也可以说数据库就是程序相关数据的集合。为了保证程序的高质量,数据库提供的数据存储服务也需要快速响应,同时数据信息也要安全合法可靠,所以设计一个数据库这样的任务也需要高度重视,并花时间和精力去努力完成。毕竟这影响到后期程序的开发和使用。试想而知,假设设计一个不好的数据库,遇到的问题将会有:第一,面对信息处理,会有着繁琐的业务逻辑,延长事务处理时间。第二:程序编码期间,将会产生更多的代码去完成数据处理的功能,产生大量的数据冗余,而且也不方便注释代码,还会占用更多的存储空间。综上所述,设计出合理的数据库是多么的重要。
(1)下图是活动实体和其具备的属性。
活动实体属性图
(2)下图是用户实体和其具备的属性。
用户实体属性图
(3)下图是图片素材留言实体和其具备的属性。
图片素材留言实体属性图
(4)下图是活动收藏实体和其具备的属性。
活动收藏实体属性图
(5)下图是论坛实体和其具备的属性。
论坛实体属性图
(6)下图是视频素材留言实体和其具备的属性。
视频素材留言实体属性图
(7)下图是视频素材实体和其具备的属性。
视频素材实体属性图
(8)下图是图片素材收藏实体和其具备的属性。
图片素材收藏实体属性图
(9)下图是活动留言实体和其具备的属性。
活动留言实体属性图
(10)下图是公告资讯实体和其具备的属性。
公告资讯实体属性图
(11)下图是视频素材收藏实体和其具备的属性。
视频素材收藏实体属性图
(12)下图是活动报名实体和其具备的属性。
活动报名实体属性图
(13)下图是图片素材实体和其具备的属性。
图片素材实体属性图
作为程序后台的支持,本数据库也需要设计数据存储的结构。而数据存储结构的设计就包括了数据表结构的设计和创建。数据表结构包括了字段,数据类型,还有字段的取值范围等信息。而E-R模型中的实体就是一张表,实体的特征就可以作为该表中的字段,根据本程序信息存储要求,设计每个字段需要的类型,还有该字段的取值范围等。每当设计完成一张数据表,就需要及时保存在数据库里面,并对该设计的数据表准确命名,要求设置的数据表的名称尽量不要是中文,而且要方便记忆。因为在程序编码阶段,通过SQL语句可以把程序里面的数据写入在各个数据表里面,而这个环节需要使用到数据表的名称。如果数据表名称是中文的话,可能会乱码并影响程序运行。下面就以表格形式展示设计的结果。
表4.1字典表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
dic_code |
String |
字段 |
是 |
3 |
dic_name |
String |
字段名 |
是 |
4 |
code_index |
Integer |
编码 |
是 |
5 |
index_name |
String |
编码名字 |
是 |
6 |
super_id |
Integer |
父字段id |
是 |
7 |
beizhu |
String |
备注 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.2论坛表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
forum_name |
String |
帖子标题 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
users_id |
Integer |
管理员 |
是 |
5 |
forum_content |
String |
发布内容 |
是 |
6 |
super_ids |
Integer |
父id |
是 |
7 |
forum_state_types |
Integer |
帖子状态 |
是 |
8 |
insert_time |
Date |
发帖时间 |
是 |
9 |
update_time |
Date |
修改时间 |
是 |
10 |
create_time |
Date |
创建时间 |
是 |
表4.3活动表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
huodong_uuid_number |
String |
活动编号 |
是 |
3 |
huodong_name |
String |
活动标题 |
是 |
4 |
huodong_photo |
String |
活动封面 |
是 |
5 |
huodong_types |
Integer |
活动类型 |
是 |
6 |
huodong_clicknum |
Integer |
活动热度 |
是 |
7 |
zan_number |
Integer |
赞 |
是 |
8 |
cai_number |
Integer |
踩 |
是 |
9 |
huodong_content |
String |
活动介绍 |
是 |
10 |
huodong_delete |
Integer |
逻辑删除 |
是 |
11 |
insert_time |
Date |
录入时间 |
是 |
12 |
create_time |
Date |
创建时间 |
是 |
表4.4活动收藏表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
huodong_id |
Integer |
活动 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
huodong_collection_types |
Integer |
类型 |
是 |
5 |
insert_time |
Date |
收藏时间 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.5活动留言表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
huodong_id |
Integer |
活动 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
huodong_liuyan_text |
String |
留言内容 |
是 |
5 |
insert_time |
Date |
留言时间 |
是 |
6 |
reply_text |
String |
回复内容 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.6活动报名表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
huodong_yuyue_uuid_number |
String |
报名编号 |
是 |
3 |
huodong_id |
Integer |
活动 |
是 |
4 |
yonghu_id |
Integer |
用户 |
是 |
5 |
huodong_yuyue_text |
String |
报名理由 |
是 |
6 |
huodong_yuyue_yesno_types |
Integer |
报名状态 |
是 |
7 |
huodong_yuyue_yesno_text |
String |
审核回复 |
是 |
8 |
huodong_yuyue_shenhe_time |
Date |
审核时间 |
是 |
9 |
insert_time |
Date |
报名时间 |
是 |
10 |
create_time |
Date |
创建时间 |
是 |
表4.7公告资讯表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
news_name |
String |
公告标题 |
是 |
3 |
news_types |
Integer |
视频素材 |
是 |
4 |
news_photo |
String |
公告图片 |
是 |
5 |
insert_time |
Date |
添加时间 |
是 |
6 |
news_content |
String |
公告详情 |
是 |
7 |
create_time |
Date |
创建时间 |
是 |
表4.8图片素材表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
sucai_uuid_number |
String |
图片素材编号 |
是 |
3 |
sucai_name |
String |
图片素材名称 |
是 |
4 |
sucai_photo |
String |
图片素材照片 |
是 |
5 |
sucai_file |
String |
图片素材 |
是 |
6 |
sucai_types |
Integer |
图片素材类型 |
是 |
7 |
sucai_clicknum |
Integer |
图片素材热度 |
是 |
8 |
zan_number |
Integer |
赞 |
是 |
9 |
cai_number |
Integer |
踩 |
是 |
10 |
sucai_content |
String |
图片素材介绍 |
是 |
11 |
sucai_delete |
Integer |
逻辑删除 |
是 |
12 |
insert_time |
Date |
录入时间 |
是 |
13 |
create_time |
Date |
创建时间 |
是 |
表4.9图片素材收藏表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
sucai_id |
Integer |
图片素材 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
sucai_collection_types |
Integer |
类型 |
是 |
5 |
insert_time |
Date |
收藏时间 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.10图片素材留言表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
sucai_id |
Integer |
图片素材 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
sucai_liuyan_text |
String |
留言内容 |
是 |
5 |
insert_time |
Date |
留言时间 |
是 |
6 |
reply_text |
String |
回复内容 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.11视频素材表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
sucaishipin_uuid_number |
String |
视频素材编号 |
是 |
3 |
sucaishipin_name |
String |
视频素材名称 |
是 |
4 |
sucaishipin_photo |
String |
视频素材封面 |
是 |
5 |
sucaishipin_video |
String |
视频 |
是 |
6 |
sucaishipin_file |
String |
视频素材 |
是 |
7 |
sucaishipin_types |
Integer |
视频素材类型 |
是 |
8 |
sucaishipin_clicknum |
Integer |
视频素材热度 |
是 |
9 |
zan_number |
Integer |
赞 |
是 |
10 |
cai_number |
Integer |
踩 |
是 |
11 |
sucaishipin_content |
String |
视频素材介绍 |
是 |
12 |
sucaishipin_delete |
Integer |
逻辑删除 |
是 |
13 |
insert_time |
Date |
录入时间 |
是 |
14 |
create_time |
Date |
创建时间 |
是 |
表4.12视频素材收藏表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
sucaishipin_id |
Integer |
视频素材 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
sucaishipin_collection_types |
Integer |
类型 |
是 |
5 |
insert_time |
Date |
收藏时间 |
是 |
6 |
create_time |
Date |
创建时间 |
是 |
表4.13视频素材留言表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
sucaishipin_id |
Integer |
视频素材 |
是 |
3 |
yonghu_id |
Integer |
用户 |
是 |
4 |
sucaishipin_liuyan_text |
String |
留言内容 |
是 |
5 |
insert_time |
Date |
留言时间 |
是 |
6 |
reply_text |
String |
回复内容 |
是 |
7 |
update_time |
Date |
回复时间 |
是 |
8 |
create_time |
Date |
创建时间 |
是 |
表4.14用户表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
yonghu_name |
String |
用户名称 |
是 |
3 |
yonghu_phone |
String |
用户手机号 |
是 |
4 |
yonghu_id_number |
String |
用户身份证号 |
是 |
5 |
yonghu_photo |
String |
用户头像 |
是 |
6 |
yonghu_email |
String |
用户邮箱 |
是 |
7 |
yonghu_delete |
Integer |
逻辑删除 |
是 |
8 |
insert_time |
Date |
添加时间 |
是 |
9 |
create_time |
Date |
创建时间 |
是 |
表4.15管理员表
序号 |
列名 |
数据类型 |
说明 |
允许空 |
---|---|---|---|---|
1 |
Id |
Int |
id |
否 |
2 |
username |
String |
医院名 |
是 |
3 |
password |
String |
密码 |
是 |
4 |
role |
String |
角色 |
是 |
5 |
addtime |
Date |
新增时间 |
是 |
第5章 系统的实现
这个环节需要使用前面的设计方案,包括对系统模块的设计,还有对程序后台的数据支持的数据库的设计等。不过这部分内容还是强调系统编码人员的开发能力,要把前面设计的内容通过编码的形式以一个完整的,可以运行的系统呈现出来。
功能模块的实现
5.1用户信息管理
如图5.1显示的就是用户信息管理页面,此页面提供给管理员的功能有:用户信息的查询管理,可以删除用户信息、修改用户信息、新增用户信息,
还进行了对用户名称的模糊查询的条件
图5.1 用户信息管理页面
5.2 图片素材管理
如图5.2显示的就是图片素材管理页面,此页面提供给管理员的功能有:查看已发布的图片素材数据,修改图片素材,图片素材作废,即可删除,还进行了对图片素材名称的模糊查询 图片素材信息的类型查询等等一些条件。
图5.2 图片素材管理页面
5.3视频素材管理
如图5.3显示的就是视频素材管理页面,此页面提供给管理员的功能有:根据视频素材进行条件查询,还可以对视频素材进行新增、修改、查询操作等等。
图5.3 视频素材管理页面
5.1公告信息管理
如图5.4显示的就是公告信息管理页面,此页面提供给管理员的功能有:根据公告信息进行新增、修改、查询操作等等。
图5.4 公告信息管理页面
第6章 系统的测试
6.1软件测试
软件测试包含软件办公环境、软件开发需求和软件源代码具体内容。软件测试还包含五个要素:软件质量、技术性、职工、流程及互联网资源。软件测试总体目标包含测试覆盖率信息和测试高效化信息。
控制模块测试:本一部分务必涉及到程序编码理论知识,由程序开发员工进行。当程序开发工作人员依据代码开发程序的程序模块时,控制模块级测试。一般来说,这类联接测试又被称为黑盒子测试。
系统测试:当程序测试进入这个连接时,这就意味着程序测试已经完成了一半。这一部分测试还有另一个名字,称之为黑盒子测试,主要运用于测试系统软件是不是按期望运作。
6.2测试环境
摄影分享网站测试所选择的测试网站是IDEA服务平台自然环境。测试时,用户必须开启MySQL数据库系统开展数据文件的额外操控,再打开IDEA,创建文件夹打开网页,将摄影分享网站程序导入到IDEA平台上,再将文档部署到Tomcat网络服务器中,最终操作流程。这时,用户能够电脑操作系统中的每一个作用。查询程序流程是否满足用户的需求。
6.3测试测试用例
用户登陆所需要的信息包含登陆名字以及相应的登陆密码。仅有录入数据信息恰当,才可以进行系统软件浏览解决。用户登陆测试全过程见表6.1所显示:
表6.1 用户登录测试表
测试目的 |
操作流程 |
测试用例 |
预测结果 |
测试结果 |
---|---|---|---|---|
用户登录 |
填写用户名密码,点击首页登录按钮 |
错误填写用户名还有密码 |
登录失败 |
提示错误信息 |
正确填写用户名和密码 |
登录成功 |
登录成功 |
表6.2添加摄影信息测试表
测试项目 |
操作流程 |
测试用例 |
预测结果 |
测试结果 |
---|---|---|---|---|
添加摄影信息 |
管理员登陆后点击添加摄影信息按钮,添加摄影信息 |
摄影信息为空 |
添加失败,弹出提示按钮 |
添加失败,提示请填写内容 |
合理填写摄影信息 |
添加成功 |
添加成功 |
6.4测试结果
经检测,从摄影分享网站作用的角度看,此系统的每一个作用在符合用户规定的情形下可以保持正常运转。从摄影分享网站特性的角度看,系统软件可以保持24钟头连续操作,应对用户的操作失误个人行为,提早设定不正确信息反馈。除此之外,系统软件界面风格考虑到了用户的读书习惯,能让用户在短期内得到所需要的具体内容。总而言之,此系统能够投入生产,协助用户解决问题,更好地发挥实用价值。
结 论
之前在课本上学习过软件开发的知识,包括开发流程的了解,开发技术的学习,还有如何进行系统需求分析与设计,老师也选取了比较有代表性的管理系统在课堂上进行讲解,并在课后布置作业让我们练习,期间老师也让我们也对系统实现与测试进行了了解。所以面对本次“有光”摄影分享网站的开发制作,我的脑海里还是有比较清晰的思路。在系统制作中,以及配套文档的编写中,我都是按照软件开发流程一步步开展我的工作。
从系统的角度讲,“有光”摄影分享网站制作中,它的难点在于功能的确定,对系统结构的设计,还有设计性能优良的数据库,以及采用成熟的技术实现系统功能等,这些是我面临的困难。针对这些难点,我采取了一定的措施。在不知道系统的功能时,我在网上寻找了很多相似系统,并把这些系统的大致功能进行了记载,把对本系统有用的功能部分进行了采用,另外,我也从网上获取了大量关于系统设计方面的知识,包括系统模块划分,设计原则,数据库表的设计与创建等知识,也从软件开发类博客中,获取了程序编码的技术知识,包括数据增删改代码模块的编写与使用。在本系统编码完成其对应功能后,我对系统的所有功能进行了耐心的测试,最后发现我开发的系统是合格的,可以进行验收。因为本系统除了具备简洁美观的界面外,在功能上可以满足使用者对于数据操作的需求,并且本系统的功能与系统分析设计的功能保持高度一致,而且系统运行稳定,面对用户的误操作,也建立了报错反馈机制,系统的质量可靠。唯一不足的就是系统数据表的设计在字段考虑上并不全面,为字段匹配的数据类型也不精确,还有系统代码部分,有很多地方还没有进行注释,代码编写不够简洁等。
从文档的角度来讲,在完成“有光”摄影分享网站制作后,对其制作过程需要进行描述,包括如何进行的需求分析,如何完成系统的设计,以及实现的系统功能的运行效果等都要进行描述。这期间我也花费了将近一个月时间来完成,为了达到学院要求的文档排版标准,我也多次在导师建议下,学习办公软件的使用,还有排版技巧。功夫不负有心人,我编写的文档在面临多次编写修改后终于完成了。
总而言之,制作毕设虽然经历了很多环节,但是认真对待这个事情,我们将会在各个环节获取很多知识,也会在各个环节的实际操作中,锻炼我们的实践能力。通过本项目制作,我开始明白,很多知识并不只是来源于书本,来源于老师课堂上讲解的知识,也需要来源于各大学习网站以及生活实践等。至此,我还是会继续努力,保持新知识的主动学习习惯。