《软件开发方法与实践》课程是与中国软件行业协会联合开发课程,以软件公司开发的真实案例为载体设计教学内容。该课程是学生毕业后从事程序员或软件设计师职业的基础。课程总体设计体现案例教学的理念,打破传统的按照知识体系教授课程的方式,以学生毕业后将要从事的职业岗位能力为培养目标,通过本课程的学习掌握软件开发方法,从需求分析至系统测试的各个软件开发阶段的模型建立、开发工具使用、编程方法、系统测试以及开发文档写作等内容。培养学生具有独立组织管理信息系统的开发能力并能对管理信息系统的运行和维护进行规划与实施;掌握信息系统规划、建设及实施的方法和技能;锻炼独立思考和创新精神,以提高全面素质。
《软件开发方法与实践》课程是计算机信息管理专业所开设的重要核心课程。通过本课程的学习,学生可以了解管理信息系统以及.NET编程的内容和开发过程,掌握软件开发方法,从需求分析至系统测试的各个软件开发阶段的模型建立、开发工具使用、编程方法、系统测试以及开发文档写作等内容。培养学生具有独立组织管理信息系统的开发能力并能对管理信息系统的运行和维护进行规划与实施;掌握信息系统规划、建设及实施的方法和技能;锻炼独立思考和创新精神,以提高全面素质。
传统的软件开发方法课程一般由管理信息系统课程演变而来。教学内容主要由软件工程基础知识、UML等知识组成。教授内容相对单一、理论性强,在基础知识方面缺乏软件设计模式等具有实际应用价值的专业内容,而在应用技术方面又缺乏与高级编程语言实际的对接等实践环节。随着软件开发技术的不断发展,授课内容必须随之不断的调整与扩充。伴随教学改革的不断深入,校企合作的不断加强,本着工学结合和以职业能力培养为重点的课程设计理念,将企业开发实际项目融入教学,在教学中使用企业真实开发项目,不断增强应用性、实践性。以工作过程为导向,与企业共建课程, 将软件企业中的软件开发模式、软件项目组织管理方式引入课程中,将职业工作活动与教学活动融为一体。学生通过本课程的学习,掌握真实项目的开发流程和技术,定位于企业岗位实际需求,引入全真案例教学,仿真软件公司的管理制度和团队开发模式,学生具有员工和学生的双重身份,真正做到学校和企业“无缝对接”。
一、课程设计思路
1.培养学生具有程序员或软件设计师职业能力。
2.岗位描述:从事管理信息系统的设计、开发、软件维护、管理、软件测试工作。
职业能力:了解管理信息系统以及.NET编程的内容和开发过程,掌握软件开发方法,从需求分析至系统测试的各个软件开发阶段的模型建立、开发工具使用、编程方法、系统测试以及开发文档写作等等。该课程主要任务是通过综合运用多门软件课程的知识和技能开发一个应用软件系统,使学生了解一个完整的软件开发过程,学会根据软件开发文档编写符合工程规范的程序,提高软件开发综合能力,积累软件项目开发经验,实现与软件开发工作岗位的无缝连接。
3.以软件开发工作过程为基础。以软件岗位群为职业分析对象,邀请优秀的软件工程师、项目经理等软件领域专家,分析软件开发的工作过程,确定典型的工作任务,通过典型工作任务实例客观地描述软件开发的职业活动。国外软件开发管理体系及开发体系应用包括以下阶段:立项、信息收集、需求分析、系统设计、系统开发、测试、试运行、维护期。对每一阶段的实施及验收制定相应的标准。
4.以软件设计为载体,设计学习情境。
三个学习情境涵盖了12个任务,由简单到复杂,从理论分析逐步过渡到程序编写等实施过程。
针对软件岗位群上的典型工作任务,运用职业分析方法确定软件岗位群要求的职业能力以及职业能力评定等级。分析职业能力的形成过程,确定各项能力形成的条件,按照能力形成规律归纳总结出行动领域。打散传统的知识体系,按照软件开发工作过程及职业能力成长规律将行动领域转化为学习领域,根据岗位能力要求,确定课程目标。以项目为载体,根据工作任务的相关性构建课程内容体系,针对开发项目的工作过程设计学习情境,以完成工作任务的顺序组织教学内容,按照行动导向的原则设计教学单元。与企业密切合作,将软件企业的开发环境、开发方式、开发工具引入实训基地,构建本课程的职业情境。
改革传统的教学模式,设计与工作过程导向相适应的教学方法,参照工程标准及职业资格标准制定教学评价标准,最后,由专业指导委员会的软件领域专家和教育专家共同确定课程标准。
二、教学内容的针对性与适用性
软件设计方向毕业生所从事的工作岗位有软件开发员、软件测试员、软件维护员等软件技术人员,完成这些职业岗位实际工作任务学生应该掌握面向对象程序设计、管理信息系统、软件开发技术;掌握软件开发的、测试、管理等职业能力。本课程的教学内容整合了《面向对象的程序设计语言》、《管理信息系统》、《软件案例测试》、《数据库应用技术》等4门课程为《软件开发方法与实践》这门课程,解决实际的软件设计开发问题,完成一件产品的制作。教学内容用到上述四门课程的知识点。
根据劳动部和信息产业部所制定的高级程序员、全国计算机高新技术职业资格数据库操作员所要面临的工作岗位及要完成的工作任务,其中确定软件开发员、软件测试员、软件维护员为具有教育价值的典型工作岗位。因此,本课程主要使学生掌握如下技能:(1)学习编写程序基础理论,进而会编写典型的算法程序。(2)学会可视化程序设计工具的使用,掌握面向对象的程序设计方法、事件驱动的编程方式。(3)利用C#开发程序过程,能够设计、编制、调试一个实用的程序,要求程序结构简单,功能齐全,使用方便。(4)使用UML对系统进行分析与设计,能组织管理信息系统的开发并能对管理信息系统的运行和维护进行规划与实施。(5)对设计的软件进行全面测试。(6)运用软件开发的综合技术,前台选择一种程序设计语言,后台选择一种数据库(SQL Server等)开发完整MIS系统的能力。
本课程的理论知识不再是抽象无物的东西,实践教学也不是单纯的技能训练,而是理论支持下的职业实践活动;学生的学习内容不再是脱离企业软件开发实际过程的僵硬教条,而是针对来自企业的工作项目和典型任务,学习内容与企业实际运用的新知识、新技术、新方法实现同步,适应了职业教育的发展方向。
三、教学模式的设计与创新
本课程采用了“项目+过程”的工学结合教学模式。课程以项目为载体,以过程为导向,采用任务驱动的方法,按照企业开发软件的流程,在工厂化的实习环境中,将“企业的内容”以“教学的形式”来完成“人才的培养”。
1.实际的工程项目与真实的工作任务保证了教学内容与工作内容的一致性。
本课程的项目来自于软件公司开发的实际工程项目。按照企业的开发方式,整个开发过程需要经历不同的开发阶段,各个开发阶段都必须完成多个学习性工作任务,提交阶段性工作成果。由于整个课程结构和教学内容由这些工作任务构成,因此,保证了教学内容与工作内容的一致性。
2.企业化的开发流程保证了学习过程与工作过程的一致性。
本课程以小组为单位组织项目开发。开发小组按照企业开发软件的流程,从业务调查、需求分析、概要设计、详细设计、软件编码到软件测试、软件发布实施,经历了一个完整的软件开发过程。学生以准员工的身份参与项目开发的全部过程,完成企业员工应当完成的工作,使职业工作活动与教学活动融为一体。此外,学生还要走出校门,到校外生产实习基地顶岗实习,接受真正工程项目实践的锻炼。学生在经历情境化的工作活动过程中熟悉了软件工作环境和开发流程,积累了实际工作经验,实现了职业能力的发展。
3.工厂化的实习环境保证了课堂与实习地点一体化。
本课程主要在软件生产实训基地中进行训练。软件生产实训基地按照软件企业的开发环境建设,它不但可以进行教、学、做一体化教学,而且可以为学生提供一个真实的企业环境开发软件,学生可以在此进行生产性实习,消除对真实企业工作环境的陌生感,实现学生当前的实训环境与其未来职业环境的“零距离”对接。
4.采用任务驱动、工学交替的教学模式组织教学。
本课程由同步训练、拓展训练和生产实习3个环节构成。同步训练采用一体化的教学方法,在综合实训室完成。拓展训练采用教师指导下的独立训练方式,在校内软件生产实训基地完成,而生产实习则在真实的软件企业中完成。3种训练方式交替进行,一体化教学逐步减少,生产性实习逐步增多,最终达到与职业岗位群的“无缝”连接。
本课程还采用任务驱动组织教学。每一项任务开始时都向学生下达一个工作任务单,任务单详细描述了工作任务、工作要求、工作期限、工作环境和开发工具。学生以此为开端,在完成工作任务的过程中学会了知识,增长了能力。
5.行动导向的教学模式使学生逐步积累了实际工作经验。
改革传统的以教师为中心的讲授模式,建立行动导向的教学模式。课程中的每一个学习情境都按照行动导向的教学模式组织教学,学生在项目开发过程中学,教师在项目开发过程中教,学生成为了学习过程的中心,教师是学习过程的组织者和协调者。学生在“资讯、计划、决策、实施、检查、评价”这一完整的“行动”过程中,通过独立地获取信息、独立地制订计划、独立地实施计划、独立地评估计划,掌握软件开发的技能、习得软件技术知识,构建自己的开发经验和软件知识体系,有效地培养学生职业能力,方法能力和社会能力。
四、可行性分析
《软件开发方法与实践》课程是基于工作过程导向的课程开发,与中国软件行业协会联合开发课程,以来自企业的实际项目为载体设计教学内容。
教学内容设计了三个学习情境:软件开发过程、管理信息系统分析和管理信息系统开发,每个学习情境下又设置若干任务,通过每个任务的完成可以实现对应学习情境的学习。
学生通过本课程的学习,掌握管理信息系统的内容和开发过程以及开发方法,初步掌握面向对象的程序开发所需的设计工具、建模工具、开发工具、测试工具以及文档写作,提高学生对面向对象软件的设计以及开发能力,拥有自行独立开发、维护、运行管理信息系统的技能。使学生能够适应当今软件制造行业的高速发展,增强就业竞争力,为学生将来的程序员、软件测试员、软件系统分析师、软件项目管理人员等相关职业生涯奠定了必要的知识和技能。
计算机信息专业与中国软件行业协会已经正式签约,成为其在本区域内的第一家合作的高职院校,对本课程的教学进行全程合作,具体表现为三个方面:
项目背景优势权威性:三方结合国家政策及行业需求强强联合推出;标准性:逐步建立软件企业人才准入制度,打造软件人才培养标准。
核心项目优势:实用的课程内容:定位于企业岗位实际需求,全真案例教学;强大的师资力量:双师型的师资队伍;先进的教学方法:八真教学方法。
就业服务优势:雄厚的企业资源和跨地域的就业服务体系。
五、特色与创新
1.双重主导的教学内容组织方式。
本课程以来自真实的项目为载体,项目开发贯穿课程始终。整个课程的教学内容以软件开发过程及业务逻辑为主线层层递进,环环相扣,其教学过程与工作过程完全一致。在软件开发过程的主导下,课程按照认知规律编排多发面的相关技术知识,按照从易到难的原则将其巧妙地融入到项目开发过程中,形成另外一条贯穿始终的技术知识辅线,主辅双线相互呼应,相互融合,学生在开发软件的过程中不但积累了工作经验,同时也将逐步构建自己的知识体系,为未来发展打下一定的基础。
2.“三位一体”的教学过程。
本课程以项目为载体,通过一个完整的软件开发周期,将开发过程、学习过程、评价过程融为一体,学生在交替进行的同步训练、拓展训练和生产实习过程中逐步提高软件开发能力,最终达到课程目标。
3.企业化的学习方式。
本课程在教学过程中,将企业中的软件开发模式、组织管理方法、企业开发环境引入教学中,为学生营建一个企业化的学习环境。课程一开始,每一个学生在开发小组中扮演一个开发角色,教师介绍开发规范、项目背景及组织管理方法,让学生熟悉环境,帮助学生制定项目开发计划,以便所有相关人员按照计划有条不紊地开展工作。在每一个教学单元中,教师首先介绍任务背景,下达工作任务单。任务单详细描述了工作任务、工作要求、工作期限、工作环境和开发工具。学生在完成工作任务后要与教师一起从交付时间、用户界面、编码规范、健壮性等各个方面评估任务的完成情况,然后将评估结果记录在评审表中。评审结束后,学生要从生产效率、产品质量、技术方法、错误分析等多方面进行总结,在此基础上提交相应的工作成果及工作(实训)报告,为今后的项目开发积累开发资料。
4.多门课程优化整合。
构建了以软件开发为主线、以应用为目的的软件开发课程群,包括C#程序设计、数据库原理与应用、管理信息系统、软件测试与文档写作课程,各门课程之间相互联系,融会贯通,形成了有利于学生就业的完备的课程体系。探索并开创了程序设计一条线模型的课程建设,课程组合以后可以将原来一个个单独的程序变为一个有机的整体。使得学生能够真正了解程序到底可以干什么,有什么用途。
作者简介:
王唯(1976—),女,硕士研究生,副教授,高级工程师,主要研究方向:信息通信、软件开发。
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。