【选题】要做什么
第1步:找需求。生活中肯定会存在各种各样的问题,要能找到问题是什么,于是得出社会有什么需求;于是,有了开发的必要性,也就是开发有了意义,然后才有开发的必要。
第2步:功能点。既然准备要做开发了,这个系统的设计就要开始考虑具体有哪些功能,每个功能点要描述清楚(相当于是在做需求分析了)
第3步:技术栈。找对应的技术来实现这些功能点,最好是找最适合的技术、最新的技术来实现,这样一个普通的系统可能看起来就具有创新性了(创新点一般为:功能上的创新、技术上的创新、模型上的创新等)
第4步:调研。查看别人的论文中是如何实现的,自己看了后,可以形成自己的综述论文;其次,看别人的论文,也能找到别人使用什么技术来实现的,有什么好处,效果如何,完善自己的第3步中寻找技术的问题
第5步:撰写开题报告,把意义、功能点、打算如何做写清楚,让老师评估你的工作量是否足够,如果老师能给你提出几点补充,那你的毕设工作量肯定是足够了,且具有特色了。
【开发】如何做的
写论文不是上来就写论文,理工科的论文写作,通常需要开发完毕设项目后,才容易动手写,所以,开发一定要抓紧
第1步:选定技术后,如果技术满足,就直接进入开发;如果需要技术还没有掌握,要先去官网学习(最多两周时间,一般是一周时间就要掌握了,学习能力和学习效率要快,如果你需要学习三个月,做毕设的时间就来不及了)
第2步:结合确定要做的功能点(所有功能点),设计自己的数据库。
(1)数据库需求分析
假设做一个选课系统。对应的数据需求分析必然就会有这样的描述
"一位同学可以选择多门课程,一门课程可以被多位同学选",当然,还会有其他的描述,此处省略了(你在自己做毕设的时候,要把所有能想到的都写出来)
(2)根据描述,所以可以得出学生和课程之间是多对多的关系,于是,你可以绘制出系统的E-R图
(3)将E-R图进行分解,把实体、联系这些单独绘制出来,然后得到对应的数据库表
(4)创建数据库,根据表结构编写对应的SQL语句
注意:(1)(2)(3)这些都是可以写在论文中的,所以,要把对应的材料保存起来(需求描述、E-R图、实体图等),绘图全部采用Visio绘制,绘制后,记得要保存源文件,万一要修改,就不用重新绘制。(4)中用到的SQL语句也一并保存起来,万一不记得字段了,还可以找出来看看,以防要修改
第3步:开发前端
设计感好的同学,可以先绘制一些草图,把所有界面先设计好,然后根据草图进行开发;
设计感一般,则先花点时间找一张主界面图,然后确定主题颜色,后面开发就使用几个选定的颜色,好的UI都不会有很多花哨的颜色,主题要鲜明,把界面开发完后,自己也清楚需要哪些接口了
第4步:开发后台
开发后台接口,可以先试用接口测试工具,把接口调通,并记录下接口是如何传递参数的,接口地址等信息,后面就只需要做前后端交互即可。【即使使用模版解析,也是通用的】
【写论文】
开发和调试均做完后,开始撰写论文
第1步:找论文模版
第2步:根据模版,把内容填充上即可
(1)摘要。
当前有现象,存在什么问题,针对问题,提出什么解决方案,该方案使用什么技术完成了哪些功能,带来了什么好处。
案例:随着高等教育的普及,每年都有大量大学生步入就业市场。然而,在求职过程中,许多大学生面临信息不对称和岗位匹配困难的问题,导致就业效率低下和人才资源浪费(现象)。现有的就业推荐平台多数功能单一,无法精准分析学生的能力和偏好,且缺乏个性化的职业规划与推荐(存在什么问题),为了解决上述问题,本文提出了一种基于Spring Boot框架的大学生就业推荐系统。该系统集成了大数据分析和机器学习算法,以提供个性化的就业推荐服务(提出方案)。本系统采用Spring Boot作为后端开发框架,简化了传统Spring应用的复杂配置和部署流程。结合了MyBatis作为数据持久层框架,优化了数据库操作的效率。前端使用React进行界面设计,提升了用户交互体验。系统还整合了Apache Spark进行数据处理和模型训练,以及使用了协同过滤和内容分析等机器学习算法来增强推荐的准确度(采用了什么技术),整体实现了学生管理、教师管理、企业管理、个性化就业推荐、实时就业数据可视化等功能(实现了哪些功能)。该系统的实施显著提高了就业推荐的质量和效率,帮助学生找到更适合自己的工作机会,同时也使企业能够更快地发现并吸引到合适的人才(带来的好处)。
(2)绪论。
一般写三个核心内容,研究意义、国内外研究现状、研究内容
说清楚为什开发,别人开发得如何了,自己要研究哪些内容即可
【相关技术简介】做技术类的,可以增加一个章节,介绍使用到的技术,如果有特色技术,要大篇幅写,常规技术,则可以减少一些篇幅。这一章根据实际情况来选择写还是不写。
(3)需求分析。
写清楚功能点,最好是绘制一些用例图最佳
(4)概要设计。
根据功能点,做设计,最起码要有系统整体功能结构图,别人一看就知道你的系统里做哪些功能,工作量是否能达到毕业要求;实际上在上面你已经设计了数据库了,可以把存起来的资料拿出来即可。
(5)详细设计与实现。
根据每个功能,绘制流程图,主要目的是表达出:我是怎么做这个功能的,流程图能很好体现出你的思路,不关心代码如何写的。这里可以把你的效果图呈现出来,证明我按照这样的流程实现了功能,效果如何。
(6)测试。
对每个功能进行测试,测试用例和测试结果如何,写清楚即可
(7)总结与展望。
总结。总结本文的所有工作,重点展示你做了哪些功能
展望。系统还存在哪些可以优化的点,可以是开发过程自己想到了,但是没有做的;可以是界面美化等。但是,不能是核心功能【例如:音乐播放器中,没有完成播放音乐功能,这种是属于核心功能缺失,直白讲,就是达不到毕业要求】
(8)致谢。
感慨的话都放在此处,最好是不要指名道姓,严肃的场合,保持庄严的风格
(9)参考文献。
一定要按照格式来写,【交叉引用】要会
(10)附录。
把你认为很重要的,想要展示的东西放在这里。例如:我写了一段很漂亮的代码,我就想要呈现一下,可以放在附录。论文正文中最好就写伪代码或者思路,具体实现不要放代码。