软件工程论文范例

软件工程论文

软件工程论文范文1

近几年,各大学积极探索与地方企业合作办学,形成了以服务地方经济为目的,政府主导、校企参与、优势互补、互惠互利、具有生机和活力的综合性大学,但是在具体实施过程中还存在不利于发展的因素,比如在合作过程中各方的利益保障和风险承担、各部门的政策差异等,仍需要学者们进一步研究。从学校的角度来说,培养软件专业的人才,需要与企业合作,才能事半功倍。

二、校企合作存在的问题

(一)学校与企业之间交流不畅通

高校与企业虽然已经开始合作,但是校企之间缺少信息交流,学校很难及时了解市场的变化情况,企业也较难了解学校科研方面的新成果。在人才培养上,学校对当下市场需要什么样的人才,这些人才需要具备怎样的素质和技能都知之甚少,学校与企业之间没有真正建立起以社会发展为主导的适应社会发展的人才培养机制;在课程设置上,学校还是侧重于理论知识的学习,应用型课程开设的少,忽视实践技能的培养,偏离校企合作的最终目的。

(二)校企合作没有真正做到服务地方经济和特色产业

校企合作是以服务地方经济和促进社会发展为目的的,但是在实际操作中没有做到,使得校企合作动力不足,没有建立互惠互助的合作模式,因而合作积极性不高。从学校的角度来看,学校科研大多是以自己的爱好兴趣进行,没有结合地方企业的发展情况,脱离实际。从企业方面来看,面对激烈的竞争市场,学校的科研成果虽有一定的商业价值,但是企业重视眼前的利益,经营周期短,不愿大学生来企业实习,对引进的新技术缺乏科技内在助力。

(三)校企合作的管理体制及政策法规不健全

校企合作模式中,虽说学校与企业之间在某些层面中达成了合作的关系,但是在其管理体系上尚没有一套统一的合作机制,导致管理层面失效或缺失现象出现。另外,校企合作关系中,两者各自隶属于不同的管理部门,各自有其相应的管理体系,在管理中往往会因为利益关系而出现一些问题,影响校企合作的效果。所以,校企合作模式办学,亟待一套完善统一的管理体制以及政策法规来规范和协调双方之间的关系,以促进校企合作的共赢开展。

(四)校企双方利益分配机制不完善

校企合作双方是隶属于不同机构的部门,对合作所得利益的分配存在差异,如科研成果转让过程中的价格问题、合作共建研发实体的各方投资比例与利益分配问题、成果的归属权问题以及知识产权问题、相互兼职待遇问题等,这些问题的产生主要在于缺乏利益共享、风险共担的机制和制度。

三、软件专业综合改革措施

(一)采用“3+1”办学模式,优化人才培养方案

现在企业发展需要的技术人才不仅要有扎实的理论基础,还应该有较强的实际动手能力和工程实践能力。在传统教学中,老师和学生们闭门造车,偏重理论知识。对于这一情况,学校采用“3+1”模式,即3年在学校学习理论知识,通过校内学习使学生掌握软件工程专业理论知识和基础技能,提高学生的认知能力,熟悉各种专业软件的操作技能。1年在企业进行实习和顶岗见习,培养学生的实际操作能力及运用所学的知识参与真正的软件开发项目和解决遇到的实际问题,还可以利用这难得的机会了解一些软件的业务工作状况和开发软件所用的工具等,提升学生的职业素养和团队意识,增强学生的沟通能力,以备成为一名合格的员工。人才培养方案是以人才培养目标为指导,以现有的资源进行合理教学的一整套教学培养措施和方法。制定优良的教学方案应根据社会对人才的需要情况来设计,制定适应社会发展的培养方案,培养具有创新能力和团队合作能力的优秀软件工程人才。在学生进入企业实习这一环节,学校与企业需要建立完善的安全教育机制和顶岗实习制度,由于学生刚进企业,对企业的环境还不能适应,应定期组织企业、学生、老师进行交流,帮助学生解决困难。在教育方面,实现资源共享,老师进企业学习,工程师进教室授课,老师与工程师合作开发软件项目等。通过共建、共享校企双方的优质师资队伍,不但能有效地提升课堂教学质量,还能增加学生实践动手的机会,让理论知识与实践能够充分的结合,适合学校人才培养的发展规律。

(二)建立学校和企业互动平台,帮助学生完成毕业设计

软件工程论文范文2

一、应用型软件工程人才培养体系的构建

要培养受企业欢迎、适应经济社会发展需要的较高质量的软件技术人才,学校在培养人才时必须按照通用标准和行业标准,加强学生的工程应用能力和技术创新能力的培养,必须深化行业企业参与培养过程。在真正了解软件企业需求的基础上,完善和深化校企合作联合培养模式,及时调整专业结构、教学计划和课程设置,加大实践教学的力度,提高学生的动手能力和编程能力,只有这样才能培养出真正受企业欢迎的软件工程人才。常熟理工学院计算机学院在这方面经过多年的探索,取得了一定的经验。

(一)探索软件人才培养新模式,与企业联合制定

培养方案常熟理工学院软件工程专业从2005年申报开始,就组建了专业建设指导委员会,成员包括作为专业建设带头人的资深教授、知名软件企业负责人、具有丰富经验的软件高级工程师和相关高校的专家,该委员会负责审议专业发展规划、培养方案、教学计划等,对专业建设和教学改革提出意见和建议。在专业委员会的指导下,常熟理工学院和全球知名的IT教育和培训企业NIIT(印度国家信息技术学院)共同制定了校企合作嵌入式培养方案,即将NIIT课程模块与现行专业课程加以整合,衔接与调整,以取双方之长的全新模式,概括为“2+1+1”模式,即前2年完成公共课、NIIT的第一、二模块课程及部分专业平台课程教学,第3年结束专业平台课程教学,完成NIIT的第三、四模块课程教学,最后1年强化专业方向课、企业定制课程、软件工程实践和毕业设计。合格学生在取得本科学历教育文凭的同时,又可以获得NIIT颁发的国际软件工程师认证证书。该方案被省内外多所高校作为主要参考范本,实践课程体系和素质拓展体系得到企业的认可。

(二)走软件产业技术路线,构筑应用型教育教学体系

为了提高学生的市场适应能力,必须打破常规,积极探索和构建软件类专业适应市场需求的教育教学体系,以搭建起人才培养和企业需求之间的桥梁。这就要求既要打好软件技术的理论基础,更要加强学生的工程实践能力,使得教学始终与软件行业发展保持同步,课程体系切合行业需求,培养接轨行业发展、符合企业需求的专业人才,并通过职业化素质训练,历练学生良好的学识、专业的技能与敬业的态度。常熟理工学院计算机学院将软件专业学生在校期间的学习分为校内学习、实训基地学习和企业实习基地学习三个阶段:(1)校内学习阶段:学习计算机基础技术知识和软件核心技术知识,并具备相关能力后,进入实训基地学习。(2)实训基地学习阶段:以软件工程思想为指导,模拟企业软件项目管理一般流程开发软件项目,完成高级工程技术知识学习和训练。(3)企业基地学习:学生通过第二阶段的工程实践训练后,进入企业实习基地学习,通过软件开发的全过程或部分过程,使学生具有基本的软件开发能力和软件工程实践经验,感知企业,了解企业管理、软件开发过程管理以及项目管理,具备应用所掌握的开发工具和平台完成软件开发工作的能力,同时完成本科毕业设计(论文)。这个阶段学生培养方案和计划需单独制定,并采用以企业导师指导为主,校内导师指导为辅双导师制形式,联合指导。

1.理论课程教学体系设置

常熟理工学院计算机学院在课程体系的构建过程中,以“厚基础、精方向、重应用、强能力”为指导原则,以专业应用能力为主线,将理论、技术及应用结合起来,不断完善软件工程专业的课程体系,构建了由素质基础、学科基础、专业基础、工程技术、职业技能五大模块组成的课程教学体系,如图1所示。素质基础模块包括通识教育和数学工程职业基础两部分,培养学生从事软件工作所应具备的数学基础、软件工程基础、职业素质和专业外语能力。计算机软件基础技术课程构成学科基础模块,包括程序设计与算法基础、数据库应用技术、网络技术基础、离散数学等,以教授学生从事软件工作所应具备的软件专业基础知识。专业基础模块由专业核心技术课程和软件工程与软件管理两部分组成,课程包括数据结构、操作系统、软件工程、面向对象分析与设计、软件过程与项目管理、软件测试与质量保证等,这些课程的学习可为学生打下坚实的理论基础。工程技术模块由专业模块课程(NIIT工程师)和高级工程技术学习与培训课程两部分构成,常熟理工学院引进了NIIT博睿软件工程师培训课程,课程内容涉及web应用技术,嵌入式开发技术、移动计算技术与应用等软件企业一线技术,通过借鉴国外优质教育资源和先进管理模式,与国际软件人才培养目标和规格接轨。职业技能课程,包括职业素养训练、沟通技巧、外语交流、行业相关知识及企业文化等内容,课程内容根据不同企业的要求,按需设定,并以实际企业的软件开发案例为载体,将其贯穿在企业实训过程中。

2.实践教学体系设置

实践教学以提高学生核心应用能力,进而提高就业质量为最终目标,强调实践的延续性及关联性。实践教学包括课程实验、实践学期、综合工程实训、企业实践、毕业设五个层次,构成立体化的专业实践教学体系。课堂实验包括随堂实践、随堂实验、实验室实验、实战模拟等各种在专业基础课或者专业课等理论教学中穿插的实践环节,实践的内容围绕着各独立课程的核心知识点,表现出彼此之间的相对独立性。实践学期是学校安排的暑期小学期(三个星期),包括概念实训、技能实训和项目实训。分别在第一学年、第二学年、第三学年的实践短学期进行,实训内容以设计和开发一个相对完整的项目形式进行,设计的项目能将本学年核心课程相关知识点贯穿透起来,是整个学年所学课程的一个综合。实训内容从程序设计基础实训、信息系统实训到web应用、移动应用开发实训,循序渐近。综合工程实训安排在第7学期进行,软件工程学生参加IBM-ETP软件服务外包实训,为期6个月,分三个阶段,即二个月的英语或日语强化训练、二个月的IT技能强化,二个月进入实训中心或企业进行顶岗实习。实训分为Java、。NET、PHP、软件测试和大型机等五个方向,一方面对学生大学四年所学的核心知识和技能的再强化,另一方面选择当前软件开发的一线技术对学生进行项目实训,课程设置和实训内容与软件企业用人所需建立对应关系,在企业或仿真企业的实训中心,将企业的真实项目改造成的可教学化的实训项目,让学生参与开发的全过程,使学生体验企业化的管理流程,增强学生的工程应用和编程实践能力,从而弥补学校人才培养和企业用人需求之间的缝隙。企业实践是学生毕业之前的综合训练、全面提高阶段,在这个阶段学院派遣学生到具有一定规模的IT企业或IT部门进行企业实习。实习单位提供给学生一学期的软件开发或测试与开发相结合的实习项目,实习项目能够提炼出满足常熟理工学院本科生毕业设计(论文)要求的毕业论文。通过软件开发的全过程或部分过程,使学生具有基本的软件开发能力和软件工程实践经验,感知企业,了解企业管理、软件开发过程管理以及项目管理,具备应用所掌握的开发工具和平台完成软件开发工作的能力,同时完成本科毕业设计(论文),为成为能适应技术进步和社会需求变化的软件工程师打下坚实的基础。

(三)优化人才培养环境,打造立体的工程实训平台

在学校、政府和企业三方联合推动和支持下,我院的软件工程专业在建设过程中逐渐打造了一个“校内-园区-企业”立体的工程实训平台,它是进行实践教学改革,培养具有较强的工程实践能力、创新能力和工作适应能力的软件人才的重要保证。在校内,目前已建成具有较大规模的集教学、科研、学生创新活动为一体的计算机实验教学中心,拥有教学、科研型实验室和机房共23个,2009年该中心获批为省级实验教学示范中心建设点。与越田信息科技有限公司、网络神、中国电信常熟分公司等企业建立联合实验室,促进业界先进技术在教学中的体现,促进科研对教学的推动作用。在园区,在常熟东南开发区(软件谷)和海安软件园建立了能容纳三百多人的实训和实习基地,学院依托这些基地,大力推进与企业、地方政府、科研单位、园区等的实质性项目合作,实习见习、实验实训活动围绕地方科技应用开发、课题调研、信息产业等开展,着力构建互利互惠的合作机制,调动社会有关方面共建实习、实训基地的积极性。建立实践教学社会资源共享与服务社会相结合的新模式。在企业,常熟理工学院计算机学院与越田科技、上海理想等软件企业合作签订了“订单式”培养协议,学生进入四年级后,按照企业要求的知识和技能培训内容,以企业准员工身份接受教育,形成了实习与就业同步的校企零距离合作新模式。此外常熟市政府、IBM公司、南大苏富特科技有限公司三方合作实施IBM-EPT项目,项目实施由IBM派遣专职人员负责学生的实训、学业指导及职业指导。学生在第七学期开始接受为期半年多的外语强化、IT技能强化和公司模拟实训三个阶段的实用培训,让学生快速掌握软件一线实践技能,了解企业文化和企业相关管理流程,较快的缩小个人能力与企业实际需求的差距,提升了职业发展能力和就业能力。同时,用人单位能够借此缩短培养人才周期、降低培训新员工成本、保障和提升培训质量。2009年开始连续三年参训学生的培训费由常熟市人民政府补贴,补贴额度为每位学生1万元/期。该项目充分体现“政府资助零风险、成才就业双丰收”的新特色。

(四)多措并举,加快建设培养工程应用型人才师资队伍

要培养真正符合社会需要的软件人才,关键在于是否拥有一支满足工程人才培养要求的高水平教师队伍。教师作为教学的主体,对能否提高整个专业的教学质量起着至关重要的作用。为此学院采取多重措施,不断提高教师的工程实践能力、创新能力和科研技术水平。

1.实施青年教师导师制

学院为新参加工作的青年教师,未取得讲师以上职称,或需要在科研教学方面提高的青年教师配备导师,以充分发挥骨干教师和老教师“传、帮、带”的作用。通过导师的言传身教,不断提高青年教师的思想政治素质、业务素质、实践能力和教学水平,逐步形成严谨治学的态度和扎实的工作作风,尽快适应科学研究和教育教学工作,成长为合格乃至优秀的教师。

2.制定教师培训与轮训制度

为了增强教师的工程实践能力,学院一方面利用每年的暑假安排青年教师分批到IT企业进行挂职锻炼,通过参与企业技术服务和项目开发,了解软件产业动态,学习一线开发技术,提高教师的工程实践能力和项目实施经验。另一方面聘请企业有丰富工程经验的技术人员进校对教师进行实践课程、项目教学方面的培训,提高教师的“双师型”技能,逐步使教师达到一专多能。

3.优化师资队伍的结构

相比学历结构、职称结构,教师自身的专业背景、实践工作经验、参与工程技术项目(包括科研项目)的经历等对应用型软件人才培养的影响要更加深远,计算机学院很早就意识到了这一点,在软件人才引进上,除了学历、学位、高职的高要求外,更看重教师的工程背景和行业背景,优先考虑具有扎实学术功底和较强实践能力的教师。通过多年自身培养和有针对性的人才引进,学院具有企业背景和工程实践经历的教师比例逐步加大,“双师型”教师人数逐年增加,这对软件工程专业本身的建设与发展,对软件应用型人才的培养都起到良好的促进作用。

4.设立“学生专业导师制”

学院为大一新生配备专业导师,由各专业的专任教师担任,负责指导5-8名学生的专业学习和大学生活,并一直延续到学生毕业。通过这种制度的实施,加深师生彼此间的了解,增近了师生间的感情,教师也乐于让学生参与到自已的科研课题或承担的横向项目中,使学生得到组织、设计、操作、管理等多方面的锻炼。反过来,要想在指导学生时取得良好的效果,对专业教师也提出了更高的要求,要求专业教师不仅对本专业培养方案、教学计划、课程之间的相互关系能全面了解,尤其是对专业的横向联系、纵向内容有更加深入、细致的理解,而且在项目开发、项目管理、科技创新等方面都要具备较强的能力,只有这样才能胜任导师这一称号。

5.拓宽应用型师资利用渠道

“教师下企业,工程师进课堂”,学院在校企合作培养软件人才的过程中,充分利用企业资源,从具有丰富实践经验和教学能力的高级软件工程师、项目经理、技术主管等专业技术人员中选聘为学院“兼职教师”,承担一些实践性很强的专业课程、项目实训、毕业设计指导等教学任务。

二、结束语

软件产业的快速发展给软件工程专业的发展带来了机遇,也带来了挑战。常熟理工学院计算机学院结合自身特点,转变观念,经过多年的实践和探索,找到了一条符合自身发展之路,软件工程专业培养的学生动手编程能力、项目实践能力、社会适应力普遍较强,毕业生受到用人单位的青睐。学院所形成的一个共识就是要培养受社会欢迎的软件应用型人才,师资队伍结构必须优化,人才培养模式必须改革,课程必须更新,必须加大实训、实践教学的力度,只有这样才能在激烈的专业发展竞争中占有一席之地。

作者:宋东兴 殷旭东 刘永俊 单位:江苏常熟理工学院计算机科学与工程学院

(二)

一、加强课程知识的专业背景

软件工程经济学不同于普通的工程经济学,它以软件行业为研究背景,具有鲜明的行业特征。因此,对于本门课程的学习就要求学习者具有一定的软件项目工程经验。而对于在校学生来说,实际软件项目工程经验非常少,甚至有的学生根本就没有工程经验,导致学生对一些工程的概念和过程不清楚或者理解有偏差。该状况导致学生对本课程的学习和认知难度加大,很多学生最终也会对课程学习失去兴趣。因此,在进行本课程知识学习前,有必要加强学生的软件工程专业的背景知识。在教学过程中,笔者对一个实际的项目运作进行介绍,包括对项目的招标、投标团队的建立、项目投标、开发团队的建立、项目开发、项目验收和项目维护的详细介绍,其中,项目开发又从需求分析、设计、编码、单元测试、集成测试和系统测试进行介绍。上述学习内容让学生对软件的开发流程和公司的项目运作有了清楚的认识,提高了对课程乃至专业的兴趣,同时,这些学习内容有助于学生对后续课程中知识的理解和掌握,消除对本门课程学习的陌生和恐惧感,提高对课程重要性的认识。

二、进行启发式学习,注重双向交流

相对大二的低年级学生来说,工程经济学确实具有一定的难度。如果采用满堂灌的教学模式,注重知识的介绍,缺少教师与学生的互动交流,那么,课堂气氛将会很沉闷,学生学习的积极性和主动性则不能得到发挥。因此,教师要改革课堂上以教师讲解为主、学生被动参与学习的填鸭式陈旧教学方式,教师应积极引导学生参与课堂教学,鼓励学生课前预习和课中讨论,教师可采用“启发式”、“讨论式”、“引导式”、“参与式”、“研究式”等教学方法,增强学生对该课程的学习兴趣,提高学生的学习效率和效果。而针对软件工程经济学这种与实际结合度高的课程,完全可以采用启发式教学。笔者在课堂上经常采用“问题→思路→总结并引出课程内容”的教学模式。提出问题可以激发学生的独立思考,同时根据课堂情况再给予一定的思考方向的提示,这样的教学模式有效开启了课堂上的师生双向交流,活跃了课堂气氛,培养并提高了学生思考问题、分析问题的能力以及实际运用能力。适时的总结和课程内容的引出则可以把学生的讨论引向更深的领域,提高学生对课堂新知识的理性认识和兴趣。比如,在介绍项目风险的时候,笔者并没有一开始就进行风险的定义、风险的分类、风险的规避的介绍,而是先给出一个引导性问题。问题的具体内容为:有一天,总经理突然找到作为公司项目经理的你,并告知你有一个客户想开发一个ERP系统,想让你分析该项目存在哪些不确定因素有可能导致项目失败。然后进入课题讨论,并根据学生的讨论情况给予一定的引导。开始讨论的时候,学生往往集中在技术方面的风险,此时可以告诉学生不确定因素也包括市场、开发团队的经验等方面的内容,学生讨论的范围一下子就开阔了。最后觉得学生讨论的目的已经达到就可以对问题进行总结,并提出本堂课的知识:风险的定义、风险的分类和风险的规避。而在前面讨论的基础上,学生对风险已经有了一定的认识,对课堂新内容的理解和接受就更容易了,因此,课堂气氛也一直比较活跃。

三、加强辅助性工具的使用和学习

软件工程经济学的课程设置目的是培养学生的经济意识,并在实际工作中应用与其相关的知识。而工程经济学里有许多内容需要计算,这些内容除了用手工计算外,培养学生用计算机软件计算,具有十分重要的意义。如何才能有效提高学生使用计算机软件计算的能力,笔者认为首要的工作是课堂上加强计算机辅助性工具的使用和学习,特别是Excel和Matlab的应用学习。课程中需要进行计算分析的内容除了要重点介绍其计算和分析的原理外,更要教会学生在实际应用中如何使用计算机辅助性工具来做好计算和分析工作,这样既可以让学生从繁琐枯燥的计算中解放出来,把精力用在概念的理解和方法的掌握上,又可以把课内的知识直接与实际问题有效连接起来,提高学生的兴趣和对知识点的理解。比如,在讲授“资金时间价值计算”时就可以使用Excel提供的内置函数FV、PMT、PV进行资金的等值计算,而在进行经济评价的时候则可以使用内置函数NPV、IRR、PMT等。另外,在介绍敏感性分析等内容时,则可以充分利用Excel的图表功能来绘制敏感性分析图,然后以动态图表的绘制来直观地展示敏感性分析曲线的变化与项目条件变化的关系,方便确定敏感性因素及其对分析指标的灵敏程度。以上四点内容正是笔者在这一原则指导下对软件工程经济学课程教学方法的一点尝试和总结。从实际的应用效果来看,学生对该课程的认识和兴趣随着课程的深入有较大的提升,笔者相信这只是一个起点,作为一名教师应该不断创新教学方式并进行及时的总结反思,探索出更加高效的教学方式,不断提高自身的教学水平。

作者:高凤强 单位:厦门大学嘉庚学院

(三)

一、开展校内实训教学的必要性

当前,学生参加项目实训的主要途径是到校企合作企业或校外实践基地。然而,随着软件工程专业招生规模的扩大,软件企业出于工程质量、工期要求、客户资料及企业核心技术保密等多方面的考虑,无法接纳大量的学生进入企业进行工程项目的实践。为了满足大多数学生的软件项目实训需求,构建企业实训和校内实训相结合的实训教学体系已经成为一种必然的要求。为此,哈尔滨理工大学软件学院成立了软件实训中心,在校内为学生搭建一个模拟企业真实工作环境的学习实践平台,借鉴企业项目实训流程,以项目驱动的模式对学生

二、校内实训教学的总体思路

(一)总体思路

校内软件项目实训要坚持校企合作和产学研互动,以软件企业岗位技能需求目标为导向,以真实软件项目开发为驱动,以一流的设备和工作环境为依托,以有丰富工程经验的实训教师为指导,遵循软件企业的管理规范和软件项目的标准流程,在项目实训中培养、提升学生的工程实践能力、团队协作能力和工业化素质,从而缩短人才培养和企业需求之间的距离,协助学生尽快实现从“学生角色”到“职业人角色”的转变。

(二)基本原则

校内软件项目实训应该遵循仿真性、适用性、先进性和创新性原则。

1.仿真性原则。坚持“从企业中来,到企业中去”的原则,包括实训项目、管理形式、质量评估、指导教师都来源于企业,而实训效果和质量,最终也要到企业中去检验。

2.适用性原则。软件项目实训要结合学校软件工程专业人才培养的目标和特点,根据国家经济结构和产业结构调整对软件人才培养的需求来进行,既具有针对性,又具有适用性。

3.先进性原则。用于软件项目实训的设备和技术要具备先进性,实训条件应与软件企业的同期设备具有相同的水平,并争取有一定的超前性。

4.创新性原则。采用先进的CDIO工程教学理念,以项目驱动的方式实施实训教学,发挥观念引领和思想导向的作用。

三、校内软件项目实训的策略开展

软件项目实训的两个关键要素是实训案例和指导教师,同时涉及实训环境、教材、制度和平台建设等。

(一)实训环境建设

实训环境是开展校内项目实训的基础条件,应该体现仿真性和先进性原则。目前,哈尔滨理工大学软件学院专门成立了软件项目实训中心,致力于在校内搭建一流的实训环境,现已建成两个实训室和一个讨论室,配备了最先进的PC机和软件开发环境,每个实训室可以容纳68人,人均占有面积2平方米,每人一个工位、一台高配置计算机。讨论室供学生在项目实训中召开项目小组会议、进行项目评审等。

(二)实训案例建设

实训案例是开展校内软件项目实训的关键要素。实训案例应能体现当前软件技术发展的主流技术,具有先进性和代表性,同时考虑不同专业方向的适用性。实训案例建设采取企业引进和自主研发相结合的方式,具体措施包括:

1.合理规划,针对不同的专业方向建立相应的实训模块和实训案例。目前哈尔滨理工大学软件工程专业设有“软件开发J2EE技术”、“软件开发.NET技术”、“嵌入式技术”、“物联网软件开发技术”、“移动计算软件开发技术”共5个专业方向。为满足不同专业方向的需求,为5个专业方向分别建设实训案例3—5个。

2.规范管理,采用CMMI5项目管理成熟度模型,开发实训案例模板。针对不同方向,实训案例虽然具有不同的功能并采用不同的技术,但从教学角度来说,都应该遵循共同的规律。为了规范管理和保证质量,应用软件企业普遍采用的CMMI5项目管理成熟度模型,抽象出实训案例的共同特征,形成案例模板。每个案例都按照模板要求,具有完备的技术文档和参考程序,包括系统需求说明书、概要设计说明书、详细设计说明书、测试计划说明书,测试用例说明书、系统使用说明书等。

3.产学结合,以企业实际工程项目为背景,适当改造,开发实训案例。软件公司具有最先进的开发技术,但企业实际项目通常规模很大,不适于直接用做实训案例;另外,公司由于商业竞争和技术保密等原因,不愿意公开其技术方案、程序源码等项目资料。目前,软件学院已有多名教师在东软集团等企业参加实践锻炼,获得了部分项目资料,通过对这些项目资料进行整理和改造,开发项目案例,使之既体现实用性和先进性,又适合实训教学。

4.学研结合,以学生兴趣和创新为动力,自主研发实训案例。兴趣是学习的动力,创新是进步的源泉,学研结合是最好的学习方式。结合教师的科研项目,引导学生进行一些有创意的软件项目开发活动,边学习边开发,在此基础上形成实训案例。这些案例更适合对学生进行实训教学,有利于激发学生的学习兴趣,培养学生的创新意识。

(三)实训师资建设

当前,高校教师普遍存在缺乏工程实践经历和项目经验的问题。因此,校内软件项目实训由企业工程师和校内教师共同指导。聘请企业资深工程师担任企业指导教师,由参加过企业实际项目开发并且教学能力突出的专业教师担任校内指导教师。近年来,哈尔滨理工大学软件工程专业有多名教师在东软集团、青岛软件园等企业接受了企业实践训练,基本具备了开展校内实训的师资基础。

(四)实训制度建设

实训制度是实训质量的重要保障。实训制度建设包括建立并完善实训管理规范、执行细则、质量评估体系、学生管理规范、实训案例管理办法等一系列规范文件,并建立相应的实训运行机制等。

(五)实训教材建设

实训教材是将教育思想、理念、宗旨等转变为具体教学实践的基础,是保证实训教学顺利开展的重要工具。为了有助于培养学生的工程实践能力,实训教材的内容应该具有很强的工程指导性。实训教材编写要改变普通教材偏重知识体系完整性的做法,改为重视工程项目的完整性。每一本实训教材都应该有完整的软件工程项目案例,并充分体现指导性、实用性、完整性和技术先进性。实训教材建设可以采取有偿选用企业实训教材、教师和企业工程师合编教材相结合的方式。

(六)实训平台建设

软件项目实训涉及大量的人员信息、文档、代码和多媒体资料。通过开发软件项目实训平台,可以方便实训案例的管理和维护,对实训流程进行有效管理和实时监控,在减轻教师的教学压力的同时实现资源共享,使学生能够随时随地地参加实训学习。实训平台设计分学生、教师和管理者三种角色。学生可通过平台进行项目实训,获取参考资料和帮助文档,查看实训任务,撰写日报及工作总结、提交工作成果,全程接受实训指导和监控;教师可通过平台分配任务,查看学生任务完成情况,监控各教学环节,提高教学质量;管理者可获取实训的各类统计信息,随时了解学员的实训情况及实训教学情况,监控实训教学过程。

作者:姚登举 郭红 张淑丽 单位:黑龙江哈尔滨理工大学

(四)

一、问题分析

1.学时的限制。为了对学生进行全面的培养,在校期间,学生需要学习很多门课程,不论多重要的课程,分配的理论教学和实践教学的时间都是有限的。多数学校在设置《软件工程》理论和实践教学的学时一般为64—72学时。理论教学为40学时左右,实践学时为32学时左右。而开发具有一定规模的项目即使对于一个软件公司来说,都要以年和月为单位来计划开发时间。显然制定的实践教学的学时是不够的。面对这种情况,许多教师在实践环节只能选取软件开发过程中的一部分内容进行实践,这样做则破坏了实践教学的完整性。

2.考核方式的问题。多数实践教学是在实践环节结束后以答辩和提交报告的形式来进行考核。这种方式应用在软件工程实践环节中会出现问题,由于高等教育从精英教育转变为大众教育,班级学生人数较多,指导教师很难随时掌握所有学生的设计情况,就会发生各阶段出现的错误得不到及时纠正,从而造成错误的积累和放大,到最后想要弥补和改正都极为困难。

二、研究思路

针对以上问题,课题组主要对实践教学的课程安排、开发方法以及考核方式进行了改革与研究,具体改革的方法如下:

(一)采用分散式实践教学课程设置为了保证软件工程课程实践训练的系统性和完整性,加强理论教学与实践教学的衔接。课程组采取了独立设置实践课程,拉长实践教学周期的方法。具体的做法是:取消原来分散在软件工程课程中的实验课时,独立设置32学时的软件工程集中实践教学环节,实践教学周数为8周,每周4学时。具体的时间及内容安排,要注意的是这个内容安排包含了软件设计开发过程的各个阶段,其中软件项目管理是贯穿整个实践环节的,但各个阶段不是按照传统的瀑布模型严格地分阶段执行,可以根据具体情况进行调整。采用分散式的实践教学方式是由软件工程实践教学的特点决定的。对于分析问题的能力和工程化软件开发意识较弱的学生来说,对于软件项目进行的分析与设计,随着研究的深入,往往需要多次反复修改,在较短时间内仓促完成的成果会有诸多的问题。分散式实践环节与理论课程采用了类似的教学进度,上课时间主要是进行教师指导、研究讨论和分阶段答辩。课下学生有更多的时间去理解、思考、分析和设计。这种分散式实践教学与其他教学区别是:不同于理论课程的教学,在上课时间不会对理论进行大量讲解;不同于课内实验,分散式实践在时间的安排上要在《软件工程》课程结束以后,不属于课内实验;不同于课程设计,课程设计一般都是集中在一两周进行;不同于毕业设计,毕业设计侧重结果,分散式实践侧重过程。

(二)采用敏捷开发方法进行软件开发即使采用分散式实践教学,但是利用传统的方法去开发项目在时间上仍然不足,这就需要采用新的开发方法。敏捷开发方法是近些年被重视和研究的软件开发方法,敏捷开发方法具有特点是:以人为核心、循环迭代、响应变化等等,主要着眼于能高质量地快速交付让客户满意的软件。将敏捷开发方法应用于软件工程课程的实践教学过程中,能够克服传统教学方法的一些缺陷。与传统的软件开发相比,敏捷开发注重灵活性,简单、快速,适合于对时间要求严格的项目,采用敏捷开发方法学生能够在较短的时间内完成任务。同时,敏捷开发方法与其他的开发方法在原理和过程上是相同的,这就保证了实践教学的完整型和全面性,学生将来即使采用其他的开发方法也不会出现障碍。这些年,敏捷开发方法被很多软件开发公司广泛使用,掌握了敏捷开发方法,有利于学生毕业后求职和快速胜任工作。敏捷软件开发方法包含了5个价值观和一系列的原则。但是在实践教学中不是所有内容的都要采用,需要进行剪裁,找到适合的开发模式。有些理论和经验对于处在学习阶段的学生并不适用,只有在工作中经过一段时间的锻炼,才能够真正体会。学生阶段,主要就是让学生掌握理论、方法和技术,同时培养学生的沟通、简单、反馈、勇气和谦逊的价值观。要注意的是:采用敏捷开发方法,表1中列出实践内容的各个阶段并不是严格区分的,存在循环迭代。

(三)分阶段性答辩作为主要考核方式为了严格保证质量,一般工程项目都会进行阶段性验收。由于软件项目的分析与设计需要进行阶段评审,在实践教学中,采用分阶段答辩就是一个合适的考核方式。在项目开发的每个阶段都让学生对本组的设计成果进行介绍讲解,同时回答教师和其他小组同学的提问,这与毕业设计答辩在形式上相似。采用分阶段答辩可以及时纠正学生在设计过程中出现错误和偏差,避免问题的积累和扩大。学生的最后成绩主要是根据平时表现、答辩表现、提问情况和团队分数四个方面进行综合打分。不同阶段答辩的同学不能相同,这就要求组内所有的同学都要共同努力,只有团队取得较高分数才能保证个人的成绩。分阶段的项目答辩不但能检查项目的进展情况,而且能为更多的学生提供展示自我的机会,提高学生的表达能力和反应能力,培养了学生的自信心,也为将来的毕业答辩打下良好的基础。在此过程中,不仅要看学生设计的结果和解决方案正确与否,还要看学生是否认真地思考了问题。因为一个软件项目常有多种解决方案,看学生是沿用以前的方案,还是经过思考采用新的方案。即使新的方案有缺点和不足,也会给出较好的成绩,鼓励学生去思考创新。

三、改革成效

通过将改革后三个学年的学生学习情况与改革前的情况进行对比研究,发现两种培养模式在期末考试中客观题的解答上相差不大,但是主观题目的解答上,改革后的学生分数明显提高。许多学生在经历改革实践后发生很大变化,从被动学习到主动学习,从不愿在同学面前讲话到积极表达自己的看法,学生对软件工程产生了浓厚的兴趣,能够深入思考和创新。教师与学生之间的沟通也大大增加。从毕业生求职的情况来看,教学改革后毕业生在面试环节获得的评价很好,签约率也明显提高。改革后的第一届毕业生就取得很好的成绩,2011年国内某知名企业在吉林省招收了计算机专业6名学生,其中4名为其他院校的研究生,2名为我院的本科学生,公司报到后被安排在研发部门工作。

四、结语

本文为教研项目“基于敏捷开发方法的软件工程实践教学的改革与研究”的研究成果,在软件开发方法采用敏捷开发的基础上,又研究出了分散式实践教学的课程设置方式和分阶段答辩的考核方式,其中首次采用的分散式实践教学方式,在软件工程课程实践教学中实现了创新,并取得了良好的效果。通过改革和研究有效地解决了软件工程实践教学中的难题,实现了计算机软件开发应用型人才的培养目标。

作者:李天宇 张东辉 张秀坤 张素莉 赵洁红 单位:长春工程学院计算机技术与工程学院

(五)

一、借鉴国外优秀课程及教材

教材应该是领域内高水平、权威的、英语地区受欢迎的优秀教材,同时也是我们国内公开出版发行的书籍。授课教师最好接受过该课程的培训。软件工程课程借鉴了美国卡耐基梅隆大学(该大学在软件工程领域的研究与教学拥有全球公认的权威)软件专业的SSD9SoftwareEngineering课程,笔者还接受了该大学教授的课程培训,这为该课程多年来的双语教学和全英文授课都打下了良好的基础。软件工程课程借鉴了SSD9课程的教学内容、模式以及教材。该教材为软件工程权威专家StephenR•Schach所著,随着软件工程领域的发展,10年来,该教材多次版本升级,从StructuredandObject-OrientedSoftwareEngineering,到Object-OrientedandStructuredSoftwareEngineering(5th~8th版),直到最新版的Object-OrientedSoftwareEngi-neering。这样保证了我们所选教材的权威性和前沿性,做到了教学内容与国际先进技术接轨。

二、全英文教学资料

全英文教学的课堂资料主要包括英文课件PPT、英文案例描述、英文实验报告文档等。这样能够保证学生耳中所听到的和眼中所看到的课件相一致,保持课堂上纯正的英文氛围和英文思维的惯性。同时,这些资料应该与英文原版教材一脉相承,以保证学生在课后学习时能够获得纯英文学习资料,以避免学生在英文资料和中文资料之间的苦苦对照。软件工程是一个很宽广的学科领域,其中的很多术语在英文有唯一的、明确的含义。但是翻译成中文就会有多种译法,有些资料甚至有翻译错误,这反而给学生造成概念上的混淆,造成不必要的学习困难。所以确定英语作为课程学习语言,从全局来看反而更加有利于专业知识的学习。

三、授课教师的英语能力

全英文教学采用英文教材以及大量的英文资料,同时课堂上的授课语言为100%英文,这就要求授课教师有很好的英语能力,尤其是英语口语能力,这是开展全英文授课首要的硬件条件。授课教师要能够充分、深入地理解教材及各种教学资料的内容,同时,要能够在课堂上用流畅、准确、简单易懂的英语口语进行讲解。只有授课教师的英语水平达到相当程度,才能营造出良好的英语氛围,使学生能够沉浸在英语思维和学习中。通常在英语地区工作学习过的教师才能够达到这种英语能力。教师仅仅具有良好的英语水平还不够,还要对课程教学有相当的经验,只有这样才能够随时根据课堂学生的状态和接受的程度,来灵活掌控授课的节奏、重点、讲解方式、师生互动,这样才能最大程度地达到良好的教学效果。笔者除了有扎实的英语基础(取得过优异的TOEFL和GRE成绩),还有3年多英语国家的学习和工作经历,并且有10年的双语教学经历,这都为该课程全英文教学的顺利开展打下了坚实的基础。

四、组建英文授课班

近年来我国的英语教育从小学,甚至从学龄前就开始抓起,所以学生的整体英语水平较前几年确实有相当程度的提高。但是不可否认的是英语教育还存在地区和个体差异,所以一下子要求所有的学生接受和适应全英文教学不太现实。应该先从一部分学生做起,以点带面,逐步拓展到更多学生,乃至于其他课程,逐步形成全英文授课的大气候大环境。笔者的做法是组建全英文授课班:首先学生自愿报名,然后教师结合每名学生的英语能力、专业能力等综合情况组建一个全英文授课班。第一届全英文班有30名学生,初步尝试取得了很好的效果;第二年就有了更多的学生报名,经过双向选择最终确定为90名学生的规模。

五、课前预习

英语水平达到一定程度后,学生在专业课程全英文教学过程中所遇到的困难大部分集中于专业词汇上。如学生在聆听老师的英文讲授时会因为一两个听不懂、且多次出现的专业词汇,而产生越来越大的困惑和压力,进而使自信心和热情受到打击。如果授课教师在课前把下次课中可能要涉及的重点专业词汇和出现频率高的词汇布置给学生进行预习,就会大大提高课堂的学习效果。如在软件工程课程中经常出现词汇client,在软件专业的其他专业课程中client可能会是指“客户端”“客户机”等,而在该课程中频繁出现时都是指软件系统的“客户”。所以如果没有预习,学生就会对老师的授课内容产生误解和困惑。实践证明,课前预习有非常积极的作用。

六、课堂互动

为了使学生更好地融入到全英文的课堂学习中,一定要加强课堂上的师生互动,这样才能使学生能够紧紧地跟上教师的思路和节奏,达到最好的学习效果。要增加互动的形式,使互动更加灵活、没有压力感,使学生能够积极、愉快地参与,甚至主动发起课堂互动,从而真正融入到课堂教学中。笔者在软件工程课程的每一堂课,都至少有两个互动环节,其互动题目通常选取一个以某些先修课为基础的、学生以前遇到过的、感到困惑的,并且与本堂课的授课内容密切相关的问题。这样很容易引起学生的兴趣和参与,加以教师的适当引导,最终结合到每堂课的知识点上,从而达到理想的教学效果。

七、对学生的考核

对学生的考核是结果式考核和过程式考核相结合,并且均为全英文。结果式考核即传统的期末考试。笔者用2年多时间建设和完善了全英文版的在线题库和考试系统,学生在指定的时间内,在可监控的空间范围内(学校的机房),登录该在线考试系统进行机试,实现了考试的先进性和准确性。过程式考核包括实验情况和课堂表现(主要指课堂上积极与老师用英语交互)。软件工程课程有较强的实践性,所以实验教学占到24学时(课程总学时64学时,其中理论教学40学时)。实验开始前,要求学生每3~5人自愿组成一个实验小组,在老师的指导下选择感兴趣的、难度和规模适中的题目,以保证学生愿意投入、能够调研和完成,例如学生宿舍管理系统、网上订餐系统、校园一卡通系统等;题目确定后,要求学生以小组为单位运用课堂所学方法和技术,完成本组课题的实验报告,包括需求调研、需求文档、用多种UML图表达的分析和设计方案。这些文档均要求完全用英文完成。最终的实验成绩包括文档成绩和答辩成绩。文档成绩以实验报告的质与量来评分。答辩成绩以小组为单位的自述和答辩的形式来考核,要求学生在给定时间内(约10分钟)运用全英文的PPT、WORD文档和图片等各种形式,最大限度地展示本组的工作成果,用全英文作自述和回答老师用英语提出的问题(约8~10分钟)。对全英文验收答辩,学生一开始是很害怕的,但是有扎实的实验成果做后盾,加上全组同学的认真准备,最终绝大多数小组都能够作出较为精彩的英文答辩;而且有的小组的每一个成员都参与了英文自述和答辩,表现出极大的参与热情和自信。课程实验的整体验收情况很理想,老师给学生的答辩都作了现场录像,因为这对于学生来说是第一次全英文实验和答辩,笔者把答辩视频录像copy给学生留作纪念,学生们都很开心和自豪。

八、立体化课程资源建设

为了方便学生的课后学习,非常有必要对课程资源进行全英文的、立体化的建设,以此作为一个重要的教学资源和手段。课程资源应该做成web版,放到公共服务器上,以便广大软件专业的学生以及业内人员进行软件工程课程的学习和专业参考等。笔者将课程内容分为若干知识模块,每个知识模块的教学资源包括学习目标、学习指南、知识内容、练习、实践、作业、测验、案例、常见问题和知识结构;各个知识模块再向下分解为若干知识点,每个知识点的教学资源包括教学视频录像及其内容、练习、测验、案例、资源下载和扩展学习。同时还提供课程简介、教学团队简介、教学大纲、实验大纲、实验指导书、实验报告模板、往届学生实验报告样本、学生实验答辩录像等资源。

九、结语

软件工程课程的全英文教学在东北大学软件学院取得了很好的教学效果。超过95%的学生认可全英文教学,坦承参加全英文授课班有很大的收获,既学习到了最新的专业知识,又学习到了实实在在的专业英语,对自己成长为国际化的软件人才有很大的帮助。学生逐渐体会到英文软件专业书籍和资料的精妙之处,表示以后不会再回避和抵触英文专业资料,并且希望学院能够扩大全英文教学的范围。综上所述,在软件工程专业课程上进行全英文教学是可行的,能够带来理想的教学效果。

作者:张爽 朱志良 于瑞云 单位:辽宁沈阳东北大学软件学院

(六)

一、评价模式

人才培养实质就是知识、能力、素质的培养,通过传授知识,培养能力,提升素质,知识是素质形成和提高的基础,素质的核心是知识和能力,素质的表现是通过性格和能力表现出来,因此素质评价需要包括性格、知识和能力。高校人才培养是一个长期的过程,学习知识,能力和素质的提升、性格的改变是一个循序渐进的过程,因此素质评价模式应该包括素质评价指标和素质评价过程两个部分,下面本文将论述软件工程专业的素质评价指标和评价过程。

1、评价指标

根据东北大学软件工程专业的人才培养目标、培养计划和培养模式,本文提出了软件工程专业的素质评价指标,该指标体系中总共分为三个部分性格指标、知识指标和能力指标。性格指标采用美国伊利诺州立大学卡特尔教授的研究成果,确定了影响人们心理的十六种人格因素,包括乐群性、聪慧性、稳定性、恃强性、兴奋性、有恒性、敢为性、敏感性、怀疑性、幻想性、世故性、忧虑性、实验性、独立性、自律性和紧张性,根据十六种人格因素,可以综合测评出学生的六项实际应用素质和其适合的工作类型。知识分为自然科学知识和社会科学知识,从人才培养的角度看,社会科学知识对素质的提升也具有很大的作用,所以在知识指标中从专业知识、人文知识和外语知识三个方面进行评价,每一种知识又从知识的深度和广度两方面进行评价,从而能够满足软件工程专业人才培养的要求。软件工程专业学生需要具备良好的沟通交流能力、分析与解决问题能力、工程实践能力、团队合作能力、文档写作能力、主动获取知识能力、组织协调与项目管理能力、创新能力和外语能力,所以能力指标是对以上九种能力进行评价。

2、评价过程大学生在四年中通过课堂和课外学习知识,培养能力,提升素质,能力和素质的培养都是循序渐进的,评价的目的是为了下一步的培养,所以评价过程是一个渐进分步的过程。在本评价模式中评价过程有五个关键点,第一是在学生刚进入大学进行评价,评价的主要指标是性格特征,分析其应用素质,为其制定学习和改进目标。第二是在大一学习结束,根据其学习结果,对其进行知识、能力和性格指标评价,然后对学生进行评价结果反馈,找到下一年的培养目标和改进目标。第三、第四、第五分别在大二、大三、大四学习结束时进行,评价内容也是根据学习结果对知识和能力指标进行评价,同时评价性格指标。每一次评价结束,都会为下一阶段的学习和培养提出明确的要求。在本评价模式中,对性格指标的评价采用卡特尔评价法。对知识指标的评价是依据学生在课堂内外的学习结果进行评价,学生在获得每项学习成果时,由教师指定每项成果考核学生某类知识所占的比重是多少,学生在每项学习成果中获得的每项知识指标值就是学习成果乘以它所占的比重,学生每项知识指标值是他所有学习成果在每项知识指标值得总和。能力指标值也是根据学生的学习成果得到,由教师指定该项学习成果对九项能力指标贡献比重是多少,通过每项学习成果乘以比重,就是该学生在该项学习成果中得到的对应的九项能力指标值,而学生每项能力指标值是他所有学习成果对每项能力指标值得贡献值之和。

3、实践分析

依据上述评价模式,应用软件学院知识能力素质评价系统对软件2011级的79名同学进行跟踪评价。2012年3月测评每位学生的性格特征,分析他们的应用素质和适合的工作类型,同时根据他们已经完成的一个学期的学习情况进行知识评价和能力评价,分析他们的优势和劣势。然后根据每位同学的意愿,将他们分成文体兴趣小组、学习小组、创新创业小组进行分组学习。经过一年的学习,在2013年1月对他们进行性格、知识和能力再评价,从评价结果看,学生的性格变化不大,知识指标提升最快,学生的学习成绩比同年级的其他学生明显高,奖学金、各类大赛得奖率高。能力指标体现的是每个人有强项有弱项,但个体表现是强项更强,弱项有点变弱,总体能力在提升。

二、结束语

软件工程论文范文3

现代化社会的发展,软件工程广泛应用到嵌入式系统、人机界面、翻译器、电子邮件及数据库和各项操作系统中。在此基础上,还受到了航空、工业、政府部门及银行等各个行业的大力追捧,大大减少了各行业工作人员的工作总量,有效提高了他们的工作效率,并促使人民群众的生活质量得到提高,带动了社会经济的发展。软件工程的开发离不开软件工程师,根据领域的不同又分成系统测试员、分析员、工程师及程序员等,统称为软件工程师。他们肩负着对费用合理、质量良好的软件产品的开发,通常情况下,其主要以产品的可靠性、安全性、可维护性、实用性、功能性等指标来衡量软件产品的整体质量。

2软件工程开发技术

2.1软件标准化应用技术

软件标准化应用技术又分成软件标准和软件过程标准,其是软件构件和软件重用技术开发与发展的先决条件,可有效保障软件工程产业的健康发展。软件标准化应用技术直接关系到软件工程各项指标能否达到相关标准,其也是衡量软件工程成熟度的重要条件。国际标准化工程和系统工程委员会详细指出了软件工程的标准结构,加之美国国防部关于软件标准相关内容的提出,并列成为当代软件工程的两大重要标准。

2.2软件构件和软件重用技术

软件构件和软件重用技术一直是软件工程开发中的重要环节。软件重用是开发和研究软件的必要手段,构件作为一项基础条件有着不可小觑的重要作用。其中,软件重用技术可让软件工程师从大量写代码的工作中解脱出来,促使其更好的投入到更具适用性软件系统的开发中,从而确保空间和相关问题的一致性。软件构件技术是实现重用技术的前提,两者相辅相成,互相促进。这一过程中,各类开发工具是软件开发和应用的依托,如集成开发环境、构件库管理及运行环境等。

2.3中间件技术的采用

中间件平台作为软件系统开发和运行的支撑,是实现构件技术的前提。中间件适用于合适的平台上,加速软件的隔离和抽象,最终形成构件。因此,中间件技术在软件行业中备受青睐,根据分布对象、通信、事务处理、调用远程过程、访问中间件这五大类进行划分,具有划时代的意义。

3软件工程开发过程

3.1用户需求分析

用户需求分析即为在构建或改变软件系统时,应根据新系统的定义、范围及功能等内容进行用户群体需求分析,并综合分析数据准确把握系统定位,以开发出优质的系统软件。该过程中,协调需求分析员和软件工程师之间的关系是十分关键的,两者强强合作后,应首先找准目标用户群,并针对用户的实际需求确定系统软件的各项功能,最终制定出最佳系统开发方案。

3.2软件系统分析

软件系统分析主要是指归纳和整合需求调查中的各项数据和相关资料,并针对软件内部实际管理和信息处理情况进行分析。软件系统分析的主要目的是为了落实用户的相关需求,并寻求出最具适用性的解决方法,其是软件设计过程中不可或缺的组成部分。

3.3软件测试

在整个软件系统进入使用之前,软件测试是最为重要的环节之一,在进行软件测试时,不仅能对软件的需求进行分析,还能对软件的功能及性能进行验证。软件测试是指,根据运用软件的测试方法和测试工具,按照测试流程及测试方案,对被测试软件的功能与性能进行检测。在对软件进行测试的过程中,编程人员可以按照不同的软件和不同的架构编写出各种测试系统以及测试方案和工具,以控制将有可能出现的问题。在软件开发的整个过程中,都要紧抓各个开发环节及时进行同步的测试内容,并且针对测试中发现的问题加以解决,同时完善相关的开发程序。在此之后进行重复测试,在反复测试中不断完善各种问题,直到软件最终成为完整产品。

4软件工程开发的基本特征与应用情况

4.1明确性

软件工程在进行软件设计时就已经根据人们多种多样的需求制定了明确的目标。软件工程设计的任务是在工程实施或者产品投产之前,为这项工程或产品提供各种需求的标准,这一任务正是体现了软件工程中“需求分析”的特点,并且需求分析的质量对软件开发的成败有着直接影响。在这个阶段中,开发技术人员需要不断的与用户进行沟通和交流,完全明确软件开发项目的概念,最终形成一个完整的、清晰的、明确的开发目标。

4.2完整性

在用户或者服务器系统的应用中,保证信息准确无误的重要条件是数据及数据处理的完整性。因此,在软件开发的过程中,确保数据及数据处理完整性的逻辑要求是最为严密的。例如,有时在处理一个事物的过程中,会修改多个表格数据,如果在修改中发生了任何细小错误,都必须放弃整个处理过程,而不是其中的一个过程,然后返回最开始的阶段,以确保操作的完整性,从而保证了数据及数据处理的完整性。

4.3规范性

应用软件的开发工作在不同人员进行修改时需要能较为容易的接手,因此开发应用软件必须保证规范性。由于软件在开发的过程中需要按照一定的规则进行对象组合,所以能符合标准。但是如果是群体开发软件,由于每个程序员的想法及工作习惯都不相同,因此不容易符合标准,而软件开发的标准极为重要,必须保证其规范性,所以在软件开发的过程中,程序员之间需要多沟通交流,确保软件的顺利开发。

4.4易维护性

由于在软件开发的过程中,对象组合具有继承性,在对祖先对象进行修改时,也会对其继承对象造成直接影响,提高了软件程序在一定程度上的维护性。并且,逻辑规定和语法规定相同,群体开发软件不会因为个人特有的思想与工作习惯受到影响,从而使软件开发的维护性得到了保证,也提高了相互之间互相弥补的可能性。

4.5创新性

科学技术需要发展,发展离不开创新。随着工程技术的不断创新,软件开发出的产品在满足人们高要求的同时不断进步,为了获得广大用户的信任与支持,系统分析员在进行系统分析时,应当全方位了解广大用户的需求,针对用户的各种需求提出可行性方案,并且在不断的与用户交流中完善与改进方案,在如此反复中完成整个设计开发的过程。

5结束语

软件工程论文范文4

在传统的两学期制中,每个学期长度大约为20周,多数课程开设时间在16周左右。一方面学生的学习节奏慢、效率低、缺乏自主性和灵活性;另一方面教师难以集中时间进行知识更新、参与科研和学术交流。根据调查和资料显示,已有50多所高校采取了类似的改革。这类改革多借鉴国外高校的先进教学理念,强化对学生工程实践能力和工程创新能力的培养。对于软件工程有关的课程改革也是学者们研究的热点。从教学内容上看,随着大数据时代的到来,对专业人才也提出新的要求,文献[6]从人才培养标准矩阵出发,对数据库技术系列课程的设置作了探讨。文献[7]从建构主义教学思想出发,以学生为中心,强化学生自主学习来提高教学质量。从实践教学上看,金梅提出了阶梯式的实验教学体系和基于工程实践的课程设计模式,以此加强学生理论与实践的联系,提高综合运用知识的能力。也有很多学者借鉴CDIO先进的工程教育理念,对数据库的实践教学进行改革探索。课题组也通过整合相关的实践教学,使用实际的项目,对数据库实践教学的改革进行了尝试。综上所述,学者们对软件工程有关课程的改革从教学内容和强化实践等几个方面展开,并取得了一定的成果,但改革探索大多数情况只是就某一门课程展开。

2实践教学改革举措

“三学期制”改革,是将夏季学期设定为集中实践教学阶段。以此为契机,整合相关的课程实践教学,使用实际工程项目为任务,通过模拟企业开发过程,学生团队分角色完成任务。综合培养学生的工程实践能力和团队协作精神,使学生能迅速适应社会的需要。

2.1整合相关课程的实践教学

在集中实践教学阶段,学生可以集中精力完成实践训练,而且各课程的实践教学环节均安排在这个阶段进行,为有关课程的整合提供了可能。数据库作为软件系统的核心,它往往和软件开发紧密相关,对它的设计也应从系统的高度进行考虑。传统数据库课程设计的做法是单独对数据库的设计进行训练,并给出一些需要使用SQL编程实现的要求,由学生编制相应的存储过程、函数或触发器来实现这些要求。这样下来,学生往往不能将数据库部分置于整个软件系统之中。经过实践训练后,也无法在程序中正确连接数据库,正确嵌入和使用SQL语句。此次实践改革的思路是结合程序设计、软件工程等相关课程的实践教学,将它们有机地结合在一起形成一个大的项目,这样实践项目就是一个整体,使学生的各方面都能得到训练,各门课程可从不同的角度对学生的实践能力进行培养。程序设计课程重点培养和考查学生的编程实现能力,软件工程课程关注学生运用软件工程方法及CASE工具进行软件分析设计的能力的培养,数据库课程重点培养学生的数据库(包括概念结构、逻辑结构、物理结构)的设计,以及综合运用学科知识解决实际问题的能力。同时,相关课程的教师组成项目导师组,共同指导学生团队完成项目。

2.2从实际项目中提炼实践任务

实际的工程项目通常具有相当的复杂性,把已完成的实际项目提炼成适合学生团队完成的实践任务,是能否顺利实现此次实践教学改革的关键。实践教学导师组均为参与多项横向和纵向课题的教师,在完成这些项目的过程中,已经花了大量的精力和时间,积累了宝贵的经验。根据实践教学目标,对参与完成并正在运行的“教务在线系统”“绩效评价系统”进行提炼,根据模块将其分解成为若干个小项目,提供给学生团队选择完成。在实践任务的提炼过程中,把握全局性并将各学科的知识点放置在任务中,使学生受到系统的训练。在以上各子项中均要求:录入应能够实现界面录入以及批量导入;修改应能实现单条记录的修改和多条数据的批量修改,以及相关数据的级联修改;删除应能实现单条记录的删除和条件筛选的多条记录删除,以及相关信息的级联删除;查询应能实现不同关键字的基本和组合查询,各查询均要求实现模糊查询。在实践任务分解过程中,考虑到子项不应太复杂,所以将各模块之间的关联尽可能去除,使各模块成为能够独立完成的子项,以便于学生团队分组完成实践任务。

2.3通过模拟企业开发环境,学生以团队分工协作完成项目

为使学生毕业后能迅速适用社会岗位的要求,需要在校期间给予足够的企业环境下的工程实践训练。我校正在进行校内实训基地的建设工作,在此基础上,在校内实训基地模拟IT企业环境,将有关实践教学任务置于校内实训基地内进行。要求学生在各实践教学环节,以学生团队的形式完成项目,不同的学生扮演实际项目中的不同角色,有分工、有合作,协同完成项目。并在校内实训基地内实现企业化管理,使学生熟悉和适应企业环境。

2.4评价考核方式多元化

通过与相关课程实践教学的整合,一方面将教学内容整合,另一方面可由多门相关课程的教师组成导师组,在实践任务实施过程中,从不同方面给出指导意见,在实践任务过程中和完成后,从不同角度进行评价考核。其一,关注任务完成的整个过程,加强过程监控,强调过程性评价。其二,考核内容不仅包括技能分,还包括态度分、形象分、团队分、创新分等。学生在实践任务实施的过程中,表现出来的自我学习、自我管理、沟通合作、解决问题和完成任务、设计和创新等方面的能力,都是导师组考核学生成绩的依据。

3结论与展望

软件工程论文范文5

传统的软件工程方法一般都具有结构化样式,包含多个程序构件,需要将问题概括定义。然后对该问题的解决方法的工程实施过程进行必要性和可能性的综合分析,分析此工程方法所要满足的要求,在分析基础上对应用方法进行系统性建构。建构整体完成后,再分层次进行详细的内容建构,总体建构及层次建构完成后,就可编写软件代码,最后检测软件性能是否能够满足要求,以便对不合理之处与弊端进行修复以及维护。在这样一个复杂的过程中,需求分析是关键步骤,只有了解需求,将大众需求切实反映在软件中,才能开发出成功的产品。其次,系统建构也非常重要,从整体建构到层次建构,都应以需求为基准进行设计,再结合相关软件数据,具体问题具体分析。可供选择的建构方法有这样几种:数据流动图像、数据关系图、状态图等。结构图主要应用在建构程序中,是系统建构的常用方法,程序图表的编码方式则在层次建构中经常使用到。

2现代工程方法的内容与特点

现代软件工程方法之所以超出传统方法,主要是因为它针对的是具体对象,即面向的是具体存在的问题和弊端,这一点,完全克服了传统软件工程方法的缺点和不足。现代软件工程方法包含五部分,分别是分析、设计、编码、测试、维护。这几部分虽与传统工程方法大同小异,但细比较便可发现现代工程方法的优点。在分析部分,传统工程方法主要是笼统地分析,没有具体的面向对象,而现代工程方法则是分析现实事件的具体问题,因此,具体问题的性质可以更好地反映事件的性质。在设计部分,面向对象主要是系统中的具体时间。传统软件工程方法单一无序的状态使得设计的软件没有突破,没有适应发展的迁移性,现代软件开发方法摒弃这种自发式状态,采用更为先进的模块式开发方法,引进先进技术,维护系统正常运行,同时能及时对软件问题进行修复。模块式开发方法更适合现代经济的高速发展,更能适合大众需求的日新月异,更能满足不同群体的需求。这种方法具有超强的适应性,因此更具有稳定性,一旦软件出现问题,能及时修复,一旦有新的需求出现,也能及时优化性能更新换代,大大降低了软件开发失败的风险。富含高技术的方法还可以整合计算机资源实现资源共享,而且只要将模块定义,在系统允许下可以重复利用。

3现代工程方法的有效运用

3.1现代软件方法的适用局限性

软件体系结构决定着软件适用的工程方法,主要依靠数据库进行数据分析的软件体系结构是指软件的分层结构,比如C/S结构。现如今,传统的数据库管理系统还具有相当的适用性,其在现代数据管理系统还未成形的今天仍然发挥着举足轻重的作用。传统的数据管理系统在数据存储、数据共享、数据保障以及故障维护等方面都有着很好的效果。特别值得注意的是在结构化语言查询方面,其不但不会损害整体性查询,在高水平查询上同样能够完美实现,这是现代管理系统不占优势的地方。现代管理系统优势凸显于具体的数据储存与操作方面,比如表结构的处理方法,传统软件工程方法在运用时会有所扩展,导致表述模糊。

3.2现代软件开发的工程理念

软件应用脱离了早前的局限性,在各行各业都得到有效应用,餐饮业、服务业以至于医疗卫生业都能将软件运用发挥到极致,大大提高了行业的生产效率,取得了前所未有的效果。同时,利用软件的资源与信息共享功能可以在各行业建立标准的操作规范,统一行业的操作程序。只有在软件开发过程中树立现代软件开发的工程理念,才能顺利进行软件开发和应用。以医疗卫生业为例,通过大量引进现代软件进行信息管理和操作,不仅规范了医护人员的诊断操作行为和疾病检查,还可以对疾病及时有效地进行监督和管理。引进的软件不仅仅局限于资料信息的管理系统,还有与影像资料存储与共享、通信内容等相关的信息管理软件。以病理信息管理的软件开发为例,这种软件的主要作用就是将病理分析情况如实收入软件中,从而对该数据资料进行长期有效的存储。这种软件的操作简单易学、分工明确,是模块化处理方式的最简单应用。需求性直接决定软件实用与否,因此,在开发之前,必须对软件的需求性和实施的可能性进行详细的调查研究与分析。如果软件公司开发新产品之前没有进行需求和可行性分析,必然导致软件的适用性不足以应对大众需求,不能够很好地适应具体情况,给开发者造成不必要的损失。此外,在软件开发时,开发公司应该对整个工作进行协调一致的规划安排,各工作人员应明确分工,尽量规避工作中出现环节空缺或重复的情况,避免开发过程中出现混乱不堪的状况。

4结语

软件工程论文范文6

1.1计算机软件工程管理影响因素分析。

为能够将计算机软件的开发工作得到进一步提升,就要能够对计算机软件的管理方面得到加强,倘若是针对一些问题得不到有效解决,就会对计算机软件工程的发展造成很大的影响,由于计算机软件的开发在风险系数上相对较高,很多软件公司在起初的发展中规模相对较小,在管理上也相对比较适合,而在规模得到一定的扩展时,就出现了管理上的诸多问题,管理的不科学。

1.2计算机软件工程管理的内容分析。

计算机软件工程管理的内容相对较多,其中在用户管理层面,主要就是软件开发的最终目标是为用户服务的,所以要能在软件开发管理中对用户这一需求要能充分的考虑。例如在软件的操作习惯以及干扰因素等方面都要能够得到重视,要将软件的实用性以及可操作性得到充分重视。再者就是工作人员管理内容以及组织机构的管理内容,工作人员是计算机软件工程的主体,是对项目进行负责实施的主体,对软件程序的编写以及资料的查找等各方面都要负责。而组织机构的管理方面则主要是强调完整组织结构以及人员的分配,对分工的明确化以及信息的上传下达,除此之外还有就是档案资料的管理内容。

二、计算机软件工程管理措施及应用状况

2.1计算机软件工程管理措施分析。

对计算机软件工程的管理要能从多个方面进行实施,首先是要能够加强对计算机软件工程的风险管理,从需求上来说计算机软件工程管理者要和客户进行深入的交谈,对客户的需求详细化了解。在技术的层面上要能够要求相关的软件开发人员在自身的专业技能上得到有效保证,软件的编程上要有丰富的经验。还有就是在软件开发的成本管理上要能加强控制。再者就是要能够将计算机软件工程的管理体制得到有效建立,只有在完善的管理体系作用下才能够将管理工作顺利的完成。所以这就需要在用人方面得到充分重视,从而构建完善的人才使用机制,要进一步地明确人才地工作中的任务,通过相应的激励机制进行激发员工的工作热情。另外就是要提高计算机软件工程管理的合作团队管理水平,从而有效提升团队的协作力量,在这一管理措施中主要就是要能够加强项目的开发人员间的沟通联系,对项目开发中的各个岗位人员的分工状况进行明确化,充分的调动整个软件项目部门员工工作积极性,从而才能进一步促进计算机软件工程管理的效率提升。

2.2计算机软件工程管理应用状况。

从计算机软件工程管理应用的情况来看,其自身的方便高效优势是其广泛应用的保障。例如在银行的各个领域对计算机软件的应用就比较突出,通过这一应用能够将实际的工作效率得到大幅提升,并在不断的发展过程中,计算机软件的开发设计也更加的人性化,能满足不同需求。计算机软件在人们的办公学习以及生活中的应用也有着重要的体现,企业中的办公软件的使用对各项的管理工作效率得到了充分提升,在信息的上传下达上有着重要作用发挥。同时在校园的建设过程中,对计算机软件的应用也比较关键,能够在实际的教学当中加以应用,促进师生间的交流和教学质量的提升。而在学校中的一些收费管理等方面,对计算机软件的应用也比较重要,这些方面的应用对实际的工作效率有着很大程度的提升。

三、结语

软件工程论文范文7

软件工程监理与网络工程监理共同构成信息系统工程监理,软件工程监理与网络工程监理不同,网络工程监理贯穿于网络建设的整个过程,为网络建设的单位提供网络质量控制、确定系统集成商、论证网络方案以及提供咨询等服务,网络工程监理的目的在于帮助业主建设最具性价比的网络系统。而软件工程监理则是指对信息系统工程进行监理,主要对信息系统应用工程以及信息资源系统实施监理工作,所以,必须要根据软件工程思想来对整个软件建设的生命周期实施全过程监理工作,除此之外,还要实施配置管理过程监理、管理过程监理、质量保证过程监理,为用户提供帮助和咨询,帮助其建设服务项目,实施软件工程监理最终的目的就在于帮助业主单位建设出一个生命力持续、质量高的软件系统。

2意义

因为软件工程具有自身的特征,再加上在信息技术等领域中,业主单位的经验不足,缺少技术人才,因此,业主单位自己开展软件工程监理工作并不能提升其项目建设水平和项目投资效益。软件工程监理不仅可以保证业主单位投资工程的进度和质量,客观处理好投资项目进度、质量以及投资的关系,更可以为政府信息系统工程建设保驾护航,保证政府信息系统工程的质量。除此之外,实施软件工程监理工作还能够对承建单位与业主单位之间关系进行协调,在项目实施过程中,当承担单位与业主单位产生争议的时候,均希望会有第三方介入,软件工程监理单位就是第三方。监理单位可以在工程维护阶段、工程验收阶段、工程实施阶段、工程设计阶段以及工程立项阶段等软件工程监理的整个过程中对其效果实施权威、恰当、公平和公正的评价。再加上国家的信息产业的主管部门了开展软件工程监理工作的制度,从本质上为我国信息系统工程实施提供了强有力的保证和监督,进一步对我国信息化工程建设工作发挥保障作用。

3过程

对于软件工程监理来说,明确监理环节和内容是监理活动得以顺利开展的基础和前提。软件工程与一般的土建工程、电气工程的差别非常大,其监理活动也具有独特的特点,下面简单分析一下软件工程监理可以分成哪几个环节以及各个环节的监理要点。

3.1招标阶段的监理

招标是软件工程开展下去的第一步,只有做好充分的准备,才可能满足业主的期望,这一环节的成败将会直接影响到整个软件工程项目的成败。在招标阶段,合同成功签订表明该环节的结束,业主与软件开发商签订了具有法律效应的合同,双方具有了相互约束、相互配合的法律关系,是保证接下来工作顺利进行的基础。在这一环节中,监理工作主要包括这样几部分:(1)监理人员协助业主编制招标计划、审核软件工程的需求等。(2)监理人员仔细审核标书。(3)协助业主明确软件工程的目标、内容、功能以及进行软件工程的预算。(4)审核承建合同,仔细审核合同中的软件工程功能、技术指标、测试内容、验收要求、双方责任等内容。(5)协助业主与其他软件开发商进行良好的信息沟通,确保双方沟通的顺畅。在招标阶段,软件开发商尚未走进工程项目中,故此监理人员的主要职责是审核和确认,做好前期基础性工作。

3.2设计阶段的监理

设计阶段是软件工程项目的一个关键阶段,虽然设计费用仅占软件工程项目总造价比例的1%-3%,但是其对整个项目的顺利开展以及造价、质量、进度等的管理影响非常大,设计方案质量高低将直接影响到软件工程项目实施过程中的开发与配置。在这一阶段,监理内容主要是:(1)审核软件系统的需求是否合理,以及实施路线、关键技术等内容是否合理,签署审核意见。(2)监理人员协助业主开展设计方案的评审工作。(3)组织业主、专业人员对软件工程项目测试方案、验收方案等进行详细审核,并签署审核意见。(4)结合合同要求进行进度计划审核,并确认进度计划的可行性、合理性,签署审核意见。(5)协助业主配合软件开发商开展软件工程实施前期的调查。在设计阶段,监理重点内容就是对设计方案进行细之又细、慎之又慎的审核。

3.3实施阶段的监理

在软件工程项目实施阶段,一般可以分成需求分析、设计、编码、测试这4个步骤,每个步骤都有相应的监理内容和侧重点。(1)需求分析是软件工程实施的第一步,是保证最后开发出来的软件产品符合业主需求的基础,这一阶段的工程内容主要包括词汇表、用例模型、用例规约等内容,而对应的监理内容则包括监督需求分析过程、审核需求分析计划、审核需求分析结果等内容。(2)是设计阶段的监理过程,主要包括监督软件开发商的设计过程、审核设计计划、审核软件结构文档、监督软件设计结构中存在的问题并提出意见等。(3)编码阶段的监理,这一阶段是将软件开发商的设计思想变成计算机语言的过程,监理任务主要是审核项目组的人员、设备、进度计划等,并实时掌握软件开发情况,确保软件工程开发能按照进度计划顺利开展。(4)测试阶段的监理。软件工程的测试一般可以简单分成单元测试、集成测试、系统测试等内容,而监理内容则主要是审核测试计划、监督测试流程、复核测试结果等。

3.4验收阶段的监理

验收阶段是软件工程项目的最后一个阶段,该阶段就是软件系统的试运行、验收移交过程,监理内容则主要是对软件系统进行细致的审核、监督、验证、测试、确认。

4应用分析

正确的软件工程监理方法有助于保证软件工程监理质量,从而确保软件工程质量,但目前国内软件工程监理工作中,还没有形成系统的监理方法体系,只有一些零散的监理方法和理论,比如,PDCA戴明环、鱼骨图等。在软件工程项目中,监理单位扮演的是技术方角色,其与普通土建工程的旁站监理不同,需要从软件工程项目一开始就做好进度、成本、质量等方面的监理,确保软件工程的顺利开展。

4.1质量控制

在质量控制方面,最常用的方法是鱼骨图和PDCA戴明环。在运用鱼骨图进行软件质量控制时,首先需要确立质量控制目标,分析影响质量的因素,并对这些因素进行深入分析,在鱼骨图上标出来,讨论解决问题的方法,并标出解决方法的权重,以此来控制软件工程质量。比如说:在软件工程具体某实施项目的质量分析上,从人、机、料、法、环5个角度分析现场作业的质量因素。例如:某税收管理系统建设中,监理单位为有效控制工程质量,在需求分写环节非常重视需求的调研以及需求分析结果的审核,运用鱼骨图从人、事、时、地、物五个方面分析影响因素。

4.2进度控制

在进度控制上,软件工程监理常采用甘特图进行,而采用这一方法的前提是对软件工程项目的任务了如指掌,绘制出详细的工作任务分解结构图,将所有项目的开始时间、工期等到标注到甘特图上,然后结合软件工程项目的特点确定控制关键点,并确定项目的关键路径,确定项目活动之间的相互依赖关系以及时序进度,按照项目类型将项目联系起来。例如:在某税收管理系统工程项目的进度监理管理中,监理人员绘制甘特图,对软件开发商的进度计划进行整体分析,发现其中存在这样几个问题:任务阶段划分不明确、任务间的关系不合理、关键任务不明确、忽略国家宏观政策对项目的影响等,结合这几个问题要求软件开发商立即进行进度计划的调整和整改,得出最优化的进度计划,并确保整个软件工程实施都处于受控状态,有效保证软件工程项目的顺利开展。

5结语

软件工程论文范文8

有些存在质量问题的软件,在运行时程序时就会出现问题,软件的维护就更加困难,如果投入到新的硬件中进行使用,两者之间就未必能够相互适用。计算机整体的成本因为软件成本的增加而增加。近些年,计算机技术在不断的发展,自动化的软件生产程度也在不断提高,这样一来,导致计算机在硬件方面的开发成本却越来越低,由于软件开发对人力、物力的需求都在不断增加,软件成本逐年增高已成了必然趋势。

2软件工程的项目控制跟踪

2.1项目跟踪内容

依据软件项目计划,必须要对软件的产品规模(或更改后的规模)、软件的成本与工作量、所使用的重要计算机资源、项目软件日程、软件工程技术活动、项目费用、技术风险等内容与软件在开发前计划的相应内容进行比较。

2.2项目跟踪过程

软件项目的控制跟踪过程分为:

(1)项目跟踪人员要对软件度量的实际数据与再计划数据进行记录;

(2)负责人要根据文档里记载的程序在指定的地点审查项目成果;

(3)对软件的监控活动和项目的跟踪予以必要的检查。

2.3项目跟踪存在的问题

(1)控制与跟踪的频度,控制与跟踪在项目开发工程中的关键点有多个,这就需要我们找到一个好的频度去跟踪,若跟踪点少,就不能保证问题及时被纠正;若跟踪点多,在人力物力上的花费就会增多,对总体效率的影响很大。控制与跟踪的频度关系着软件项目的规模,大型项目设置的关键点相应较多。

(2)项目计划的修改,控制与跟踪软件开发过程以后,可能会发现软件项目有些地方会不符合实际,需要制定相应的修改计划,但其他组的活动就会受到修改后计划的影响,因此,没有得到相关组的同意,就不能对项目计划随意修改。

3软件工程的预测

3.1软件预测的意义

软件工程项目最关键的环节就是对软件进行预测,如果测试环节出现了问题或者测试不细致,那么将直接导致生产出的软件质量不过关,在应用软件的过程中也会逐渐发现软件存在的问题。问题不严重的,只是需要长期对软件进行修改,单单影响用户的应用;而问题严重的,会导致整个项目的失败,生产出的软件也无法投入使用。如果在投入使用前,没有经过测试,那就不知道用户有什么样的需求,也不知道软件存在什么隐患。尤其是有一些不经过测试就无法发现的隐患,一经投入使用,将会对用户造成巨大的损失。

3.2软件预测的内容

(1)文档审查,软件项目的验收需要提供一些文档,这些文档包括:经济分析报告、项目技术报告、用户手册、维护手册、项目总计报告、测试总结报告等,主要对文档的可理解性、正确性、完整性进行审查,还要对编写的规范程度进行审查。如果文档扫描不清晰、数量不齐全、甚至错误都将给用户造成不必要的麻烦,而且还可能导致软件无法升级。

(2)安装测试,安装测试第一个目的,是验证软件安装在最基本的配置下能否正常的运行;第二个目的,是验证软件安装在非正常的情况下,程序能否给用户足够的提示。非正常条件指内存不够、磁盘空间不足、不能自由创建目录。

(3)功能测试,功能测试是指根据软件需求规格说明书上的规定,逐项对软件进项检测,查看是否正确、是否有严重的错误存在。在测试前,一般要准备好合法数据、非法数据、边界数据这些测试用例,检测输出结果是否符合期望值。