本科毕业论文该怎么写

我以自己指导的软件工程(软件开发)类本科毕业论文为例讲讲,不一定与其他老师的要求和方法相同,甚至可能有相冲突的地方。同学们在写论文时,能参考的参考,不一样的地方请以你自己的导师为准


特别需要说明的是,下面这些论文撰写要点和方法,都是我对所指导毕业学生的要求,也是我自己读软件工程硕士时写论文的方法及心得。我写硕士毕业论文时,受到两位指导老师的很多指点,当年写毕业论文的时间也很长,修改过很多稿,但是这个过程让自己受益至今!


我对自己指导的每一名学生,都按照下面所说的内容并结合个人的题目,一对一地向他们讲解过。当然,这也是我自己对于毕业设计的规定,只有他们完成了毕业设计(软件开发),听完我对于毕业论文撰写的讲解之后,才允许开始动手写论文。另外,也只有经过这个步骤,学生写出来的论文,我才会看。




下面我按照本科毕业论文的常见章节顺序来展开讲。


0. 准备


开始写论文之前,首先要自确认两个问题:


(1)自己的Word排版水平如何?


检查清单:会不会自定义样式?会不会用格式刷?会不会设置自动编号?多级编号?会不会文档分节?会不会设置不同分节页码?会不会使用大纲视图?会不会自动生成目录?会不会自己做一个模板?


解决方法:一定要自己学着去做一个模板。很多人一来就是想找一个模板,其实这个没有用的。如果你自己不会编写一个模板,给你模板你也一样不会用。总有学生说,老师怎么总是在挑格式的毛病?我自己当初写论文时,导师也一样挑格式毛病。实际上,格式都做不好,论文好不到哪里去。


(2)自己的汉语写作水平如何?


检查清单:知不知道中英文标点符号的区别?知不知道什么叫书面语?知不知道什么才叫一句完整的话?知不知道什么叫专业术语?特别是英文专业术语要大写。产品技术名称要严格正确。


解决方法:问语文老师和英语老师去吧。


1. 标题


要再三确认自己的开题、中期、答辩和上交教务员的题目都保持一致。有偏差或改题目要跟老师沟通确认。英文标题翻译要准确到位!从这里开始强调:杜绝使用“整句”翻译软件!翻译词典查单词是可以的,但是如果想用电脑帮你翻译一整句话,交到我这里是一票否决退回的。看到这种,一般我是直接打回,拒绝看后面内容的。


2. 摘要(中文)


论文的中文摘要,是用第三人称写的。摘要是这样的:C向B介绍A所写论文的要点。摘要包含的内容基本在网上都能查到:目的、方法、成果、结论。注意:没有背景!经常见到有论文摘要写一段背景介绍的,删掉!


基本套路:……领域|方面|应用存在……问题;……人需要使用……工具|软件|系统来解决……问题;……工具|软件|系统常用……技术实现,但是存在……问题。采用|基于|按照|提出……方法|架构|平台,设计……功能|模块|特性,开发……模块|功能|系统,满足……需求。经过……测试验证,该工具|软件|系统能够……。


3. 摘要(英文)


需要指出的是,实际上英文论文中的摘要写法是跟中文摘要不太一样的,但是基本上按照中文摘要翻译过来也问题不大的。实际上绝大多数中文论文的英文摘要都是这样做的。还是那句话:不要用翻译软件整句整段地机器翻译!自己一句一句用Poor English去翻译,只要不出语法错误,都没有毛病。


在这个级别的学校,确实有一些老师是不看(不懂)英文摘要。对于这个,我只能说:祝你们好运!反正,在我这里是行不通的!


4. 前言


(写太长了,后面我节奏快一些。)

前言内容分成三个部分:(1)大背景。介绍所开发软件所处行业背景,最好引用一些数据(上网找),注明出处。让人觉得,你做的软件确实有必要。(2)研究意义。借着背景,点出问题(所开发软件所解决的需求),然后说明有了你的软件之后,能带来哪些好处?(3)研究现状。包括国内和国外的研究现状。这里软件开发的工程类题目很好写,并不需要大量看文献,你大量搜索相关软件就行。国内有哪些同类软件,同外有哪些同类软件。然后,这个时候你就知道为什么不要选择哪些太常见太普通的题目了。因为在罗列软件之后,要点出它们的缺点来。它们没毛病,你干嘛要再开发一个?你选一个没毛病的常见软件,当然在这里就写不出来了。


其实这里通常最后还要加上一段,不过这一段是统一套路的:说明文章结构。第二章写什么,第三章写什么,略。


5. 正文(关键技术)


注意:只写你在做这个毕业设计(软件)时用到的技术。你用Java开发一个系统,就别去写PHP、.NET。所有软件都会用到3、5个技术的。你从上到下找,如客户端(界面)用了什么技术;服务器用了什么技术或平台;可以再深入写所用到的中间件技术;最后数据库用的是什么;实在觉得少,还可以写中间用到一些网络协议;等。


再注意:这里千万别去所使用技术网站上复制粘贴技术介绍。现在论文都要查重的,只要是复制粘贴的,就是自己害自己,傻到不可救药。怎么做呢?就按照自己在开发软件时怎么用这个技术的思路去写。完全用自己的话去写。看着技术网站,用自己的话去写,都可以。肯定不会重复。


6. 正文(需求分析)


选修我UML课的好处:用例图 + 用例规约,完全可以写出漂亮的需求分析来。如果你实在没有上UML课,或者上了也没有学到什么(可能性很小,除非不及格),那就用文字写。用列举的方式,一点点一个个地写你的功能需求。


需求分析是论文的重要部分,一定要详细详细详细!


正文从这里开始可能出现图片了,这个要特别说明一下。首先,所有图片都必须添加编号,编号用一个数字表示就可以,从图1、图2、……一直递增下去就行。这里一定要使用Word的自动编号,加上自定义样式,每一张图都格式刷去统一格式。其次,最重要的一个原则:每一张图都要有对应的文字描述。什么意思?不能连续无目的地贴一堆图,例如贴代码(我一会儿再说),而没有文字说明。图的作用是,强调和呼应文字论述,一般是你用文字说明一个问题时,用一张图来加深说明,通常会有“如图1所示”这样的词汇。


杜绝大面积贴代码,一会儿再说。


7. 正文(系统设计与实现)


首先,来一个架构设计。画一张架构图上来,也可以是拓扑图。然后,按照图中的元素一一说明架构各个部分的作用。做到与“第2章:关键技术”相呼应。但是,这里是讲各种技术是用来实现系统的哪些部分或需求。


然后,分小节写各个模板的设计。实际上,实现可以与设计一起写,当然最好是分开写,但是重点是:这时候可以“优雅地”贴代码了。如何优雅呢?因为这是论文,而论文就是在讲一个故事。软件工程(开发)的论文就是在讲你开发这个软件的故事(前因后果)。前面的需求是讲为什么要开发?这里的设计与实现就是讲具体是怎么开发的。


在写一个模板的设计和实现时,当时涉及到一些设计模式的运用、具体各个层次的设计或者特定算法的实现时,就可以在相应地位置贴上代码。我推荐用图片的方式来展示代码。同时,一定只展示(截图)关键的代码段。绝对不要把整个源文件的内容,全选后复制粘贴到论文中,也完全没有必要放在附录中。例如,写到某个功能数据访问设计时,可以贴一小段使用Hibernate映射实体的代码。这样才是优雅地贴代码。当然,记住:文中肯定有“如图2所示代码”这样的字样。


所以说,大面积连续贴代码,是完全没有根据的。


最后,(假设有的话,)可以阐述数据库的设计。这里也一定要注意:绝对不要把你的数据库表定义代码全部贴到论文中。数据库设计,当然是要讲设计步骤和结果,要有概念设计(E-R图或UML类图),而不是把结果扔上来。贴最终的表结构定义也是没有意义的,论文的关键是要讲清楚你是怎么得出这些表结构(物理设计)——也就是概念设计。


另外:如果前面使用UML做了需求,这里最好用UML类图。


又另外:如果系统的前端设计很重要或很特别,可以单独做一个界面设计


又又另外:如果开发环境、步骤或方法比较特殊,可以单独详细阐述;如果不是,则简短说明即可,或者用一个表格列举所使用的开发工具。


8. 正文(系统测试与实施)


系统测试很重要,但是论文中并不需要太大篇幅阐述。但是,起码要讲清楚三点:(1)所使用的测试方法;(2)所设计的设计方案;(3)测试最后的结果。形式不限,把这几点讲到了就好。


要写一下系统试运行或上线部署的结果,包括部署和运行环境。跟前面的架构设计相呼应。


9. 结论


结论是对整个毕设课题工作的总结,但是内容要限定在本论文所阐述的范畴。讲清楚系统开发的最后结果,对整个系统的开发过程、方法和结果进行总结。如果系统开发工作,发现了一些之前未发现的想法,目前未实现,或者未解决的问题,则都可以作为展望写在结论中。


10. 附录(一般不要)




有人总喜欢问:论文要写多少字?其实这个根本不是一个问题。你把上面各个部分写清楚,字数肯定是够的。一般论文并没有限制字数上限的。写论文的关键是,把你要讲的故事讲清楚、讲完整。这才是关键。在写的过程中,软件工程相关课程所学的东西,如软件方法、开发过程、设计方法、设计模式、设计工具等,都会在论文中使用到。


再次特别说明:本文所写只针对软件工程和软件开发类工程性本科毕业设计论文,不适用于本专业或其他专业的研究型毕业论文。


以后再写写研究型论文的写作注意点吧。




我对于毕业设计和毕业论文的看法可能和其他人不一样。我觉得这个环节非常重要,甚至它对于本科生培养的作用应该占到整个本科阶段培养过程的30~50%。因为在一般的院校,毕业设计可能是一名本科生4年学习下来第一次独立完成的第一个作品(软件)。其实,我在读硕士的时候也有这个感觉,觉得写完毕业论文和答辩完(熬过)之后,自己才真正脱胎换骨了。


正值毕业班同学正在写论文,我还有一位指导学生拖后腿中,因为刚好我最近在休假,无法当面指导,正好写成了书面形式了。顺便分享出来,哪里说得不对的,欢迎指正!(完)


本文为原创文章,

转载请通过“给我留言”菜单联系。