时间:2023-06-16 16:05:19
序论:好文章的创作是一个不断探索和完善的过程,我们为您推荐十篇软件开发基础知识范例,希望它们能助您一臂之力,提升您的阅读品质,带来更深刻的阅读感受。
中图分类号:TP311.52 文献标识码:A 文章编号:1007-9416(2013)11-0205-01
进入20世纪,互联网已经逐渐渗透到人们生活和生产的各个角落,Web技术给人们带来了一个分布式、超媒体、信息量庞大的网络资源共享平台,Web软件应用在这个网络平台中可以为互联网运营商和Web软件研发者带来巨大的经济效益。但是由于现阶段互联网的应用环境日趋复杂,这为Web软件的研发和维护带来了巨大的挑战,所以如何改变传统Web软件开发模型,提高软件的应用质量、拓宽软件的应用范围等问题已经成为广大软件研发人员探讨研究的热点问题。
1 我国Web软件的生长式开发过程发展现状分析
目前,我国Web软件开发市场混乱,传统的软件开发周期很长,其过程模型大多无法适用于现在的互联网环境。这种现象导致很多低质量、低安全性的软件充斥在互联网中,给人们的生活和生产带来了诸多不便。与此同时,网络用户对Web软件的需求也发生了很多改变,具体表现在以下几个方面:①互联网的开放性和动态性,促使Web软件必须转变原有的开发方法和工具,使软件开发不再过分依赖网络信息资源和支撑工具;②网络用户的复杂性和差异性,要求Web软件必须具有较高的安全性和实用性;③互联网正处在发展阶段,所以Web软件的开发方法和支撑工具必须紧跟网络技术革新的步伐,呈现应用性能的多样性。
2 Web软件生长式开发过程模型
2.1 Web软件生长式开发过程模型构成
Web软件研发一般要经历三个阶段:萌芽期、生长期、衰亡期。萌芽期,这个阶段是制定Web软件应用性能的重要阶段,通过各种研发模型,分别建立不同种软件生长模式,在根据其模型的应用性能,对模型进行甄别,找出最优的开发过程模型;生长期,这个阶段是体现Web软件应用性能的主要阶段,通过对软件应用性能的监测,不断开发集成新型软件构件,使软件能够及时发现与识别互联网新需求,从而提高Web软件的综合使用性能;衰亡期,是一个Web软件在不能满足互联网新需求的情况下,被淘汰而停止使用的过程[1]。
2.2 Web软件生长式开发模型的作用
通过上文对Web软件生长式开发构成的研究和分析可知,Web软件生长式开发模型对Web软件的研发具有重要影响意义,其作用不可忽视,主要表现在以下几个方面:①能够准确定位Web软件研发的终极目标,通过这个目标能够让软件研发人员建立正确的软件认识理论;②规范软件研发规律,为软件的支撑工具的选择提供可靠依据,使软件能够随着用户需求的变化而不断升级[5]。
3 Web软件生长式开发过程的支撑工具
3.1 选择Web软件生长式开发过程支撑工具的原则
通过对Web软件生长式开发模型的研究分析可知,其支撑工具应具备以下几个性能:①其应用性能必须满足互联网新需求的同时,具备网络识别功能,将网络用户和互联网环境变化信息及时反馈给软件研发者;②具有一定的抗干扰能力,能够克服传统网络工程中的应用问题,并能对其环境影响参数变量进行系统分析;③支持多种计算机操作程序,尤其是新型计算机网络系统的集成操作程序,在满足网络功能要求的同时,能够及时找到软件构件与系统脱离的原因;④支撑工具能够支持多样性和组合性的软件研发手段,使Web软件实现多种开发方法和实现技术的混合使用;⑤支撑工具要在软件中表明软件应用重点和难点,以便网络用户准确掌握软件应用技术;⑥支撑工具应符合软件研发的拓展条件,让软件在新环境、新方法、新技术下,能够实现软件的固件升级[2]。
3.2 Web软件的集成机制
软件支撑工具和集成机制对Web软件的综合应用性能的影响都很大,所以在正确选用Web软件支撑工具之后,还应制定合理、完善的集成机制。Web软件集成机制主要分为以下三类:①静态集成机制,在软件研发过程中,静态集成机制可以将软件各构件的源代码进行统一翻译,这样可以使Web软件在固定背景下,完成生长式开发过程;②动态集成机制,将目标代码通过连接形成完整的系统,并在系统运行开始之前完成集成;③活态集成机制,在各个集成成分都在运行状态下通过通讯和交互形成一个协调工作的系统[3]。
结论:通过上文对Web软件生长过程开发模型和支撑工具进行系统分析可知,要想提高Web软件的综合使用性能,必须建立一个支持软件长期生长策略的开发模型,在软件研发过程中,制定一个完善的开发策略,使软件研发者在充分了解软件生长环境、系统结构以及实现现状的情况下,克服现有软件环境对生长式生命周期支持不力的缺点。由此可见,Web软件作为软件工程的重要研究课题,仍存在很多问题需要广大软件研发工作者去研究和探讨[4]。
参考文献
[1]朱鸿.Web软件的生长式开发过程模型及其支撑工具[J].电子学报,2010,13(25):114-126.
[2]朱克飞.Web软件的生长式开发过程及其支撑工具刍议[J].计算机光盘软件与应用[J].2013,20(15):145-153.
1研究背景及意义
培养既懂技术又懂管理的软件高级人才,是各软件学院追求的目标。对软件学院的学生来说,项目实践能力、自学创新能力、团队合作能力和交流表达能力是其职业生涯中所不可或缺的。如何开设学生在校期间的实践课程,对学生进行软件开发基本技能训练,使学生在学习了软件开发技术相关领域的理论知识后,能够充分地锻炼这些能力,顺利就业,并在此后的职业生涯中有所建树,各软件学院针对这些问题都在进行积极的改革与探索。
对于大多数软件学院,制定合理的、适用于软件开发技术快速发展的实践教学模式面临的问题主要有以下两点:
1) 学生实际掌握的软件开发技术水平参差不齐。新入学的工程硕士超过半数来自非计算机专业,这些学生具备相应的专业领域知识优势,但在软件开发技术所必需的软件基础知识方面却存在不足。
2) 软件开发技术包括语言、开发工具及其所使用的开发方法。同时还需要掌握与软件开发技术相关的专业基础知识,以及要了解所开发程序的实际运行平台。各层次、各方面的大量实用产品和技术的推出,以及软件工程硕士的学制短和学科基础差别大的现实都给学生入门学习和系统掌握软件开发领域的核心知识带来巨大困难。
因此,研究和探索一种以动手实践为主导、融合多门传统课程、符合软件工程思想的软件学院实践教学模式,将为软件工程相关知识的进一步学习,提供坚实的理论基础和技能保障。本课题的研究内容,将为软件工程硕士实践教学模式提供借鉴意义,同时,也可为软件相关专业高年级本科生的软件开发技术能力培养提供参考。
2研究内容及主要观点
2.1研究范围和研究目标
本文研究的实践内容和模式主要针对于新入学的工程硕士,是根据软件学院工程硕士入学时掌握的软件开发技术水平参差不齐,部分学生缺少开发设计软件所需要的基本编程能力、基础核心支撑课程知识点的实际情况提出的。我们希望通过大量的实例强化训练和有针对性的讨论辅导,为学生顺利学习、理解和掌握“专业方向领域的知识点”打下坚实基础,为提高学生分析问题、解决问题的能力提供技术平台支撑,具体目标如下:
1) 通过该实践课程的学习,向学生灌输高质量程序设计的观念,使学生具备实际的编程能力,具备学习新语言的基本素质。
2) 通过该实践课程的学习,使学生在熟练掌握语言技能的同时,深入理解算法、数据结构以及与平台(Windows和Linux)有关的进程和网络编程的基础知识,并能够自觉关心软件质量,包括软件的正确性、效率、易用性、可读性(可理解性)、可扩展性和可复用性等。
2.2主要观点
本实践课程强调学生的主体地位,教师的指导作用,采用讲座、小班讨论和实验相结合的方式进行。通过一门常用语言(C++)和两个常用平台(Windows和Linux),培养学生综合运用已学知识的能力,使其深入理解程序工作的本质,为以后解决各种大型实际问题打下坚实的实践基础。实践课程的基本构成是:9次×3小时讲座+6次×3小时实践讨论+实验。
实践内容按专题组织,以C++作为程序设计语言、以Linux/Windows为实践平台,共设置涵盖编译原理、数据结构和算法、操作系统和网络编程等核心基础课程在内的9个专题。每个专题的课程形式包括讲座、实验、实验报告和讨论课4个环节。实践内容的研究、确立和整合围绕以下指导思想进行:
1) 通过动手实践深入理解软件开发基础理论。
2) 提取核心知识点,压缩课时,消除各传统课程之间的隔阂,以适应软件工程硕士学制短和学科基础差别大的现实要求,讲座内容以“专题”进行。实践的题材包括练习、实验和典型案例分析等,实践的手段包括一读、二写、三总结。强调程序设计规范,确保技能的系统性和规范性。
设置讲座的目的是要把各专题核心知识点的来龙去脉介绍给学生,使学生对目前程序设计的关键技术和基础知识有个整体印象。因为虽然目前软件设计技术种类繁多,但究其本质,还是超不出软件工程的基本思想。学生在学校不可能完全熟悉每一项技术,但理解常见技术的应用背景和发展原由却是进行相关应用的前提。
设置实验的目的是让学生通过阅读经典代码和自己动手编程去深入理解程序的工作原理,并通过总结做到举一反三。在熟练掌握基本的编程技巧,学会规范化编程的同时,系统地掌握相关的基础理论知识。
设置讨论课的目的是要解决学生基础差别大,相当部分学生基础薄弱的问题,实现个性化教学和辅导。课程讨论分小组进行,每组10~15人,每专题每小组两小时。讨论课主要用来解决该小组学生在自学和实验过程中所遇到的疑难点,并通过讨论这些疑难点,有针对性地对该小组学习作出总结。
为了便于大家的学习和沟通,学院网站为实践课程设立专门的文档下载、上传区和讨论区。学生可以下载与实践相关的各种文档、案例、讲座内容以及经典参考书目;学生也可以通过上传区提交每周的作业,包括编程源代码和实验报告;学生还可以在该区域进行重点、难点的讨论,提出好的建议,便于课程的改进和课程内容的及时更新,做到与时俱进。
9次讲座内容如表1所示,6次实验课的内容如表2所示。
2.3实施原则
为了使实验课的实际效果落实到实处,学生真正能够从中获益,提高软件开发的基本技能,实践课程的执行和实施必须遵循如下4个原则:
1) 一种语言,两个平台,分专题训练[1]。
软件工程实践以C++为基础,因为相比目前流行的C、Java和C#,C++既是面向对象编程,又具有Java和C#不具备的指针和引用等和内存管理相关的比较直观的技术,同时C++在操作系统、设备驱动程序、视频游戏等领域相比上述语言也存在优势。两个平台为Windows或Linux。考虑该实践课程的主要目的是“学生的计算机领域核心的基础知识的掌握和提升”,知识面涉及编程语言、算法、数据结构、操作系统、编译原理和网络等各个方面,实践内容以“专题”进行,同时也要求实践指导老师具有丰富的项目实战经验。
2) 个性分块和统一指导相结合[1]。
所有学生根据具体基础条件分为15人左右一组,设立小组长。各小组根据自身条件,进行强制集中练习,从而保证上机和实践时间。每周各小组具体的训练内容由指导老师根据小组的具体情况分别指定。学生必须在完成老师指定的任务后才能自行决定训练内容。学生也可对指导老师提出学习内容变更建议,但须征得指导老师同意。
3) 分散训练与集中讨论相结合[1]。
学生在每周针对各小组举行的讨论会上可以提问相关问题。指导老师要回答相关问题并对学生上周的作业数量和质量进行评定,并根据小组所有学生的具体情况指定相互帮教的计划,布置下一周的练习内容。指导老师在学生的整个实践过程的作用是指导、监督并对其中的每一个环节进行考核打分,及时发现问题,及时总结解决,确保所有环节落到实处,不流于形式。
4) 坚持考核评审的原则。
考核采用平时成绩与期末笔试相结合的方式,其中平时成绩占总成绩的40%,笔试成绩占总成绩的60%。平时成绩由指导老师根据平时实际情况给出,主要依据是学生每周完成案例代码和实验报告的质量,笔试侧重于代码阅读、设计能力以及基础概念和原理的理解和掌握。
3结语
通过整合课程内容、强调学生自学和教师辅导相结合的方法,我们在有限的课时内达到了补习软件基础知识和学习面向系统软件开发技术的两个教学目标。学生的反馈调查显示本课程体系得到了学生的高度认可和肯定,取得了一定的成效。但是整个软件市场中依然存在着企业招不到合适的高级软件人才,毕业生就业难的供求矛盾,面对软件开发技术知识体系更新换代快的特点,如何培养能够适应市场发展,具有创新意识的高素质软件人才将一直是我们探索研究的重点。
参考文献:
[1] 覃文忠,万金友. 关于软件学院实施“项目驱动”教学模式的探索[J]. 计算机教育,2004(4):57-58.
[2] 南京大学软件学院工程硕士培养方案[S]. 南京:南京大学软件学院,2006.
[3] 北京大学软件与微电子学院工程硕士培养方案[S]. 北京:北京大学软件与微电子学院,2005.
[4] 张广军. 微软院校课程体系设计理念[R]. 北京:北京航空航天大学软件学院,2005.
[5] 北京航空航天大学软件学院软件工程硕士培养方案[S]. 北京:北京航空航天大学软件学院,2004.
[6] Michael L. Scott. Programming Language―Pragmatics[M]. 裘宗燕,译. 北京:电子工业出版社,2005.
[7] Randal E. Bryant. Computer Systems―A Programmer’s Perspective[M]. 龚奕利,译. 北京:中国电力出版社,2004.
[8] Kenneth C. Louden. Programming Language―Principles and Practice[M]. 黄林鹏,译. 北京:电子工业出版社,2004.
Exploration of Practice Model in Software College
SHEN Xue-ping, YUAN Cang-zhou, WANG Hua-feng
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)36-8332-02
1 背景
工信部近日印发《软件和信息技术服务业“十二五”发展规划》,规划明确了“十二五”的发展思路和发展目标,确定了10项发展重点和8项重大工程。而据业界预计,到2015年,我国软件行业收入将突破4万亿元,年均增长25%以上,出口突破600亿美元。
2 项目实施的必要性和可行性分析
外包人才的缺口从结构层次来看,不是局部的人才短缺,而是全方位的供应不足。正规院校培养出来的学生能掌握基本的软件开发技术,但缺乏软件开发工作经验、项目交流和团队合作锻炼,需要经过相当的项目知识与技能培训。超过60%的高校开设了计算机专业。但是,适应外包企业需要的大学毕业生很少,大学毕业生常常需要企业花大力气培养,而企业希望招来就用,不愿自己培养人才增加成本。本软件开发、测试实训室应此目的设置,目标培养中低端软件人才。
3 建设实训中心项目的可行性
职业教育与普通教育相比有四个特点:一是教育性质和目标不同。重在对准备就业的学生传授职业知识,培养职业技能,陶冶职业道德,提高职业能力和劳动素质教育。二是教育内容与要求不同。以提高学生的专业知识与技术能力为主,重在让学生懂得做什么、怎么做,使学生学有专长,毕业后投身于社会经济建设的实践活动。目前尽管有部分学生升学,但就总体看,其教育内容与要求未变。三是课程模式与结构不同。其课程模式注重实践教学环节,课程结构注重强化学生技能的应用性、针对性和职业性。四是学校功能与任务不同。要求实施职业教育的学校必须具有实训实操的条件,否则职业教育很难获得应有的效果。
4 软件开发和测试实训室建设目标
软件开发技术实训可以包含四类实训课程:
软件开发实训:包括完整的生命周期的软件开发过程
软件阶段实训:选取软件生命周期其中某个阶段独立工作(例如编码工作)的实训;
软件测试实训:包括软件开发过程随行测试和独立的软件测试技术实训;
软件项目管理:这是关于软件技术高级培训。
实训装备:
硬件设备:5组服务器;50台工位电脑;网络和交换设备;5组光盘刻录、扫描仪和打印机等辅助设备;1套投影和无线扩音设备;互联网接入;软件平台:Windows 和Linux服务器平台,mySQl、SQL Server数据库系统、J2EE和.net开发平台和课程相关的软件工具;LoadRunner 、WinRunner等常用测试工具;项目管理工具MS Project;办公系统 Ms Office 管理软件:实训管理软件
实训方法:采用模拟企业运营方式将教练和学员混编成项目组方式完成软件开发和测试实训;打破学科界线和知识体系,以项目目标驱动安排教学内容,编制教材和教学课件,教学内容来源于合作企业以往的实际项目,由企业和学校共同对原项目分解、重组、封装形成教学课件,以实际项目文档为基础编制实训文档。
实训课程:本实训室分设以下类型实训课程
素质教育类课程:敬业精神、团队合作
企业标准类课程:ISO9000和CMM认证,企业化管理制度
项目管理类课程:项目管理方法和项目管理系统使用;
软件开发、测试类课程:包括软件生命周期理论、文档编制和理解、软件工具、编码和测试方法、系统部署、和版本管理等;
实训过程:
先期培训:素质类、企业标准、项目管理、背景知识等
基础培训:由教师教授课题涉及的基本方法、工具和规范;
开题培训:由专业项目管理人员做课题报告,解释项目要点;
5 实训课题:软件开发实训
本实训室培训软件开发人员和软件测试人员,实训方法可以将学员分组,在同一项目中分别承担软件开发和软件测试工作,也可以独立执行软件开发和软件测试实训课程
软件开发实训包括一下实训模块:
1)背景和基础知识:包括软件开发规范,软件企业ISO9000和CMM认证,学校软件工具等;
2)搭建开发环境:能够配置自己的软件开发环境,包括安装操作系统和开发工具包;能够配置自己与别人的协同开发环境,包括网络配置,文件共享,安装远程打印机等;
编写代码:使学员能够读懂详细设计,掌握开发工具的配置与使用,掌握开发语言的基本知识和数据结构,了解简单的算法,会设计简单的界面,并应用常见控件,具有数据库编程的初步能力;
图1
3)测试:使学员除了掌握测试的理论知识外,还应该学会编写单元测试案例,编写单元测试文档,在执行单元测试的时候,记录测试结果,并分析错误原因,以利于下一步的调试。
学员应掌握以下具体技术、平台和工具,Windows系列和Linux操作系统;Visual Studio工具;Borland 公司工具,SQLServer,Oracle ;Apache+tomcat,Web Logic 等;TCP/IP,创建网络连接,网络打印;基于UML的详细设计文档,面向对象分析和设计;单元测试,黑盒测试,白盒测试,设计测试案例等;执行测试并调试错误,系统和配置技术;
软件测试实训包括以下实训模块:
计算机及常见操作系统、软件设计语言基础、 数据库基础、软件工程基础、软件测试基础、自动化测试:包括OSI模型、TCP/IP模型及常见网络协议,常用软件平台、工具使用LoadRunner 、WinRunner测试工具使用,各种测试规范
6 总结
在当今社会信息化的进程中,综合应用各种新技术的系统软件功不可没的,软件开发和测试使全社会的信息管理、信息检索、信息分析达到了新的水平,因此,学习软件开发、测试的相关基础知识,对于信息时代的每一个成员都是十分必要的。
参考文献:
[1] 杨文宏,李心辉.面向对象的软件测试[M].北京:中信出版社,2002.
基于双新人才计划的软件职业人才模式构建思路
该方案以“新知识、新技能”为核心,根据企事业单位对计算机软件人才的实际需求,整个培养方案分为三个阶段(初级,中级,高级)和两个部分(理论知识和项目实训)。1.理论知识先行理论知识的授予按三个阶段进行。第一阶段(初级阶段)的学习是基础知识的学习,该阶段要求学生理解信息系统的定义、组成、发展模式及建设模式;了解软件的定义和组成、生命周期及软件开发的过程和质量控制原则;要求学生掌握信息化基础知识和软件开发的基础知识,熟练掌握基础语言Tur-boC的使用和实践,面向对象语言Java的使用、实践描述型语言DHTML的使用和实践及解释型语言Javascript的使用和实践;了解IT相关的专业英语,能够在翻译软件的帮助下阅读大量英文的专业性科技文献并大致了解含义;牢记软件从业人员职业道德规范,对职业发展结合自己的现状制定发展规划,熟练掌握常用软件的使用。第二阶段的学习能使学生了解软件开发、测试和实施等过程涉及的各种技能和知识,对软件技术发展的过程有清醒的认识。阅读大量的相关专业英语文献,能够独立写作英文注释和英文专业文章。具备软件专业从业人员的职业修养和素质;掌握各种实际情况下的职业技能。第三阶段的学习能使学生熟练掌握信息系统的售前、开发和售后等过程涉及到的各种技能和知识;了解需求分析、项目管理的各种技能和知识。能够独立进行专业英语的听、说、读、写。具备软件高级从业人员要求的职业修养和素质。2.项目实训的职业拓展性推动新的模式生成(1)精准的目标设置策略。突破传统的“教师规定题目,给出完成思路和编程结果,学生主要重复输入代码过程”的实训教学模式;充分发挥学生的主体性,培养学生的分析问题、解决问题的能力,激发学生的学习积极性和创新意识。[4]学生通过参与项目的设计与开发,掌握最新的技术,了解企业的文化,熟悉企业的运行机制,能够按照企业管理的标准严格要求自己,使自己毕业前具备企业人的素质。(2)趋于完善的实施方案定制。采用梯度式实训,分初级、中级、高级三个级别。实训成员由双新办的专家、学校专业核心课老师及计算机相关专业的毕业班学生,双新办专家和老师担任项目经理。六个学生为一组,每组对应一个组长和一个项目,组长负责考勤,写工作日志。实训开始先进行案例教学,给出一个典型的实用案例及完整解决方案和相关文档,让学生直观地了解企业项目开展的流程;然后给定每个项目的需求文档、测试报告表格、代码编写规范、对话设计规范、调试用例设计规范、原型设计规范。在项目经理的监督和适当地指导下,要求学生参照事先给出的实用案例和依照企业管理的标准按时按量完成项目的实训。
苹果软件开发的具体步骤如下:
硬件环境准备:苹果系列的电脑必须是雪豹以上版本的操作系统,购买Xcode软件。基础知识准备:苹果软件开发使用Objective-C语言,是苹果公司将标准C重新封装使用面向对象的思路进行的改进版本。开工:好的创意开始软件开发,工作在Xcode上进行。软件开发完成后在Xcode上进行虚拟测试,也可以在IPAD上进行实际测试。在IPAD上测试需要将IPAD绑定帐号,测试完成就可以。软件:测试好的软件到软件商店进行申报。首先注册开发者的证书,提供软件和相关说明,提供银行帐号。
(来源:文章屋网 )
【关键词】CDIO 软件工程 工程经验
1 背景与理念
高职教育就是以社会需要为目标,以就业为导向,以技术应用能力为主线设计学生的知识、能力、素质结构和培养方案。可见对学生培养不仅要重视专业理论知识的学习,还要注重实践技能与创新能力的培养。在教学模式上强调以技能为主,培养具有高素质的技能型人才,根据软件技术专业的软件开发类课程本身课程的特点,多采用项目化的理一体化授课方式。可以让学生在学习技能知识的同时感知社会发展的行业要求,以快速适应职场环境,获取就业机会。
CDIO代表构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate),是近年来国际工程教育改革的最新成果。它以产品研发到产品运行的生命周期为载体 ,让学生以主动的、实践的、课程之间有机联系的方式学习工程。CDIO培养大纲将工程毕业生的能力分为工程基础知识、个人能力、人际团队能力和工程系统能力四个层面,大纲要求以综合的培养方式使学生在这四个层面达到预定目标。它的这个特点非常适合《软件工程与UML建模》这类综合性课程,构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate)正对应了软件开发流程的整个生命周期。
2 课程改革思路
软件工程类课程以提高学生的实践动手能力,提高学生的软件开发综合能力,增强软件项目建模与开发的工程方法和流程,培养软件开发规范意识,训练和积累“工程经验”,提升就业能力,鼓励学生自我发现问题解决问题为改革目的。
1、参照岗位能力标准,改进教学内容
根据软件工程师必备的能力标准,打破传统软件工程纯理论的学习模式,融入UML建模的内容。在软件工程管理知识基础上,学会如何用UML和Rose进行项目需求分析、结构规划和生成框架代码,以及如何从现有系统逆向转出工程代码,生成Rose模型。
以“项目导向、任务驱动”引导教学,以《图书馆管理系统》为主线,分别从软件基础、面向过程、面向对象三个阶段对本课程进行系统学习。同时以“实训任务单”作为任务驱动的载体。
2、校企合作、工学结合,实现“零距离”就业
我院大力发展校企合作,与重庆多家知名软件企业建立了良好的合作关系,课程的设计和内容设置均有行业、企业专家参与,大大提高了课程的可实施性和适用性。为此,我们围绕实训、实习环节建立了完善的实训体系。主动与行业、企业取得联系,加强校企合作,形成学校、企业、行业互动,共同合作参与学生的专业技能培养。企业专家会引入真实项目让学生参与,真正意义上做到与行业企业“零距离”接轨。
3、搭建内容标准化、结构模块化的课程体系
根据软件设计师相关岗位能力及职业资格证书考试要求,对其课程内容进行标准化。并根据课程内容将其划分为三个模块:基础部分、面向过程和面向对象。
在基础部分,主要掌握软件工程学的相关知识、可行性研究、需求分析及软件项目管理方面的知识;在面向过程部分,主要设计到软件总体设计、详细设计、软件的实现及维护;在面向对象部分,主要掌握用面向对象的思想对软件进行建模。
本课程理论与实践紧密结合,从“可实践”软件工程的角度描述需求分析、软件设计、软件实现、软件测试以及软件开发的管理,力求使学习者在掌握软件工程基础知识的同时,真正学会运用软件工程的思想和辅助工具进行规范化的软件需求分析、系统设计、实现和测试。课程采用具体的软件项目,“可实践”地介绍并引导学生如何用UML和Rose进行项目需求分析、结构规划和生成框架代码,以及如何从现有系统逆向转出工程代码,生成Rose模型。并介绍了C++、Java、Visual Basic与CORBA/IDL和XML代码的代码生成与逆向转出工程代码。
通过该课程学习,学生掌握使用设计工具紧扣用户需求,方便地开发出符合用户需求的系统或根据用户需求对现有系统进行改造,同时,按照软件工程思想进行规范化软件项目管理。
4、采用“项目引导、任务驱动”的行动导向的教学模式
软件工程类课程是项目制课程,整体授课采用项目分组教学法和教学做一体化教学法。项目组组织方式如图1所示:
图1 项目组组织方式
在教学过程中,实行“教、学、做”一体化的教学方式。基于学生在“学中做、做中学”,采用多种教学方法,针对不同的内容交替进行。如图2所示:
图2 “教、学、做”一体化教学方式示意图
每个任务按照“任务描述知识准备任务分析任务实施任务小结效果评价”的六个步骤完成,如图3所示:
图3 六步教学法示意图
3 总结
本文主要是借鉴CDIO工程教育理念,以软件工程类课程为载体,培养学生CDIO所要求具备的多种能力。通过对学生进行访谈发现,通过CDIO教育模式在进行教学改革应用实践,学生普遍反映这种教学方法非常适合他们的学习,案例教学很好的促进了他们对基础知识的学习,并且对以工程化的思想开发软件有了深刻的认识,软件开发能力和项目组织与管理的能力都得到了极大的锻炼和提高。
参考文献:[1]CDIO简介.http:///
[2]韩智.基于 CDIO 理念的软件工程课程教学改革[J].2010
[3]陶永芳,商存慧.CDIO 大纲对高等工科教育创新的启示[J].中国高教研究,2006(11):81-83
[4]查建中.工程教育改革战略“CDIO”与产学合作和国际化[J].中国大学教育,2008(5):16-19.
[5]张璇,李彤.结合CDIO教育理念与案例教学进行教学探索与实践[J].计算机教育,2008(24):155-157.
[6]RogerS.Pressman. 软件工程:实践者的研究方法[M]. 6版. 郑人杰,等译. 北京:机械工业出版社,2008.
[7]Thomas,J.W.,Mergendoller,J.R.,Michaelson,A.Pro-ject-basedLearning:A Handbook for Middle and High SchoolTeachers[M].Novato,CA:The Buck Institute forEducation,1999.
[8]朱景德.《高职软件技术专业项目化课程的探索与思考》,社会科学奖,2012年10月
关键词:
Android;软件开发工程师;课程体系;移动互联网
1建设背景
随着3G/4G技术的不断发展和智能手机的普及,移动互联网继承了互联网所有的应用,并有自己独特的优势。互联网的应用系统几乎全部延伸到智能手机应用,例如手机银行、移动商务等。据亚太地区手机使用调查显示:2015年中国手机用户达到10亿[1],远高于宽带用户数;移动应用系统发展潜力更大,将成为全球信息通信行业的万亿元级新兴产业,急需大量的移动应用开发工程师。据计世资讯的相关研究报告,国内移动应用开发人才缺口将达到50万人以上[2]。目前主流的智能手机操作系统有谷歌公司的Android、苹果公司的iOS、微软公司的WindowsPhone,只有Android是开源的操作系统,华为、三星、小米、中兴、联想手机制作商都采用了Android操作系统,ARM、英特尔、高通等半导体制造商也采用了Android操作系统。因此Android必将成为智能手机主流操作系统,用户数最多,与之对应的软件开发工程师缺口最大;而目前少数高校开设移动应用开发专业或方向,培养周期长,培养人数少,远不能满足移动互联网行业发展对人才的需要。
2建设思路
Android软件开发工程师实训课程体系是在原来的软件技术专业基础之上构建的,结合AndroidAPP开发岗位及流程进行设计,采用基于模块化、导师制、项目化的Android开发工程师人才培养体系[3],共分成4个递进的模块,每一个模块又细化为一个教学单元,详见图1。每一个模块有基础知识学习和项目实战,前导模块考核[4]过关之后再进行下一个模块的学习,重点积累学员的项目开发经验,注重学员综合素质的培养。
3课程体系
1)模块一:JavaSE开发技能强化(约120课时)。高校软件开发相关专业基本都开设过Java程序设计或C#程序设计,两者触类旁通,因此本模块主要针对Android开发打下Java编程基础,巩固面向对象的基本概念和编程思想,为下一个模块作准备,所谓磨刀不误砍柴工,见表1。2)模块二:Web及服务平台开发(约200课时)。Web及服务平台是移动端访问的基础,后端服务器的架构决定系统的稳定性,接口的开发决定终端开发和运行的效益,因此本模块着重学习JSP和Servlet核心编程,完成服务器端业务逻辑和数据库开发,见表2。3)模块三:移动端APP开发(约220课时)。此模块真正进入Android项目开发,首先从Android基础控件入手,掌握Android开发基本原理和流程,逐步引入实际案例,综合掌握Android控件使用、UI设计、内置数据库设计、消息推送、GPS定位应用、网络接口应用等开发技术,见表3。4)模块四:作品汇报与就业指导(约30课时)。前3个模块是练好内功,本模块主要通过作品汇报会暨Android开发软件工程师专场招聘会,把学生送到对口的岗位工作,同时把参加实训的同学拉进即时交流的QQ群和微信群,方便日后在工作与学习过程中就技术与思想动态,进行交流沟通指导,提供增值服务,见表4。
4实训过程
每个模块实训过程包括实训预备期和实训期两个阶段[6]。实训预备期:参与实训的学生对Android课程体系中必须掌握的业界实用技术知识清单和相关课件进行学习,必要时进行相关课程的考试,考试合格者才能进入项目实战。实训期:以模拟公司为平台,以仿真的商业案例项目为载体,将企业文化及职业素养训练、IT技能培训、行业知识以及业务流程实践等实训内容完全贯穿在模拟公司的运营过程中,使学生在实践中体验企业工作环境,获得一定的实际经验和职业磨炼。实训中由实训教师统一指导,基本过程如下:(1)搭建环境:主要讲解搭建各种手机操作系统开发环境所需具备的软硬件及网络知识。(2)完整的软件开发过程:主要讲解实际项目所涉及的软件开发过程的各个环节,如需求开发、设计、编码与测试、项目管理、项目验收及技术文档整理等。(3)Android手机软件应用开发:这是本实训课程体系的核心部分,主要是使学员掌握软件开发的技术、编程思想与方法,了解软件开发过程中常犯的错误。课程注重实用性,重在培养学员对代码分析的能力、掌握编码规范、掌握调试知识和分析程序错误的能力。同时学习内存检查工具和软件配置管理等知识,课程中贯穿着一个开发项目,以增加学员开发项目的经验。(4)测试计划与软件缺陷:主要介绍软件测试的基本概念和基础知识、如何编写测试计划、识别软件缺陷、编写缺陷报告等。(5)数据库:通过对数据库基础的讲解,让学员掌握这些技术,数据库是以主流的Oracle和MySQL数据库的运用为主。(6)职业导向训练:进行职业引导,包括就业指导和职前引导,通过座谈会等辅助训练明确就业方向,进一步了解职业发展形势。
摘 要:针对实践性较强的软件开发类课程教学中存在的问题,提出引入MOOC翻转课堂模式,在实践过程中有针对性地对学生进行引导,强调 “以学生自学为主,教师引导为辅,在实践中锻炼学生动手能力”。
关键词 :MOOC;翻转课堂;软件开发;动手能力
第一作者简介:周树森,男,讲师,研究方向为机器学习、多媒体分析,zhoushusen@aliyun.com。
0 引 言
近年来,MOOC(massive open online course,大规模开放式在线课程)对教育界产生了较大的影响[1]。如今,任何人都可以在任何一个有互联网的地方学习适合自己的在线课程。翻转课堂是指学生在课余时间观看在线教学视频,在课堂上做作业,遇到问题则向老师和同学请教,这是一种与传统的“教师白天在教室上课,学生晚上回家做作业”方式相反的课堂模式[2]。MOOC与翻转课堂相结合,既可以满足学生的个性化学习需求,又可以在课堂上训练学生思考和交流的能力。教师在软件开发类课程教学过程中发现,很多学生只会死记硬背,靠自己的短时记忆应付考试,编写代码和调试代码的能力欠缺,有的学生甚至到本科毕业也没有写过几行代码。
1 问题分析
以地方本科院校计算机专业为例,一方面,学生的就业率比较低,很多学生毕业后被迫转行,不再从事计算机相关工作;另一方面,我国软件开发类岗位需求量比较大,待遇也比较好,好多企业都招不到合适的程序员。形成这种反差的根本原因是大多数计算机类毕业生动手能力比较弱,而企业需要的是入职后无需培训就能直接工作的员工,这直接造成了很多应用能力欠缺的学生毕业即失业。
2 基于MOOC的翻转课堂简介
MOOC是一种新型的大规模开放网络课程,具有易于使用、费用低廉、覆盖人群广、支持自主学习、学习资源丰富等优点[3],现在几个主要的MOOC平台已拥有数百万注册用户。有了MOOC课堂,学生可以在世界范围内学习自己喜欢的教授主持的相关课程。这是否意味着普通地方高校的普通教师将面临下岗的局面呢?当然不是!MOOC教学的一个最大缺陷就是不能跟学生进行面对面的讨论交流。教师可以让学生在课下自主学习适合自己的MOOC视频,然后在课上积极引导学生讨论某个具体应用实例的实现,帮助学生解答疑难问题,这就是基于MOOC的翻转课堂模式。
中国在线教育从2013年开始集中爆发,平均每天有2.6家在线教育公司诞生。截至2014年9月,获得投资的在线教育企业已经超过60家,其中15家是2014年刚上线的项目,预计2015年中国在线教育市场规模将达1200亿元人民币。各个高校也积极行动,建设开放网络课程,探讨课堂模式创新的实际效果[4]。
和许多新生事物一样,MOOC也是有缺陷的[1],那就是教师与学生、学生与学生之间缺乏有效的、实时的互动。基于MOOC的翻转课堂恰恰弥补了这个不足,大学的翻转课堂可以增进师生互动,还能够及时解决问题,启发学生的创造力。
当然,这种先自学MOOC材料,后课堂讨论的翻转方式也有其不足之处,例如,受限于硬件条件,在大班教学中很难展开,部分学生不会事先自学MOOC材料等。但是,这是一种教育理念的根本性改变,在实践过程中,高校要根据自身的实际情况进行改革,否则效果不会太好。
3 基于MOOC的翻转课堂教学实践
对于实践性比较强的软件开发类课程,教学对象是计算机专业高年级本科生。在教学过程中我们发现,学生的动手能力比较弱,很多学生对代码“望而生畏”。
3.1 提供适合学生的优质MOOC 课程
虽然互联网上已经存在很多MOOC课程,但是找到一个适合自己学习的MOOC课程是比较有难度的,原因有以下几个方面。
(1)教师所讲授课程的教学目的与已存在的MOOC课程的教学目的有偏差。
(2)学生的基础薄弱,很难跟上已存在的MOOC课程的讲课节奏。
教师应该基于讲授课程的教学目的,针对所教学生的基础和接受能力,录制相应的教学视频并上传到网络上供学生课下观看;同时,也可以提供多个MOOC课程供学生参考。
3.2 小班教学,加强师生互动
基于MOOC的翻转课堂的优势在于,可以增进师生互动,及时为每一个学生解决问题,启发学生的创造力。若课堂人数太多,教师在上课过程中很难照顾到每个学生的需求,所以,翻转课堂必须实行小班教学。根据笔者的经验,课堂人数不能多于40人。
翻转课堂的目的是让学生课下学习基础知识,课上来讨论和答疑。教师可以引导学生讨论某个具体应用系统实例的实现,将学生引入该应用系统的需求分析和建模中,然后进行软件体系结构设计这类具体问题的讨论。
在实践过程中,最大的问题是学生从小到大接受的都是应试教育,习惯于上课听课,课下做作业,并且大多数学生不会主动向老师提问,对于课堂上的问题,即使自己会回答,也是被动地等到老师点到名字后才回答。
针对这个问题,教师可以多引导学生改变惯性思维,鼓励学生主动发言,对主动发言的学生进行表扬。另外,在考核机制上,向主动发言、提出有代表性问题的同学倾斜,为其课堂表现加分。这样可以充分调动学生的积极性,让学生变被动为主动,真正做到师生互动,锻炼学生的表达能力、创造能力和分析问题解决问题的能力。
3.3 加强监督,引导学生自学
MOOC和翻转课堂都是舶来品,直接拿到中国的课堂上使用肯定会水土不服。中国学生接受的是填鸭式教学,大多数学生在学习的过程中没有什么乐趣可言,只是在老师和家长的强压下学习。到了大学后,学习只是为了通过每门课的考试,顺利拿到毕业证。在这种功利思想的影响下,又有多少人会按照要求在业余时间学习MOOC教程呢?当然,也有比较好学的学生能够理解翻转课堂的教育理念并在课下自觉学习,但毕竟是少数。
针对学生自控能力比较差的问题,笔者认为教师应该加强监督。教师在上课时设置提问或小测试环节,对学生的基础知识掌握情况进行检查,对没有很好掌握基础知识的同学酌情扣除相应的课堂表现分数。这种监督方式可以很好地督促学生自觉利用课余时间学习基础知识。
另外,还应该发挥网络时代的优势,设置课程在线答疑界面,让学生在课下学习的过程中,对于不理解的问题,随时通过在线答疑界面与老师沟通,这样可以很好地引导学生进行自学,避免学生被某个知识点卡住时失去兴趣或者没有信心继续自学。
3.4 实战教学,答辩考试
学生一般只关心自己期末考试能考多少分,不关心自己的实践能力。但是,当学生踏上社会的时候,公司关心的是他们能否开发实用软件。
为了适应社会的需求,解决学校所学非公司所需的矛盾,教师应该在以下几个方面进行调整。
(1)在讲授实践性比较强的软件开发类课程时,可以引导学生循序渐进地实现一个小的实用软件。
(2)在考核权重的设置上,应该加大平日课堂表现得分的比重,引导学生在课下认真学习打好基础、课上好好表现积极参与,通过日积月累的方式逐渐增强自己的软件开发能力,由量变到质变,而不是临时抱佛脚。
(3)在期末考试时,将传统的卷面考试变成答辩式考试。教师要求学生开发一个实用软件,撰写软件开发的说明文档,制作幻灯片,然后每人都上台作报告,向老师和同学展示自己所做的软件功能、开发用到的核心技术,并现场演示软件。最后,由老师和同学现场提问,根据软件性能和答辩情况对其打分。这种考核方式可以很好地避免学生死记硬背、临时抱佛脚来应付考试的弊病。另外,答辩可以锻炼学生的软件开发实战能力、语言表达能力和临场发挥能力。
通过日常上课过程中的引导、训练以及最终以检测软件开发能力为目的的答辩式考试,学生能够学习到很多软件开发的实战经验,为其能够顺利从一个毕业生转变成公司的合格员工打好基础。
4 结 语
实践性较强的软件开发类课程教学应该以培养学生的动手能力为目标,增强学生解决现实应用问题的能力。引入基于MOOC的翻转课堂模式,可以让学生更好地利用课余时间,基于互联网进行基础知识的学习,从而可以让教师在课堂上有更多的时间对学生进行相关实践应用能力的培养,这对培养合格的计算机相关专业人才有重要意义。2012级计算机科学与技术专业的学生反馈显示,在基于MOOC的翻转课堂模式培养下,大多数学生提高了学习软件开发的兴趣,积极利用MOOC资源自觉充电,在线上平台进行沟通,不断完善自己开发的软件。学生的自学能力和分析问题解决问题的能力不断提高,能够更好地适应社会、服务社会。同时,激发了授课教师对教学的思考,促使教师加深对所授内容广度和深度的理解,从而解答学生提出的各种各样的问题,形成更加浓厚的学术氛围。
参考文献:
[1] 伍民友, 过敏意. 论MOOC及未来教育趋势[J]. 计算机教育, 2013(20): 5-8.
[2] 凡妙然. 基于MOOC的翻转课堂在高校教学中的应用[J]. 软件导刊, 2014(9): 189-191.
1软件人才培养现状
随着我国软件产业的不断发展,软件开发方式已经由传统的作坊式逐步升级为工业化、流水线式的生产模式。在这种工业化生产模式下,行业和企业对具备一定软件开发经验的软件工程师、软件项目经理等软件人才的需求日益增加。而目前的软件人才培养现状并不能满足这种社会需求。许多高校在软件人才培养方面与行业现实需求脱离,传统的教育模式中存在一些问题,如教学注重理论知识掌握、教材内容陈旧、教学方法落后、实践训练不足等,导致学生的工程实践能力不足,不能满足企业的实际开发需要。因此,软件人才培养模式有待进一步改革。
印度的NIIT教育模式是目前公认的IT软件人才培养的成功典范。NIIT教育培养模式注重培养学员的动手操作能力、工程实践能力和设计研发能力。本文在探索NIIT教育理念和教育模式基础上,结合本校计算机科学与技术软件人才培养计划和培养方案,通过构建嵌入式课程体系、有效组织教学内容、改革传统教学方法等途径进行软件人才培养模式改革的探索,对高校培养创新型应用人才具有一定借鉴意义。
2探索NIIT教育模式,构建嵌入式课程体系
NIIT是印度国家信息学院(National Institute of Information Technology, NIIT)的简称,1981年开始在印度开展IT教育培训。NIIT在发展过程中总结出一套独特、先进、高效的教学模式。在实际教学过程中,通过让学生学习使用主流软件开发方法和技术,注重培养学生的工程设计能力、软件研发能力和实践创新能力。NIIT软件人才培养模式采用以软件订单项目为基础的专业实践能力和操作开发能力培养方式,学生学习时就能参加软件订单和软件项目的设计和研发,毕业后能很快适应企业开发要求,并成为合格的专业技术人才[1]。
在嵌入式NIIT教育模式的指导下,探索构建适合软件行业要求的课程体系,是培养计划的重要组成部分。针对目前业界对IT人才的需求,NIIT课程体系主要分为Java方向和.NET两个方向,以培养学生具有数据库开发能力、J2EE开发能力、.NET开发能力、COM+组件开发能力和移动开发能力的软件工程师为目标。学生通过阶段性循序渐进的学习和实践,掌握软件开发的主流软件和技术。
因此,我们通过借鉴NIIT教育模式在软件人才培养方面的优势,在制定计算机科学与技术专业软件工程方向的培养计划时,应将以传统学科建设为导向、以追求知识完备为目标的教学转变为以企业需求为导向、以培养学生综合素质和能力为目标的教学。在新培养目标的指导下,我们对原有课程体系进行改革,在原有课程体系中嵌入NIIT部分课程,经过整合,将课程体系划分为公共基础类、专业基础类和专业类三大类,课程体系如图1所示。
图1嵌入NIIT课程体系
软件工程方向的专业类课程包括专业必修课程、专业限选课程、专业任选课程和认证课程。专业必修课程包括UML统一建模语言、软件项目管理、软件质量保证与测试、软件设计与体系结构和软件需求分析等,作为软件开发和技术知识掌握的基础;在专业限选课程中,嵌入了NIIT的两条软件开发技术方向,即.NET方向和Java方向。NIIT的课程体系基本是循着这两条技术路线搭建的,其特点是由浅入深、由点到面、技术路线明晰。.NET技术路线课程开设C#程序设计、Web应用开发、.NET应用开发等课程;Java技术路线课程开设Java程序设计、J2ME移动应用开发、Java EE应用开发等课程。同时增加了辅助这两条技术线路的专业任选课程,如软件设计模式、软件开发案例分析等。同时,根据软件行业的相关认证,我们开设一些认证课,使学生在获得素质学分的同时得到行业认可。
嵌入NIIT教育后的课程体系,既符合计算机科学与技术专业规范,又符合行业对软件人才能力培养的实际要求。根据该课程体系构建的人才培养方案,能确保学生掌握主流开发技术.NET和Java之一,毕业后能够很好地适应软件市场对人才的需求。
3合理组织教学内容,改革传统教学方法
教学内容的组织改变了传统注重书本和理论知识的方式。以往学生掌握主要技术知识后,并不能将其很好地应用到解决实际问题的过程中,课堂讲解中的理论和实践分离,学生处在被动状态,没有时间思考,没有机会参与。而嵌入式NIIT教育模式更着重知识的运用和学生实践能力的培养,针对不同课程设计合理的应用案例,这些实例基本上来自于软件生产的实际问题,教师可以根据教学实际自己编写实践教材,修订实践教学大纲,安排合理的实践环境。因此,通过合理组织教学内容,采用适应软件人才培养的教学方法,可以让学生从工程的角度学习专业知识,并有效培养学生的实践操作能力和软件研发能力。
在教学方法上,NIIT教育模式独创了软件教育的MCLA (Model Centered Learning Architecture),即基于榜样的学习方法。MCLA教学方法是遵循“专家引导―引导实践―引导探索―独立实践”这一完整的工程实践训练过程[2]。在传统教学中,学生学习某个知识点之前,首先掌握一些基本理论和概念,然后通过一些简单的验证性实验或简单实例,达到掌握理论知识的目的,这并没有注重培养学生动手解决问题的综合实践能力。而MCLA教学法以工程项目为载体,经过“学习―实践―提高”,逐步引导学生在学习和完成项目的实战训练中形成知识获取能力、解决问题能力、团队合作能力、创新开发能力。
采用MCLA教学方法,教师要设计合理的工程案例,这也需要教师有一定的工程背景或经验。然后,教师以本次课程所传授的基础知识为主线,向学生介绍实际问题的相关内容,让学生了解所要解决的问题是什么。接着,进入专家引导,经过教师示范性地使用标准方案解决问题,学生可以进行模仿,并从中掌握必备的知识。最后,开展引导实践环节,学生已经具备一定的知识基础,可以完成一个类似的实际应用问题,通过不断的练习和团队实践,可以巩固所学知识和技术。教师引导学生设计实现相似案例,将及时应用所学理论并很好地巩固,同时引导学生掌握软件开发技能。这样,学生在实践过程中能够逐步独立完成一个新的工程应用项目。
4加强实践教学环节,培养学生综合素质
突出实践技能是NIIT教育模式的侧重点。在嵌入式NIIT教育模式中,特别重视以软件订单项目为基础的专业实践能力和实际操作开发能力的培养[3]。实践可以使学生将理论与解决问题的实践相结合,从大量的实践训练中不断提升软件开发和动手操作能力。根据软件人才培养目标的要求,学校需要加强实践教学环节的设置、构建科学优化的实践教学体系,全面培养学生的综合素质和实践创新能力。
在教学计划中,我们减少单纯的实验性、验证性的实践课程,增加符合NIIT教育模式的设计性、综合性、工程性、创新性课程。经过对实践教学内容的优化整合,设置了与嵌入式课程体系相辅相成的实践教学环节,包括基础实验环节、工程基础训练环节和综合实践环节。基础实验环节注重学生对基础知识的掌握,注重基本技能的训练。与相关理论教学环节对应,主要开设一些专业课的实验课,为学生掌握扎实
的专业基础知识并锻炼动手实践能力提供基础平台。工程基础训练环节主要开设专业课程的课程设计、工程实训及一些校企合作课程,开展带有工程性质的工程基础训练。综合实践环节主要开设学年综合设计(或学年设计)、毕业设计(论文)、学生科技创新项目和科学研究训练等。在设计性和创新性实践中,由学生自己实现软件研发的全过程,充分发挥能动性和主体性,提高勇于探索的创新思维和创新能力。通过实践环节的训练,学生的实践创新能力得到逐步锻炼和提升,并且逐步与企业工程环境接轨,可以顺利地从基础实验平台上升到工程实践平台,达到企业对软件工程师的要求。
5结语
通过将适应企业需要的NIIT教育模式嵌入到计算机软件人才教育中,打破传统的以理论知识的渐进积累辅之以实验佐证为主要特征的教育模式,按照企业实际需求培养应用型和创新型软件工程人才,是软件教育改革的一种有效尝试。探索嵌入式NIIT教育模式,对于培养具有较强动手操作能力、工程实践能力的软件人才,具有一定借鉴意义,对于教育部提出的开展“卓越工程师”培养计划,是一种有效的尝试。
参考文献:
[1] 李洛,汪清明. 导入印度NIIT模式,提高高职软件人才培养水平[J]. 比较教育研究,2004(2):34-38.
[2] 刘志成,陈承欢,彭勇. 嵌入式NIIT教育模式中教学方法的研究[J]. 职业教育研究,2007(2):154-155.
[3] 李洛,古凌岚,罗佳,等. 印度NIIT软件人才培养模式的探索与实践[J]. 广东轻工职业技术学院学报,2003(9):49-52.
Discussion on Software Talents Training Mode Based on NIIT Education
SU Rina, FAN Jianbo, YU Hua, LIU Liangxu
(College of Electronic and Information Engineering, Ningbo University of Technology, Ningbo 315016, China)
会计电算化发展到今天,已不是单纯的会计与计算机的简单结合,而是已经发展成为一门延伸到通信学、企业管理学、市场运筹学等学科的综合性学科;它的推广应用不再是单纯的财务管理系统,而是正朝着企业资源计划管理系统方向发展,甚至发展成为不同企业之间跨地区、跨行业相互链接的大网络系统。
通过几年来在基层从事会计电算化工作所积累的经验,要想实现真正的财务管理现代化,必须在企业内部建立以财务为中心的“企业ERP系统”。通过把企业内部相关部门的计算机连接起来,建立企业内部综合信息管理网络系统,在业务量比较大的几个部门建立独立的资源子网。
二、电算化会计软件
目前,我国工业企业财务部门使用的会计软件,一种是外国公司开发的经过汉化的会计软件,是按照国际会计准则设计的,适用于西方资本主义管理体系,而不适用于我国企业管理模式;另一种是国内企业开发的商品化会计软件,这种软件由于受知识产权的影响,价格比较昂贵,而且商品化软件维护起来比较麻烦,使用它势必造成人力和物力的极大浪费。当然后一种商品化软件是由各方面专家共同开发的,软件比较规范、功能比较齐全、操作也相对简便,而且软件实施周期短、见效快,因此,对于缺乏软件开发队伍的单位采用商品化软件是比较明智的。另外,还可以在同行业之间组织力量开发适用于某行业的会计电算化软件,实行集中开发、集中管理和维护,共同使用,这样可以节省大量的资金,而且行业之间提供的会计信息资料可供上级部门直接进行汇总处理,而不必再开发专用的汇总软件,这是开展会计电算化工作既经济又适用的捷径。
充分利用计算机技术和财务会计知识,建立一套科学的财会综合管理体系和会计电算化软件发展规划,采用在行业内部或同行业之间选拔优秀的计算机人才,建立行业计算机技术开发公关小组,开发适合行业内部管理需要的会计电算化软件,在企业各财会部门推广应用。达到集中开发共同使用的目的,缩短软件开发应用的周期,同时在应用管理上也可纵观全局。从长远利益出发,制定一套完整的会计电算化工作的长远发展规划。走出仅限于统计报表管理和数据存储管理的初级探索阶段,向大规模数值计算的专用软件、面向问题和过程分析及判断推理的高层次软件综合开发阶段迈进。由单机单用户、联机终端网络向标准化网络体系结构发展,充分利用计算机的网络结构,更大程度地共享计算机的硬件、软件及数据资源,建立一套完善的计算机辅助管理专家系统和智能系统,使计算机在财务管理工作中的应用向更广泛、更深层次发展。为企业领导和决策者提供准确可靠的信息情报,编制出合理的企业生产经营计划报表及财务报表。有效地控制企业生产经营中的资源浪费,加快资金流通,降低资金占用消耗和产品生产成本,提高企业经济效益。开创以商品化软件为契机,以自己的软件开发队伍为中心,实现企业自己的智能化信息与专家系统的会计电算化发展新路子。
三、走全员化管理道路是实施会计电算化的关键
会计电算化工作的关键是应用,特别是从事具体管理工作的人员,他们的会计电算化水平决定本企业会计电算化管理的水平,他们中有多少人会使用计算机,能够利用计算机进行辅助管理工作,甚至有多少人会进行简单的计算机软件编程工作都对会计电算化的顺利实施起着至关重要的作用。所以说会计电算化工作要得到全面的发展,必须走全员化管理的道路。
全员管理就是动员企业内部从事各项管理工作的工程师、会计师、管理师、统计师、会计员、技术员及一般管理人员等在搞好本职工作的同时,协同从事计算机程序设计的人员一起研究学习计算机技术基础知识和其它管理科学的知识,应用计算机去从事各项管理工作。把计算机同现代化的管理科学融合在一起,培养出大批能从事多种工作的复合型人才,形成企业内部全体上下相互协作,同心协力的全员学电脑、用电脑的局面,让更多的人去学习计算机知识,用学到的知识去为管理服务,提高管理工作的水平和质量。