如何撰写工程报告类论文
2009-02-04林广艳麦中凡
林广艳 麦中凡
摘要:软件工程硕士是我国面向企事业单位培养的高层次、实用性、复合型软件人才,其毕业生撰写的论文通常以工程报告型为主。对于如何撰写研究型论文,已经有比较成型的模式,但如何撰写工程报告目前还存在较大争议。本文总结了笔者多年的论文指导实践工作,针对工程报告类论文的目标定位及其论文撰写中常见的困惑,提出了自己的处理思路,并在此基础上提出了工程报告类论文的基本结构,希望为工程报类论文的撰写提供指导。
关键词:软件工程硕士;工程报告型论文;研究型论文;论文撰写
中图分类号:G642 文献标识码:B
对学位教育而言,毕业设计(论文)是对学生数年所学知识的一次检阅,以某个问题的解决为依托,表现作者的能力和水平(包括知识、技术和写作表达水平)。一般按所在专业职场选题,以本专业术语、概念、方法陈述问题的解,并论证本解决方案可行和结论的正确。最重要的是突出本文的创新。因为论文是给人看的,是对本论题的新做法、新理解,或新结论。哪怕是只有一点点参考价值,也是论文的价值所在,属作者的知识产权。通篇无创新的论文是毫无意义的。软件学院软件工程硕士培养目标是面向国民经济信息化建设和发展需要、面向企事业单位对各类软件工程人才需求,培养高层次实用型、复合型软件工程人才,自然撰写工程报告型论文居多。本文拟为软件学院作工程型毕业论文的学生提出一些参考意见。
1工程报告型论文
众所周知,毕业论文有理论型、研究型和工程型三种类型。软件学院的工程硕士按现有的培养方案,至少要有一年的企业工程实践,结合工作选作工程型课题是很自然的,但不等于说只限于工程型。比如该企业研究所作一探索型的原型开发,那么就要作研究型的课题。甚至为了原理和方法的完备要作理论型课题。之所以分为三种类型是论文的内容结构形式不一样。
理论型课题在于创新性和严谨性,在设定的前提与假设下证明所提出的原理、方法的正确性。即前提加规则可导出结论,并给出数学或形式证明,或给出实例验证的数据和图表。因数学和形式证明不强调实例的完备性和实用性,故比验证更具普适性。
研究型课题是新原理、新方法的首次应用,以及对实践结果(工程原型)作出评价。只求研究点的完整正确,不求实用,是理论到实践的实施过程,不像理论型只注重结果,而是过程和结果均重要。
工程型论文一般以工程制作(最常见为工程项目)为背景,是已有原理、方法、技术在目标系统上的综合实现。如果是前所未有的综合实现,也属创新。创新可以在实现过程上,也可以在过程某些环节的技术层面上,如同样采用新的调试方法,同样功能设计新算法等。总之,不能和相同类型的论文雷同(因为采用的技术步骤相差无几),要有自己特色。工程型论文要求论文系统完整(在概念上的,而非完整文档,如三个相似模块均要提到,但只详述其中一个),所述的背景项目是可实用的,是本人在工程实践中的总结和提高。论述的重点可以是工程过程改进、工厂技术改进、管理完善、社会效益等,非常重视验证数据和量化指标,如测试用例15组等。
软件学院的软件工程硕士培养目标强调实用型人才,所以论文选题以工程型为主,但不等于只作工程型选题,因为科学技术的发展,都是在解决工程实践中的难题,也因此才有原型研究,才有理论探索,所以在工程型论文中嵌入小型算法推导、部分原型研制也是极其自然的。
2常见的困惑
尽管大家对论文撰写的基本要求比较了解,但在实际撰写中经常会碰到许多困惑,归结起来可以分为论文层次、内容、与工作的关系、读者层次把握几个方面,下面谈谈我们对这些问题的认识。
2.1论文是对工作的总结和提高
一年工作下来有许多体会,实际工作有的写了不少代码,有的写了不少文档,有的代码文档都很少,讨论方案、协调需求居多,要写出相对完整的论文不知从何下手。
论文不是工作汇报
论文要讲一个相对完整的“故事”。一年换了三个地方,每个地方都是协调别人工作,也编写了不少程序代码——写什么?把你最得意有收获的地方编到一个“故事”中,所以不是干什么,写什么。为了故事的系统性,有些工作就写不进去了,要舍得丢弃。要系统完整则会把别人的工作写进来,那么就得尊重知识产权,交待了原理功能特色之后要声明××地方是别人做的,也不要着力发挥。
论文要反映学术价值,不反映劳动价值
毕业论文属学术论文范畴,你开发数万行代码,加了不少班,在极不理想环境下完成了任务,但原理方法都很一般,说不出什么,怎么写?只谈“功劳”,不谈“苦劳”,最多只能在行文中说明本项目工作量不小,影响或学术成果更高。把重点放在你对问题的分析上,解决同样的问题有很多种方法,要有针对性地分析这些方法的优势与不足,说明你采用某种方法的理由。
2.2论文要有中心论点
反问一下,这篇论文到底要突出什么问题?工程报告类论文仍然是论文,因此要有中心论点。在撰写中需要注意几个问题:一是与工程文档的区别,文档更注重结论的陈述,要求全面翔实。论文强调结论的导出过程,要充分突出“论”字。二是不同于一般的报告,论述、评价要客观,实事求是,切忌夸大的商业用语。切忌为了表现水平抄一些与本主题无关的功能、性能和用途。
在说明自己论点正确时,所用术语不能错,要掌握本课题当前发展方向,要站在正确的立场谈过时的技术,因为每种软件技术都只能在限定的条件下起作用。因此,大量抄录,没有观点、论点的论文不是好论文。
论文中应明确表述:在什么背景下,讨论什么问题,范围如何限定。本文要讨论的问题当前非研究解决不可的理由,国内外解决此问题的途经,本文将采取什么途经?对于首次应用于我国某行业的成熟技术论述的重点在具体实现上,对于非首次实现的技术应该明确给出被采用的理由,如出于成本考虑,或某项性能考虑等。
2.3论文面向的读者是本专业研究生层次
论文强调逻辑性,工程课题强调概念动作要以业务动作导出各项需求,要求什么技术,相互为何关联,需要什么样的基础设施支持,象讲故事一样谈原理和机制。尽量不要指定关键、重点,而是在行文中突出重点,所以每章小结可以起到画龙点睛作用,不怕重复。不要以为自己知道的别人一定知道。论文的读者水平应设定为与你具有同样研究生水平,但不做你这个课题的人,所以有些概念术语要介绍。高水平的几句话就可说明,难度大的要讲详细,切忌忽高忽低。还要避免大段代码、图或表的堆砌问题。
3论文的形式结构
学习过软件工程,软件学院的工程型论文最好写,基本上按背景项目的工程过程写。下面谈谈如何撰写以“×××系统的设计与实现”为题的工程报告类论文。这类论文是以解决实际应用问题为驱动力,因此,建议论文结构包括绪论、系统需求分析、系统解决方案、系统详细设计与实现、系统测试与部署、总结与展望几个部分。
因为是将是否解决实际问题作为主要考察点,因此在论文的绪论部分,应以最简捷的方式向读者介绍与本论文主体相关的待建系统所依托公司或组织的背景,说明论文的价值。如果要构建这样一个系统,接下来要考虑的问题是要建成一个什么样的系统。在国内外现状分析中,应针对目前国内、国外同类产品进行比较,其目的有二:一是了解构建这样一个系统应具备哪些基本功能;另一方面要说明尽管市面上有很多(也可能没有)同类产品,但以实用、价廉或知识产权等因素综合考虑后,无法通过商购实现目标,因此做出自己开发的决定的理由。接下来明确系统的建设目标和需要重点解决的关键问题。
第一部分主要是交待背景,明确待建系统目标。第二部分则要描述具体要解决的问题,即系统需求分析。需求分析中最好首先对待建系统所承载的业务进行概述,使读者尽快进入业务语境。业务概述中应重点描述当前阻碍业务发展的主要问题,它们也是待建系统需要重点解决的问题,为后续的功能需求和非功能需求分析做铺垫。这部分要把系统的关键需求谈透,以便后续章节可以集中精力论述设计与实现方案的探讨。
论文的第三部分是系统解决方案。这部分最好从需求分析中提出的关键问题入手,逐一探讨对系统影响面大,或技术实现风险大,或涉及用户商业决策等的问题,给出针对本系统的最佳解决策略,然后汇总成系统总体架构,最后给出系统的模块划分。
如果本项目采用的是新技术,新规范,新平台工具或部分新原理,则在需求分析前后,开辟一章介绍这个新技术、新规范、新平台工具、新原理,如软件Apach刚出,第一次采用Vista操作系统等,并作为本论文的重要技术内容。
论文第四部分是系统的详细设计与实现。论文只谈工程实现中有特点的子系统/模块,如果一点儿特色没有,谁来都会这么干,就笼统论述有多少模块/对象,用什么工具开发,要什么支持,怎样集成的。如果有必要写,则重点讨论某些有代表性的重要模块的详细设计与实现思路。如具体算法复杂,或技术实现难度大、工作量大等,对于实现情况类似的模块则一带而过(这也是文档与论文的区别)。
论文第五部分是系统测试与部署。该部分应针对待建系统特点有针对性地提出测试部分需要重点验证与确认的主要需求指标,并选择具体的测试策略和测试过程。讨论系统部署中需要注意的问题。最后给出系统的总体评价。在此部分需要注意的是,该部分是对需求分析部分提出的要求回应做得如何的直接体现。因为是以解决实际问题为驱动力,因此做的结果非常重要,如果没有这部分,论文的实际意义就不存在了。
论文的第六部分是总结与展望,主要是在总结成绩的情况下,谈谈以后如何克服不足。最好首先总结自己的论文工作及后续的改进,然后抒发较理想的结果(从工程技术角度)。
上述论文结构对大家并不陌生,但能写好的关键是在全篇中都以解决实际问题为源动力,所有技术、方案的优劣都以是否在组织现有资源可承受的范围内提出最适合的解决方案为目标,这实质就是在贯彻软件工程的思想。
4结束语
对于软件工程硕士研究生来说,作为基本要求“能干活”,都能达到,但能干活的同时又能写出好论文的学生却相对匮乏,这也是我国软件高层次人才断档的主要原因。能写出直接指导实际工作的好论文的人,一定工作完成也很好。因为好的实践总结的出炉,不但需要有大量的实践积累,同时还必须具备在实践中勤于思考、善于总结、抽象提炼的良好习惯。软件工程硕士论文撰写能力的训练正是为了培养学生在实践中思考、总结与提高的能力,以期在后续工作中能更好地举一反三,不断进步。
参考文献:
[1] 北京航空航天大学软件学院. 北京航空航天大学软件学院软件工程硕士培养方案[Z]. 2003.
[2] 教育部高等教育司. 高等学校毕业设计(论文)指导手册——电子信息卷[M]. 北京:高等教育出版社,1998.