今天给大家介绍一下毕业设计是如何从无到有规划设计出来的。

对于这个过程我不会介绍某个具体的技术应用,而是会从总体的思路层面上面给大家总得分析介绍一下。

今天我就以我曾经的的毕业设计为例(我这个案例是基于B/S的学校在线二手交易平台-服务器模块),给大家介绍这个流程具体过程是怎么样的,希望能给大家一些启发。

学校做毕业的毕业设计肯定没有公司那么正规,一般以实现功能为主,在系统的安全、稳定性方面肯定不是特别好。不过这些都没关系,毕竟大家可能能力有限做不出那么尽善尽美,这也是情有可原的嘛。但是这肯定不能成为大家不去实现目标的理由,我们再做毕业设计之前就应该要有这样的精神。尽自己所能,尽可能能把自己的项目做得完美一点。所谓的完美可以从这几个方面来实现:界面精美、系统功能接近于真实的情况、系统稳定不容易崩溃,所用技术先进追随技术潮流等等之类的。

1.首先每个毕业设计都有一个选题,这个选题可是是学校老师提供的,也可以是自己提出来的。例如向我的选题就是学校在线二手交易平台-服务器模块(本科生毕业设计),从题目中就可以看出来这个毕业设计主要是一款基于B/S的后台管理系统。

2.在选题确定下来的时候,就会有毕业设计需要完成的功能需求了。当然这个功能需求你可以和老师们沟通,不然就有可能发生功能需求过于庞大导致自己完成不了的情况。因为大学的老师并不是很了解每个学生的个人能力是怎么样的,他们会以一个平均的水平来衡量每个同学。

这里给大家看一下我的需求说明:

3.需求出来之后就要根据需求说明来设计数据库,设计数据库包括数据库的表,表中字段,字段的具体属性等等之类的。建议大家可以在这个流程中多花点时间研究数据库到底要如何设计才算合理,是否要遵循数据库三大设计范式之类的问题。

这里我想给大家一些建议:

1.数据库设计不一定要完全遵守三大范式,有时候也要考虑采用反范式的数据库设计。

2.表中关联关系一定要搞明白,到底是一对多、多对一、一对一、多对多这四种的哪一种。然后在维护这些关联关系的时候是采用数据库本身去维护还是利用代码去维护好这些关联关系。这些都是要好好考虑的。

3.数据库中表的名称一定要根据具体需求来命名,字段也是一样的,要根据具体的需求来设计合理的字段以及字段的范围。

4.刚开始不要过分的纠结一些并发所导致的问题,例如时数据冗余,脏数据,幻读之类的问题。这些问题可以先不要太过分的去考虑,因为在开发的过程中很少会遇到,就算遇到的时候在去考虑,也不会有太大的问题。

在数据库设计完之后就要将数据库的ER图画出来,使数据库的设计能够图形化的显示出来,下面是我项目中的ER图:

4.数据库设计完之后就要将项目的界面原型设计出来。界面原型设计这就要根据大家的想象力来设计了,在满足功能需求的前提下,将界面设计更加人性化。在设计界面原型的时候一般要根据这几点来:

1.项目的主题是什么类型的,就用什么 类型的主题颜色。

2.左侧菜单栏目要分几级,或者菜单打开关闭的规则是什么。

3.数据报表展示的时候要用什么样的形式,是否分页之类的。

4.表单要如何设计才能更加符合主题,更加人性化之类的。

对于毕业设计的界面原型大家可以不用自己从零开始搭建实现,因为这样确实不太现实,不仅花时间而且结果也不会很好看。大家可以去网上找一些模板,然后对模板进行修改。这种方法是最高效而且也是最实用的,当然如果你界面设计能力很强的话,那还是自己设计比较完美。下面看看我的项目的界面原型:

6.界面设计完之后就要考虑使用什么框架来实现这个功能了,这里具体使用一般设计文档里面都有要求。不过每个项目都有设计难点或者技术难点之类的,这也是整个项目的亮点。所以我建议大家在开发前尽量多想想自己这个项目的亮点到底有哪些,这些亮点我需要什么技术来实现,这些亮点做的好的话就可以用来区分优秀和一般的项目了。这里我介绍一下我项目中的亮点以及这些亮点实现的具体技术:

1.项目具备全文搜索功能,采用Lucene技术实现。

2.项目具备邮件发送接收的功能,采用James邮件服务器实现。

3.项目具备报表功能,采用百度的EChart技术实现。

加入这些亮点技术,明显可以使项目光环增加,为毕业项目增加一定的分数。但是一定要在自己力所能及的基础上面进行,不要天马行空的设计技术难点。一定是要那种可以在规定的时间内实现的那种技术亮点,否则之后给人一种浮夸的感觉。

7.接下来就是系统实现了,毕业设计不仅仅是完成一个可运行的项目就可以了,还需要编写各种文档、画各种各样图文之类的。这里一般会有:类图、时序图、用例图、系统流程图等等之类的。

8.以上都准备完之后就可以开始正式进行编码了,这个过程其实是最累人的,当然也是最重要的。因为这个过程是真正考验你技术的一个模块,像毕业设计一般会全面的考验一个学生的综合能力。例如项目的总体设计就可以考验学生的系统设计能力,功能的具体实现就可以考验学生对SQL命令的熟悉程度等等之类的。这个流程我建议大家不要投机取巧,尽量一步步完成。不懂的可以问问老师同学,或者上网查询都可以。

这样一个总的流程就基本走一遍了,当然大家在实际应用的时候肯定不仅仅只有这些过程。这些过程只是个大概的范围,具体在完成过程中肯定不仅仅只有这些过程,肯定还有很多细小的地方。例如:选用什么编程工具,选择什么语言进行开发,选择什么框架进行开发等等之类的。这些就需要大家自己去决定了,我这里只是将我完成的过程中一些流程和一些意见给大家介绍一下,希望能给大家一些启发。

其它项目集合地址:软件工程毕业设计集合
如果大家想要项目源代码+项目讲解PPT+毕业论文+各种技术文档+项目运行视频介绍等等之类的,可以加我订阅号,然后回复“毕设”即可。

学校在线二手交易平台-服务器模块(本科生毕业设计)相关推荐

  1. Springboot校园二手交易平台的设计与实现 毕业设计-附源码260839

    摘要 随着互联网的普及以及发展,在网上出售.购买东西变得越来越日常,出于对校园发展的考虑,在很多校园里都实现了各式各样的二手网站,提高了校园资源的利用效率.然而,搭建大部分的网站所需要花费的人力和财力 ...

  2. SpringBoot+Vue项目校园二手交易平台

    文末获取源码 开发语言:Java 使用框架:spring boot 前端技术:JavaScript.Vue.js .css3 开发工具:IDEA/MyEclipse/Eclipse.Visual St ...

  3. 基于SSM框架贺州学院校园二手交易平台设计与实现

    前言 这个是我当时的毕业论文,分享出来,给同学们参考. 绪论 随着中国新四大发明的诞生,网购成了千千万万网友们购物的新方式,新的购物方式促进商业的发展,但随着人们生活水平的提高,许多新购置的物品用了没 ...

  4. Springboot+vue项目二手交易平台系统

    摘要 本系统地描绘了整个网上二手交易平台的设计与实现,主要实现的功能有以下几点:管理员:首页.个人中心.用户管理.卖家管理.商品分类管理.商品信息管理.二手订单管理.商品求购管理.管理员管理.留言板管 ...

  5. 【计算机毕业设计】高校二手交易平台

    一.系统截图(需要演示视频可以私聊) 摘 要 本论文主要论述了如何使用JAVA语言开发一个高校二手交易平台,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发 ...

  6. (附源码)Springboot校园二手交易平台 毕业设计191637

    Springboot校园二手交易平台小程序 摘要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为 ...

  7. (附源码)Springboot校园二手交易平台小程序 毕业设计191637

    Springboot校园二手交易平台小程序 摘要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为 ...

  8. 小程序+spring boot校园二手交易平台 毕业设计-附源码191637

    Springboot校园二手交易平台小程序 摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最 ...

  9. (附源码)小程序+spring boot校园二手交易平台 毕业设计 191637

    Springboot校园二手交易平台小程序 摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最 ...

最新文章

  1. 部署并使用Docker(Alibaba Cloud Linux 2)
  2. Linux用extundelete恢复磁盘文件-攻防世界Recover-Deleted-File
  3. 插件框架实现思路及原理
  4. oracle快速了解法,【oracle】rownum的快速了解
  5. YBTOJ:消除格子(二分图匹配)
  6. 明科在线客服系统PHP_在线客服系统的标准功能有哪些
  7. 基于sqlite数据库的C语言编程
  8. 《小团团团队》第四次作业:项目需求调研与分析
  9. iphonex屏幕出现一条绿线_关于对 iPhone 11、iPhone X? 采用的 Liquid 视网膜显示屏的误区,在此说明。...
  10. 返回一个整数数组中最大子数组的和。
  11. pandas表字段为空用其余表替换
  12. 55. 安全 HTTP(3)
  13. mysql覆盖索引理解
  14. 逆流而上的你,送给现在的你
  15. 根据两点的经纬度求方位角和距离,等
  16. 【今日】【20180511】物理学家——理查德·费曼 诞辰100周年
  17. “我不是不在乎钱,我只是不在乎这点钱。”
  18. 化繁为简,聊一聊复制状态机系统架构抽象
  19. 热爱生活,更热爱代码
  20. 新款任天堂(Switch)游戏机底座带网口方案LDR6023B+AX88179

热门文章

  1. 新版spyder中如何设置脚本文件共同使用同一个Variable explorer 中数据
  2. C++ 十进制点分IP转换为32位二进制IP
  3. Flask使用migrate迁移后,无法检测到models,无法生成表
  4. linux发行版本目录详解
  5. 三星2018多少钱一部_三星W2018怎么样 三星W2018多少钱【详解】
  6. Java关于String常用方法(字符串转字符数组,字符数组转字符串)
  7. #cygwin#进入D盘
  8. 什么时候用断言(assert)?
  9. fusion360不小心把多个实体做成了一个实体,如何分割实体
  10. 概率图模型(一):贝叶斯网络