为您找到与软件工程行业标准相关的共4个结果:
软件工程管理是软件工程和项目管理结合而形成的一个交叉学科,是项目管理学科的管理方法和具体到软件工程领域的实际应用。下面是读文网小编为大家整理的软件工程管理论文,供大家参考。
摘要:
改革开放之后,我国的社会经济高速发展,计算机在全国也逐渐普及。随着计算机的不断发展和使用,计算机软件已经涉及生活中的各个层面,对人民大众的生活产生了巨大的影响。因此,研究并探索软件工程管理是十分必要的,它能更好推进计算机技术的发展,为生活提供更多的便捷。本文主要从两个方面阐述软件工程管理,一是软件工程管理中存在的问题,二是软件工程管理过程中存在的问题的解决对策。
关键词:软件工程管理;问题;对策分析
0引言
计算机技术的使用造就了信息时代,而软件工程的开发与创新是促进计算机技术的重要手段之一。软件工程管理是一种比较复杂的学科,即软件工程和项目管理。软件工程管理就是要开发软件、管理软件、创新软件。目前,在软件开发、创新的过程中,软件工程管理是十分重要的,这直接影响到整个软件运行的进度。但是在一些软件公司中,在软件工程管理过程中存在着很多影响软件工程开发与创新的问题,因此,本文经过分析与研究,探讨了软件工程管理过程中存在的问题及如何解决这些问题的对策,这对于软件工程的开发与创新是非常有意义的。
1软件工程管理过程中存在的问题
1.1缺少软件工程管理系统性的培训意识
在软件企业中,一般都会选取一些优秀的、能力较强的员工作为软件工程管理的带头人,也就是我们常说的项目经理。这些经理往往自身能力是非常强的,在软件工程方面具有丰富的专业技术,在管理软件开发方面是毋庸置疑的,但是很多的项目经理都缺少软件工程管理方面的知识理论和经验,有的甚至不知道如何培训管理人员。因此,在软件工程管理过程中,项目经理并不能很好的培训有关的工作人员,管理工作人员缺少了管理经验和管理方式,往往影响了软件工程管理的工作效率。
1.2缺乏科学的软件工程管理系统
在软件工程管理过程中,对整个软件工程管理要有一个较好的计划,同时,要建立一套科学的、灵活多变的软件工程管理系统,这样才能更好地管理软件工程的各个方面。但是在目前的软件工程管理体系中,衔接性、实践性都不是特别强,没有一个相对完整的科学管理体系。导致在软件工程管理中,常出现一些不必要的问题,影响了软件工程管理的工作效果。
1.3软件工程管理工作日趋复杂
当今社会是一个信息化的时代,可以说软件开放与使用促使时代的发展,时代的不断发展也促使了软件开发的不断创新。当今社会的软件技术无时无刻不在发生着变化,更多更新的东西也在不断地出现。因此,软件工程管理也变得日趋复杂。软件工程管理的工作在逐步扩展,同时增加了更多的管理工作人员。但是人才更新方面远远赶不上软件工程的更新速度,软件工程管理工作也是逐渐地增加,在软件工程管理过程中不断加入新的元素等等,都增加软件工程管理的工作难度,使得软件工程管理更加的复杂多变。
2软件工程管理过程中存在的问题的解决对策
2.1完善软件工程管理体系
在软件工程管理完善的过程中,完善管理体制是非常重要的,因为良好的软件工程管理体系才能更好地促进软件工程开发与发展。在软件工程管理过程中,都是靠工作人员来推动的,所以重视人才的是非常有意义的。企业可以建立一个优秀员工管理体系,从而为软件工程管理服务。当然,在管理过程中要重视每一位员工的作用,员工的积极性可以有效地促进软件工程管理的工作进程。同时,可以民主选举项目经理,这样选举出来的项目经理更具有领导力和说服力。优秀员工、人力资源、民主选举的系统构成了一个完整的软件工程管理系统,这对于软件工程在各个方面的管理都是有很大的作用的,因此,建立并完善软件工程管理体系是十分必要的,也是可行。
2.2加强对项目团队的管理
在管理过程中,要不断地加强对项目团队的管理。一个团队的力量往往比一个人的力量大得多。因此,项目内的工作人员要经常相互沟通,在增加感情的同时,了解到更多的管理过程中存在的问题。当然,项目经理要不断地学习和借鉴国内外相关的管理经验,在提升自身能力的同时还要提高管理方面的能力,有的时候项目经理的管理能力比技术能力更重要。项目经理可以依据有关的管理经验分配相关的工作任务。在完成任务的过程中,项目经理可以制定相关的奖惩制度,工作顺利完成的情况下,对工作人员进行奖励,以此鼓励其他的管理人员积极工作;对没有完成工作的员工,依据情况进行惩罚。这样可以更好地确保软件工程管理顺利地开展。
2.3加强软件工程管理的信息化发展
如今社会,在生活的各个方面,都使用的信息化的技术,当然,软件工程管理也无一例外。软件工程管理,涉及了很多的方方面面,比如软件工程的资源管理、软件工程的人力资源管理等等,管理的范围广,对象多且复杂。因此,加强软件工程管理的信息化,可以大大地提高管理的工作效率,使得软件工程管理更加的方便。在软件工程中,利用计算机技术及互联网方面的软件,加强管理的信息化。工作人员通过这些有效的管理工具可以实现对软件工程管理过程中各个项目的细化,同时也能更好地监督项目的发展进度,为软件工程管理提供真实有效的依据。信息化的管理还可以促进各个项目之间的交流与分享,可以有效避免一些团队不协作而产生的问题。
3结语
总而言之,现目前我国软件工程管理过程中虽然存在一些问题,但是在未来发展过程中专业的管理人员会不断地探索出更好的管理措施,确保完成软件工程的管理工作。因此,有关的管理人员要从自身做起,反思与探索并提升自己的管理素质;重视建立完整的管理监督系统、重视采用信息化管理方式的措施等等,促使软件工程管理的健康发展与成长,使得我国软件开发技术更上一层楼,拥有一个更加美好的未来。
参考文献
[1]侯凯.浅谈软件工程管理的现状和创新策略[J].计算机光盘软件与应用,2014,(24):67-68.
[2]于克达.软件工程管理的现状和创新策略[J].微计算机信息,2012,(5):111-113.
[3]许学磊.软件工程管理的现状和创新策略[J].华东科技:学术版,2012,(9):50.
摘要:
主要总结了软件项目管理的相关内容,同时分析了软件项目管理现状,最后对我国软件工程管理提出了创新发展战略。
关键词:软件工程;管理现状;创新策略
1软件工程管理的主要特征
从特殊性方面看软件工程的管理有两个方面:第一个是软件工程管理的过程,另一方面是软件项目管理的内容。负责项目管理人员需要有一个清晰的理解,工作实施步骤熟悉,同时在实际过程中应注意各种突发状况,进而确保顺利完成软件工程管理的所有工作。开发软件之前,应进行软件工程管理工作,应该是在整个软件生命周期内把所有工作流程都渗透到工作中。完成整个工作的任务的同时,整个软件工程管理的工作就告一段落了。在软件工程管理的整个过程中所有的工作人员都必须完整并熟练的掌握自己所负责的工作内容,并制定规范化的流程管理程序。在这种情况下,需要有五个步骤才能完成主处理程序,首先是启动,然后是规划,其次是执行,接着是控制,最后也是结束程序。总而言之,项目的每一个过程阶段都是一个循序渐进的过程,都需要完整的完成。如果需要完成一个项目,首要条件就是要完成该项目实施中包括的每一个流程。
2软件工程管理现状
2.1项目进度规划性不足
软件工程子项目进度的规划性在软件项目开发阶段是非常重要的一个环节,后期开发工作在软件项目开发阶段是有着重要影响力的。但在目前的软件工程管理中,由于对软件工程和软件开发计划相对缺总体规划,规划和实施效果的可行性难以有效推进,规划工作具有实际应用价值,同时也大幅度的贬值。此外,由于该软件工程项目的规模在不断的扩大,因此管理的复杂性也不断增加。在软件项目管理工作中,普遍执行效果和可行性达不到标准水平。与此同时,在实际的工作过程中,一些出乎意料的突发事件时常发生,这些突发状况将会直接影响整个软件项目的开发计划,并给进度管理的进度带来不利的影响,影响了工程工作的顺利完成。
2.2项目团队应对突发情况的能力有限
软件工程管理工作的实际操作中,一些相关的突发事件频频发生,给软件项目开发的整体效果图带来不利的影响,导致项目管理的进度相对滞后。针对目前的情况而言,大部分的项目组紧急处理事件的能力具有一定的局限性,在突然缺乏灵活能力的情况下,也不能及时提出有针对性的措施,以限制管理工作的运行。
2.3缺乏沟通和风险管理意识
人力资源发挥非常重要的作用在软件工程管理的发展过程中。如果提前做了有效的沟通又进行了完美的规划,那么就不会出现大量劳动力浪费这种现象,最终影响软件项目管理的工作的结果,严重的甚至不能按时正常的完成工作。就拿风险管理问题来说,一般的项目经理并不能真正意识到风险管理的重要性,风险管理计划的时候他们根本不重视,那么就会直接导致许多不可预测的实际管理风险的发生。随着软件工程管理工作变得更加复杂,与此同时软件项目的规模也逐渐的扩大,由于越来越多的人都参与这个项目,以至于软件工程管理人员也越来越复杂,随之诞生出来一些问题,进而给管理工作带来了一定的难度。
2.4缺乏科学灵活的软件工程管理体系
实施统筹规划运用在整体软件工程管理的进程中,建立科学以及灵活的软件工程管理系统是重要的先决条件之一。软件工程管理是一项涉及环节非常复杂的任务,需要完善管理体系为指导,但目前的软件工程管理体系还存在缺点,主要是缺乏凝聚力性和实用性,这也是导致整个工作指导性下降的原因。
3软件工程管理的创新策略
3.1对项目开展精细化管理
推进软件工程管理的有效性,以便于提高工程产品的开发水平,促进整体管理的发展首先从工程中包含的各个阶段入手,对各个时期的子项目进行精细管理。首先,管理者应该清楚软件工程管理工作的必经阶段包括什么,在软件工程的设计阶段包括界面设计、技术开发和测试阶段等各阶段的发展过程;其次,以了解各组件的软件工程部门或职能部门的具体发展方向和任务,并全面掌握两者之间的联系;此外,建立组织结构,在详细的软件工程的发展过程中,在发展过程中及时改进。从进度、质量和人员三方面进行精细化管理,并通过精细化管理为软件的开发奠定基础。
3.2成立项目应急小组,重视项目团队管理
软件工程开发也被看做是技术创新的过程,其研究和开发进程中,易发生各种问题,如技术和管理等矛盾与冲突。但是部分技术差异扔存在于不同的职能子项目部门,根据特殊性和需求管理,经营者应当建立应急项目小组,并从所有的子项目中选定一个应急项目小组,成员应选择一个全面了解技术的人员担任项目负责人和应急小组成员。在任何技术矛盾的软件工程开发过程中,启动项目应急小组,以产品测试,首先加强各子项目代表成员的沟通,通过沟通促进项目的发展。凡是与项目有关的工作人员都应该相互沟通,从沟通中发现问题,通过沟通逐步培养他们的团队精神。项目经理在分工的时候应该对工作人员进行详细的分工,这样一旦出现问题就能找到直接负责人,针对个人进行相应的处罚。一些员工缺乏工作积极性和热情,发生这种情况的时候就应该建立一个合理的奖励和惩罚机制去应对,以确保顺利开展软件项目管理工作。
3.3风险管理和项目进度管理都要重视
一般情况下,建立科学的风险管理体系才能有效地预防风险的发生。有效地避免管理过程中的漏洞问题最重要的即制定科学的风险管理体系,并及时地处理这些漏洞。与此同时,项目经理要有对风险提前预知的能力,在风险发生之前就应该找到风险来源并快速及时地处理风险。另外项目经理必须对风险进行整理,然后和其他的项目经理一起进行研究列出具体的风险,并对不同的风险制定出相应的防范措施,把风险发生的可能性降到最低,不延误项目的正常进度,有助于项目顺利完成。
3.4建全管理体系,并进行针对性变革
软件项目管理过程中,一个良好的管理系统是非常重要的保证,可以促进对工作的有效管理。因此,管理人员在开发一个管理系统的过程中,首先对整个软件工程预设的过程进行充分的了解,而且对每个子项目、每个部门的只能和发展方向为基础对组织结构进行细则制定,对组织架构进行分级管理和具体规则的制定。除了建立一个良好的管理系统,企业还应特别注意改革和完善管理体制,在每个特定的软件项目开发过程中,以软件技术的进步的特殊性质为依据,同时以生产部门、子项目之间的组织、内容等方面的变动管理为基础,以实现管理规则的有效性。因此,管理者应该始终保持一种动态的发展,确保管理系统具有可发展性。
参考文献:
[1]刘翔.浅析软件工程管理的有效方法及实践[J].科技资讯,2014(30)
[2]杨周礼.计算机软件工程项目管理的探究[J].电子测试,2015(13)
[3]杨天华.IT项目范围管理和风险管理研究[J].电子制作,2015(10)
浏览量:2
下载量:0
时间:
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。以下是读文网小编今天为大家精心准备的计算机相关职称论文:软件工程标准如何实施。内容仅供阅读与参考!
软件工程标准如何实施 全文如下:
目前,我国各行各业根据自身的特点,也都相应制定了一定数量的软件工程标准,就其标准的内容、质量以及相互之间都存在一定的问题,因而给实施带来一定的困难。下面,就初步掌握已发布的国家标准、国家军用标准和航夭工业行业标准的现状和问题作一分析。
1.已发布的软件工程标准
据不完全统计,目前已发布国家标准n项、国军标12项、航天工业行业标准14项。详见下表。
据了解,目前准备报批的国家标准有:软件工程分类法;计算机软件单元测试;信息技术软件产品评价、质量特性及其使用指南;软件支持环境。国家军用标准有:军用软件产品;军用软件项目管理规程;军用软件支持环境;军用软件测试与评估通用要求。除此以外,其它工业部门也制定了类似的软件工程标准。
2.存在的问题
从上表可清楚地看出,目前我国软件工程标准存在两方面问题:①在高层次上缺乏统一规划和系统性,因而造成各级盲目制定和重复制定。大家知道,计算机软件作为标准化对象,应是具有重复性的概念和事物,因而不管是国标还是国军标,在同类型标准的内容上应该是大同小异的,而不应该制定成多套标准,更无必要层层都制定。②标准体系缺乏系统的规划,配套性差,标准内容不够协调,甚至有些急需的标准未有定出,如二院需要的C语言编程格式约定等。这样就制约了标准的正确性、可操作性和系统配套性。特别是针对航夭产品特征的软件产品标准还没有一项,直接影响了各项软件工程标准的有效实施。
针对上述存在的问题,从实际工作出发,笔者认为应解决下述几个问题,方可促进软件标准的实施。
a.对软件工程标准应从系统工程的概念出发,认真审查,统筹规划,该补充的补充,该合并的合并,形成一个完整的软件工程标准体系。目前软件工程的高层次标准已不少了,而对于型号作战软件需求规范、测试软件需求分析等一些低层次软件标准应加补充。
b.从一些标准的内容看,大多数是引自国外有关标准的,由于国情、体制的不同,在软件管理标准方面执行起来就比较困难。在术语概念方面存在着较大差别,往往有些标准中的词语生涩,难以理解,不太符合中国人的语言习惯,影响了标准的可操作性。比如“配置”、“配置管理”、“项目管理”、“用户手册”等在以前的型号研制中是没有碰到的语言,不仅仅是术语的不同,其内涵也有很大差别。因此,要把这些标准认真消化,准确地建立起软件工程化的概念,在软件开发中实行工程化管理还要做大量的工作。
c.由于我们对软件文件的编写和管理方面缺乏实践经验,具体到一种文件写什么内容,怎样编写仅有标准是解决不了问题的。比如,指控软件的需求分析,结合具体型号该写什么内容并没有现成的模式和规范,这就需要我们在实践中进一步总结提高,制定一些规范来指导今后的软件开发和文件的编写。
d.目前,我们软件开发中存在的最大问题,仍然是个管理问题。由于软件工程化的概念建立起来相对容易些,而软件工程体系建起来就不是短时间能完成的。至今,很多计划部门、质量管理部门以及主管领导还不清楚软件工程化的具体含义,具体操作也没有一个定式,软件开发的工程化只是某些领导和软件开发人员自觉不自觉的行为。因此,我们必须发动广大科技人员积极参与,广为宣传,加强管理,按照软件工程标准的各项要求,推动软件开发工作的向前发展。
为了有效地控制软件开发质量,切实实施各项软件工程标准,还应加强标准实施中的几个管理环节。
1.软件开发的计划管理
如上所述,软件工程不仅要建立起工程化的概念,更重要的是工程体系的运行。这个体系的首要一环就是计划管理,计划部门必须清晰地明确软件是产品,是一个开发项目。描述开发项目的有关文件必须纳入计划,就像硬件的任务书、方案论证报告、图纸文件一样,软件的可行性研究报告、需求说明书、设计说明书开发计划等文件都必须落实单位、人员、时间、经费,列入计划考核。计划是龙头,有了计划管理,软件开发才能全面启动起来。如果只给硬件落实了计划、任务(虽其中包括软件),但往往不可能使软件成为一个项目,也就没有成套的文档。设计、测试和程序的生成、维护等一系列任务不容易落实,工程化也就不存在了,所以加强软件开发的计划管理十分重要。必须说明,有关标准中提出的项目管理规范不仅在词句上区别于计划管理,反映在管理内容上也存在很大差别。
2.设计与编程的分岗
设计与编程的分岗,总公司的提法是双岗制,笔者认为分岗提法更科学。在总公司有关文件中已多次强调了这个问题。目的是一方面提高软件开发的透明度,另一方面也是提高开发质量的一项措施。在硬件研制中,设计与生产部门的分岗就从制度上保证了设计文件完整性、内容的正确性以及差错的可追溯性。当然软件和硬件不是一回事,但道理是一样的。实行分岗制就要求设计人员把设计思想进行书面描述,保证了设计思想的透明。同时,由于分岗,编程人员在理解设计文件的过程中可以客观地找出设计的不足,及早暴露出设计的差错。这在大型软件开发中必须做到,否则质量无法控制,甚至信息也无法保留。实际情况是往往由于软件人员不足,自己设计自己编程的情况还很普遍。这不利于软件开发的质量控制,也反映出管理体制上的不足。
3.加强软件的测试管理
硬件开发中很难想像一个产品不经检验就交付使用。但在一般软件的开发中不经专门的检测,而是随着硬件一起做功能性验收,就交付使用是经常的事。这样,软件本身固有的不足不易暴露出来。所以,在大型软件开发中逐步实现第三方测试是控制软件开发质量的必要手段。当然,要实现这一点还有测试工具、测试方法等问题需要逐步解决。
4.加强配置管理
“配置管理”是外来词,英文是“eonfigurationmanagement”。其定义:“标识和确定系统中配置项的过程,在系统整个生存周期内控制这些项的投放和更动,记录并报告配置的状态和更动要求,验证配置项的完整性和正确性”。配置管理还涉及到“配置项”、“配置标识”、“配置控制”等一些术语。抛开这些抽象的术语,我们可以这样理解:配置管理就是指软件开发的各个阶段所需要形成的软件产品和相应文件以及这些文件的完整性、更改、技术状态的控制,软件的存放,文件的归档等管理工作。因此,这里既有型号研制中设计文件管理的含义(包括文件的完整性、编号、更改、阶段标记等),也包括软件产品配备的含义。因为软件与硬件不同,它是无形的,软件产品本身和描述产品的文件可以存放在介质中(如软盘、硬盘),什么阶段放在设计人员手中、什么阶段进入介质、什么阶段归档、更改的控制、文件完整性要求,这些就是软件的配置管理。所以配置管理十分重要,加强配置管理可以使软件开发的技术状态受控,进而控制软件的质量。
5.加强软件的标准化检查
配置管理是一项很重要的工作,首先是软件文件的配置,也就是软件文件的管理。在型号的硬件研制中,主要是靠设计文件管理制度和标准化检查制度,使设计文件质量受控的。软件也必须这样。目前,软件开发、研制的标准已经制定得不少,但实施存在着不少问题,主要是没有切实可行的实施措施。因此,要从软件文件的标准化检查入手,严格实施各项软件工程标准。完善软件文件,制定一套制度,按照QJ1912的要求,进一步明确软件文件的格式、编号、编写内容以及文件的完整性、签署、更改等规定和要求,从而不断提高软件文件的质量和水平。只要我们认真实施软件工程标准,软件文件一定能够完善和配套。同时在完善文件的过程中也会使软件工程标准逐步得以实施。
GJB8566把软件生存周期划分为可行性与计划、需求分析、概要设计、详细设计、实现、组装测试、确认测试和使用维护等8个阶段,而且各个阶段都相应规定要完成的技术文件。QJ1912规定应完成的软件文件是在GB8566规定的基础上还增加了任务书、源程序使用文件汇总表、鉴定证书、试验报告、媒体内程序/数据目录等其它文件。而这些文件并不全是设计文件,有些属于管理文件。如开发总结、开发计划等。这与传统的设计文件概念是有区别的。这些管理文件是否也要由标准化部门统一检查,需要研究和探讨。从硬件阶段的划分看,航夭产品的研制分为论证、方案、工程研制、定型和批生产等5个阶段,而产品交给用户使用后就不属于研制阶段了。
我们开发的软件是用在航天产品上的,那么,软件开发在大的阶段上必须与航天产品的研制相吻合,这样才有利于型号研制标准化工作顺利进行。由此看出在软件开发中,上述的5个阶段与8个阶段是什么关系,所形成的软件文件如何确定阶段标记等问题,也是实施软件工程标准时不可回避的技术问题,必须认真分析解决好。为了使软件开发阶段尽量与航天产品研制各阶段吻合,便于软件工程标准顺利实施,不妨对两者作一分析。一般来讲,产品在工程研制时每一阶段又可分为设计、生产、试验等若干小的阶段。这些小的阶段与软件的设计、实现、测试等阶段相对应,这样软件开发的阶段划分就更复杂了。这里需要把产品的研制阶段和研制过程的概念区别开。
一般说来,研制阶段是表示产品研制过程中成熟程度的标志,而研制过程则是产品研制中必须经过的一个程序。某型号经过方案、初样、试样阶段,以致性能逐渐稳定达到成熟可以定型。在某一阶段如初样要经过设计、生产、试验这些过程,在这些过程中暴露的问题在下一阶段,即试样阶段更改设计、重新生产、试验,使产品性能稳定达到任务书提出的要求进入定型阶段。GB8566中规定的软件开发中的8个阶段实际是软件形成的过程,与我们型号研制阶段不是同一个概念,可能在某一阶段软、硬件有相吻合的部分。为此,笔者认为,软件的可行性研究报告、项目开发计划是软件可行性研究与计划阶段形成的文件,它应当在型号的论证阶段完成。这种文件应当属于研试文件。软件需求说明书、测试计划属于软件需求分析阶段,这个阶段相当于型号的方案阶段。
如果在文件上作阶段标记,应当是M。软件概要设计说巴18.明书、详细设计说明书、数据库设计说明书、用户手册、操作手册则分属于概要设计、详细设计、实现各阶段工作,对应型号研制则属于工程研制阶段的初样、试样阶段。需求分析、设计说明书等文件在不断修改完善过程中逐步由M阶段进入C阶段、S阶段、D阶段,在研制过程中经过各研制阶段修改、完善才能逐步定型。除此以外,如项目开发计划,开发进度月报、开发总结等文件,按照航天系统的概念属于研试文件,应由有关职能部门完成,不一定由设计来完成。
所以,解决了上述具体认识间题以后,对所形成的软件文件阶段标记达到共识,同时加强各项管理工作,那么软件工程标准就能顺利实施,从而提高软件的开发质量。
浏览量:2
下载量:0
时间:
强化实践教学环节,提高实践教学质量,培养学生实践能力和创新意识,已经成为高校教育“十二五”教学改革的重要方向。以就业为导向、校企合作、工学结合是高等工程教育的特点,而工程教育重要一环——顶岗实习,是一项由高校、企业、学生、政府等多方参与的综合工作,实习过程中由高校指导教师和企业实习指导人员共同指导学生学习生产及实习成绩评定等工作。由于顶岗实习具有管理主体多元化、实习地点分散化、实习内容多样化等特点,因此顶岗实习期间的教学和管理成为了高等院校的难点。以下是读文网小编为大家精心准备的:软件工程方向暑期实习实践教学平台的设计与分析相关论文。内容仅供参考,欢迎阅读!
【摘要】:高校在培养学生创新能力和提高学生综合素质的过程中,实习实践教学是其中非常重要的一个环节。结合中国石油大学(华东)软件工程专业大二暑期实习"J2EE软件架构实习"课程开展的实际情况,对当前高校软件工程方向暑期实习实践基础教学的现状进行了分析,对教学中存在的问题和不足提出了改进的措施。设计并实现了一个基于WEB的暑期实习实践教学平台,该平台实现了实习题目的管理、实习案例的管理、实习规范的管理和实习过程的管理,提高了实习实践的信息化管理水平。
【关键词】: 实习实践 教学平台 教学改革 动手能力
1.对实习实践教学环节重视不够。
传统的实习实践教学方法基本上是以灌输、教师定制题目为主,学生的学习主动性不能得到很好的发挥。实习实践教学方法的改革必须实现以学生自我训练为主的教学模式。在教师指导实习实践中要分出辅导性、指导性和发挥性三个不同层次的教学。辅导性教学阶段以传授理论知识为主;指导性教学阶段以培养学生的主动学习能力为主;发挥性教学阶段以启发学生的创新型思维为主。
2.实习实践题目设置不合理或缺乏更新。
目前,各高校软件工程方向暑期实习实践环节已经成为创新性人才培养模式中不可或缺的一个关键环节,目的在于培养学生的动手操作能力和提高学生综合解决问题的能力。但目前很多高校仍然采用传统的实习模式:教师布置一个题目,学生按照教师的要求进行实习,最后提交一份实习实践报告。这种实习实践过程已经不能跟上时代发展的需要,首先,实习实践题目的设置过于陈旧和单一,基本上都是诸如教学管理系统、学生信息管理系统、网上购物管理系统等;其次,学生实习实践只能基于教师给的题目进行设计开发,束缚了学生的主观能动性,限制了学生的创新性的发挥。
3.理论和实践脱节缺乏启发式教学引导。
许多教师认为暑期实习实践环节就是培养学生的动手操作能力,让学生动手实践,能够让学生体会编程的过程,会动手写代码就算是完成教学任务。这种观点是错误的。教师应该在暑期实习实践环节,既要注重理论知识的传授,又要能够引导学生在实际的项目实战中体会到运用理论指导实践的好处。这就需要教师对理论知识非常精通,并且对教师自身的实践经验有较高的要求,能够在实习实践过程中,进行一些启发式的引导,让学生能够在碰到问题的时候主动思考应该应用哪种理论知识来指导实践,提高软件开发能力和优化软件代码效率。例如:教师上课讲授了10个知识点,在实习实践教学过程中,教师应该非常明确在哪个环节引导学生运用哪个知识点来指导实践,最终达到能够让学生自主地选择利用一些知识点来指导实践,学生一旦体会到理论指导实践带来的好处,也会积极地在实际的实习实践环节中或理论学习中做到理论结合实践,使两者有机地结合起来。
4.创新能力培养不足。
如果教师在教学过程中没有给学生创造自主学习的机会,也没有为他们提供进行探究的渠道,创新就无从谈起。创新能力的提高主要是通过在实习实践过程中不断获取的。在探究和自主学习的过程中,学生能够形成多方面的能力和技能,如收集信息的技能,包括:倾听、观察、发问、探索、澄清;组织材料的技能,包括:概括、总结、对比分析、分类;传递信息的技能,包括:提问、讨论、撰写报告等。
软件工程方向暑期实习实践教学环节主要包括两个方面:一是理论,二是实践。二者相辅相成,缺一不可。但是,在实际的实习实践教学过程中,教师的主要精力要么放在基础理论知识的传授上,要么放在培养学生编写代码的能力上。“重理论,轻代码”、“重代码,轻理论”,这两种方式都不可取,都没有注重学生综合素质的培养。教师在这个环节应该是起到理论和代码之间的桥梁作用,通过一些启发式的引导,或者一些深入沟通交互,做出一些提示,让学生能够自主地运用理论指导实践。例如:老师讲解了3个设计模式,共10个知识点,也讲解了各个模式具体的应用场合。在具体的实习实践环节中,碰到应该运用设计模式来解决问题的时候,老师应该做一些启发性的引导,让学生能够自主地把所学的知识点分别运用到实际开发过程中,能够潜意识地将理论与实践相结合。
教学平台主要解决的问题有以下几个方面:
(1)实习题目的管理:能够在线自主申报题目或在线选择题目,能够对学生实习实践的每一个题目进行动态监控与跟踪,能够通过对学生实习进度日志的动态分析,动态监控每个实习题目中的每个小组成员的工作进展情况。
(2)实习案例的管理:通过信息化的手段,把一些好的经验、理论与实践相结合的经典的教学案例通过教学平台保存到数据库中,让学生可以任意地查询并对其经典教学案例进行反复研究学习,提高学生的工程实践能力。
(3)实习规范的管理:教师通过教学平台把暑期实习实践教学过程中的各个必修环节、各个环节中涉及到的知识点以及该知识点通过哪些典型的案例可以实践等分门别类地放到数据库中保存下来,并通过不断的实习实践进行总结完善,使学生能够通过教学平台进行各种查询。一方面能够规范实习实践教学的各个必修选修环节,另一方面能够保证实习实践教学经验的积累。(4)实习过程的管理:暑期实习实践教学平台能够实现学生实习代码管理、学生日志管理、学生在线评分管理、实习报告在线上传和教师在线审阅功能。通过系统设置各个模块在实习中所占比例,自动计算每个小组的实习总成绩,并可以通过系统导出到EXCEL文件中保存并打印。
1.教学平台的设计:暑期实习实践教学平台是基于MVC(Model、View和Controller)模式,采用B/S架构的WEB模式开发的。系统主要采用JSP为主要编程语言进行开发,应用WEB服务器采用开源的TOMCAT,数据库服务器采用流行的ORACLE数据库,结合HTML、CSS、JavaScript技术实现。
2.系统的主要功能:该教学平台的主要功能包括以下几个方面:
(1)学生管理子系统。学生管理子系统主要包括:自主申报题目管理、在线选择题目管理、学生日志上传管理、实习代码上传管理、学生在线评分管理。
(2)教师管理子系统。教师管理子系统主要包括:在线评分管理、在线视频管理、实习项目案例库管理。
1.实习实践课程改革过程简介
从2003年申报软件工程专业开始,中国石油大学(华东)计算机与通信工程学院就非常注重软件工程专业学生的动手操作能力培养,先后开设了“J2EE WEB编程”、“面向对象方法学”等软件方向课程。在大二暑假期间开设了“J2EE软件架构实习”这门实习实践课,目的是培养学生的软件工程动手能力、编程解决问题的能力,满足社会对软件工程专业人才的需要。本着这个教学目标,“J2EE软件架构实习”已经为软件工程专业学生开设了8届,共500名左右学生参加了实习实践教学改革。经过课程的训练,95%以上的学生能够独立地使用J2EE技术来解决实际问题,还对该实习实践课程的建设提出了很多宝贵的建议,学生反映良好,均从课程改革中受益。
2.实验机房环境问题与保障。
学院实验中心在8年实习实践课程改革中,也经历了很多困难时期,因为大部分已有机器配置较低,安装大型软件经常会出错。针对这种情况,中国石油大学(华东)计算机与通信工程学院实验中心积极与学校设备处联系,淘汰了大量的配置较低的机器,换上了很多配置高的电脑。实验中心机房可以同时供上百人同时上机,实验中心的教师也想尽办法尽量为学生提供一个良好的上机环境。
3“. J2EE软件架构实习”课程在教学平台中的应用实践。
“J2EE软件架构实习”是一门综合性很强的暑期实习实践类课程,注重理论知识与实际应用的相结合,运用理论知识来指导上机实践。通过为期四周的暑期实习实践教学活动,学生借助软件工程方向暑期实习实践教学平台进行教学活动,通过教学平台的辅助,对实习实践要求掌握的知识点更加明确了,对实习任务和实习要求更加清晰了,通过教学平台可以进行一些常见问题的查询,避免了实习教师每次实习都需要对关键点进行强调,使得学生的实习效率更加高效。通过教学平台的辅助实习实践,相比传统实习实践具有以下优点:
(1)通过教学平台实现自动考勤,自动计算平时成绩;实现在线选题和自主申报题目相结合的选题方式,让实习选题管理更加科学规范;能够通过学生定期上传的日志来动态监控学生实习的进度。
(2)通过教学平台中项目案例库的管理,实现资源不断积累,随着使用时间的推移,系统逐步完善,资源不断丰富,成为实习实践不可或缺的一个教学资源库。
(3)实现学生在线评分管理功能,让学生参与到实习实践的成绩评定中来,调动学生的积极性,让学生愿意实习,主动学习,从而提高实习实践的效果。
(4)学生独立解决问题的能力得到了锻炼和提高。有一些疑难问题,可以通过查询往届学生的技术资料库,通过仔细阅读便可解决。
4.课程实际运行效果。
该暑期实习实践课程在中国石油大学(华东)计算机与通信工程学院软件工程专业是最受欢迎的实践性课程,受到广大学生的好评,普遍反映经过一个月的实践操作,自己的动手能力得到了锻炼和提高。学生的评语:“理论联系实际,结合目前流行的J2EE技术开发基于B/S模式的系统,培养了动手能力,是软件工程专业最应该开设的一门课程”。在每年的学生评价中,学生的教学评价测评均在90分以上。
实习实践教学改革既是一门科学,也是一门艺术。一方面,应该合理设置实习实践课程内容,在培养人才的时候一定要紧密结合社会的需求,特别是软件工程这种实践性很强的专业,要按照社会的需求来设置课程内容。另一方面,应该加强理论与实践相结合,加强各个实习课程组之间的交流,不断地探讨教学方法和教学改革思路,定期组织教学研究活动,促进教师之间的交流。除了培养学生的学习兴趣外,也要让教师不断地研究探讨,遵循循序渐进的启发式的教学规律,这样,才能培养出社会真正需要的软件工程专业人才。暑期实习实践教学平台正是实现这种教学改革过程中运用的一种信息化的手段,通过教学平台规范软件实习实践教学环节,合理跟踪与监控软件实习实践教学过程,方便实习实践教学改革的实施,促进教学改革成果经验的积累,提高暑期实习实践教学效果。
相关
浏览量:6
下载量:0
时间:
论文关键词:软件工程管理开发人员组织结构用户
论文摘要:通过对软件产品特点的分析,讨论软件工程管理可能涉及的人员、组织机构、用户、控制、文档资料等内容.
一、引言
软件工程管理目前还没有引起人们的足够重视。究其原因:首先是人的传统观念,工程管理不为人们所重视;另一方面软件工程是一个新兴的学科领域,软件工程管理的问题也是刚被提出的。同时,由于软件产品的特殊性,使软件工程管理涉及到很多学科。因此.对软件工程管理,人们还缺乏经验和技术。但事实证明,由管理失误造成的后果要比程序错误造成的后果更为严重。很少有软件项目的实施进程能准确地符合预定目标、进度和预算的,这也就足以说明软件工程管理的重要。
二、软件工租,理的内容
目前软件生产自动化程度很低,在开发过程中人是起决定性的因素,因此,软件工程管理很大程度上是对人的管理。我们可根据软件产品的特点.分析软件下程管理的具体内容,它包括对开发人员、组织机构、用户、文档资料等方而的管理。
(一)开发人员
软件开发人员一般分为:项目负责人、系统分析员、高级程序员、初级程序员、资料员和其他辅助人员.根据项目的规模人小,有可能一人身兼数职,但职责必须明确。不同职责的人,要求的素质不同。如项目负责人需要有组织能力、判断能力和对重大问题能做出决策的能力;系统分析员则要有概括能力、分析能力和社交活动能力;程序员需要有熟练的编程能力等。人员要少而精,选人要慎重。软件生命期各个价段的活动有分工又互相联系。因此,要求选择各类人员既能胜任工作,又要能相互很好地配合.没有一个和谐的工作气氛很难完成个复杂的软件项目。
(二)组织机构
组织机构不等于开发人员的简单集合。这里的组织机构要求:好的组织结构、合理的人员分工和有效的通讯。软件开发的组织机构没有统一的模式。下面简单介绍三种组织机构。
1.主程序员组织机。IBM公司提出的主程序员组是软件系统结构化思想在组织上的体现。它的目的是为了保证全组的协调和统一。一位高级工程师(主程序员)主持计划、协调和复审组的全部技术活动。技术人员(一般25人)负责分析和开发活动,一位后援工程师支持高级工程师的工作,并且在该项目继续进行时,可以代替高级工程师工作,以减少可能的损失.
2.专家组。专家组强调每个人的才能,把每个人都看作是某一方面的专家,由这些专家组成一个开发机构。这种组织结构虽然能发挥所有工作人员的积极性,但往往有可能出现协调上的困难,选择这种方式要慎重.
3.民主组织.民主组织由从事各方面工作的人员轮流担任组长。很显然,这种组织结构对调动积极性和个人的创造性是很值得称道的。但是由于过多地进行组长信息“转移”不符合软件工程化的方向。
(三)用户
我们是为用户开发软件的,在开发过程中自始至终必须得到用户的密切合作和支持。作为项目负责人,要特别注意与用户保持联系,掌握用户的心理和动态.防止来自用户的各种干找和阻力。
1.用户不积极,不配合。这种表现通常来自对采用先进技术持怀疑态度的用户,他们心理上的抵触情绪会在行动上表现为消极、漠不关心。在需求阶段,做好这部分人的工作很重要,通过他们中的业务骨千,才能真正了解到用户的要求。要使他们认识到:计算机的发展和应用是现代化的必然趋势,使用计算机将会带来巨大的经济效益:让他们掌握新的技术和方法去取代某些可能过时的或淘汰的专长。
2.用户求快求全.这种表现来自对使用计算机持积极态度的人.他们中一部分人希望一个早上就能用上计算机,并且全能用上计算机。要他们认识到;开发一个软件项目不是一朝一夕就能完成的,软件工程不是靠人海战术就能加快的工期。另外,即使计算机能够处理的事情,系统也不能下于包罗万象,贪大求全。要根据现有的条件量力而行。如果系统大而全,必然会很复杂,开发时间就拖得很长,因此可能会导致一个系统的失败或性能太差.
3.用户需求变化.在软件开发过程中,用户可能会不断提出新的要求和修改以前提出的要求。从软件工程的角度不希望有这种变化。但实际上,不允许用户提出变动的要求是不可能的.因为一方面每个人对新事物有一个认识过程,不可能一下子提出全面的、准确的要求:另一方而还要考虑到与用户的关系。对来自用户的这种变化要正确对待:要向用户解释软件工程的规律,并在可能的条件下部分或有条件地满足用户的合理要求.例如:软件需求分析阶段结束后软件的设计口标已经确定,这时用户要求的重大变化要导致设计目标的变化,特别是到软件开发的后期,一般不可能满足这种变化的要求。要向用户解释清楚工程的内在规律,但对用户提出的如性能等局部方而的要求,只要是合理的,就要加以考虑。
4控制。人员控制是对开发组织内部人员控制。就是要保证开发人员的积极性和稳定性。人员的频繁更换或流动将会大大增加软件出错误的机会。至少要保证软件项目每一期工程或软件生命期每一阶段中人员的相对稳定性。同时注意发挥每个开发人员的积极性和创造性。经费控制要编制详细的经费预算。并在各阶段进行经费的核算。在经费上失去控制,软件项目就没有经济保证。质量控制与各阶段的复审在意义和作用上是一致的,在此不再叙述。
5.文档资料。开发过程的各种活动后都要反映在文档资料上。每一个阶段的文档资料是以后各阶段工作的基础,又是对前面各阶段工作的复审。软件工程管理很大程度上是通过对文档资料管理来实现的。因此,要把开发过程中的初步设计、中间过程、最后结果等建立成一套完整的文档资料。文档标准化是文档管理的重要方面。
三、结束语
在当今的软件工程时代,每个项目涉及众多的人力和物力,管理问题日益突出。在实际工作中,不管是否正式提出管理问题。都在自觉或不自觉地进行着管理,只不过是管理的好坏程度不同而已。随着软件规模的不断增大.开发人员也随着增多,开发时间也相应持续增长。而对于规模大、人员多、开发时间长的软件项目,必须要有良好的管理和力求在确定的时间和预算范围内有效地、合理地组织人力、物力.按计划完成预定的软件项目。
浏览量:2
下载量:0
时间: