时间:2022-01-27 07:43:17
序论:速发表网结合其深厚的文秘经验,特别为您筛选了11篇软件开发专业论文范文。如果您需要更多原创资料,欢迎随时与我们的客服老师联系,希望您能从中汲取灵感和知识!
自21世纪高等教育改革以来,全国各高校招生规模不断扩大,导致毕业生数量也相应大规模增加,给高校学生的求职择业带来了严峻的考验。为了可以跟上时代的步伐,为求职带来一些实际项目经验,计算机专业越来越多学生选取了软件开发作为毕业设计课题。然而,在各高校实际当中,本科毕业设计质量已经下降,软件开发类论文与实际完全脱节,归根结底是没有一个可以从头到尾指导学生进行软件开发的学习模式,主要存在下面几个不足之处。
1.1 学生问题
学生设计能力低,编程水平差,无项目实际经验,既不知道软件开发的基本理论与方法,也不知道程序语言代码编写和开发工具界面操作,甚至不知道从何处开始下手准备毕业论文,成为目前软件开发类毕业论文质量差的根本原因;学生思想上存在误区,不重视毕业设计的重要性与必要性,认为毕业设计与普通课程一样,对毕业设计敷衍了事,不愿意花时间和精力认真努力开发软件,总是被动、消极地接受学习,成为软件开发类毕业论文质量差的直接原因。
1.2 学校问题
学生在大一至大三期间,一般只是简单地开设各科课程,并没有将所有软件开发类课程结合起来,直接导致出现学生软件设计能力低与开发水平差的现象;从论文开题、中期检查到论文答辩等过程中,并没有严格技照各种材米斗上交的日期进行,普遍是最后答辩时上交补交所有材料,甚至包括论文开题报告,直接导致学生消极怠慢的态度;最后的毕业论文考核是最关键的问题,也是目前毕业论文相关制度中管理最混乱的一部分。既没有一套规范毕业论文考核标准,也没有对毕业论文的中间过程进行监控,就连最后的论文答辩也只是流于形式。
1.3 教师问题
大部分教师没有项目开发实际经验,只知道软件设计理论基础,不能全方位地指导学生,更加无法让学生能够主动积极地学习,成为毕业论文水平不高的原因之一。
2.CDIO教育模式
CDIO教育模式继承和发展欧美20多年以来的工程教育改革理念,将“做中学”和“基于项目教育和学习”的集中概括和抽象表达,是2004年由麻省理工学院和瑞典皇家工学院等四所大学研究创立,CDIO分别代表了构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate)等四个学习过程,它以产品研发到产品运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习。CDIO培养大纲将工程毕业生的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力四个层面,大纲要求以综合的培养方式使学生在这四个层面达到预定目标。
本文将CDIO模式的构思、设计、实现和运作等四个学习过程引入到计算机软件开发类毕业设计中,要求严格按照构思、设计、实现和运作这四个阶段进行,并将每一个阶段的成果都作为毕业论文考核的依据,以此调动学生的积极性与主动性,既能让指导老师清楚整个设计流程,并根据阶段安排加以指导和督促,也能让学生愿意付出时间和精力努力投入到毕业设计当中。在弥补学生软件开发水平不足的同时,提高学生思考问题、综合设计的能力,最后达到提高毕业论文质量的目的。
3.基于CDIO模式的计算机软件开发类毕业设计
3.1 构思阶段
毕业论文是从学生的选题开始,一般是由老师提供一系列题目,再由学生根据自己的具体情况选择,这种方式遏制了学生的主动性。应该由学生根据自己的爱好、专长和对将来的职业规划等情况,利用各种参考资料主动搜索与查找适合自己的题材范围,再在老师的指导下确定毕业论文题目。不仅能够调动学生的设计积极性,为后面的毕业论文工作提供有利条件,而且还可以培养学生查阅资料和思考问题的能力。之后,指导老师提供软件开发类参考资料,并在中国知网等学术平台搜索课题相关文献,确定论文的基本要求,给学生下达论文任务书。学生根据接收到的任努书,利用软件工程专业书籍、中国知网等学术平台、论文相关的Web网站,查阅大量的资料,了解论文的背景、研究现状和开发意义,确定论文的研究内容和幵发中的关键问题,撰写论文幵题报告,完成软件开发的构思阶段。
3.2 设计阶段
设计阶段主要包括需求分析和总体设计,正式开始毕业论文的设计工作。根据资料查阅、市场调查和企业要求等形式分析软件产品操作流程、功能列表,完成系统需求分析,并在需求分析的基础上重点进行功能设计、模块划分、模块接口规范、数据库概念设计及数据库逻辑设计,在老师的指导下反复修改不断完善,最终确定系统的总体设计。然而,在软件开发设计阶段,学生论文还没有开始写,软件程序也没有完成,指导老师无中期检查依据,不能有效地督促学生开发设计。因此,在设计阶段完成之后,应该形成需求分析、数据库设计、概要设计等相关说明书,作为毕业论文中期检查的材料,纳入论文考核的范围。
3.3 实现阶段
实现阶段是学生毕业论文工作的重点,也是毕业论文设计工作量最大、所需时间最长的一个阶段,直接决定最终毕业论文的质量水平。学生需要掌握软件开发工具、程序设计语言等基本理论与方法,根据系统总体设计的功能模块、接口规范等进行数据库的实现、程序代码的编写,并反复运行与测试。此阶段生成详细设计说明书、编程规范、测试等文档,作为毕业论文第二次中期检查材料。在这个阶段有了指导老师的督促,能够完全确定系统功能,不至于在后期阶段又需要反复修改。
3.4 运作阶段
根据前期产生的开题报告、需求分析、数据库设计、概要设计、详细设计、编程规范、测试等文档和开发好的软件系统撰写毕业论文,并参与论文答辩,是学生毕业论文的总结阶段,不仅着重体现学生的写作水平,更能了解学生对软件的学习情況,是分值比重最大的一部分。最后,将所有文档和论文、答辩情况一起评分,获得毕业论文成绩。
自21世纪高等教育改革以来,全国各高校招生规模不断扩大,导致毕业生数量也相应大规模增加,给高校学生的求职择业带来了严峻的考验。为了可以跟上时代的步伐,为求职带来一些实际项目经验,计算机专业越来越多学生选取了软件开发作为毕业设计课题。然而,在各高校实际当中,本科毕业设计质量已经下降,软件开发类论文与实际完全脱节,归根结底是没有一个可以从头到尾指导学生进行软件开发的学习模式,主要存在下面几个不足之处。
1.1学生问题
学生设计能力低,编程水平差,无项目实际经验,既不知道软件开发的基本理论与方法,也不知道程序语言代码编写和开发工具界面操作,甚至不知道从何处开始下手准备毕业论文,成为目前软件开发类毕业论文质量差的根本原因;学生思想上存在误区,不重视毕业设计的重要性与必要性,认为毕业设计与普通课程一样,对毕业设计敷衍了事,不愿意花时间和精力认真努力开发软件,总是被动、消极地接受学习,成为软件开发类毕业论文质量差的直接原因。
1.2学校问题
学生在大一至大三期间,一般只是简单地开设各科课程,并没有将所有软件开发类课程结合起来,直接导致出现学生软件设计能力低与开发水平差的现象;从论文开题、中期检查到论文答辩等过程中,并没有严格按照各种材料上交的日期进行,普遍是最后答辩时上交补交所有材料,甚至包括论文开题报告,直接导致学生消极怠慢的态度;最后的毕业论文考核是最关键的问题,也是目前毕业论文相关制度中管理最混乱的一部分。既没有一套规范毕业论文考核标准,也没有对毕业论文的中间过程进行监控,就连最后的论文答辩也只是流于形式。
1.3教师问题
大部分教师没有项目开发实际经验,只知道软件设计理论基础,不能全方位地指导学生,更加无法让学生能够主动积极地学习,成为毕业论文水平不高的原因之一。
2CDIO教育模式
CDIO教育模式继承和发展欧美20多年以来的工程教育改革理念,将“做中学”和“基于项目教育和学习”的集中概括和抽象表达,是2004年由麻省理工学院和瑞典皇家工学院等四所大学研究创立,CDIO分别代表了构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate)等四个学习过程,它以产品研发到产品运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习[3]。CDIO培养大纲将工程毕业生的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力四个层面,大纲要求以综合的培养方式使学生在这四个层面达到预定目标[4]。本文将CDIO模式的构思、设计、实现和运作等四个学习过程引入到计算机软件开发类毕业设计中,要求严格按照构思、设计、实现和运作这四个阶段进行,并将每一个阶段的成果都作为毕业论文考核的依据,以此调动学生的积极性与主动性,既能让指导老师清楚整个设计流程,并根据阶段安排加以指导和督促,也能让学生愿意付出时间和精力努力投入到毕业设计当中。在弥补学生软件开发水平不足的同时,提高学生思考问题、综合设计的能力,最后达到提高毕业论文质量的目的。
3基于CDIO模式的计算机软件开发类毕业设计
3.1构思阶段
毕业论文是从学生的选题开始,一般是由老师提供一系列题目,再由学生根据自己的具体情况选择,这种方式遏制了学生的主动性。应该由学生根据自己的爱好、专长和对将来的职业规划等情况,利用各种参考资料主动搜索与查找适合自己的题材范围,再在老师的指导下确定毕业论文题目。不仅能够调动学生的设计积极性,为后面的毕业论文工作提供有利条件,而且还可以培养学生查阅资料和思考问题的能力。之后,指导老师提供软件开发类参考资料,并在中国知网等学术平台搜索课题相关文献,确定论文的基本要求,给学生下达论文任务书。学生根据接收到的任务书,利用软件工程专业书籍、中国知网等学术平台、论文相关的Web网站,查阅大量的资料,了解论文的背景、研究现状和开发意义,确定论文的研究内容和开发中的关键问题,撰写论文开题报告,完成软件开发的构思阶段。
3.2设计阶段
设计阶段主要包括需求分析和总体设计,正式开始毕业论文的设计工作。根据资料查阅、市场调查和企业要求等形式分析软件产品操作流程、功能列表,完成系统需求分析,并在需求分析的基础上重点进行功能设计、模块划分、模块接口规范、数据库概念设计及数据库逻辑设计,在老师的指导下反复修改不断完善,最终确定系统的总体设计。然而,在软件开发设计阶段,学生论文还没有开始写,软件程序也没有完成,指导老师无中期检查依据,不能有效地督促学生开发设计。因此,在设计阶段完成之后,应该形成需求分析、数据库设计、概要设计等相关说明书,作为毕业论文中期检查的材料,纳入论文考核的范围。
3.3实现阶段
实现阶段是学生毕业论文工作的重点,也是毕业论文设计工作量最大、所需时间最长的一个阶段,直接决定最终毕业论文的质量水平。学生需要掌握软件开发工具、程序设计语言等基本理论与方法,根据系统总体设计的功能模块、接口规范等进行数据库的实现、程序代码的编写,并反复运行与测试。此阶段生成详细设计说明书、编程规范、测试等文档,作为毕业论文第二次中期检查材料。在这个阶段有了指导老师的督促,能够完全确定系统功能,不至于在后期阶段又需要反复修改。
3.4运作阶段
根据前期产生的开题报告、需求分析、数据库设计、概要设计、详细设计、编程规范、测试等文档和开发好的软件系统撰写毕业论文,并参与论文答辩,是学生毕业论文的总结阶段,不仅着重体现学生的写作水平,更能了解学生对软件的学习情况,是分值比重最大的一部分。最后,将所有文档和论文、答辩情况一起评分,获得毕业论文成绩。
写作流程
自考计算机专业毕业论文有1年准备时间,写作时间的分配主要取决于考生软件开发的进度,如果考生开发的软件很成熟,那末后续的写作时间就较快,否则后面的写作就会很被动。例如,一般会在每年7月份登记,9月底开题,期间开发软件,到第二年2、3月就要完成初稿,再留一个月修改。
1、选题。选题首先要重要、有意义。例如有的考生选择设计木马程序,其本身是个病毒程序,这样的程序只能带来危害,实际生活中没有意义,就不能用于做毕业论文。
2、开发软件。开发软件要与实际相结合。实际性非常重要,要自己能开发一个能实际运行的软件。有的考生自己并没有参与实际工作,只是看书是不行的。自己参与的可以是一个大的项目或课题组,论文中介绍完大的系统后,一定要把自己的工作量写清楚。
3、写论文。开发完就可以写论文了,论文是个总结,但是不要写成工作总结,一定要有主题,应体现自己的开发思想和论述自考本科计算机专业毕业论文写作指南自考本科计算机专业毕业论文写作指南。写论文要达到一定字数,一般要3万字。其中,编程代码一般为2-3千行,这个不是机器自动生成的代码,一定是自己写的源代码。
论文结构
计算机专业毕业论文一般有8个部分。1、概述或引言。这个部分相当于大纲,一般要求4-5千字,主要是对软件开发背景,使用的软件工具、环境,最后达到的效果,自我在里面的贡献等;2、需求分析。软件有哪些功能、模块,用的什么工具等;3、设计方案和主要技术自考本科计算机专业毕业论文写作指南文章自考本科计算机专业毕业论文写作指南出自http://gkstk.com/article/wk-78500001321796.html,转载请保留此链接!。主要是对里面每一部分的详细论述,使用的是什么技术,为什么使用。详细的模块分析或遇到的难点是怎样解决的等;4、具体的实现过程;5、测试。介绍自己开发软件实际达到的效果;6、总结。介绍自己开发软件的体会,或自己开发的成果使用情况,有什么评价,自己还有哪些不足,有什么需要改进的地方;7、致谢;8、参考文献。另外,还可以加一个“附录”部分。正文只能有一个中心,其他有重要参考价值的都可以放在附录部分。例如有重要的代码、图表,涉及其他领域的知识,需要解释的等都可以放在附录部分。
案例1:《家装工程预算软件的开放》1、概述;2、需求分析;3、总体设计;4、数据库设计;5、软件功能的实现;6、结论及改进;7、致谢;8、参考文献。
案例2:《经纬中天无线短信增值服务管理软件的设计和开放》1、引言;2、需求分析;3、设计方案论证和主要技术介绍;4、系统设计;5、编码实现;6、实际运行中出现的问题及相应的解决方案;7、结束语;8、致谢;9、参考文献。
答辩程序
答辩现场会有专业老师组成的答辩小组,一般为5人左右,学生抽签分配答辩组。答辩现场要考生做介绍和演示。考生需要提前准备幻灯片,一般不超过20张,为论文最核心部分的内容自考本科计算机专业毕业论文写作指南论文
WiseMedia
考生结合幻灯片介绍论文,答辩小组老师会根据考生论文提出问题,考生要实事求是回答,最后答辩小组老师打分,求平均分给出考生论文成绩。大部分考生都会达到优、良,个别考生没有通过论文,主要有两方面原因:1、论文并不是自己真正所做,用别人的软件为自己所用,老师一提问就能发现破绽;2、考生论得太简单,达不到工作量。这就需要考生踏踏实实地按照要求去作论文。
零碎提醒
论文的题目不要太大,一定要具体、实际,不能吹成通用的;
自考生考过全部课程后,最好能寻求实践机会。可以去应聘公司,真正参与一个项目,一边工作一边写论文;
论文不要上网抄,一定要自己做;
一、计算机毕业论文选题
计算机信息管理专业,是一个着重研究信息系统开发、应用的专业。这个专业所培养的人才,若按当前人才职位来讲,就是“系统分析师”的角色。同学们对此应有准确的认识,和自己所选择的计算机毕业论文题目,应当符合这个角色定位。
计算机信息管理专业的计算机毕业论文选题,应当适于进行“系统分析”的目的,这与一些“纯”计算机专业的要求是有区别的(如计算机应用、软件开发专业)。它们各自的侧重点不同。计算机信息管理专业主要探讨研究如何在组织管理中合理使用信息技术,也就是说既关注组织机构,又研究计算机技术,是一个“管理”、“技术”两门包的专业。这也是为什么在我们的专业课程中既有“数据库技术”、“软件开发工具”,又有“管理经济学”的原因。所以我们选择的计算机毕业论文题目应符合本专业的特点要求。
目录
众所周知,撰写毕业论文是各专业学生毕业前必须进行的一项重要工作,也是在毕业之前最后的一项学习任务。毕业论文的撰写要求学生综合使用在学
院学到的知识,解决实际问题或讨论实践中的话题。它主要考查大家掌握知识、结合实际和表达的能力。 ............... 1
一般的讲,计算机毕业论文要求同学们做的工作是:运用生命周期方法(SDLC)开发建设一个信息系统。选题可自主决定。 .......... 2
。一般的讲,计算机毕业论文要求同学们做的工作是:运用生命周期方法(SDLC)开发建设一个信息系统。选题可自主决定。
计算机毕业论文选题应满足这样的要求:
探讨管理信息系统(MIS)学术领域内的课题
选题有一定的规模,可以展开论述
结合自己的工作实际,了解的内容,可以说是“了解什么就写什么”
尽量不要选择他人写过多次的题目
二、计算机毕业论文所需资料
在确定了计算机毕业论文题目之后,就要开始进行实际的计算机毕业论文写作了。此时收集相关的参考材料十分重要。正如前文所提到的,计算机毕业论文工作要求,就是“分析建设系统”。无论哪项工作,都离不开参考材料来提供信息。
大家需要注意的是,在整个毕业设计工作中,“系统分析”是绝对的重点,也可以说是计算机毕业论文的核心。既然本专业培养的是“系统分析师”,那么这个专业的毕业生怎么可以在论文的“系统分析”内容部分马马虎虎、漏洞百出呢?因此,为了做好系统分析工作,准确分析一个单位的工作与业务,
就必须搜集该单位的相关工作资料,比如相关工作流程、制度、规章及单据、报表等等,通过这一系列的材料可以比较全面、详细地了解这个单位,准确做出分析。
由于“系统分析”是全文的重点,将来计算机毕业论文答辩时,系统分析部分也是评委们关注和考查的重点,因此这部分的工作一定要做好。资料收集的作用不仅仅体现在系统分析阶段。在后面接下来的设计、实施工作中,相关的资料也会为你的毕业论文撰写提供有用的信息。比如在进行程序设计时,相关的参考书会成为重要的依据,书中汇集了众多程序方面的智慧成果,可以从中借鉴,丰富自己的信息系统。
三、计算机毕业论文格式
计算机毕业论文格式规范、用词准确、要用术语(不要用俗语)。计算机毕业论文属于科技论文。文章应具备自己既定的毕业论文格式、规范,这样便于统一交流。从结构上看,整篇文章包括内容提要(中、英文)、目录、正文、参考文献、致谢等部分。在正文中,应注意一些公认的格式规范,比如“图”要有图号(按章编号:章-号)和名称要写在图的下方,“表”的表号(按章编号:章-号)名称要写在表的上方,即“图下表上”原则;应注意一张图或表与其名称不能分开在两页上,应当保证整张图、表及名称打印在同一页;注意各段落开头空两格,行距要适当等等。
计算机毕业论文的用语应当准确规范。例如“数据流图”(DFD)不要写成“数据流程图”,这样的“笔误”会暴露出你概念不清。在答辩评委审阅时,看到你在文中连基本的格式、概念都不懂,十有八九会影响成绩。因此请同学们记住:书写毕业论文,是一个需要“精益求精、咬文嚼字”的过程。
四、计算机毕业论文的文档
“软件=文档+程序集”——根据这个公式,同学们开发的信息系统——一个软件,包括文档和程序两个部分,那么对于计算机信息管理的同学来讲,应当重点着手准备哪一部分呢?综合本专业的特点,同学们应当着重书写文档部分。
如前所述,信息管理专业的计算机毕业论文主要考查的是同学们对系统的分析能力,分析的成果就是文件——分析报告。特别重要的是其中的“业务流程图”和“数据流图”,必须准确表达绘制出来,它们可以说是单位工作的“照片”,是下一段论文设计、实施的基础,也是最后论文成绩的重要组成部分,必须绘制得“天衣无缝”,确保图例符号正确、逐层分解准确、布局合理、命名规范。否则,对于你的毕业论文成绩来讲“后果是严重的”。对此同学们要特别注意。
之所以要强调大家多多关注文档,是因为总有一些同学几乎是“出自本能地”想尽早尽快地着手进行最后的程序开发,不注意前面的文档撰写。对此必须明确:现代的软件开发是一个集体协作的系统工程,而不是一两个人的作坊式生产(黑客除外)。而这个开发软件的集体,包括分析、设计、维护、管理等各方面的人员,计算机信息管理专业的同学,所应当承担的角色是“分析人员”,即要分析出系统应当“做什么”( What to do),写出文档。至于“怎么做”(How to do)那是程序员的事情,而不是你的主要任务。明确了这一点,就对这里所说的“着重文档”有所理解了。
整篇计算机毕业论文文档篇幅规模不能太低,基本上不能少于6000字,否则不容易将一个系统描述清楚,更不用说准确设计、实施了。这也是
前文提到“计算机毕业论文选题有一定规模”的原因。
五、积极与指导教师联络
在整个计算机毕业论文写作过程中,应积极与指导教师联系,对自己毕业论文的进展、遇到的问题及时与进行交流、探讨,按照指导教师的指导意见进行修正、改进论文,确保文章的质量。
一些同学因为是业余学习,平日里工作繁忙,有时无法按时在约定的日期与指导教师见面,为此应采用其他方法与老师联络,如电话、传真、E-mail等等。而且要尽可能地参加老师约定的见面会。通过与老师的交流探讨,确保自己的毕业论文沿着合格正确的方向进行。
指导教师对整个毕业论文成绩是很有发言权的,其中包括你平日对待毕业论文写作的态度成绩。因此,不要给指导教师留下你对毕业论文漠不关心的印象。
比如个别学生只是在最后论文答辩的那一天才来见一见老师交毕业论文,这样的做法应当竭力避免。
正文结构
计算机专业毕业论文正文一般有8个部分,一般要求6千字。
1、概述或引言。这个部分相当于大纲,主要是对软件开发背景,使用的软件工具、环境,最后达到的效果,自我在里面的贡献等;
2、需求分析。从用户角度来看,软件有哪些功能,处理那些数据和性能等;
3、设计方案和主要技术。主要是对里面每一部分的详细论述,使用的是什么技术,为什么使用。从专业角度详细的模块分析或遇到的难点是怎样解决的等;
4、具体的实现过程(用的控件、技巧和方法),从系统中截取图(少量);
5、测试。介绍自己开发软件实际达到的效果;(网站的特点)
6、总结。介绍自己开发软件的体会,或自己开发的成果使用情况,有什么评价,自己还有哪些不足,有什么需要改进的地方;
7、致谢;
8、参考文献。
另外,还可以加一个“附录”部分。正文只能有一个中心,其他有重要参考价值的都可以放在附录部分。例如有重要的代码、图表,涉及其他领域的知识,需要解释的等都可以放在附录部分。
1•1研究目标
研究的目标是,研究开发出科学、规范的项目管理领域工程硕士专业学位论文评审模型,并通过与另一应用软件开发课题配合,实现论文评审的电子化操作,努力使研究成果达到国内先进水平,并与国际接轨。
1•2主要研究内容与流程
(1)研究《标准》,建立评审指标体系。通过调查研究,结合《项目管理领域工程硕士专业学位标准》,建立学位论文评审指标体系。(2)借鉴国际先进评审模型,构建学位论文评审模型雏形。借鉴、引进、消化国际先进的项目管理评审模型,结合我国项目管理领域工程硕士专业学位论文考核特点,构建我国项目管理领域工程硕士专业学位论文评审模型雏形。(3)依据科学原理,构建模型。依据系统工程理论以及系统模型的构建原理,运用聚类分析、层次分析、对比分析等方法开发出满足我国项目管理领域工程硕士专业学位论文评阅和答辩考核要求的评审模型。(4)研究量化的评审方法。(5)对指标的权重进行设置,采用加权法等综合评审方法,系统设计定量评审方法。(6)设计科学公正的评审流程。(7)试运行,验证。(8)为实用软件的设计预留对接接口。本研究成果具有开放性和多适应性,也可以运用于解决类似的评估、评审问题。
2课题研究的开展
2•1主要技术路线
(1)明确目标、确定范围。(2)调查研究,收集信息、数据,进行统计分析。(3)找出主要因素,确定主要变量。(4)识别和分析各种关系(内含的科学定律,管理关系、规则等)。(5)形成系统模型雏形。(6)进行“验证、符合试验”,检查模型是否反映所研究的问题。(7)简化和规范模型的表达形式。
2•2研究工作重点
(1)重在调查研究。设计调查问卷,召开座谈会,深入调查研究,广泛和重点调查我国现有在岗的与项目管理领域工程硕士教育相关的专家、教授,已经通过论文答辩的项目管理领域工程硕士研究生,企业界的项目管理客座教授、研究生导师,在读项目管理领域工程硕士研究生;认真听取他们的意见、建议;以尽量掌握足量的、必要的、有代表性的信息。(2)精心构建模型。应注意以下几点:①应用现代项目评估的相关原理和方法;②借助社会上项目管理评估方面专家的智力;③借鉴国际、国内先进的相关评估模型,结合实际,改造创新,构建本模型。
3模型的构建
3•1模型构建的原则
在具体操作时充分考虑以下7个方面:(1)真实性。反映系统的本质。(2)简明性。反映系统的主要特征,简单明了,容易操作、求解。(3)完整性。系统模型全面、完整,应包括目标与约束两个方面。(4)规范化。尽量采用教指委现有的《项目管理领域工程硕士专业学位标准》和《论文评审参考标准》的相关内容,模型与现有标准互动和对应,在创新和与国际接轨的同时,尽量使之适用并有利于下一步的操作软件开发。(5)创新性。通过模型的建立和应用,克服原有标准的某些弊端,在模型体系结构、指标设置、综合评审等方面注意范围明确,尽量量化,以克服参与评审的教师、专家的随意性,专业关注的局限性;引导与规范教师、专家在发挥其专业水平的同时,注重全面、客观、公平、公正地按模型标准范围进行评审。(6)开放性。使模型系统化、模块化,参数可选择,可更改,有利于改进和拓展。(7)可操作性。为开发实用、可操作性的计算机管理软件奠定基础。本课题组和国内的软件开发公司做了沟通和交流,可以开发出简单可操作性的软件。
3•2评审模型结构设计特点
项目管理领域工程硕士专业学位论文评审模型系统结构采用模块式,包括四个子系统模块:(1)评审目标设置。(2)评审指标(标准)与权重体系设计。(3)子准则和评审量表设计。(4)评审程序与制度设计。同时,给出可以选用的空间,以备选择应用。
3•3项目管理领域工程硕士专业学位论文评审模型
本研究所建立的模型是一个完整的系统,分为类、指标、子准则3个层次,如图1所示。指标层用于综合评分的累计,子准则层用于量化计分,采用100分制。通过对子准则评分得到其分数,再乘以相应的权数,然后累计加和(采用加法规则),即可以得出被评审项目的评审分数。图1中的子准则只是通过一个例子进行了示意,评审流程如图2所示,详细的量化评分表如表1所示。
3•4模型特点及用到的方法
中图分类号:G434文献标识码:A文章编号:16727800(2011)012022403
作者简介:许永昌(1976-),男,山东安丘人,硕士,山东英才学院计算机学院讲师,研究方向为计算机应用。
0引言
毕业设计是高等院校应届类毕业生在毕业前接受课题型任务,在教师指导下进行科学研究或工程实践并取得成果的过程,是高校实现人才培养目标的综合性实践教学环节,是一次理论与实践相结合的的锻炼机会。如何在新形势下改革毕业设计, 提高学生软件类毕业设计的质量,进一步规范毕业设计中的软件开发过程,抓好高校毕业设计这一实践环节,加强对毕业设计过程的管理与监控, 切实提高毕业设计的质量,对于软件类学生在毕业设计中实施合适的软件设计具有重的指导意义。
1毕业设计的必要性
高等职业教育应该是以能力为本位、以学生为主体、以实践为导向的教育。毕业设计是高等教育培养学生综合运用所学理论知识和技能解决实际问题能力的重要环节之一,是衡量毕业生是否达到相应学历层次的重要依据。毕业设计将总结专业基础和专业技术的学习成果,锻炼和开发学生的综合运用能力。
高职院校软件相关专业组织毕业设计应该符合新的人才培养标准,对培养学生的职业技能和素质要具有积极的意义。而对于即将毕业离校的应届毕业生来说,毕业设计无疑是计算机软件各相关专业理论教学、实验、实训等有机结合的途径之一。
通过毕业设计能锻炼学生的能力:
(1)实践软件工程的相关原理能力。毕业设计的过程,是一个课题小组从接到开发任务到提交产品和文档的过程,其中涉及到需求分析、概要设计、详细设计、编码、测试、程序打包、编写文档等软件工程具体的各个方面。经过锻炼,学生们对软件工程学思想和方法的理解会大大加深。
(2)解决具体问题能力。在毕业设计的进行过程中,学生一定会遇到平时在课堂的理论学习中碰不到的困难和挑战, 而克服这些困难、解决实际问题的过程就是软件技术和心理素质逐步提高的过程。
(3)团结协作的意识、能力。通过毕业设计这一过程,学生就会产生团结协作的意识和能力。
2软件工程学的基本思想
软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法去进行软件的开发和维护的学科,包括两方面内容:软件开发技术和软件项目管理。其中,软件开发技术包括软件开发方法学、软件工具和软件工程环境,软件项目管理包括软件度量、项目估算、进度控制、人员组织、配置管理、项目计划。
3高职类学生毕业设计现状
毕业设计的主要目的是培养学生综合运用所学的基础理论、基本知识和基本技能,用以分析、解决工程、科研、社会实际问题的能力,使学生得到工程设计方法和科研能力的初步训练。毕业设计中存在的问题主要表现在以下几个方面。
3.1选题的盲目性
只是把毕业设计环节作为大学生活的必经环节, 纯粹是为了完成学业而去做毕业设计, 造成选题的盲目性、有的选题则是陈旧。
3.2可行性分析与需求分析重视程度不够
绝大多数毕业生在确定了毕业设计的题目后,几乎不进行调查研究工作就立即投入到整个系统的设计中, 一旦遇到了与实际不符的地方, 又重新返回, 对已经做好的设计进行修改。最终导致设计的系统杂乱无章, 甚至到了最后只能马马虎虎地仓促交工。
3.3系统开发过程中的文档不够正规,不够完备
完整的设计不仅包括所完成的可操作的系统,一般的操作帮助,还包括在开发系统的过程中所产生的各个文档等一些文字的东西,比如解释清晰、内容全面的数据字典和使用手册也是必不可少的,否则用户会感到使用起来不方便,觉得难于操作。
3.4模糊的评价标准
导致毕业设计质量下降的一个非常重要的原因就是没有建立精确细致的评价体系。
这严重影响了项目的进度和质量,并且使学生没有真正得到必要的锻炼。我们通过对这些问题进行详细深入的分析,提出一个软件过程框架,这个框架主要从需求、测试、集成这3个方面给出工作要点和规范。
4利用软件工程学思想指导学生进行毕业设计
毕业设计本身是个工程,要用工程的方法去处理。从软件工程的角度去指导学生进行毕业设计,在毕业设计过程中,要系统地将所学知识应用于实际问题,按软件工程学思想展开工作。
图1软件生命周期与毕业设计各阶段之间的映射
4.1以可行性研究指导选题目
可行性研究,应该从技术可行性、经济可行性、操作可行性三个方面去研究,在毕业设计题目的选择过程中,应立足于解决实际问题,注重发现问题、分析研究问题和开发创新的能力。选题原则上,可以参考以下几点:①毕业设计的课题应该能使计算机专业所学的理论知识进一步理解并深化,也就是说,毕业设计应尽可能包括多门专业基础课和专业课的综合运用,并且要紧密结合工程实际,以有利于学生的全面训练;②选择难度适中的课题, 保证课题的完成质量;③课题要适合于各个模块独立进行,并便于最后统一调试;④课题规模应大小适合,难易程度适中。
4.2需求分析是关键
需求分析的基本任务是准确地回答“系统必须做什么”, 也就是对目标系统提出完整、准确、清晰、具体的要求。系统分析员可以通过多种形式来获取用户需求,对用户提出的需求进行分析,以此来确定其中要实现系统的功能。对需求划分优先等级,找出核心需求和重要需求,以保证系统构建的正确性。
在进行软件类毕业设计时,为了保证需求获取的准确性和全面性,可以让项目组的所有学生都参与到用户需求的获取的工作中来,发挥集体的能力,并由指导教师进行最终的确认。
4.3规范设计过程
需求分析完成后的下一个阶段就是系统设计,包括概要设计和详细设计。
详细设计阶段的任务就是深入每个函数内部,以伪代码或注释的形式实现整个函数,设计出程序的详细规格说明。
从系统设计开始,学生要按照软件工程的要求,画出DFD图,对输入、输出数据流进行详细的说明,建立符合软件工程规范的数据字典,根据DFD 图设计出模块结构图。
4.4重视文档写作
在毕业设计的过程中,要严格遵照软件文档的思想,记载设计过程的每一阶段完成了哪些设计,下一阶段的任务、目标及技术手段,这样,把文档作为整个设计的指挥棒,使设计有条不紊地进行。
4.5重视测试工作、撰写毕业设计说明书
软件测试工作也是软件开发的重要组成部分。通过实际应用效果和测试数据,毕业设计的成效就可一目了然。
毕业设计说明书的撰写是最后一个阶段,要求学生回顾设计过程,总结劳动成果,这时学生就会对软件开发及必须经历的几个步骤都有更深刻的认识。最后,要求学生对毕业设计进行系统的总结,写出毕业论文。
5加强对学生综合能力的培养
通过实践的练习,不仅能加深对理论的理解,同时也能锻炼运用知识分析问题、解决问题的能力。毕业设计这一实践环节是高等学校培养学生实际能力的主要手段,也是高等教育的重要组成部分。充分、有效地设置软、硬件的毕业设计对学生能力的培养至关重要,可以缩短学校教育与社会流行技术、工具的差距,满足学生毕业后的工作需要。通过毕业设计必须达到培养学生以下方面能力的目的。
5.1工程实践能力
学生能够准确把握选题的逻辑重心和学术思路,能够运用丰富的专业知识进行处理,具有严谨的理论思辨过程,以锻炼毕业生的工程实践能力,使毕业论文具有一定的应用和学术探讨价值。
5.2书写和表达能力
毕业设计论文是毕业设计工作的总结和提高,和做科研开发工作一样,要有严谨求实的科学态度。在毕业设计期间,尽可能多地阅读文献资料是很重要的,毕业设计大多数是技术开发型的,其论文的主体部分应包括:总体设计、模块划分、算法描述、编程模型、数据结构、实现技术、实例测试及性能分析。这些内容根据任务所处的阶段不同,可以有所侧重。
5.3创新能力
提出创新要求后,带领学生认真复习或补学过去没学过、没有学好的课程,并在此基础上结合实际工作中出现的问题孕育出一些新的思路,将毕业设计推上一个新台阶的方式,与为每个人专门分配某一特定的作业来锻炼学生基本技能的方式相比,更能扩展学生的视野,培养创新能力。
5.4协作能力和团队精神
通过集体活动和成员沟通培养成员的团体情感,增强团队的凝聚力。毕业设计将一个学生从入学初到毕业前的软件专业课程的学习内容链接成线,实现了课程的真正衔接,也使学生在毕业前对软件方面所学的知识进行了比较完整的概括与总结,达到了良好的理论联系实际的教学效果。毕业设计弥补了课堂教学的不足,加深了对理论的理解,促使学生深入思考,敢于创新,同时使学生的动手能力、分析和解决问题的能力、书写和表达能力、协作能力等各项能力都得到了培养和提高。
6结束语
软件工程作为软件开发工程化、规范化的具体实施方法,在将其应用到毕业设计中之后,学生在软件设计的文档书写规范化等方面均有了很大的改善与提高。将软件工程应用于毕业设计中不仅仅完成了一门课程从理论到实践的过程,而且将一个学生从入学到毕业前软件专业课程的学习内容链接成线,完成了前导后续课程的真正衔接,也使学生在毕业前对软件方面所学的知识进行了比较完整的概括与总结,因此,软件工程学在计算机专业学生毕业设计中的应用具有重要的现实意义。参考文献:
[1]马冬来,宋雨,刘海龙.软件工程思想在高职院校毕业设计中的应用与探索[J].河北软件职业技术学院学报,2008(3).
[2]李国彬,沈淑清.浅谈软件工程学在软件类学生毕业设计中的应用[J].计算机教育,2007(6).
[3]张文静,卢海霞,杨捧.软件工程思想在毕业设计环节中的应用[J].河北农业大学学报(农林教育版),2007(4).
专业人才培养不具有明确针对性,人才培养结构合理性欠缺,专业人才培养层次相对单一。造成这一问题根源是地方院校对行业企业实际需求不明,导致专业人才培养定位不清。毕业生虽然专业知识结构比较全面,但实际工作能力不强,无法满足企业实际需求。
1.2专业课程设置不合理
课程体系建设是地方高校软件工程未来走内涵发展道路的核心。从调研地方本科学校现有软件工程课程体系实情来看,传统“学术型”课程体系架构占据主导,“应用型”与“学术型”课程体系架构区分度不明显。
1.3教师队伍应用型能力欠缺
地方高校软件工程现有师资队伍的实践能力不足,专业教师参与企业生产科研活动的力度不够。双师型结构教师比例低于30%。
1.4专业人才就业率低与企业“无人可用”矛盾冲突明显
软件工程专业高层次应用技术和技能人才数量严重不足,同时应用技术和技能人才培养的学历层次不高不能满足企业实际需求。地方高校软件工程专业定位和人才培养目标不明确、教学方式方法缺乏科学性、系统性,实践教学体系不完善,没有与行业就业有效对接,导致培养的人才无法满足社会生产实际需求,导致“软件工程专业毕业生无职可就,软件开发行业以及相关软件应用单位招不到满意的员工”现状普遍存在。
2软件工程专业课程体系理论设计
以行业、企业实际对人才需求为引导,软件工程专业毕业生真实就业情况调查为依托,地方高校软件工程专业课程一线教师众多教学研究成果为参考,专业教师在企业挂职学习经验体会为借鉴,围绕地方高校软件工程专业课程教学体系存在事实问题,来对地方本科院校软件工程课程体系建设进行设计建设。设计建议如下:
2.1学科建设
以专业相关的行业、企业人才的实际需求和当前使用的主流开发工具或技术为依托来不断调整专业架构,优化专业人才培养方案,完善人才培养目标,对专业进行合理定位,系统性调整教学方式方法,从而实现以行业、企业对人才的需求来引导地方本科院校软件工程专业的学科建设。
2.2校企办学
学科建设以输出满足行业、企业需求合格的应用型人才为目标,通过校企联合办学,对学生进行定向培养、训练,专业课程体系嵌入资格认证课程模块,实训课程以企业开发项目方式贯穿培养环节以达到提高专业人才的实际动手能力。
2.3师资建设
采取教师企业挂职锻炼参与企业项目研究开发,共同承接开发项目等方式锻炼提高师资队伍实战能力。教师在企业实战经历和相关经验成果带入到日常的教学环节,不仅能促进专业教师学术、科研能力提升,还能够最大程度丰富、提高专业学科建设。
3三层结构课程体系建设
软件工程专业课程体系建设以工程教育理念为指导,项目实战为背景,社会需求为导向,提高学生专业素养、理论知识体系以及实践能力为宗旨。学生完整地专业培养环节结束后具有程序设计,系统分析,软件设计、开发,项目管理,网络和移动通信终端应用开发能力。
3.1基础理论
由公共基础课程和专业基础课程构成:
①公共基础课程主要涵括地方高校各现行必修公共课程,
②专业基础课程是专业课程坚实的理论基础,专业必修前导课程,是对软件工程专业基本“计算”概念理解、掌握,问题计算求解能力和构建中小规模软件系统综合能力的初步培养。
3.2专业理论
以市场对人才需求为导向、行业最新前沿技术为引领、专业骨干课程为核心、专业素质全面拓展和综合素养整体提高为目标来对专业主干课程进行建设,主要包括以下几类课程:
3.2.1面向行业认知能力培养课程主要包括对行业、企业认知学习以及计算机专业知识学习等专业认知方面课程。一般包括行业相关法律、法规,从业道德规范,行为准则,经营管理常规模式,软件项目开发流程等认知类课程。
3.2.2计算机编程与算法设计能力课程算法设计类课程主要包含离散数学、数据结构、算法分析以及数据结构课程设计等方面的课程;编程课程主要包含C语言程序设计、面向对象程序设计等传统程序设计语言课,还包括当下企业应用最为广泛的,最流行的技术前沿课程。
3.2.3软件工程专业系统分析课程系统分析能力课程主要包括操作系统、计算机网络,软件工程、数据库原理等系统类课程。
3.2.4系统实现与集成能力课程系统实现与集成能力方面课程主要包括网络编程、移动互联开发编程、编译技术、软件开发以及软件测试等课程。
3.3实践
以校企联合培养为手段,一至两学年时长为周期,贴近企业实际需求为指导,综合技能全面提高为目的来对专业学生进行实践能力培养,方式如下:
3.3.1校企共同建设实训课程以项目介入为主线,企业实际效益项目和高校产学研项目为实际授课主体。引进企业优秀项目人才或具有企业项目实战经验的教师来对专业人才展开课程实训,全面提高学生专业技能水平,综合素养。校企共同培养模式不但能够提高学生工程实践能力,知识转化生产实际速度,同时反向激发学生探究、学习知识的热情,最终提高就业竞争力。
3.3.2合作企业岗位实训针对毕业学生和部分专业老师做岗位综合实训:
①学生岗位实训:让学生真实参与企业项目实战,充分消化吸收前期所学理论和技能知识,进一步提升学生综合能力,为就业夯实基础。
②老师岗位实训:专业老师参与企业项目研发,并将企业项目开发经验和技术进行梳理总结、编纂成册,运用到实际日常教学环节,促进教学质量提高,有利于缩短理论转化实际成果周期。
3.3.3校企合作运用项目方式指导学生做毕业论文(设计)毕业论文(设计)是对学生的专业知识掌握程度与提升高度的一次全面的考核,同时也是培养学生综合运用所学知识,独立地分析问题和解决问题的能力的一次全面的实训。但是传统的教育模式导致大多地方院校工科专业学生毕业论文流于形式,与实际脱节。通过与企业合作运用项目方式指导学生做毕业论文(设计)弱化学生对毕业论文(设计)的抵触情绪,可以进一步让学生了解行业企业实际运作规范及最新技术,进一步加强对学生实践和技能能力的培养,为毕业后从容就业夯实基础。
软件工程专业是国家教育部在2002年新增的专业。该专业以计算机技术为主的专业,实践性很强,专业的实践教学体系是培养学生实践能力、计算机工程能力、创新能力的重要途径。我们应该充分了解市场和企业的需求,制订和实施切实可行的实践教学体系。[2]
曲靖师范学院软件工程专业从2008年开办至今,已经培养5届学生,一直以来,我们不断丰富和完善该专业的实践教学体系,形成了相对完备、效果好的实践教学体系。
2 实验室建设是硬件基础
实验室是开展实践教学的硬件保障,实验室建设的好坏,直接关乎实践教学体系执行的成败。一直以来,我们非常重视软件工程专业的实验室建设。实验建设能充分满足软件工程专业实践教学体系的硬件要求。实验设备采购的指导思想是实验设备要先进、实用,充分满足学生的学习和教师的实践教学需要。
该专业已经建成硬件实验室有2个,分别是“计算机组成原理实验室”、“计算机组装与维护实验室”;通信与网络实验室有2个,分别是“计算机通信实验室”、“计算机网络实验室”;软件类的实验室有3个,分别是“软件开发与测试实验室”、“数据库实验室”、“信息技术创新实验室”。同时,为适应当今云计算的研究需要,我们投资200多万建立了云计算平台。
以上实验室的更新及新建,能充分满足师生完成实践教学的需要。
3 软件工程专业技能训练是实践教学体系的抓手
在学生大学期间,为了在不同学期适时提高学生的综合实践能力,我们结合“软件工程专业人才培养方案”的要求,开展了贯穿大学4年的专业技能训练。我们把专业技能训练当作实践教学体系的抓手,专业技能训练根据训练大纲,着力提升学生应具备的专业素养和能力。
我院的专业技能训练主要包括两个级别,一级是课程设计训练,本训练以课程为依托,制定课程级别的训练大纲;二级是综合设计训练,主要训练学生的软件论文项目的开发能力,要求学生能灵活应用所掌握的知识和技能,完成一个综合性、设计性的软件项目。下面分别对这两级训练作详细介绍。
3.1 课程设计训练
“课程设计”是一个多义词词条。它可以指“为掌握某一课程内容所进行的设计”[3]。课程设计是课程实验的高级环节,课程实验是提升学生立体实践能力的根本,课程实验分为验证性实验、综合性实验和课程设计实验,我们在传统验证性实验的基础上开展课程设计实验,提升学生的课程综合实践能力。
以《Java程序设计》课程设计为例,课程设计的目的:利用Java语言的语法特性,结合数据结构算法、网络知识、文件处理和数据库等知识完成综合题目的设计和代码实现,并培养锻炼分析程序、撰写报告等能力。
软件工程专业的已经开出课程设计的课程有4门,分别是:OFFICE办公软件、计算机组装与维护、C语言程序设计、JAVA程序设计。我们针对这些课程,在编写实验大纲时,要求包含课程设计,设计方案要经过专业系的审核和教授委员的审定。最后,以审定通过的课程设计为依托,为后续综合实践能力的提升打下坚实的基础。
3.2 综合设计训练
综合设计训练的目的是锻炼学生综合所学知识,设计和开发一个小项目的能力。这些项目有“JAVA程序设计”、“商业数据库开发”、“J2EE企业应用”、“JAVA Web开发”等,这些小项目的训练要基于几门课的知识和技能,如“JAVA Web开发”就需要学生综合数据库、软件工程、JAVA程序设计语言等知识与技能。
综合设计训练要与毕业设计区别开来,此训练的主要目的是让学生体验和掌握项目开发流程,同时锻炼综合应用所学课程来完成一个具体的小项目。
3.3 软件工程专业技能训练安排
]
为鼓励学生多渠道获得技能分,我们规定,学生参加通过全国软件资格(水平)考试(中级),可以获得2学分,参加通过软件资格(水平)考试(高级),可以获得3学分。
4 毕业设计是实践教学体系总结性的实践环节
毕业设计是教学过程的最后阶段采用的一种总结性的实践教学环节。通过毕业设计,学生可以综合应用所学的各种理论知识和技能,进行全面、系统、严格的计算机技术及软件工程能力的练习。[4]毕业论文(设计)是实践教学体系的技能整合,我院对毕业论文(设计)作重大改革,着力打造学生综合实践能力。
参加毕业论文(设计)的学生分两部分,一部分在公司实习,同时要在公司完成毕业论文(设计)工作,余下的学生在曲靖师院完成毕业论文工作,为提高毕业论文(设计)的质量,经向教务处请示,允许我院结合专业实践性强的实际,改革本专业毕业论文(设计)工作。改革思路包括三点,一是我院学生的毕业论文(设计)以毕业设计为主,弱化对学生文本的要求,强化对实践动作能力的提升和检查,二是做好规范管理工作,制定相关文件,如:“信息工程学院毕业论文(设计)工作规定”、 “信息工程学院毕业设计开发文档的撰写与打印规范” 、“信息工程学院毕业设计开发文档”等。
5 校企合作助力实践教学体系
为提升学生的实习效果和就业质量。我们自2012年开始,与四川华迪信息技术有限公司开展毕业实习的合作,该公司是一家集软件外包、信息服务、学生专业技能培训为一体的公司,在以上业务深耕12年,在全国小有名气。我们的学生参加校企合作实习有两种类型,一是为期三个月的专业实习,二是为期四个月的就业培训。三个月的专业实习分为Java开发方向和计算机网络方向,Java开发实训的重点是提升学生的软件开发实践能力和水平,计算机网络方向的实训重点是提升学生的网络规划、设计、实施、部署的能力。
从2013年开始,软件工程专业的学生几乎都参加校了企业合作的实习,取得了良好效果,学生的专业实践能力提升了,就业质量明显提高,很多学生就在四川成都就业、创业。
6 结语
本文结合长期的思考和实践,不同的实践环节有机整合,大大提高了学生的职业能力和素质。软件工程专业的实践教学体系的构建和实践是一个系统的、长期的过程,还需要我们不断地探索,进一步提高人才培养质量。
1.引言
随着计算机技术、通信技术和数字广播等技术不断发展,以互联网、无线通信为传播载体,以传统媒体内容与创新内容模式为核心的数字媒体产业在全球范围快速崛起,并正在改变着人们的信息获取方式和休闲娱乐的形式。
我国的数字媒体业近几年正处于高速发展时期,对于具有较高人文素养、掌握数字媒体核心技术并具有艺术创意能力的复合型数字媒体技术开发与设计人才需求旺盛。四川理工学院软件工程专业是与IT企业合作办学、实行“3+1”人才培养模式,即学生前3年在校学习,第4年在软件企业实习并完成毕业设计(论文)。为使培养的学生既有较扎实的理论基础,又有适应人才市场需求的职业技能,在软件工程专业大框架下设置了数字媒体技术方向。
数字媒体技术作为一个宽口径、以技术为主、艺术为辅、技术与艺术相结合的新的专业方向,涉及到不同的学科知识,因此,我们有必要通过探索与改革人才培养模式、课程体系以及实践教学体系的研讨,搭建科学的创新人才培养平台,促进软件工程专业人才培养整体水平的提升。
2.人才培养目标
培养目标是制定教学计划、设计课程结构、选择知识发展方式以及确定教学组织形式的依据,也是教学内容、教学方法、教学组织与管理、教学手段、教学评价等方面改革的基础和前提。软件工程专业数字媒体技术方向具有软件工程与数字媒体技术相结合的特色,注重对学生软件开发、应用能力的培养,实践性强。结合我们自身办学特色和办学条件,我校软件工程数字媒体方向人才培养目标是:“培养具备计算机科学、多媒体网络、软件工程技术、信息安全等方面的专业知识与技能,具有扎实的软件工程和数字媒体技术基础理论、宽厚的专业基础知识、较强的实践能力,能够从事包括新媒体应用以及虚拟现实等在内的多媒体技术开发、数字媒体设计与创作、计算机游戏设计、网页设计与网站维护、信息服务及数字媒体管理等工作的创新性技术人才。”
3.核心课程体系
数字媒体方向课程体系的建设以创新性复合型人才培养为基本指导思想,重视实践课程的开设,使学生所学习掌握的方法具有充分的实效性,真正做到学有所用,以适应未来的工作岗位,成为本行业和企业所欢迎的有用人才。课程体系分为软件工程专业核心课程模块、数字媒体方向核心课程模块、专业实训、毕业实习和毕业设计(论文)等模块。
3.1 核心课程
软件工程专业数字媒体技术方以软件工程专业为主线构成专业基础和专业主干课程。其中,计算机与软件基础课程有:计算机导论、程序设计入门、面向对象程序设计、数据结构与算法、Java程序设计、计算机组成原理、数据库原理、计算机网络、操作系统、编译原理、信息安全技术、计算机体系结构以及J2EE与中间件技术;软件工程专业课程有:软件工程导论、软件测试技术、需求分析与UML设计、软件项目管理与过程控制;数字媒体技术专业课程有:数字媒体技术导论、计算机图形学、数字图像处理、网络流媒体技术、用户界面设计、视频音频制作与处理、数字影视特技应用、高级游戏特性与游戏引擎、人机交互技术、虚拟现实技术与应用、高级脚本与插件技术等。对于实践性较强的课程开始单独的实验课程和配套的课程设计。
3.2 特色课程
计算机网络游戏由计算机技术、艺术设计学和计算机动画以及计算机图形图像技术高度交叉结合,目的是培养具有扎实的游戏编程功底和良好的逻辑思维习惯,具备较强的审美能力和一定的艺术素养,熟悉游戏产品开发流程,具有一定的策划能力,能在游戏公司、门户网站、手机运营企业、动画公司等单位从事游戏设计、游戏开发、游戏制作、游戏策划、游戏运营等方面工作的富于竞争力与创新精神的高级复合型人才。
计算机游戏程序设计。课程目标:本课程主要学习普及游戏开发理念,培养游戏开发氛围,挑选有潜力的学生组成开发团队;传授游戏开发中的程序设计要素,特别是游戏引擎开发的基本知识。通过本课程的学习,学生能够掌握游戏开发的基本理念,熟悉游戏开发的基本技巧和流程,并具备从事游戏程序设计工作的基本技能。
虚拟现实与数字娱乐。课程目标:本课程主要介绍虚拟现实的基本概念及其系统组成、相关的软件技术及虚拟现实的应用,并介绍了当前数字娱乐的现状,发展和一些关键技术。内容包括:虚拟现实的定义、特性和组成,虚拟世界的创建和管理,虚拟现实中的视觉计算,虚拟现实中的交互技术,虚拟现实中的声觉计算,增强现实,分布式虚拟现实,虚拟现实应用,与虚拟现实相关的数字娱乐技术。
4.实践教学体系
培养符合时代需要的创新性人才,就要强化实验教学的开放性和多层次化。基于创新性原则和以生为本原则,结合培养目标和自身教学特点,数字媒体技术方向实践教学体系分为课程实验,专业实训、毕业实习和毕业设计三个方面,各实践环节之问相互协调、相互衔接、循序渐进。
4.1 课程实验
依照实践能力培养循序渐进的原则,根据实现数字媒体技术专业基本能力培养的系列课程,并按照系列课程的复杂度和规模设计实践环节,开展了多层次课程实验教学,根据学生的需要和实践能力培养的渐进规则,将实验课安排大学四年的各个环节。
多层次实验教学是指在实验大纲与目标的规范基础上,将实验项目设计成基础型、综合设计型、研究创新型不同层次的实验。同一学生从基础规范一综合设计一研究创新这样难度递增的实验项目中逐渐进行训练,实现系统培养学生综合实践能力。课程实验主要包括:手绘训练、视频特技与非线性编辑、多媒体网页设计、移动娱乐软件开发、网络娱乐软件开发、界面设计课程设计、虚拟现实开发课程设计等。
4.2 专业实训
专业实训作为知识、能力、综合素质教育的结合点,成为数字媒体技术专业实践教学的重点之一。专业实训是对课堂教学具有延伸作用,是学生培训职业能力、熟悉职业环境、了解实际知识的重要渠道。通过专业实训,学生不仅可以把所学转化为所用,还能使学生在学习操作过程中通过不断调整自己的知识结构来慢慢适应相应职业岗位,锻炼职业的能力,为实习以及今后走向社会积累经验、打下基础。
我校软件工程专业是校级专业综合改革试点专业,以争建微软IT学院、HP软件学院为契机,与知名IT企业开展深度合作,联合培养具有国际视野的软件开发、软件测试和服务外包人才。与中软国际、Tarena(达内)科技等十多家IT企业联合建立了实习实训基地、就业基地。
4.3 毕业实习和毕业设计
毕业实习是学生将前期学习到的知识运用到生产实践中,真正了解、感受未来的工作,锻炼自己各方面的综合能力。真正实现与行业需求的专业实践能力对接。能胜任相应岗位的工作,从而积累工作经验,为就业做准备。为了增强学生和指导老师对毕业设计(论文)及毕业实习的重视,提高毕业设计(论文)的质量和提高学生在毕业设计(论文)及毕业实习实践环节获得的实践能力,也为缓解毕业设计时间(论文)不足,笔者将毕业实习与毕业设计(论文)有机结合,实行“毕业实习+毕业设计”相结合的模式,学生毕业设计的内容来自于毕业实习,并且毕业设计的内容要将毕业实习的内容进行一定的升华,除体现学生四年来所学知识综合之外,还要体现出学生的创新能力与科研能力,达到培养创新型、复合型人才的标准。
5.结束语
通过对国内外数字媒体技术相关专业及方向的调研,基于创新性人才培养目标,建立了相关的核心课程和多层次实践教学体系,融合专业技术、实践教学、校企合作共同培养为一体的软件工程数字媒体特色专业方向的知识体系,着力培养学生的艺术与技术交叉结合的数字媒体制作与开发能力和职业素质,进而使得学生的基础知识、科学素养、艺术感悟、专业知识、创新能力、工程能力和职业素质都得到全面均衡的发展,以增强他们在数字媒体行业就业的竞争能力。
参考文献
[1]沈琦,于学军,张丽,等.软件工程(数字媒体技术)特色专业复合型创新型人才培养模式研究[J].中国校外教育,2010,16:162-163.
[2]蔡建平,沈琦,于学军等.软件工程(数字媒体技术)特色专业的特色建设[J].软件,2012,33(4):108-111.
[3]耿卫东等.面向数字媒体技术专业的数字化学习平台建设[J].计算机教育,2010(16):99-101.
[4]向辉.数字媒体技术专业课程体系探讨[J].计算机教育,2008(15):28-30.
2整体项目模式下系列课程的教学
根据整体项目模式原理,实践项目应贯穿到各专业课程之中,系列课程最好使用同一项目,这样更能加强学生理解软件开发过程的不同方面。该项目在专业课程开始之前就必须存在,即已经完成或正在进行中的实践项目,因此,系列课程必须是相互联系并且能基于同一项目案例,这和传统的项目教学方式虽然模式一致,但是效果却有本质的不同。图3为系列专业课程的项目案例、课程和学生实践案例示意图,5门课程都基于同一实际项目案例,学生根据自己所做的项目,按照不同专业课程要求的格式和内容书写相关文档。
2.1先案例后理论的案例驱动教学模式
软件工程专业的特点是实践性非常强,软件工程的很多理论都来源于对实践的总结和归纳。因此,教师在教学过程中采用先案例后理论的案例驱动教学模式,符合软件工程专业的授课特点。首先,教师要讲解实际项目案例的文档,该文档是一套完整的、从不同侧面反映软件开发过程的实际文档。对于每一门专业课,教师首先讲解需求提取、需求分析过程、功能提取、系统功能结构框图等,让学生明确该系统的背景和要解决的问题,以及需要具备什么样的功能以实现目标。其次,教师要联系实际项目案例,讲解课本上的理论,将每个理论知识点与实际的项目案例相结合,让学生充分理解理论。在实际讲解过程中,对于新开课,新教师若碰到教学学时偏少的状况,可以言简意赅地讲解重点知识;实践经验丰富的教师,碰到学时偏少的情况可以精简案例功能,讲解1~2个功能即可。最后,教师必须强调实践的重要性并给出标准的文档规范,要求学生按照自己的实际项目书写标准的文档。在每一门课程讲解完毕后,教师再一次帮助学生回顾该课程在软件开发过程中的位置。以软件项目管理为例,在正式进入课程教学之前,教师需要做大量的工作,首先需要准备的文档有项目需求、项目需求分析报告、可行性分析报告、项目开发计划书、项目Demo程序演示、软件项目投标书、软件项目开发合同。然后,开始进入软件开发项目管理过程教学,软件项目主要内容有成本管理、进度管理、人员管理、风险控制等理论内容。实际的软件项目管理主要分为4个阶段:IT项目的启动阶段、IT项目的计划阶段、IT项目的执行控制阶段、IT项目的收尾阶段,这在一般的教材中很少提及,但是教师在内容讲解中要明确阶段任务。IT项目的计划阶段涉及48个文档;IT项目的执行控制阶段涉及45个文档;IT项目的收尾阶段涉及14个文档。教师在讲解合同的内容时,可以直接参照“软件项目开发合同”进行讲解。对于必不可少的合同内容,教师就必须跟学生讲清为什么必须要包含这些内容;讲解成本计算的时候,根据文档“工作包、进度和预算”进行项目的WBS分解以及基本的估算方法。总之,由于教材先理论后案例的局限性,在听课之初,学生觉得枯燥乏味。而教师通过先案例的方式能有效调动学生在课堂上的学习积极性,为后面的项目实践奠定基础。
2.2学生项目实践环节
每一门专业课都有上机实践部分,学生在实践课上主要是书写文档。每门专业课都有各自不同的文档,软件工程课程要求学生必须完成标准的13个文档;软件测试课程需要软件测试报告文档;软件项目管理课程有127个文档;面向对象的软件分析方法课程有包含9大部分内容的软件项目分析与设计文档。每一门课程的文档内容非常多,要求每个学生最好独立完成,主要训练每一个学生的文档书写和理解能力。需要强调的是,学生书写的项目文档一定要给出标准的、规范的文档格式,包括目录、段落、标题、字体等排版之类的要求。项目模板可以采用软件工程国标文档或者相关的其他标准文档,最好和某一软件公司的案例文档格式相一致。笔者在软件公司任职过程中,很多刚参加工作的大学生书写文档的水平非常差,主要是文档格式、结构和内容混乱,往往给人留下非常不好的印象。整体项目驱动模式下的课程教学,首先强调的就是文档格式和正确的文档排版,其次才是内容的正确性与完整性。在学生项目实践中,任课教师最好跟踪指导。学生每次在实验课上必须完成相应的实验,并把实验的电子文档通过教学资源管理系统或以电子邮件的方式提交给教师。电子文档的批改能快速纠正学生文档格式不规范以及内容方面的错误,但这个工作量往往很大,每一次电子作业批改的工作量往往是学生数量的3~4倍。这是因为学生按照批改意见进行修改后又会返回给教师,最终达到合格标准的电子文档往往会被修改2~4次。
2.3考核方式
完成每门课程的项目文档是学生对文档书写熟练程度以及课程内容理解的直接反映,也是培养软件开发过程中需要具备的素养和习惯的有效途径,克服学生疏于或懒于书写文档的缺陷。因此,教师需要对学生书写的项目文档进行考核并将其反映在学生成绩上。项目文档的成绩占学生总成绩比例的30%~50%较为合理。
2.4教学效果
笔者经过近2年的教学实践,取得了良好教学效果。以中南民族大学软件工程专业2008级学生为例,首先,学生很顺利地完成了各自的软件项目,包括中南民族大学学生基金项目;其次,学生能很好地书写申请软件项目著作权系列文档以及毕业论文,书写的文档格式规范,只需稍加修改就能将文档立即转化成学术论文并发表。这表明学生无论是在文档格式还是在内容编排上都取得了进步,进一步提高了在软件开发过程中应有的素质。这也是软件工程专业学生和计算机其他专业学生之间非常明显的差别。就前2届学生的就业情况,笔者回访了2家用人单位,他们对中南民族大学软件工程专业毕业的学生刮目相看,称赞学生书写的项目文档很规范。
项目管理技术是软件工程专业的一门重要专业课。其教学任务是使学生了解和掌握项目管理的基本概念、基本原理和工程化方法。内容涉及项目管理知识体系(PMBOK)九大知识领域和五个标准化过程组,几乎涵盖了软件项目从立项到结束的方方面面,是一门具有相当广度的课程。然而,该课程的教学效果却不容乐观。
其一、项目管理技术的理论知识多脱胎于工程管理领域,由于国内软件工程专业建设刚刚起步,相关教材往往照搬工程管理理论,缺乏完全针对软件开发的必要整理和筛选。因此同软件开发实践结合并不十分紧密。
其二、而传统的教学方式往往重理论而轻实践,教师将理论知识“满堂灌”给学生,学生“死记硬背”理论条文,并不懂得如何将理论用于实际软件开发。这种仅以理论的多寡深浅作为对学生评价激励唯一标准的教学手段,必然导致培养的人才实用性不强,职业能力较差,工程化程度较低。达不到项目管理技术的教学要求。
因此,需要对软件项目管理技术的教学进行改革。二基于具体项目的软件项目管理教学软件工程项目相比一般工程项目具有更强的复杂性和更多的不可控因素,传统的项目管理教学所传授的知识常常不易使理论知识和实际开发吻合,给学生造成“学习无用之感”;课程本身也难以完全包括软件开发过程的全部情况。最好的方法是通过一个具体软件项目的开发过程,使学生接受项目管理的理念,而软件项目的开发设备相对单一,团队人数相对较少,相比一般工程项目更易进行实践演练。
可以看出,项目管理进行过程将根据实际情况不断进行计划变更、计划控制和计划执行的搏弈和循环。由于软件项目有以下特点:
(1)软件产品是无形的,不可捉摸的,无法感觉形状,设计也难以直观表示,很难确定产品质量或估计开发工作量。
(2)由于软件的拷贝生产轻而易举,因此,几乎全部的软件项目成本在开发过程中,而不是在制造过程。
(3)软件开发过程属于劳动密集型过程,尚未实现完全自动化,因此对软件项目开发进度的计划和控制比对一般工程项目更加复杂。
(4)软件是逻辑实体,本身很容易修改,但由于其复杂性,又很难正确地修改,在缺乏沟通的情况下,对个别模块的修改可能会带来新的错误。
(5)软件不像其他产品会因使用而磨损,和一般工程产品不同,软件产品的维护常常通过增加新模块功能完成升级。为保证新版本的稳定性,常常需要对新版本的重新设计因此,软件过程主要集中于软件项目的开发过程,而在这一过程中,相比一般工程项目,项目管理过程组的核心循环表现得更加突出。基于具体项目对软件开发过程进行阐述将更有利于学生理解软件开发过程中的项目管理。由于课程目标并不在于具体技术细节的学习,而在于体会软件开发过程中的项目管理。因此在项目选择中,不能使学生投入过多精力在技术细节上,而应更多的关注软件项目管理的沟通、计划和控制。我们选择计算机学院行政管理系统网站作为实践项目让学生组队开发,这一项目属于MIS(信息管理系统)项目类,难度不大,且能充分体现软件项目需求不明确、多变、沟通复杂等特点。作为计算机学院的学生,学生对项目的需求的理解也将更加实际。
2.1基于项目驱动的评价体系“为了解决软件问题,重要的第一步就是将整个软件开发任务看做一个可控的、可度量的以及可改进的过程。”将项目管理方法运用于具体软件项目开发的实践或在实践中改进现有方法,能够帮助学生更好的掌握项目管理技术。在实际教学中,我们将学生分成若干团队,每个团队8~13人,充分使学生体会到团队感,增加管理意识。项目经理是靠干出来的,不是靠背出来的。为使学生在具体项目实践中更加投入,必须改革原有的基于卷面成绩的评价体系。我们提出基于项目驱动的评价体系,使学生自觉将课堂所学的理论知识及时用于项目。学生的总评成绩将由团队项目评分、演练与总结评分、期末论文评分三部分组成:
(1)团队项目评分:60%其中20%由教师根据团队分阶段提交的项目资料给出;剩下40%由每个团队的“项目经理”根据团队的成员的表现给出。而项目经理的打分权限则取决于项目完成时专家对项目的评审得分。
(2)演练与总结评分:20%项目结束后各个团队成员对整个项目管理过程进行总结,评价和反思项目经理的管理过程,教师根据学生个人上课时有关项目的各种演练表现以及项目总结报告进行评分。
(3)期末论文评分:20%要求学生对项目管理九大知识领域进行一定深度的论述。为确保评价体系更加公平、公开、公正,我们规定:
(1)项目经理享有计划和分配项目团队资源,为项目组成员进行打分的权利,同时具有带领项目组完成所有课堂演练环节,完成项目开发的义务。作为奖励,项目经理可以直接获得满分的演练与总评成绩;作为制约,项目经理为自己所打分数只得在项目评审得分5%上下浮动,如果项目经理引起过团队半数以上成员不满,将被弹劾,一旦弹劾,相应权利和奖励同时消失。
(2)项目评审后,项目经理将得到“项目评审得分*团队开发人数”的可分配分数,项目经理根据项目组分数分配方法给团队成员打分,上限为40。
(3)项目评审时将邀请学院软件工程专家、需方代表不少于5人组成专家组对各团队项目进行公开评审,评审将从需方满意度、项目开发文档、项目开发过程三个角度进行打分。团队最终得分通过delphi法得到。可以看出,在以上的评价体系中,基于项目驱动的评分所占比重相当大,不仅注重项目的结果,同时注重项目开发过程。学生的分数在一定程度上模拟了现实生活的“奖金”,而项目团队则更加贴近现实生活中的软件开发公司。为了使项目成功,学生必须自觉地实践和探索科学的项目管理方法,不论成功与失败都将成为学生宝贵的经验和教训。评分中,由于个体学生所能获得的成绩与其所在团队成绩紧密相关,因此,为整个团队获得高分而努力的开发过程极大地培养了学生的团队协作精神。通过教学实践,这一评价体系调动了学生的学习主动性,起到了较好的作用。超级秘书网
2.2基于项目过程的知识传授和情景演练表1显示了项目管理九大知识领域在五个标准化过程组中的作用。可以看出在不同的过程组中,各知识领域所起的作用是不同的。配合实际项目开发的过程,为使所传授的知识能够及时用于实际项目,我们颠覆了原有教材顺序,按软件项目五个过程组所涉及的知识领域对教学顺序进行重新安排,基本做到项目进行阶段与所传授的相关知识同步。每次课程教学前后都及时安排对相关内容的情景演练。由表2所示教学实施安排表可以看出,项目管理的九大知识领域几乎都能做到安排于项目情景中进行传授,起到了理论对实践的指导或总结作用。可以看出,每次演练环节一般都是对上次所本传授知识的总结或当次所传授知识的及时操练,知识点覆盖较全面。通过设身处地去当一名项目经理或软件工程师,增加了学生对软件开发项目的感性认识和兴趣,提高了他们的管理才能。通过知识传授和情景演练的密切配合,使学生对软件项目的管理过程理解得更加深刻。
二结论
基于具体项目的项目管理教学使学生能够体会项目管理各知识领域的作用,领会各种方法、规范所适用的环境。通过实际开发后自己总结提炼的经验和教训,学生将更加接受项目管理的理念和知识,培养了团队合作精神。在学期末进行的教学效果调查中,83%的学生认为这种教学方法效果良好。学生普遍反映“项目管理枯燥的理论知识变活了,知道怎么用了,印象更加深刻了。”
项目管理是软件工程重要的专业课,在今后的教学实践中,我们将继续改进教学方法,做到量体裁衣,因地制宜,加强教学效果。
参考文献:
[1]韩万江,姜立新.软件项目管理案例教程[M].北京:机械工业出版社.2005.