软件测试实习工作计划十篇

时间:2023-03-14 20:45:47

软件测试实习工作计划

软件测试实习工作计划篇1

关键词: 软件测试; 教学模式; 改革; 探索

中图分类号:G642 文献标志码:A 文章编号:1006-8228(2013)11-52-02

0 引言

近年来,在经济全球化和信息技术飞速发展的带动下,软件产业已成为国家经济发展的重要支柱之一。在软件开发的整个生命周期中,软件测试是不可缺少的重要环节,其成效直接决定了软件产品的质量。软件测试行业日趋规模化和规范化,用人单位对软件测试人才的需求量也不断增长。因此,软件测试人才的培养成为众多高校计算机专业培养的新热点[1]。然而,很多高校开设的软件测试课程不能满足市场对软件测试人才的需求。学生只是学会了书本上条条框框的理论知识,而在实践中遇到各种不同类型、不同功能的软件时,仍然不懂活学活用。因此软件测试课程也应与时俱进,引入先进的教学管理理念和教学模式以适应市场发展的需要。

1 软件测试课程教学模式的现状

1.1 软件测试课程简介

软件测试是一门迅速发展的新兴学科,是计算机软件专业、计算机应用专业、计算机信息管理等专业的一门重要课程,是计算机软件开发与测试、软件测试专业高年级学生的必修课。软件测试课程是实践性、应用性很强的课程,其主要目的是使学生在学习程序设计语言、软件工程等课程的基础上,熟悉软件测试岗位的工作职责,了解软件测试的方法、原则、规范和管理,掌握软件测试工作流程、测试技能,培养学生的实际动手操作能力和专业实践能力,为就业打下坚实的基础。

1.2 软件测试教学存在的问题

软件测试课程教学模式是指:软件课程教学的总体设计。它是一个完整的功能体系,包括教学目标的确立,教学计划、进度的制定,教学方法、手段的选择和实施,课程考核的方法和手段等等[2]。本部分将对传统教学模式包含的各部分进行讨论,分析目前该课程教学模式所存在的问题。

1.2.1 教学计划及进度

目前大部分高校的计算机相关专业都是在大三下学期开设软件测试课程。学习的内容主要包括软件测试的基本概念、黑盒/白盒测试用例的设计技术和测试自动化工具的使用。由于该课程学习过程过于短促,加上学习内容拘泥于书本化,所以在课程学习结束后,大部分学生对该课程的印象如过眼云烟,没有留下多少记忆。即使是学习特别用心的学生,所学到的也仅是书面的内容,掌握的也只有软件测试的基础理论知识,极度缺乏实践环节的经验,当进入企业后,仍然无法圆满完成一个软件项目测试的实际工作。

1.2.2 教学方法及手段

目前高校开设的软件测试课程所采用的教学方法及手段与其他课程一样,即课堂讲授和实验室实践相结合。这种教学方法属于填鸭式的教学方法。首先,学生在学习的时候完全属于一种被动式的学习,学习效果不好;再有,实验室实践环节只是设计简单案例的测试用例,与公司/企业需要测试的大型软件相差甚远,在测试方法、测试过程和测试文档要求上都有很大的区别。因此,这种传统的教学方法及手段无法适应市场的需求[2,4]。

1.2.3 考核的方法及手段

传统的软件测试课程的考核方法及手段仍然是采用试卷命题闭卷考核的方式。而软件测试课程是一门实践性和应用性很强的一门课程,这种考核方法只能考核学生对理论知识掌握的程度,并不能考核出学生对软件测试技术掌握的情况。另外,学生在学习过程中的表现远远比一次考试的最终结果更能体现出学生真正的水平,所以这门课程的最终成绩也不能由最后一次的笔试结果来决定。

2 软件测试教学模式的改革

根据企业对软件测试人员技能的实际要求,我们对教学计划、课程设计、教学方式的实施及考核方式进行了调整。

2.1 教学计划调整

教学计划一改以往一学期学完软件测试所有内容的传统做法,分阶段完成对该课程的教学。这样一方面使学生以循序渐进地过程学习该课程,印象更为深刻;另一方面,学习的内容除了书本上的基础理论之外,还包括了丰富的实践内容。

在学生学习完程序设计语言课程后,第二学年的第一学期开设软件测试概论这门课,让学生对软件测试的基础理论知识有一定的理解;第二学年的第二学期通过抛锚式教学法开设综合测试课程,让学生掌握有关自动化测试工具的使用并培养学生团队合作意识。

第三学年开设一门完全是以实训为主的课程,让学生能够掌握不同环境平台下的测试方法,并根据对需求规格说明书的分析,自动生成测试用例,这将是软件测试的一种趋势。

第四学年让学生到跟我院合作的企业去实习,真正掌握软件测试的实践技能,以适应市场发展的真正需求。

2.2 教学方式采用“抛锚式”教学法

传统的做法是介绍软件测试的理论,以简单的案例进行说明。由于内容本身抽象,缺乏足够的实践,使得学生感觉枯燥乏味,且不会活学活用。为了激发学生的学习兴趣,并根据学习内容的变化,我们采用了案例抛锚和项目抛锚两种教学方法。

第一,采用案例抛锚教学。这种教学方法主要应用在教学计划的第一阶段,即软件测试概论和综合测试阶段。选择好的案例对帮助学生理解软件测试技术起到至关重要的作用。我们根据案例的难易程度,将案例和软件测试理论与技术相结合,把案例分成基础案例和综合案例两种[3]。例如在学习《软件测试概论》中白盒测试、黑盒测试技术时,应尽量选择简单的基础案例,让学生把更多的注意力集中在测试的方法上而不是案例本身上,这样更有利于学生理解测试技术的原理。在学习综合测试的时候,我们提供给学生的是一些比较复杂的综合案例,对学生进行分组,以小组为单位来解决较为复杂的测试问题。通过团队进行的整个测试过程既可以让学生感受到一个综合案例测试的工作流程、实施细节及注意事项,又可以促进学生沟通与协作的能力。在综合测试的整个过程中,还需要应用到各种自动化测试工具, 包括WinRunner功能测试工具、LoadRunner性能测试工具、TestDirector测试管理工具等,为学生毕业后从事真正的测试工作打下坚实的基础。

第二,采用项目抛锚教学。这种教学方法主要应用在教学计划的第二阶段,即在软件测试实训过程中使用。在学生掌握了软件测试的相关测试技术之后,需要将所学的知识灵活运用到实际环境下的软件测试中。因此,该阶段的学习内容主要以对项目的测试为主,选择的项目必须有不同的软件和硬件要求以及特定的配置环境,这可以让学生提前适应实际测试工作的流程,进一步提升学生对所学的软件测试理论知识和测试技术综合应用的能力。针对每个具体的项目,按照软件测试的三个主要阶段(测试计划、测试用例获取、测试有效性度量),充分将软件测试理论与实践结合起来,通过对不同环境下项目的测试,找出软件测试技术各阶段之间的相互联系,从而达到软件测试的教学目的和培养目标。

2.3 校企合作

为避免学校培养出来的学生与社会需求脱节,应使学生尽可能早地了解市场的行情,以掌握市场所需要的各项测试技能。因此,非常有必要让学校与企业进行合作,合作的方式可以有以下几种。

第一,请企业的专家给教师、学生进行技术讲座或市场信息的宣传,让教师和学生充分了解市场的需求以及学生需要掌握哪些技能[3],使得老师的教和学生的学真正做到有的放矢。

第二,与企业建立学生实习合作。争取有一定数量的学生参与企业软件测试实习并获得就业指导。

第三,与企业合作进行外包测试。

2.4 课程考核方式

考核分数由两部分组成:平时成绩占50%,期末考核成绩占50%。而期末考核由试卷命题闭卷考核的方式改为独立完成一个实际软件项目的综合测试,以此更能考核学生对软件测试的综合能力。

3 结束语

本文对“软件测试”课程的教学模式改革进行了探索,通过调整教学计划并采用“抛锚式”教学法,取得了较好的教学效果。新的教学模式以培养多层次、应用型、复合型软件测试人才为目标,全面加强素质教育,重点培养学生的团队精神、创新能力和实践能力,能够真正实现人才培养与市场需求的一致。

参考文献:

[1] 周元哲.“软件测试”教学改革的探索和实践[J].计算机教育,2008.22:16-17

[2] 聂静,吴琳.探索软件测试课程教学改革方案[J].中国校外教育(理论),2011.z2.

软件测试实习工作计划篇2

关键词:软件工程;培养目标;实践

中图分类号:TP311.5-4 文献标识码:A文章编号:1007-9599 (2011) 17-0000-01

Analysis of the Training Road to Software Engineering

Zhang Lin

(Tongji University,Shanghai200092,China)

Abstract:This paper analyzes the current software engineering training objectives as well as software engineering professionals in the community capacity needs,and finally discusses the software engineering training effective way.

Keywords:Software engineering;Training objectives;Practice

21世纪以来,信息产业得到快速发展并成为国家的支柱产业,其中的软件行业更是得到前所未有的快速发展。为了满足市场需要,软件工程专业成为计算机科学与技术专业的一个重要的专业方向。

软件工程涵盖了包括计划、分析、设计、测试、实现、交付、集成、维护等在内的软件生命周期的所有阶段,作为软件技术人员,要掌握软件基本工程的概念、原理、技术和方法,掌握面向对象的独立开发软件的方法,掌握并了解软件度量和管理的方法,要了解如何去安排项目的组织和进度,如何保证项目的质量,从而进行有效的项目策划和软件开发。目前,我国软件行业正遭遇软件人才结构性矛盾突出的瓶颈,缺乏高层次、高素质的创新型软件人才,且人才规模不足以满足产业的发展需求,人才知识结构不合理,缺乏软件架构、项目管理、文案管理、测试等方面的人才,难以满足现实需求。因此,有必要探讨软件工程人才的培养策略,为国家真正培养应用型软件工程技术人才。

一、软件工程专业人才培养目标及能力要求

(一)培养目标。软件工程的培养目标是:培养具有良好的科学与工程素养,系统掌握计算机基础理论、软件管理及软件开发等计算机应用技术,能综合运用工程化方法、技术与工具从事软件分析、开发、设计及维护等工作,具备工程项目的组织与管理能力、团队协作能力的高级应用型软件工程人才。

(二)能力要求。应用型人才的主要任务是将成熟的技术和理论应用到实际的生产和生活中,其培养的关键是强调对学生专业核心能力的培养。对于应用型软件工程人才,其专业核心能力包括以下几个方面。(1)软件分析与设计能力。掌握用户需求调研和需求分析方法,能够将需求转换为系统的设计;掌握结构化和面向对象分析方法与设计方法,熟悉常用的软件分析与设计开发工具;熟悉UML建模技术和常见的软件设计模式;能够设计和定义软件构架、模块划分的接口协议;具备数据库结构设计能力;能够运用相关工具进行模块的详细设计;能够设计用户界面;具备用户需求说明书、软件规格说明书、概要设计说明书、数据库设计说明书、详细设计说明书等软件开发文档的撰写能力。(2)软件测试能力。掌握常见的单元测试、集成测试、性能测试和回归测试技术;掌握常用的白盒与黑盒测试方法,具备测试用例的设计能力;掌握常用的软件测试工具;熟悉实际的软件测试流程,能够搭建测试环境;掌握软件测试管理技术,具备软件测试计划、软件测试报告等测试文档的撰写能力。(3)软件实现能力。掌握结构化程序设计技术和面向对象程序设计技术,至少熟悉一门高级语言编程技术;熟悉常用的IDE开发工具,掌握软件的编辑、编译、运行和调试技术;能够运用开发工具的联机帮助来解决编码问题;能够运用打包工具制作产品的安装程序,能够编写用户使用手册、安装说明等文档;熟悉嵌入式应用软件的编程、调试、部署技术;具备硬件驱动程序开发能力。(4)工程综合能力。掌握项目范围界定、计划制订及进度监控技术掌握软件配置技术,能够使用配置管理工具;掌握软件开发风险评估与控制技术;掌握常用的软件项目管理工具;能够基于用户的反馈情况进行软件产品的维护,并能对用户进行培训;具备软件开发计划、可行性分析报告等项目管理文档的撰写能力。

二、软件工程专业人才培养模式

(一)广泛寻求企业合作,建立实习实训基地我们积极寻求与相关专业领域的企业合作,与人才实训基地等企业建立了密切的合作关系,为学生创造良好的实践学习的平台。

(二)维护与企业的关系,除了实习基地和共建实验室以外,还应该与企业还开展相关的合作。首先联合进行毕业设计指导(双导师)。近几年,在企业实习和实训的学生中,有相当数量的学生的毕业设计题目由实习单位拟定。部分实习单位的专家被聘请为我院的兼职教师,共同参与学生的毕业设计指导工作。这些做法提高了我们学生的毕业设计环节的教学质量。其次与企业一起进行课程改革的合作,一方面从企业了解对人才的要求,获得教改信息,改革教学内容;另一方面开展了与实训企业的课程互认的尝试。最后一起探索共建研究机构,利用双方的优势开展实用技术的研究和推广应用工作。通过与企业的合作,不仅使我们的学生“适销对路”,更使我们专业人才培养有了方向,有了目标。

(三)迭代式的培养过程。传统的人才培养过程强调基础宽厚,先系统学习理论知识,打好基础以后再联系实际应用。在四年的本科培养方案中,第一年主要是公共基础课,第二年主要是专业基础课,第三年主要是专业主干课,第四年主要是专业方向选修课和毕业设计。这类似于软件开发过程的瀑布风格。在这样一个培养过程中,学生们在学习的最初几年往往很茫然,不知道学习哪些相应的课程,但讲课仍从教材出发,不能从实际工作的需要出发,讲授的知识仍限于教材上的内容,不能开设案例教学,在教学的实用性方面存在很大缺陷,致使所培养的学生解决实际问题的能力不强,直接导致了学生所受教育与市场需求相脱节。因此,教师的培养是实施新型培养模式的关键。

三、结束语

我们在探讨软件工程人才培养模式的实践中,明确提出软件工程人才的培养目标要面向职业,而实施这种新型的人才培养模式的关键在于加强校企合作和教师的培养,从而加强学生在实践方面的能力,以适应社会的需要。

参考文献:

[1]史志才,韩彦铎,葛斌等.软件工程专业人才培养模式的改革与创新[J].大连大学学报,2005,6:26-28

[2]王陆海,王忠民.计算机工程型人才培养模式的创新与实践[J].计算机教育,2009,13:16-18

[3]施步洲.构建工程应用型本科人才[J].培技术师范学院学报,2006,6:6-10

软件测试实习工作计划篇3

随着计算机软件技术的高速发展,软件测试在软件开发过程中的地位也越来越重要,软件测试是保证软件质量和可靠性的重要手段之一,软件测试人才需求猛增,软件测试已经成为计算机专业的重点专业课程。传统的软件测试教学模式,测试理论和测试实践严重脱节,不能很好的满足软件企业对测试人才的要求。依托广东东软学院的特色教学实践1321教学模式,进行以实践能力和就业能力为导向的课程综合实践探索,深化教学改革,激发学生的兴趣,让学生贴近现实的工作场景中学习,了解在软件开发过程中测试岗位的工作过程和知识要点,培养学生软件测试应用技能型人才培养为目标。

二、软件测试课程实践构建的主要思路

软件综合实践安排在大三课程开始之前的实践学期进行,为期4个星期,每天4学时的实践教学指导,软件测试专业的学生已经学过专业基础课《Java程序设计》、《计算机文化基础》、《网页设计》、《数据库设计》、《软件开发过程实践》,专业课《软件测试概论》、《功能测试》,学生初步具备了参与综合实践的专业素质能力。在综合实践开发团队中,将软件开发专业、网站规划与设计专业、数据库管理专业、软件测试专业和网络技术的同学,以3:1:1:1:1这样的比例进行团队建设,从中选出一位同学兼职项目经理,实现学生自主管理,配备具有双师素质的专业老师,一位教师负责指导5-7个团队的项目开发,当需要进行专业指导时,临时进行专业化实践指导,全方位分阶段、分岗位进行进行全程交叉技术指导,同时邀请合作单位的软件工程师,同步进行项目过程的跟踪,给予学生岗位最精准的实践指导。采用项目驱动的方法开展实践教学,通过开发真实的软件项目,以软件工程开发过程为导向,制定软件综合实践——软件测试方向的实践方案,分阶段进行实践,选择有较强的实践性和创新性的项目给学生选题,选题要贴合实际项目,需求相对容易获取,具有一定的创新性,能够激发学生的学习兴趣。首先需求的调研,需求的评审,编写测试计划,设计测试用例,测试执行,测试记录的跟踪和测试总结报告,对每个测试阶段进行教学设计,不断的将所涉及到的知识点融入到实践中,增强学生职业岗位素养能力,团队合作的意识,同时探索以学生管理学生的模式进行实践探索。

三、软件综合实践测试岗位的工作过程与方法

在软件综合开发实践过程中,对软件测试岗位的同学依据软件工程的理论进行指导,结合企业的工作流程,采用分组的教学模式,采用软件测试常用的W模型,进行教学指导,培养学生的团队合作能力,沟通能力,实践能力。测试岗位的工作主要分成两个三个部分,第一部分是需求的调研和评审,测试计划中测试策略的选择、任务的时间安排和测试用例的设计;第二部分主要是测试执行,安装测试工具,部署测试环境,按照测试所设计的测试用例进行手动功能测试,尝试利用自动化测试工具QTP进行自动化测试,运用所学过的黑盒测试方法,进行web测试,兼容性测试等方法的测试工作,将所发现的问题记录到测试管理平台(QC)的缺陷缺陷跟踪表中,修复后,进行验证性测试,第三部分就是测试总结报告。

四、软件综合实践的考核

1.答辩委员会的组成。立体化全方位的考核方式,采用学生团队答辩的方式进行最终的考核,答辩委员会成员由软件开发方向教师、网站规划与开发教师、数据库管理方向教师、软件测试技术方向教师和企业工程师共同组成。2.软件测试岗位的知识点的考核。每个专业都设计了一套科学有效的评价体系,从三个部分对学生的能力进行全方位评。第一部分IT职业素养能,占总成绩比例的30%,考勤、项目管理能力、文档编写能力、团队合作与沟通能力、演讲与答辩能力;第二部分团队实践成果,占总成绩比例的30%测试环境部署、测试工具软件的安装、测试执行中缺陷报告的跟踪、测试总结报告的编写;第三部分岗位技能成果,占总成绩比例的40%,软件开发过程文档:需求评审报告、测试计划报告、测试用例报告。

五、软件综合实践教学实践的意义

1.软件综合实践项目分组教学的意义2.软件测试岗位同学的收获3.综合实践教学的后续影响4.软件综合实践教学的改革未来方向

作者:张彤宇 李晶 姚庚梅 单位:广东东软学院计算机科学与技术系

参考文献:

[1]罗先录.IT类专业实践教学的三个层次[J].计算机教育,2007(18):14-15.

软件测试实习工作计划篇4

关键词:极限编程;教育软件;教学设计;软件工程

中图分类号:TP319 文献标识码:A 文章编号:1672-7800(2012)003-0108-03

作者简介:汪灏(1984-),男,河南南阳人,河南大学计算机与信息工程学院硕士研究生,研究方向为计算机网络教育、教育软件工程;

陈丹敏(1983-),女,河南开封人,河南大学软件学院助教,研究方向为软件工程、形式化方法;杨建豪(1987-),男,河南濮阳人,河南大学计算机与信息工程学院硕士研究生,研究方向为计算机网络教育、教育软件工程。

0 引言

随着网络技术的发展,计算机和互联网广泛地进入学校和普通家庭。远程教育、教育信息化、信息技术与课程整合越来越受到人们的重视,社会对教育软件的需求也因此日益迫切。为了满足现阶段社会对教育软件的需求,我国开发了大量的教育软件产品。但是由于教育软件需求的多变性,使得很多教育软件产品延期交付和投入成本加大。同时许多使用者反映,这些软件不符合实际教学的需要,要么不能反映一定的教学理念,要么只是简单传统课堂内容的照搬照抄,没有发挥出信息化教育的优势,在实际运用过程中没有很好的教学效果。由于教育软件的多变性、个体性、群体性、教育性和科学性的特点,其开发过程的特殊性与传统的软件开发过程相比尤为突出,教育软件的开发过程要遵循教育基本理论和学科教学的基本理论和观点,传统的软件开发方法已经不能很好地适应教育软件的开发。

教育软件开发中存在的问题主要是由于以下几个原因造成的:教育软件的特殊性和复杂性;开发方法的简单叠加;教学设计与软件开发脱节;教育软件缺乏标准;教育软件评测的主观性。为了解决以上存在的问题,提高教育软件的产品质量,人们一方面研究教育软件的系统化开发模型,用教学系统设计理论指导教学软件的开发过程;另一方面研究教育软件的内容组织和表现形式,用教学论和学习论指导软件细节的具体设计。

教育软件项目规模大多以中小项目为主,开发团队也是中小团队,客户需求变化快。因此,目前特别需要一种适合中小团队的软件开发方法,来降低开发风险,提高开发效率。极限编程(ExtremeProgramming,简称XP)是一种轻量、高效、低风险、柔性、可预测、科学而充满乐趣的软件开发方式。由于教育软件与一般的商业软件最为明显的一个区别在于教学软件具有教育属性,其设计、开发和评价均需要借鉴教学设计的理论与方法,因此以产品为中心的教学设计理论结合XP方法,可以为解决目前教育软件中存在的问题提供理论指导。

笔者针对教育软件开发中的问题,结合极限编程的基本原则、核心实践和教学系统化设计的基本理论,给出了基于XP的教育软件项目开发模型,并对其进行分析,可为教育软件项目的开发提供参考和指导。

1 常用软件开发方法

常用的软件开发模型有瀑布模型、原型法模型和极限编程。

1.1 瀑布模型

瀑布模型是软件工程中经典的生命周期模型,瀑布模型一般将软件生命周期划分为7个阶段,分别为:系统需求分析、软件需求分析、概要设计、详细设计、编码、测试和运行维护。瀑布模型是以文档为驱动,每一阶段工作的完成都需要确认。

瀑布模型将软件开发的各个阶段严格划分,各阶段之间存在着严格的顺序性和依赖性,在进行开发之前,必须通过需求分析预定义并明确软件需求。

瀑布模型存在以下不足:一是瀑布模型很难适应需求模糊、多变的软件系统的开发;二是确认工作的滞后性导致解决问题的代价呈指数增长;三是瀑布模型的软件开发周期较长。

1.2 原型法模型

原型是指模拟某种产品的原始模型。软件工程中的原型法指的是在软件开发过程中,在获取用户需求后立即进行快速的分析并建立原型,用户与开发者通过试用原型加强沟通与反馈,对需求进行补充和精确化,通过改进原型和反复评价,从而实现对系统精确的理解。

原型法首先建立能够迅速反映用户主要需求的原型,为用户展现实现后系统的样子,用户可以比较直观地从用户使用角度出发对原型提出修改意见。开发过程中引进了用户评价,使系统设计人员能很好地把系统开发和用户需求结合起来,避免了过去因为不断变化的用户需求而带来的大量人力物力的重复消耗,从而加速了系统的开发进程。

原型法存在以下不足:一是为了把系统尽快展示给客户,项目开发初期往往考虑的不全面,导致原型不能成为最终软件产品的一部分,只是一个例子而已;二是软件代码质量往往很低,而软件维护成本比较高,需要许多功能完备且实用软件工具的支持,对工具与环境的依赖性较高。

1.3 极限编程

极限编程是KentBeck在1996年提出的。XP是一个轻量级的、灵巧且严谨和周密的软件开发方法。它是一种近乎螺旋式的开发方法,它将复杂的开发过程分解多个相对比较简单的小周期;提倡积极的交流、反馈以及其他一系列的实践,客户和开发人员可以非常清楚开发进度、变化、潜在的困难和待解决的问题等,并根据实际情况及时地调整开发过程。

极限编程有以下核心实践:

(1) 系统隐喻(Metaphor)。系统隐喻就是对系统的形象描述,使全体开发人员对开发的系统有个非常清晰的轮廓,帮助项项目成员理解系统的基本元素及其关系。

(2) 计划策略(Planning game)。该实践的主要思想是迅速粗略地制定计划,并不断完善。XP包括主要两类计划策略:交付计划和迭代计划。

(3) 简单设计(Simple design)。XP项目团队在整个测试和设计过程中,保持简单的设计,满足系统当前的功能要求即可。

(4) 现场客户(On-site customer)。为了事项目按时交付且符合客户需求,XP重点强调了现场客户,这能及时有效消除团队成员等待决策时出现的瓶颈,减少产生需求误解的机会。

(5) 测试。开发人员编写单元测试,客户编写功能测试(验收测试),以保证代码正确并实现用户描述的功能。

(6) 重构。在保证能运行系统可测试的前提下,对现有设计进行优化,及时消除冗余,提高代码的可读性和软件质量。

(7) 结对编程。所有的代码都由两人共同完成,以保证所有的设计决策都至少由两人完成,并至少有两人熟悉系统的每一部分,一人负责代码的全局复查,以提高代码的质量。

(8) 持续集成。代码完成后尽快集成到现有系统中并进行测试。为了保证迅速找出错误,要求任何时候由一对程序员将代码集成到系统中,或由专人集成。

(9) 集体所有。系统的所有代码为小组共有,在保证XP通过所有测试的前提下,任何开发人员在任何时候都可以改进系统中的任何代码。

(10) 每周40小时工作。反对超时工作,长时间地持续工作会降低工作效率,疲劳会使开发人员会犯更多错误,频繁加班甚至可能产生深层次问题。

(11) 编码标准。开发小组必须遵循相同的编码标准,使编程风格趋于统一,便于代码的清晰交流和优化。

XP提出了以上核心价值和实践,为软件开发人员提供了指导。开发小组可以根据具体情况灵活修改规则,关键在于遵循XP的思想。

2 基于XP方法的教育软件项目开发过程

XP和教学系统化设计都是具有方法论性质的指导软件开发和教学的技术和理论,笔者结合极限编程和教学系统化设计,给出了基于XP方法的教育软件项目开发模型,克服了当前教育软件开发的弊端。该模型抛弃了传统的常用软件开发方式,首先在团队组成成员方面增加了学科专家、教学设计人员和教学评估人员,且始终强调他们在开发过程中的重要作用,其次增加了教学需求分析、教学设计、教育测评等重要环节。基于XP方法的教育软件项目开发过程见图1。

图1 基于XP方法的教育软件项目开发过程

基于XP方法的教育软件项目开发模型把软件开发过程大致分为以下4个阶段:

(1) 计划和探索阶段。

基于XP方法的教育软件项目开发过程首先应该建立用户角色模型,并组建团队。团队成员必须包含对教育软件项目成功至关重要的学科专家、教学设计人员和教学评估人员这3个角色,尽量保证所有用户对系统都满意,体现出教育软件的教育性和科学性。然后在开发人员和教学设计人员辅助下,由用户制定形成可测试、可评估,并且反应系统需求和体现当前学习理论、学习研究成果以及符合传递教学媒体特点的描述性需求。技术人员最终确定系统的体系结构,形成系统隐喻。

教育软件开发首先需要解决的问题就是明确教学目标,它是在对学习内容和学习者进行分析的基础上形成的,所以教学需求分析和教学设计是本阶段的核心部分,其关系到教育软件开发质量。教学需求分析和教学设计是一个系统化的调查研究过程。首先最为关键的工作是确定教学目的。如果教学目的不合适,再好的教学也不能实现设计师的真正意图。确定教学目的可以采取两种方法:领域专家方法和绩效技术方法,然后进行教学分析,确定在学习之前学习者应该具备的技能、知识和态度即入门技能。该环节主要由学科专家和教学系统设计人员共同完成。同时还要分析学习者学习技能的环境和应用技能的环境,制定教学策略。教学策略必须体现出教学行为的指向性、结构功能的合理性、策略制订的可操作性、应用实施的灵活性、教学策略的调控性等特点,这样才能保证教育软件开发出来后的实用性、教育性和科学性。

进行教学设计和教学分析之后,开发者辅助客户编写用户故事,客户所编写的故事是进一步讨论的引子,而不是详细的需求文档。在任何项目中,需要客户根据故事的重要性来安排开发者的工作,回答所有开发者的问题,编写所有的故事。

用户故事是在发行版本规划时估计进度的依据,也是验收测试的基础。它与传统的用户需求说明相似,但又有明显的区别。首先,它们提供的用户需求的详细程度不同:用户故事只需提供用于估计完成时间的足够信息,而在编码过程中,开发人员会与客户进行面对面的交流,获得细节;其次,用户故事应该尽量避开技术细节,如实现算法,其中心是用户的需要和利益;最后,用户故事不必像用户需求说明那样提供庞大的文档,其形式可以是用户习惯性术语表达,不包含技术性符号。

用户故事制定完成后,由团队所有成员尤其是教学评估人员对其进行评价,首先需要评价学生根据用户故事在完成教学任务之后,他们能够做什么,评价结果可以以教学目的清单的形式显示。开发和管理人员讨论和评价用户故事的技术可行性和经济可行性。

开发人员和客户划分用户故事,从中选择一定的素材集,迭代开发,经过测试验收后发行版本。

在划分用户故事后马上进行版本规划,即用户在开发人员的指导下,从需要实现的素材中选择最有价值并完成一定功能的最小素材集,经测试验收后。然后转入下一个版本,逐步形成最终发行版本。

在每一个发行版本的开发过程中,开发人员通过迭代规划将素材分成若干任务并迭代编码、测试和验收,不断加入到当前版本中。与版本规划类似,迭代规划必须选择每一次迭代需要完成的任务,并严格控制每次迭代的时间,当迭代有可能不能按时完成时,重新做迭代规划。

(2) 设计阶段。

设计阶段包括概要设计和详细设计。概要设计就是设计软件的整体结构,包括组成模块、模块的层次结构、模块的调用关系、每个模块的功能等等。同时,还要设计该系统的整体数据结构和数据库结构,即系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。详细设计阶段则是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。该阶段与传统软件开发过程的设计阶段最大的不同就是,教育软件项目的XP的开发过程提倡使用简单的设计方法,满足适用系统需求即可。

(3) 编码阶段。

为程序员分配好编码任务,将软件的设计具体化为软件代码。教育软件项目的XP的开发过程推荐开发小组使用统一的编码标准、工具、环境。统一标准的编码规范可保证代码的一致性、可读性和可维护性。在编码过程中采用结队编程的方法,同时保证代码集体所有,在保证可运行、可测试的前提下,采用重构方法对代码进行优化,提高代码的可读性和质量。

(4) 测评阶段。

在编码实现开发任务的时候,开发人员必须同时编写单元测试。一般情况下,建议先编写单元测试,每完成一个任务就集成代码,并立即对集成后的系统作测试。只有通过了所有的单元测试,无误的代码才能最终集成到系统中。在迭代结束时,所有的单元都被测试过,并进行过功能测试。

在软件进行单元测试和功能性测试之后,要进行教育总结性评价,通常这部分工作不是由教学设计人员来进行,而是由教学评估人员进行,保证评价的客观性和准确性。教育总结性评价包括两个阶段:专业评价阶段和实地试验阶段。专业评价阶段的目的是要判断当前教育软件所实现的教学方法或教学方案是否能够满足所定义的教学需求。实地测验阶段的目的是要记录采用该教学方案后在预期的环境中对目标人群的有效性。最后形成评价报告,该报告既要包括专家评价分析,又要包括评价的实地试验分析。评价报告在教育软件下一阶段的完善和优化工作中具有重要的指导意义。

4 结束语

在开发的一些小型教育项目中,笔者采用了基于XP方法的教育软件开发模型的方法,特别是在团队中增加了学科专家、教学设计人员和教学评估人员,开发出的教育软件的教育性和科学性很突出。实践证明,这种方法具有很好的借鉴和参考价值。但是在开发过程中,由于XP自身的开发特点,XP的某些实践得不到中国程序员和客户的接受,比如结对编程和现场客户,所以还需要对XP进行更多的研究和实践,使XP的实践和观念更加具有影响力。

参考文献:

\[1\] BECK K.Embracing change with extreme programming\[J\].Computer,1999(10).

软件测试实习工作计划篇5

针对《软件工程》教学过程存在的困难,提出构建《软件工程》课程纵向教学体系。《软件工程》课程纵向教学体系包括3个层次:理论教学方面:改进理论教学方法,调动学生主动性,培养学生学习兴趣;实践教学方面:结合具体项目,训练学生运用相关原理指导软件开发的全过程,提高学生灵活运用所学理论知识解决实际问题的能力;课外实训:校企合作,使学生深入企业项目开发,培养高素质软件工程人才。

1.1案例教学法在理论教学中的应用

案例教学法,是指教师在课程第一次授课前选取一个完整、难度适宜的软件开发案例;然后分阶段的在每章理论授课结束后,结合所讲章节的理论知识提出与章节内容相关的有引导性作用的问题,让学生认真分析、研究案例,开展问题研讨会,并为学生分配任务,使学生在课后收集相关资料,指导学生运用所学的相关原理来分析案例,并在规定的时间内(两周后)提交案例分析或设计报告,调动学生的学习主动性,培养学生的学习兴趣的教学方法。教师在理论授课时,注重构建学生的知识体系。在学习章节内容前,说明本章节所涉及的专业基础课程及学生所需要具备的理论素养,给学生布置任务,重新学习涉及的专业基础知识;理论授课时,把章节理论知识与已学基础课程知识相结合,根据课程例题,详细讲解理论知识,并注意提示学生已学知识在例题中的运用,从而深入浅出,帮助学生把已学知识和章节理论知识结合起来,形成知识网络。在需求分析章节的分析系统的数据要求处,指明分析系统的数据要求,通常采用建立数据模型的方法。抽出部分学生按照他们准备的PPT来详细讲解以上问题,不足之处让其它同学补充。课后,教师把准备的问题解答PPT发给大家,使学生查漏补缺,建立知识网络,打下扎实的理论基础。章节授课结束后,通过案例教学法,训练学生灵活运用所学理论知识体系解决实际的问题的能力,给同学们列出需求分析报告--需求规格说明书的提纲,要求每个学生提交一份需求分析报告。比如,案例--学生公寓管理系统,请大家运用需求分析章节所讲的知识,深入学校公寓针对学生、公寓管理员做需求调查(要求灵活运用几种所讲的需求调查方法:访谈、问卷和场景),召开需求评审会议,验证需求的正确性与有效性,两周后提交需求规格说明书。

1.2项目驱动实践教学,理论联系实际

在理论授课结束前,老师提供若干个难度适中、开发时间在一个月左右的题目。学生以小组为单位(通常5-8人)组建自己的软件开发团队,并推选小组长,负责项目管理,根据小组成员的兴趣和爱好选择一题。团队成员应均衡,以便做好分析、设计、编程及测试的分工。小组成员之间相互合作,开始实践教学环节。选择结构化或面向对象的软件工程方法,按照软件开发生命周期的各个阶段,分阶段有顺序的进行软件项目开发。每位小组成员都要参与各个阶段的软件开发,每个阶段各个成员的任务由组长分配,管理。每个小组成员全程参与软件工程的各个阶段,把理论知识运用到实践项目的开发,由项目驱动实践教学,真正用所学理论知识指导项目的开发,为学生深入理解并灵活运用理论知识提供了良好的实践机会,提高了学生的动手能力。实践环节结束,每个小组提交与选题对应的已实现的系统,并提交相关的设计文档。如开发小组选择面向过程的软件工程方法,需提交可行性研究报告、开发计划、需求规格说明书、总体设计的相关文档(系统说明、用户手册、测试计划、详细的实现计划以及数据库设计结果)、详细设计的相关文档(流程图及人机界面设计资料、用户帮助设施设计资料)、实现及测试总结、项目总结等。通过项目实践,学生会深刻认识并理解掌握所学理论知识,并且可以结合自身特点和软件工程的相关就业方向(前台开发、后端设计、测试、维护等),确定自己的未来职业发展方向,继续深入学习,拓展自己的专业知识深度,为就业打下坚实的理论和实践基础。

1.3校企合作,培养高素质软件工程人才

经过实践环节,学生对未来职业发展方向有了初步选择。在大四学期的实习环节,学校与相关合作企业进行对接,学生结合专业兴趣和职业发展方向,选择合适的企业进行校外实习。校外实习一般分三个阶段:理论知识的巩固与强化学习;职业定位方向核心技术学习;以团队为单位,参与实际项目,培养学生的动手能力和团队精神;结合以上三个阶段的学习内容,独立完成一个实际商用项目。举例:如果职业定位为J2EE软件开发,校外实习的第一阶段学习JAVA语言核心内容,Oracle数据库技术,WebCilent编程和WebServer编程,结合具体项目把以上知识运用到实际项目的开发中。第二、三阶段贯穿项目深入学习JVAVEE企业级框架。第四阶段以开发团队小组成员的身份参与一个实际商用项目开发,使学生综合运用所学知识解决实际问题。如果职业定位为软件测试,第一阶段学习测试基础并结合企业内部开发的自动化测试管理平台进行理论知识强化。第二阶段重点学习系统测试的相关技术,并结合具体项目使学生参与系统测试,编写与之相关的需求规格评审,系统测试计划、测试方案、测试用例、测试报告等文档资料。第三阶段学习软件功能测试自动化和性能测试技术,并学习企业使用的主流测试工具进行相关项目的自动化测试工具。第四阶段结合实际商用项目,综合运用所学知识,运用相关的自动化测试工具,进行项目测试,编写相关测试文档。通过项目实训,使让学生深入项目开发,把学生培养成专业理论知识扎实,动手能力突出的高素质软件工程人才。

2结语

软件测试实习工作计划篇6

述职报告是任职者陈述自己任职情况,评议自己任职能力,接受上级领导考核和群众监督的一种应用文,具有汇报性、总结性和理论性的特点。下面就让小编带你去看看软件年度工作述职报告范文5篇,希望能帮助到大家!

软件述职报告1过去的一年,我参与了较多的产品设计,从中受益匪浅,不仅学到了很多专业知识,对动态产品有了更全面的理解和把握,而且培养了我作为机械工程师所应该具备的基本素质。同时,我坚持自学,学习了当前机械行业新的工具软件和专业书籍,提高了理论水平。现将具体工作总结如下:

1.设计、调试出口印度的摩托车试验机

印度之行是成功的,也是艰难和值得回味的。我们一行三人,在没有翻译的情况下,克服当地天气炎热和饮食不适应的困难,在不到三周的时间内将四台设备调试完毕,拿到了用户的验收纪要,这是值得肯定的。但,我觉得也有一些遗憾的地方。由于是第一次做车辆产品的出口,缺乏经验,我们的包装和防锈做的不够好,设备出现了故障,让印度人对我们的满意度下降。如果我们注意这些细节,用我们的产品打开印度这个工业刚起步的国家的大门,那么,我相信我们会从中受 益。

2.主管设计pws-j20b1

此试验机已经交检完毕,各项指标达到了技术协议要求,等用户款到发货。

3.参与设计pws-200b

与毛工一起设计,对液压夹头,气液增压泵等的工作原理有了更深入的理解,从毛工身上学到了很多东西。比如,设计的严谨和严肃性,此产品已发货。

开发四部的工作是繁重和艰巨的,我在车工和毛工的指导下,较好的融入了这种紧张和严谨的氛围中,较好地完成了各项任务,自身的业务素质和工作能力有了较大提高,对工作有了更多的自信

软件述职报告2这个学期我学习了软件测试这门专业课程,在学期即将结束的时候,我也对这门课程建立基本的了解和理解。软件测试这门课程作为软件工程专业中一门很重要的课程,已经在软件领域占据了不可替代的角色,当一个软件从雏形到真正的在一台计算机上运行的时候,谁也不能保证计算机软件能一步到位的满足人们的需求。所以就有了软件测试,其目的是:第一是确认软件的质量,其一方面是确认软件做了你所期望的事情,另一方面是确认软件以正确的方式来做了这个事件。下面我简单的写一下这个学期对课程的总结和收获。

我认为,在整个庞大的软件工程中,不管是需求分析、架构设计甚至是最后的debug,都会产生引入不管的机会,这就要求作为一个软件测试师要掌握丰富的软件工程原理和知识。测试的工作将会存在于整个项目周期,即在项目开始时需要各种分析调研时就开始了。尤其是在形成需求规格说明书时就有对文档的测试需求,甚至主导整个项目的走向。

软件测试对逻辑思维、学习能力、反应要求很高,是否有严密的思维和逆向思维也非常重要。做测试还要考虑到所有出错的可能性,有时候还要用一些非常规的的测试方法。软件测试还很注重软件性能问题,也就是要保证软件运行得很好;不同的使用环境下,考虑软件的兼容性同样重要。对于测试员来讲,会比开发人员更加重视软件产品的质量问题。在测试过程中,测试者可能会为客户的需求角度考虑到更多,由此我们可以认为测试人员有权利决定产品是否可以。然而,通过一个学期的学期,我们又不得不懂得,软件测试人员不是万能的,测试人员在面对一个设计烂编码烂的软件时,也是无法不低头的,再怎么测试它也变不成优秀的软件。

通过课上的理论因为课下的实践和后半学期又因为身体力行于:

1、最基本的测试的分类:从是否需要执行被测软件的角度,可分为静态测试和动态测试;

从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为白盒测试和黑盒测试。

2、然后就是,白盒测试中的逻辑驱动测试的覆盖率测试。

3、还有就是对于划分等价类和边界值法这一块,让我从模糊到明朗。

4、在初次写测试用例的时候,感觉真是纠结,用例写的很死板,看似简单的一个填表工作,要写好真是不简单。

一开始写的比较不自然,有些生搬硬套,而且还很慢。在后来负责了对论坛新鲜事版块的测试之后,明白了测试用例其实就是指导怎么去执行测试,而且书写设计测试用例也要以熟悉软件的业务为前提,才能更好的去测试。

另外就是一个学期的学习让我纠正了几点误区:

1、有位大师曾说过:“软件测试的目的在于发现错误,一个好的测试用例在于发现从来未发现的错误,一个成功的测试是发现了从未发现的错误的测试。

”由此我自认为测试就是为了找到bug,然而一个学期的测试学习经验告诉我这是错误的,如果只是为了找到BUG,那么BUG会成天缠着你。

2、在大家协力测试论坛的时期内,我曾认为这种大量的重复性的工作真的很乏味,可是在这乏味中真心发生挺多有意思的bug,意想不到的bug,所以我认为只要掌握了方法,在重复中寻到到创新的小惊喜,任何东西都有它的特点。

作为测试新手,通过一学期的学习,我认为能独立写测试计划,设计测试用例,精通一种测试工具,理解一种bug管理软件是新手晋级老手的必备素质。任重而道远!

在最后,我不得不提的就是细心和耐心了。这是我认为这个学期测试课上收获的了,课程要求测试时必须细心和耐心,我在想,如果以后真的工作在测试一系列的岗位上,要学会坐得住,用大量的时间和精力和bug斗争,分离、识别还有归类bug,是不是也能真的改变我粗心大意和三分钟热度的毛病。

最后感谢刘老师这学期的课程讲授,和实践中的指导和帮助。测试路程,路漫漫其修远兮,吾将上下而求索。

软件述职报告3光阴如梭,一年的工作转瞬即将成为历史,伴随着新年钟声的临近,我们依依惜别硕果累累的____年,满怀热情的迎接到来的____年。

____年是自己进公司的第三个年头,在这一年里也是自己进公司最忙最累的一年,由于工作的重要性超负荷工作,除正常的上班八个小时,下班后几乎每天都要忙到23点后甚至通宵,有付出就有收获,现在回头看看,还是挺有成就感的。

____工作总结

____年1月到3月:维护及更新oa系统、人事系统、vip卡管理系统分布式、美容院前台客户管理系统。由于工作量问题,在3月将oa系统移交给他人维护及更新,将人事系统移交给他人维护及更新。

____年3月到8月:维护及更新vip卡管理系统分布式、美容院前台客户管理系统。主要工作是vip卡管理系统的分布式功能的实现,经过前面几个月的开发及测试,在3月中旬开始将分布式功能放在华景店进行测试,经过一段时间的测试及相关问题的跟进与更新,4月1日在黄埔店进行分布式系统的安装。经过两家店的分布式功能的使用,在后面的时间里对广州所有店都安装好分布式系统。处理日常系统操作中遇到的问题、更新一线对系统提出的修改及分布系统客户端数据与服务器数据的核对。

____年8月到12月:从8月份开始,应该对财务的问题,开始次vip卡管理系统进行升级到美容院管理系统,结合提出的需求,对vip卡管理系统中的功能、数据库结构及操作页面进行全面的更新。经过一个月的更新,从9月2日开始使用新的更新完一部分的美容院管理系统。从9月份开始根据财务人员提出的修改,对系统进行更新,协助财务部对系统数据的调整。一直到现在系统一直在修改及改进,相比以前的vip卡管理系统,系统中增加了许多在以前系统中没有的功能,在功能的实现及数据的稳定进行了大大的改善。

____工作规划及打算

继续维护及更新美容院管理系统、美容院前台客户管理系统,在两个系统中提高数据的100%稳定性及数据的安全性。

美容院管理系统:1)尽自己最快的速度完成系统中还未完成的功能及修改;2)对一线收银、办公例会、财务及相关人员提出的合理需求在第一时间内修改好系统;3)积极配合财务部对系统数据的调整,让系统最快恢复财务合理的数据;4)整合好系统相关功能,修改系统中一些功能实现的方法,提高系统的操作速度,增加自己认为对工作有效的功能;5)到时候系统修改完数据正确后看是否有必要增加该系统的分布式功能。

美容院前台客户管理系统:1)系统中增加合并客户资料功能(规范两系统客户编号信息)及前台提出的测量尺寸的提醒功能;2)对一线前台提出的需求在第一时间内更新好系统;3)修改系统中一些功能实现的方法,由于自己之前的一些技术问题对功能的实现现在需要完善,所以有时间想修改修改;4)提高系统数据的安全性(比如系统中增加ip地址系统的限制及mac地址的绑定)。

在____年严格履行个人岗位职责,努力工作,在第一时间内完成了本职工作和领导交给的各项任务。作为技术人员最重要的是心态,以良好的心态去面对各种问题,发现问题、解决问题。展望到来的____年,我会更加努力、工作上认真负责,再接再厉。

各位同事:

大家上午好!开一次这样的会不容易,这应该是信息部两年来人员的一次会议。外地的同事很辛苦的千里迢迢赶过来,希望大家珍惜这个机会,好好的沟通和交流,[莲山课件]使以后的工作进行的更顺利!

时间过的很快,很快又到了年底,一年的工作即将成为历史。在这里我将对我____年的工作进行一个简单的总结及对____年的工作进行一个简单的规划。

____工作总结

一、美容院财务系统:

1)及时的修改在办公例会中提出的相关系统问题以适应公司业务的发展。

2)根据财务部的需求,在系统中增加各种相应的汇总及明细报表,减少了财务部相关的手工单据,更直接的从系统中取数、打印,更好的提高了财务部的工作效率。

3)从4月到5月中,经过一个半月的努力,最终完成了美容院财务系统的分布式操作,[莲山课件]相比去年的分布系统更加稳定、准确。

4)在系统中增加了客户经理操作美容院财务系统的权限(点菜系统),相应的减轻了一线运营的工作以及让客户经理更好的管理好自己的客户。

5)在系统中增加了护理记录的自动输入功能(即在财务系统中的交款、开卡、消费等操作记录自动录入到美容院业务系统中),从而减轻了一线前台的工作。

6)在oa系统中嵌入美容院财务系统中各店院业绩汇总报表,以方便相关领导及时的了解到公司的运行状况。

二、美容院业务系统:

1)在系统中增加客户尺寸测量及相关提醒功能,以更好的了解到顾客护理后相应的效果对比。

2)在系统中增加投诉处理功能,更好的处理了法务部、财务部及一线运营相关部门的投诉处理的协调。

3)业务系统数据库电话号码加密(系统中对电话号码的操作进行加密及对电话号码解密的显示,实施时对电话号码的批处理加密)。

4)修改系统中相关运营的操作(修改客户来源、咨询产品及客户资料的合并,相应的减轻本部门相关人员的工作)。

____工作规划及打算:

继续维护及更新美容院财务管理系统、美容院前台业务管理系统,及时更新相关人员对系统提出的需求;财务系统各市场系统的合并操作及显示、财务系统与人事系统的相关对接、财务系统中集团报表的显示、用友系统中凭证与财务系统中数据的对接。

与自己工作相关的问题:

总结____年,对于自己感受更多的是忙、压力、成就。

忙:____年说起来应该算是很忙的一年,系统不停的修改,修改完一个功能后面还有很多的需求等着自己去做,想找到一点空闲的时间很难。

压力:看看未来的工作规划,有个时候听别人说修改完这个需求后可以减轻别人的工作,总让自己感觉到很大的压力。系统的稳定性、数据的准确性,对于公司两个重要的系统来说表现的尤为重要,虽说这两个系统还算稳定,但是还是避免不了一些问题,总给自己带来一些压力,这也是以后的重点改进,以确保更高的稳定性。

成就:当自己接到系统的一个需求后想到能够给别人的工作带来方便、简化,即使再累也要以自己最快的速度最完善的完成,当完成后自己感觉很有成就感。

关于我们软件组,我们每一位同事都是很优秀的,我们几个人一年内开发那么多的系统。对于网络组的同事,你们有个时候会存在一些抱怨,说软件不稳定、报错,也许是我们的开发时间太短,很多的细节问题没有考虑到!我知道我们的同事也很忙,但请我们的同事不要急躁,详细的记录好错误信息,看清楚错误提示,有时对于一线反馈过来的错误希望大家能够确认好(因为有时一个简单的错误提示会被她们描述成系统使用不了),希望网络组的同事确认是否存在该软件上的错误,以至于我们能够及时的处理好!而我们能做的也就是及时的处理问题,提高系统的稳定性、错误,减少网络组同事不必要的麻烦!对于我们软件组的同事(包括我),要及时的处理好错误,找到错误的原因,希望下次不要再出现同样的错误!站在我们软件开发的立场上,虽说软件的错误是不可避免的,但我们可以把它降低到最小!当我们接到一个软件需求的时候,不要把它想的很简单,我们尽可能的可以把它考虑到很复杂,这样我们就可以考虑到更多的细节,比如限制一些相关错误的输入。有个时候软件是出现的不合理数据,我们不可以认为是是操作员的错误,相反我们要想到是自己的错误,站在软件思想上,是我们做的不够,没注意细节,给网络组人员带来了不必要的麻烦。所以包括我在内软件组人员要提高自身的软件技术,多创新,提高自身系统的稳定性,数据的准确性!

在____年前希望上完所有奈瑞儿店院的分布式财务系统,对各店内的所有服务器数据库设置密码,相关的系统中数据连接配置加密,以对____年的工作划一个圆满的句号。

____年我们继续努力。

软件述职报告4尊敬的各位领导、各位同事:

大家好!

20____年对于我来讲是成长的一年、奋斗的一年、学习的一年、是感恩的一年;首先要感谢敦敦教诲的领导,感谢团结上进的同事帮助鼓励,感谢在我沮丧时鼓励我给我打气相信我的同事,感谢那些给我微笑,接纳我和五洲产品的合作者,因为是他们的帮助、认可、信任、鼓励才能使我更加乐衷于我的工作,更加热爱我 的工作。一年来,我认真贯彻执行公司销售目标和销售政策,积极配合销售经理做好本职工作,并和其他销售员一道努力拼搏、积极开拓市场,较好地完成了年度销售目标。根据公司管理人员考核办法的通知精神,按照年终述职的有关要求和内容,现将一年来的个人工作述职如下:

一、____市场全年任务完成情况。

20____年,我负责____地区的软件销售工作,该地区全年销售____万元,完成全年指标______%,比去年同期增加了____万元长率为____%。与去年相比原老经销商的软件销量都有所增长,开发的新客户销售也基本稳定,2019年新客户销售额有望有较大突破。

二、重新捋顺销售网络。

在原有的销售网络的基础上,精耕细作。以各经销商为中心,从一个一个市场入手,同经销商编织五洲产品的销售网络,通过我们的努力,和每个经销商细致沟通耐心做工作,明确各家经销商经销区域范围,做到不重复,不恶意串货,逐一解决售后服务等各项问题,终于让经销商重拾了销售____产品的信心。

三、开发空白市场。

____地区三个地区2017年底只有6家经销商,能够正常销售的只有4家,空白县市过多,能正常销售的太少。20____年年初我对空白区域进行重新调研,结合区域生活用纸消费习惯,制定了详细的市场开发方案,寻找合适目标客户,有针对性宣传销售产品。经过一年的努力,全年共开发新客户6家。

四、组织今年的销售工作

积极宣传公司各项售政策及淡储旺销政策,____区域今年销售量比20____增加800万以上。淡储旺销政策是我们公司产品率先把经销商的库房占满,使其不能再储备其他公司的产品,旺季到来,经销商优先销售的都是我们公司的产品,大大提升了公司的销量,甚至一些品种出现断货。如果发货及时的话,今年销量还能提高一块。

我的述职到此结束,谢谢大家!

软件述职报告5尊敬的公司领导:

你们好!我是____公司的一名软件销售人员,我叫______,很高兴能够加入公司的销售团队,下面是我20____年的工作述职报告。

一、工作计划的完成情况和原因

虽然市场竞争日趋激烈,但年初我给自己制定的工作计划和销售计划还是顺利地完成和达到目标。能够顺利地完成任务,除了自己的努力之外,很重要的一个原因就是吸取了上个月的教训和经验,并向前辈们学习了很多有关销售的知识和销售的方法技巧。

二、现有客户群的整体状况

目前,我拥有的客户群主要是在20~45岁之间的人群里,都是一些比较稳定的中小型客户,缺乏一些潜在的大客户和比较稳定的大客户。在这个月,我一共拜访了65个客户,其中有45%是自己所拥有的稳定的客户,有35%是新的中小型客户,还有20%是自己新挖掘的大客户,在这些客户里,合同额的签订和完成情况达到70%。

三、2019年的详细工作计划

在20____年里,我拜访了______个客户,明年,我想提高自己的目标,要拜访______个客户,其中______个是稳定的中小型客户,____个是稳定和不稳定的大客户,还有____个是新客户。目标销售额要达到____万以上,合同签订率要达到75%以上。

四、困扰销售人员的问题

我相信每个销售人员都自己的一些问题,我也不例外,我的问题综合如下:

1、对于初次拜访的客户,经常会因为没预约到准确的时间,到了客户那里见不到客户。

2、虽然有专业背景,对某些产品还不够熟悉,所以有时候客户问起产品的一些问题都没办法答清楚,特别是价格方面。

过后我都会再去查资料和问公司同事,再打电话回答客户的疑问。但这样会浪费很多时间,有时不能及时解答客户问题,客户会不够信任。

3、和同事沟通得不够。

有些问题,资深的同事很容易解决的,但由于和同事沟通得不够,导致没能及时解决,错过了最佳的机会。

4、在商务方面,由于一直以来没有接受过任何有关于这方面的培训,所以做得不是很好,致使很多客户对我的印象不是很深。

5、对工作的积极性不高,不够投入。

缺乏销售方面的技巧和心态,拜访客户时还是比较胆怯。当受到客户拒绝时,还是会不由得产生一丝沮丧。心态不够开放乐观。

五、销售人员的工作建议

因此,根据以上的的问题,我给自己提出以下的建议:

1、销售技巧方面,需要在工作中学习,碰到问题多向公司资深销售咨询!资深销售在进行工作的时候,要打醒十二分精神,细细品味其销售技巧。

参加公司的相关培训,工作之余多看看相关的文献!争取在一年内能够独立进行销售的工作。

2、了解产品功能、实用性、价格等方面的知识,并做一个系统的归纳。

对不同品牌的同类产品进行比较,得出其优缺点!对产品出现的一些问题及解答做一个系统的归纳!争取在半年内对产品有一个系统的归纳与了解。

3、加强与客户的沟通与联系。

拜访频率还是要加强,其中要抽出一部分时间多联系意向客户,随时掌握其最新动态,缩短与客户之间的距离。针对潜在客户,可以采取电话回访的方式,增进与客户的沟通与交流。

4、尝试通过各种方式开发新客户,不能仅仅局限于独立拜访,还可以尝试转介绍,或者是通过订货会等方式。

5、针对不同客户类型,制作一份表格,用不同的方案引导客户谈判。

这样一来我们谈判就有的放矢,成功率就较高。

6、增强自己工作的主动性,做事情要分清主次,尽量不受外界其他因素的干扰。

同时,还要多与领导同事沟通,学习他们的优点,弥补自己的不足

六、计划调整和改进措施

没有一个计划是完美无缺的,每个计划都有它自己不足的地方,我自己制定的计划也不例外,因此我会根据计划进行时得实际情况来调整自己的计划,做到随机应变。

软件测试实习工作计划篇7

关键词:软件;质量管理;优化对策

0引言

在软件技术快速发展和应用范围不断扩大的同时,软件复杂性也不断提升。在当前的很多软件开发企业中,软件质量管理问题开始成了关注的焦点。

1软件质量管理中存在的主要问题分析

1.1需求模糊问题

结合软件工程来说的话,软件产品的生产主要包括多个过程:第一是系统需求研究过程;第二是系统设计过程;第三是系统实现过程。但对于软件系统需求来说,往往描述不够完善,相应的软件需求调研以及研究也不够深入,没有加强对软件质量需求的管理,这样不仅会使得研发以及测试设计工作落实不到位,还会明显提升沟通成本,导致产品实现与用户需求不一致[1]。

1.2立项管理不到位问题

大量实践结果表明,通过加强立项管理,可以有效避免质量管理项目风险的产生,赋予软件项目开发深刻的意义。(1)软件项目开展。不加强深入的立项调查,以及加强项目可行性分析,落实好立项评审,则可能会导致产品需求获取不到位,软件开发产品规划出现很多问题,无法保证软件研发工作的有效开展,致使项目研发功能明显减弱,不但会导致资源浪费,还会阻碍新产品的正常[2]。(2)软件项目。如果没有加强立项管理,可能会导致成员行为涣散问题的出现。工作人员只顾自己,不顾团队利益,无法全面了解项目产品的实际开发要求与背景,也不能从根本上明确项目开发的最终目标,无法满足用户的实际软件开发需求,最终使得软件开发计划无法按期实施以及软件开发费用超支等问题出现。

1.3软件质量保证体系尚待完善

针对我国很多软件开发企业来说,往往都处于“软件质量管理”实施的最初阶段,甚至是试行阶段,很多科研制作部门对应的标准化软件质量管理体系还都不完善,甚至有一些科研部门对应的软件质量管理制度和体系还没有形成[3]。另外,一些企业虽然设立了软件质量管理的专有部门,但相应的体系文件却还不完善,需要经过大量的实践来完善。在软件开发项目研制部门质量管理普通较低的情况下,软件开发工作者的综合素质低下,也会影响软件产品的最终质量。

2软件质量管理的优化对策分析

2.1加强需求工程有效管理

在实际的软件开发当中,如果相应需求模糊,会出现需求随意变更的现象,导致时间被白白浪费。对于该问题来说,必须针对相关需求活动,加强统一化的需求管理。要在落实好软件需求开发工作的基础上加强需求管理,这样不但能够限制需求变更的实际次数,还能促进工程师对质量管理需求的深入理解。总之,软件需求开发与软件需求管理的重要性同等重要,必须实现两者的有效结合,才能保证最终产品的质量。

2.2加强软件测试流程有效管理

在软件测试的各个环节,都可能会出现一些问题,必须不断优化软件测试流程,加强对软件测试流程的有效管理。具体来说:(1)软件测试相关部门人员,必须加强需求知识学习,开展深入的需求探讨。(2)对有疑虑的需求者,研发设计工作者要做出及时而准确的解答。对于研发设计工作者也不能有效解答的问题,要让他们联系用户来有效解答。在明确需求的基础上,根据软件系统的作用以及性能,专门的测试工程师要科学合理地设计软件测试测用例,具体要结合两大方面的内容来设计:第一,针对测试工程师来说,必须结合实际需求,科学合理地编写测试用例;第二,针对测试工程师来说,要在结合实际用户反馈情况的基础上,做好分析汇总工作[4]。要大力引入和合理应用QC功能测试设备以及工具,加强对软件以及实际操作系统兼容性能的合理性测试,才能充分发挥软件测试工具使用的功能与作用,落实好软件兼容性测试工作。此外,要加强自由软件测试,适当补充软件测试用例,了解软件测试用例没有涉及的问题以及问题产生的原因;要采取定期研究和分析的方法,明确缺陷库里面存在的问题,并深入研究问题成因,进而利用测试用例来解决问题[5]。

2.3加强项目进度质量有效管理

要保证软件开发项目的顺利完成,首先必须保证软件项目质量足够好。在软件项目开始实施之前,必须保证项目开发计划足够科学、合理。如果软件开发项目计划设计人员相关工作经验足够丰富、设计能力足够强,往往可以有效保证软件开发计划的合理性与完善性,有效预见软件开发计划当中的问题,消除相关阻碍和影响因素。在软件开发项目计划设计的开始,相关人应及时组织软件质量管理人员,开展软件项目计划讨论会与评审会,并请相关技术专家、真实用户等,针对软件项目计划的科学性和合理性进行探讨,分享个人意见和看法,由专门的记录人员总结相关意见,最终形成系统化的质量记录,再以书面或者文档的形式传送给相关工作人员进行意见修改整合,确保软件项目计划的完善性。

2.4提升工作人员的综合素质

在软件开发和质量管理过程中,技术人员和管理人员是核心主体。因此,要想有效保证软件质量管理有效性,必须保证管理工作人员和技术人员的综合素质足够高。让员工全面地了解企业,正确理解自身的工作性质和要求,并不断增强自身的责任感。即使工作人员已经对工作内容很熟悉,也可能没有深入理解企业经营战略以及相应的发展规划。企业外部环境条件变化幅度比较大,企业工作人员必须及时掌握内部战略和规划变化情况,及时调整自己的工作计划和方法。对于软件质量管理人员来说,不但要主动参与到企业发展规划设计工作中,还必须及时将相关信息传达给各个部门。通常来说,企业应当定期或者不定期地开展例会,介绍企业近期情况和之后的发展规划。在掌握全体例会内容的基础上,各个部门负责人员应当再次开展部门会议,根据部门工作开展情况,做好后期工作规划调整工作,使得每位员工都掌握企业发展动态,进行自身科学合理的工作调整与规划。软件质量管理者还必须基于企业内部软件质量问题,增强创新意识,提出可以有效解决软件质量问题的措施。

3结语

综上所述,软件开发成本管理不到位、软件质量管理不到位等问题仍然存在,导致这些问题产生的主要原因是管理者管理不到位,如:软件质量管理制度不完善、随意性较强。要有效解决这些问题,必须以完善的软件质量管理体系为依据,加强软件开发的全过程监控[6]。

参考文献

[1]翁婕,丁铁,乔扬,等.软件质量管理的优化对策[J].电子制作,2015(6):98-99.

[2]周波,钟小咪.铁路运输行业的供应商软件质量管理[J].科学与财富,2016(5):750.

[3]张沐辰.基于软件全面质量管理的团队建设[J].科教导刊,2014(16):45,55.

[4]方俊钗.数字超声检测仪软件的质量管理和软件测试[J].科技风,2014(13):238.

[5]李婷,朱接文.计算机信息化的影响及其软件质量管理分析[J].无线互联科技,2016(12):110-111.

软件测试实习工作计划篇8

[关键词]项目教学 协作学习 软件实训

[作者简介]罗俊丽(1986- ),女,河南周口人,许昌学院信息工程学院,讲师,硕士,研究方向为计算机教育。(河南 许昌 461000)

[基金项目]本文系2012年河南省教育厅信息技术教育研究课题“网络环境下‘发现―协作―创新’教学模式的研究与实践”的阶段性研究成果。(课题编号:ITE12091,课题主持人:张志立)

[中图分类号]G712 [文献标识码]A [文章编号]1004-3985(2014)32-0154-03

一、引言

高职教育的目的是培养和工作岗位对接的高技能应用型人才,这就要求在高职学生培养过程中应注重训练学生的实践应用能力和职业素养。软件实训是高职软件人才培养的重要环节,是指学生在学习本专业相关课程的基础上,以实际项目为载体,综合运用所学知识,按照工程软件的实际开发过程和要求,分组协作完成项目开发,以获得一定软件开发经验和提高软件开发能力的一种教学模式。同时,通过实训过程中的分组合作,也能培养学生的团队协作、沟通表达等职业能力。探讨以项目驱动的高效协作学习模式是提高实训教学质量的有力保障。

二、项目驱动的混合式协作学习内涵

(一)项目教学法

项目教学法是指在教学过程中以项目为载体,围绕项目的实施过程展开教学活动,学生通过自主查找资料、解决项目实施中遇到的困难,在完成项目的过程中获得相关知识和技能的一种教学方法。它的主导思想是在教师的引导下,学生自主完成项目信息的收集、项目整体方案的设计与具体实施、项目效果的整体评价等一系列活动。项目教学法把理论教学与实践教学有机结合,是“做中学”的典型教学模式,在高职软件实训教学中采用项目驱动的教学方法符合高职教育的特点和目标。

(二)混合式协作学习

协作学习是指围绕教学目标,学生以小组或团队的形式,在一定教学环境和资源的支持下,通过讨论、合作等方法完成小组共同目标的学习方式。按照协作学习的环境不同,通常将协作学习分为传统课堂环境下的面对面协作学习(Face to Face Collaborative Learning,简称F2FCL)和计算机支持的协作学习(Computer Supported Collaborative Learning,简称CSCL)。F2FCL主要是指学习者在传统的课堂环境中,根据教师布置的学习任务,围绕学习中的问题展开面对面的讨论和分享,从而达到对知识的协同构建。F2FCL方式有助于教师控制教学活动的进程和教学目标的达成。但这种以教师“教”为主的教学模式忽视了对学生自主学习能力的培养,同时教室环境下的集体学习形式也限制了协作学习的开展。CSCL是指学习者借助于网络学习平台,围绕共同任务进行问题求解,完成相应的知识学习。CSCL给学习者提供了相对自由的学习时空,有助于发挥学生的主体作用和能动性。但这种模式缺乏有效的监督措施,容易造成学生学习效率低、搭便车的情况。而混合式协作学习(Blended Collaborative Learning,简称BCL)是指融合了F2FCL和CSCL的一种学习模式。BCL融合了课堂教学和网络教学的优点,既打破了现实时空的限制,又发挥了教师的主导作用,能够使学生在教师的引导下,借助现代教育技术通过协作探究来完成对知识和技能的构建。

在软件实训教学过程中,项目被分解成不同的阶段任务,这其中往往会涉及不同的职业角色,需要以职业角色为小组的成员协作完成软件项目的开发,这一特点恰好符合协作学习的要求,在项目驱动的软件实训教学中采用混合式协作学习方法具有重要的理论和实践意义。

三、项目驱动的混合式协作学习设计与实施

(一)BCL的整体设计

虽然在实训时学生已学习了软件工程、UML建模、Web应用开发、界面设计等软件项目开发相关的基础知识,但还欠缺在一个具体项目开发中综合应用这些知识的能力。为了强化对学生编码能力的训练,把整个实训分成了两个阶段。第一个阶段为项目开发体验阶段,主要采用集体协作形式,在实训教师的引导下,围绕一个共同项目展开。这个阶段的目标是通过一个完整的软件项目开发,让每个学生都能够清楚地了解如何将以往学习的理论知识综合应用到软件项目的开发实践中,从而加强对学生编码和测试能力的训练;第二个阶段为正式项目开发阶段,主要采用分组协作的形式,完成不同的实训项目的开发,组内每个成员扮演不同角色,在进一步强化学生的编码能力的同时培养学生的团队协作、沟通交流等职业素养。按照软件工程过程,软件开发划分为项目计划、需求分析、分析设计、编码测试、项目交付五个阶段(如右上图所示)。

(二)BCL的实施过程

基于以上分析,在软件实训的第一个项目开发体验阶段分配两周左右时间,由教师根据案例项目,演示如何制订项目开发计划,如何根据任务描述书分析项目需求并描述项目需求,根据需求描述进行项目设计;在设计阶段,由指导老师以一个项目子模块为例进行讲解,学生自主完成其他子模块的设计;根据项目的详细设计,教师以一个子模块的编码实现为例进行演示,学生自主完成其他子模块的编码实现;最后将各个子模块进行整合并演示测试及交付方法。该阶段的相关教学资源会提交至网络教学平台,供学生后期需要时进行查阅。这个阶段的目的是加强学生对软件项目开发的兴趣和信心,经过该阶段的实训,学生会发现软件开发其实就是对之前所学习的内容进行一个综合利用,并不是能力不及的一个难题,从而为第二阶段分组完成正式项目的开发做了很好的铺垫。在实训的第二个阶段采用项目驱动的混合式协作学习模式,其具体的实施流程分为以下几个阶段:

1.第一阶段:布置任务。在实训教学开始之前,指导老师先告知学生实训任务、实训内容和组织方式、实训结果评价方法,并把实训的模拟项目描述上传至网络教学平台,供学生讨论分组。为了使学生能够准确理解项目的需求,应选择贴合学生生活的主题作为实训项目,主要以校园生活为主题,包括校园二手商品展销论坛、创新创业园公共信息服务平台、教务管理系统、中小学数字化校园管理平台、学生评优评先管理系统、教学质量评价系统等。

2.第二阶段:划分小组。协作小组的划分以学生自由组合为基础,指导教师对小组进行适当的调整,每个小组的人数为5~6人。分组前先告知学生分组原则,由学生自由结合。同时通过一些量表来分析学生的个性特征和知识基础,在量表中重点测试学生相关课程的知识基础、学习方式、动手能力、个性特点等方面,结合班委和辅导员了解学生的性格特征。在进行分组时,按照组内异质、组间同质的原则来均衡各个小组的实力。在软件开发团队中,每个人都扮演着不同的角色,一般将软件开发团队中的角色分为软件项目经理、系统分析设计员、界面设计员、程序员和测试员。比对实际软件开发团队中的角色划分,在小组中每个学生也担当不同角色。如挑选具有较强专业应用能力和综合素质的学生担任小组组长,作为项目经理的角色,负责制订实训项目的开发计划、项目的整体设计,协调整个小组成员的分工合作及项目进展;由熟悉项目建模方法和建模工具的学生担任系统分析设计员的角色;为了加强对学生编程能力的训练,小组中每人都规定了一定的代码任务量,项目编码人员和测试人员由小组中的所有成员共同组成,由组长负责对整个项目程序进行整合和测试;界面设计员和数据库设计员分别由组内界面设计较好和数据库应用能力较强的成员担任,但在完成界面设计和数据库设计的过程中,并不是由设计员一人独自承担项目任务,而是需要全组成员共同讨论交流;在进行模块测试时,组内成员相互交换彼此的模块代码、相互测试,测试员的角色由组内成员共同承担,测试无误后由项目小组组长进行模块整合。

3.第三阶段:协作环境。项目驱动的混合式协作学习的协作环境主要包括硬件环境和软件环境两部分。硬件环境包括用于软件项目开发的计算机、实验室、用于成果展示的多媒体教室、用户小组成员面对面交流协作的小型会议室等。软件环境包括用于知识交流和共享的网络学习平台、相关的教学资料和学习资料、用于软件开发的开发环境、用于示范演示的教学软件等。除此之外,还应包括实训教学要求、实训教学的开展方案及实训考核方案等组织环境。

4.第四阶段:开展协作学习活动。分组协作的软件实训周期为6周。按照软件工程过程和协作学习的整体设计,首先由各个小组制订项目开发计划,在制订项目计划的过程中结合组内成员的特征,合理分配组内成员任务、明确各个子阶段任务的提交材料清单以及各个子阶段任务的时间安排。项目开发计划制订完成后将上传至网络服务平台,由指导老师审定项目开发计划的合理性,对于项目开发计划不够清晰合理的小组将协助其修订。其次,项目组按照既定计划展开项目开发工作,在每个阶段任务完成后,会根据阶段任务的材料提交清单进行项目阶段评审,评审的目的是加强对学生项目开发的过程化管理,并把阶段评审成绩作为实训总成绩的一个组成部分。评审方式采用项目组汇报展示的形式,由项目组长或组内表达能力较好的学生进行阶段任务成果展示和讲解,对任务完成过程中遇到的问题及解决办法、完成任务的主要方法进行交流。教师及其他小组成员对该组的阶段任务进行提问和评价,一方面能够加强小组之间的交流,另一方面也促使各个项目小组对阶段任务进行认真整理。为了避免学生评价时的人情分或评价过于笼统宏观,在进行阶段评审时会根据阶段任务设计适当的评价量表。对于阶段任务完成较差的小组由指导老师协助其更正前一阶段任务中的不合理部分,避免出现小组任务实施与项目需求偏差过大的情况,便于后期阶段任务的开展;对于阶段任务完成较好的小组进行小组协作经验交流,供其他组学习。对评审过程中存在的共同问题,由教师集中讲授。集中讲授与阶段评审相结合的协作学习模式,充分利用了面对面协作学习的优势,也有利于教师对实训过程进行整体监控,有效发挥了教师的主导作用。

5.第五阶段:项目成果交付与评价。软件实训完成后,提交小组软件开发成果,以答辩展示的形式进行实训成果评价。每个成员都要参加结项答辩,针对自己在实训过程中参与的具体工作进行描述,并对自己的表现进行自评。根据混合式协作学习的特点,软件实训的综合评价包括实训过程中的阶段性评价、实训考勤和参与度的评价、实训项目成果的最终评价。其中,阶段性评价的主要依据是阶段评审工件及评审答辩的情况;实训考勤和参与度评价的依据是考勤、评审答辩时的自评及团队成员间的互评;实训结果的最终评价依据是项目成果提交时的答辩成绩。从评价的内容可以看出,这种评价方式将过程评价和结果评价并重,能够引导学生关注自己在实训过程中的知识和社会能力的共同成长,达到软件实训教学的目的。

三、BCL的效果评价及反馈

采用问卷调查法对基于项目的混合式协作学习的效果进行调研,对象为2010级64位参与软件实训教学的学生。问卷调查的内容主要包括“您的软件开发能力的提高是否达到了预期?”“您觉得在混合式协作学习模式中最大的收获是什么?”“您觉得阶段评审的方式是否促进了您学习的自觉性?”“团队协作对您解决问题有帮助吗?体现在哪些方面?”“网络教学平台在您的学习中有作用吗?体现在哪些方面?”“多元的学习评价方式是否合理?”等。调查结果显示,85%以上的学生认可项目驱动的混合式协作学习模式,这一论点在学生的对口就业数据上也得到了论证。因此,项目驱动的混合式协作软件实训模式不但提高了学生的职业核心技能,也提高了学生的职业素质、锻炼了学生解决实际问题的能力,是一种有效的软件实训教学模式,实现了以就业为导向,以能力为本位的职业教育教学目标。

综上所述,项目驱动的混合式协作学习模式在融合F2FCL和CSCL学习模式的基础上,打破了时空限制,激发了学生的积极性、主动性、合作性,从项目计划、需求分析、分析设计、编码测试、项目交付五个阶段,完成小组间分工、协作、交付。通过针对面对面协作学习和计算机支持的协作学习在实施过程中存在的不足,结合高职软件技术专业实训教学的特点,探讨了基于项目的混合式协作学习模式的构建与实施策略。根据软件开发流程,划分协作小组和制订项目计划,在网络教学平台支持下组内成员进行协作学习完成阶段任务,发挥了学生主体能动性;采用面对面协作的方式进行阶段评审和监控,发挥教师主导作用。

[参考文献]

[1]蒋述东.项目教学的特征及其适应性研究[J].教育与职业,2012(18).

[2]刘素兰,熊益秀,黄贵平.基于项目教学的高职生职业精神和职业能力培养[J].职教论坛,2012(35).

[3]彭绍东.从面对面的协作学习、计算机支持的协作学习到混合式协作学习[J].电化教育研究,2010(8).

[4]丁琼,曹义亲.基于胜任力理论的软件实训模式[J].实验室研究与探索,2012(7).

[5]陆斌.基于CSCL的项目课程实践与研究――以公共空间设计项目课程为例[J].电化教育研究,2011(7).

[6]聂晶.高职软件技术专业“项目教学+水平考试”人才培养模式探索与实践[J].教育与职业,2012(18).

软件测试实习工作计划篇9

[关键词] RUP; 教学软件; 改进; 模型

[中图分类号] G434 [文献标志码] A

[作者简介] 余久久(1979―),男,安徽合肥人。讲师,硕士,主要从事软件工程、计算机教学研究。E-mail:。

一、引 言

统一软件开发过程(Rational Unified Process,简称RUP)模型是一个重量级的二维软件开发模型,如图1所示。[1]横轴反映软件开发过程的时间维,是过程展开的生命周期特征。[2]

初始阶段、细化阶段、构造阶段与交付阶段这四个阶段依次顺序体现出开发过程的动态结构,每个阶段结束时通过技术评审来确定是否进入下一阶段。模型的纵轴以内容来组织相应的逻辑活动,包括软件开发及项目组织管理所涉及的九个核心工作流(六个过程工作流和三个支持工作流),体现开发过程的静态结构。重复和迭代贯穿RUP模型的整个过程,支持用例驱动、迭代和增量式开发过程及以基本架构为中心是其三个显著特点。

这一复杂和详尽的流程框架,没有一个实际项目能使用RUP的全部内容,制定针对具体项目的专用开发流程是项目开发者必须考虑的问题,这套“大而全”的开发过程也缺乏对中小规模软件目标的支持。[3]对于运用在特定行业领域、需深刻体现出行业背景特点的软件系统的开发过程,完全照搬RUP是不适用的。所以,近些年针对实际开发项目特点对RUP模型进行有效裁剪或改进的活动已成为国内外学者的研究热点。

二、教学软件的特点

(一)教学软件的定义

教学软件指计算机辅助教学使用的程序或软件,通过计算机呈现教学内容、结构和教师教学意图,指导和控制教学活动,接受学生的要求与回答,存储有关教学资料进行教和学的活动等。[4]在相应软件环境下运行,由某种格式的计算机可执行文件(如PowerPoint环境下运行的.ppt文件等)制作出来的多媒体课件、教师课堂上使用的教学辅助类软件、课外供学生使用的自学辅助类软件、网络课程学习系统等也属于教学软件的范畴。[5]学生是软件使用者的主体。

(二)特点分析

不同于普通商业性软件,教学软件从反映内容层面看,把教师教学理论与学生学习认知心理结合起来,针对教学目标及学生特点,合理选取与设计教学信息并进行有机组合,从而形成并优化教学结构及教学资源。开发过程中除了实现软件自身功能属性(包括软件的可靠性、可维护性、可移植性等各种质量属性)之外,尤其具备三方面特点:

1. 教学设计策略

作为学生的“学习环境”或“认知工具”,教学软件表面上体现出系统功能模块的设计与开发,实质上蕴涵着以符合学生相应认知心理、思维习惯和学习需要的教学目标分析与设计、学习过程的设计、教学软件内容的组织等。[6]所涉及的学习信息的选择与组织、教学案例程序、学习导航、问题设置等方式需要反映出教师相应的教学策略和教学过程。从教师角度看,软件中所蕴含的教学设计策略将以细微的细节体现,比如软件界面的布局、教学内容主题目录的排列方式、各浏览页面间的位置关系等都可能对学生学习效果产生影响。

2. 教学软件评价过程

教学软件评价即依据软件的教学目标对教学过程及结果进行价值判断并为教学决策服务的活动,是研究教师的教和学生的学的价值的过程。[7]不同于对软件自身功能实现方面的评测,而是对软件中所特有的教学因素的评价过程。

教学软件评价主要体现在教学设计(教学过程与活动设计是否合理、媒体呈现方式是否科学、软件承载的知识内容是否符合教学要求等)和教学使用(软件使用环境是否稳定、作用效果是否明显等)两个方面。[8]总之,从软件设计者角度来看,软件教学评价过程有助于发现问题,调整设计开发方向,提高开发质量;从使用者角度来看,该过程可以为其选择合适的教学资源,激发学习兴趣,提高学习效率。

3. 人机交互

人机交互也是教学软件所具有的重要特点及优势所在。用户与软件之间传递信息是双向的,用户通过交互界面进行人机交互作用,软件的交互界面成为用户和计算机进行信息交换的“走廊”。人机交互需要反映出教学软件的易用性、及时响应性等特点:如操作软件简单便捷、符合人们使用习惯;使用过程中尽可能地减少系统接收操作的响应时间;通过设计时间运行进度条、时间倒计时等方式提示用户等待时间等。

三、当前教学软件开发模型的不足之处

教学软件亦需要借助软件开发模型来指导其开发过程。近些年,国内已有学者对其特点进行研究,指出教学软件的开发历经反复迭代过程,适合采用原型或螺旋模型开发方法。其中较为典型的有:图2所示的三重螺旋开发模型;[9]图3所示的原型开发模型;[10]图4所示的原型与螺旋相结合开发模型。[11]

现有的教学软件开发模型中尽管体现出原型或阶段迭代的开发思想,大体包含教学设计、系统设计、多媒体元素的制作、编辑与合成、测试等几个关键步骤。但是以上模型均存在一些不足之处:(1)过多强调的是软件中的教学素材、媒体元素的制作或编辑流程,缺乏整体上对软件的体系结构建模。(2)模型过于笼统,未能形成一套完整的软件开发过程全框架。(3)体现不出教学设计环节中一些核心活动(如人机交互设计、界面设计等)。(4)教学设计和软件工程活动相互间联系不明确。(5)尽管强调了开发后期产品的测试过程,但是重要的教学软件评价活动被完全忽视。(6)开发组织的职责或任务没有被明确分派,缺乏软件过程活动中所生成的主要工作制品等。

四、教学软件RUP模型的改进方法

(一)改进过程所遵循的原则

应用RUP关键之处在于根据项目自身特点,结合实际对其“量体裁衣”。但是,改进不等同于随意地裁剪与去除RUP的迭代阶段或工作流。我们遵循“用例、迭代式开发和分层架构是RUP改进过程所不可缺少因素”的思想,[12][13]主要采取下列四个原则指导对RUP模型的改进方法:(1)迭代开发思想始终贯穿于软件开发全过程。(2)系统从需求至测试阶段都坚持对用例的使用。(3)依据项目规模特点制定开发过程所需的工作流,确定工作流所产生的工件。(4)在充分考虑到架构与风险关系的同时,注重精简架构设计。

当然,改进过程中有关候选架构与严重风险的缓解、架构基线等可以在哪一个阶段哪一个工作流中完全建立起来等一系列问题也是需要考虑的。[14]

(二)RUP改进模型的设计

教学软件开发要考虑软件的教学因素,以教学设计为基础,结合RUP思想,我们对RUP模型进行相应改进。改进后的模型保留用例驱动、迭代开发和架构设计为中心的特点,但是把初始、细化、构造与交付四个阶段的迭代周期数目划分为1,2,1,1。合并与修改了部分工作流:由于实际开发项目规模较小、业务流程简单以及开发迭代规模不宜过大的特点,把原RUP中的商业建模工作流,变换成对特定的软件教学领域分析工作流。基于教学软件所具备的教学属性与系统自身功能实现属性两方面因素,把原RUP中的分析和设计工作流分解成需求与设计两个工作流,需求工作流完成对软件建模活动,设计工作流同时进行教学设计与系统设计的并行活动,通过细化阶段的两个迭代周期完成。改进后模型根据系统开发风险较小、项目团队规模不是太大的情况,适当简化了配置管理、项目管理、环境管理三个支持工作流及所产生的文档。每个迭代周期并行展开领域分析、需求、设计、实现、测试、实施、配置管理、项目管理、环境管理共九个工作流,见表1。

(三)RUP改进模型的过程工作流

1. 领域分析

领域分析在初始阶段通过一次迭代完成对教学软件类型及所适用领域特征的分析过程,包括教学软件类型分析、教学目标分析、软件使用者特征分析三方面活动。

教学软件类型分析是确定软件教学需求的重要依据,包括对软件内容和软件形式两个层面的分析。内容上指教学软件设计中所涉及的若干要素方面的分析,例如人机交互、学习活动、仿真与控制设计、评测与反馈设计等功能设计方面要素的分析;形式上指软件对使用者的感观效果和影响,主要是软件的界面布局、色彩格调、页面导航、媒体要素组合等方面,激发使用者使用软件的兴趣。不同的内容与形式的二维组合和不同要素的组织方式是决定不同类型教学软件的依据,如:演示型教学软件、学习辅助型教学软件、练习评测型教学软件、实验模拟型教学软件等。不同类型的教学软件以不同的方式、各自不同的优势对教与学的过程提供有效的支持。[15]

教学目标分析建立在确定教学软件类型的基础上,有的放矢分析该类型教学软件中所涵盖教学总体方向,学习内容的选择、教与学的活动设计、教学策略和教学模式的选择与设计、学习环境的设计、学习评价的设计等,这些都围绕教学目标为依据展开。

使用者特征分析指软件开发前充分分析软件使用者自身状况,包括对使用者智力方面因素(学习起点水平、认知能力、认知发展特征等)与非智力方面因素(兴趣、秉性、情感、性格等)的分析。[16]信息化环境下对使用者的计算机操作技能或使用能力进行充分的分析与评估也是对使用者特征分析的重要组成部分,为软件人机交互因素提供设计依据。使用者特征分析活动有助于为后面软件设计活动中有关教学活动的设计、教学媒体的选择与编辑等教学因素提供指导。

2. 需求

软件建模是软件需求活动中的重要环节,建模即“把问题从问题领域转移至解决领域”的过程,是用户与开发人员之间最主要的沟通渠道。RUP改进模型中同样强调软件建模的重要性,在细化阶段通过两次迭代实现软件教学需求建模和系统需求建模两个过程。

有效识别和分析教学需求,建立教学软件的业务模型是解决教学目标、学习者模型、教学策略、教学过程等问题的途径。目前有关教学软件业务模型的建模主要有IEEE LTSC提出的学习技术系统体系结构模型(LTSA),IEEE提供的LOM模型、美国ADL研究机构提出的SCORM模型等一系列学习资源与过程的信息模型、荷兰Twente大学提出的学习系统建模方法等。[17][18]由于本文中的建模活动只是作为RUP改进模型的一条工作流,所以在此不讨论现有建模模型的优缺点。这里作者采用了把教学设计与面向对象建模合为一体的“面向对象―教学设计”的建模方法作为教学软件的建模方法。[19]宏观上以教学应用为驱动的建模方法,从不同层次、多个视角描述系统总体架构,如图5所示。

教学应用视图包括教学用例模型,以实现教学需求的获取。教学设计视图包括运用教学软件设计方法分析系统获得的知识、资源、过程等教学逻辑模型,反映系统的业务逻辑与规则。[20]系统设计视图包括系统数据模型、交互界面等系统设计模型。教学组件视图包括了系统开发组件、接口模型。分布配置视图从软件的安装实施角度建立起软件的部署模型、配置模型。

“目标层次化、教学设计、系统设计、组件分布设计”是教学软件建模过程的关键环节,建模过程如图6所示。[21]其中教学设计侧重对软件的教学因素分析,系统设计侧重于软件功能体系实现的设计。教学软件通过这两个阶段的不断迭代与精化,共同完成建模过程。

3. 设计

教学设计与系统设计是教学软件设计活动中的两大重要组成部分,在RUP改进模型的细化阶段通过两个迭代周期并行完成。

教学设计即运用系统方法分析教学问题和确定教学目标、建立解决教学问题的策略方案、试行解决方案、评价试行结果和对方案进行修改的过程。教学设计内容由教学内容设计、教学策略设计、媒体展现设计与教学评价设计组成。教学内容设计即在教学内容分析的基础上解决教师 “教什么”、学习者“学什么”的问题。教学策略设计主要解决教师“如何教”和学习者“如何学”的问题,为实现某一教学目标而制定的、付诸教学过程实施的整体方案。媒体展现设计即根据教学策略设计的结果和教学过程中需要呈现出的各种媒体(图形、图像、声音、动画等)信息所具有的教学功能和特性加以选择,媒体展现设计的好与坏将直接影响教学效果。教学评价设计即根据教学软件的用途或功能,设计相应的软件评价指标体系。[22]

系统设计包括了软件的人机交互设计、数据库设计与网络结构设计。人机交互设计即制定用户与软件进行信息双向交流的方式、过程,科学的人机交互设计原则更受到用户的青睐,有助于提高学习兴趣。数据库设计即设计并优化软件数据库逻辑结构与物理结构,满足用户信息管理需要的数据操作要求,支持系统开发与运行。网络结构设计确定软件基于网络的方案(通信介质、网络操作系统、网络协议),架构网络计算模式,如客户端/服务器(C/S)模式、浏览器/Web服务器/数据库服务器(B/W/D)模式等。

4. 实现

实现工作流贯穿RUP改进模型的细化、构造与交付三个阶段。在细化阶段,通过两个迭代周期分别完成教学软件所呈现出媒体元素的编辑与合成、软件开发集成工作。通过适合的媒体开发工具合理地组织与链接设计好的媒体素材,在相应的软件开发集成平台上生成最终的应用程序,通过调试并运行成功。构造阶段围绕软件单元测试过程进行软件的各组成模块及接口的白盒测试工作,及时修复软件功能上的缺陷,确保功能实现无误。在交付阶段完成实现了一个可运行的软件产品的测试版本。软件代码实现及调试活动是模型细化阶段实现工作流的重点。在构造阶段与交付阶段,软件产品测试的主要工作分别是单元测试与集成测试活动。

5. 测试

与软件设计、开发一样,教学软件测试工作流同样遵循软件工程的方法。测试工作流同时贯穿于RUP改进模型的四个阶段,在初始阶段拟定软件测试标准,确定判定软件缺陷的准则。细化阶段根据所拟定的测试标准,制定详细的软件测试计划,选择相应的测试工具,并对易出错的功能模块设计相应的软件测试用例。构造阶段主要进行软件黑盒测试活动,测试重点着重于软件的外部功能及操作方面,如:界面导航测试、交互性测试、系统功能测试等。交付阶段的重点是进行教学软件评价工作,即依据事先设计好的评价指标在软件正式投入使用前在一定时间段及范围内进行产品试用,从而有助于及时发现问题,诊断错误,调整开发方向,提高软件质量。需要说明的是,教学软件不同的评价指标,对参与评价的人员将有所侧重。例如:优秀的学科教师评价教学软件内容设计指标;美学专家评价教学软件多媒体呈现指标;软件开发专家评价教学软件运行质量指标;使用软件的用户评价教学软件的使用效果指标等。

6. 实施

实施工作流也同时自始至终贯穿于RUP改进模型的四个阶段,描述为确保用户正确使用产品的一系列活动。主要工作是一系列软件技术文档和用户手册的编制。

(四)RUP改进模型的支持工作流

与RUP模型一样,改进后模型的支持工作流仍然包含项目管理、配置与变更管理、环境管理三个流程,用于软件开发项目管理工作,见表1。

支持工作流主要与软件开发规模有关,开发规模越大,项目管理、配置与变更管理和环境管理的工作量越大,需要生成并规范的文档就越多、越复杂。实际项目开发中,开发人员可以根据项目规模合并或缩减相关的文档,例如:对于规模较小、开发风险较低项目可以把项目风险管理计划书合并到项目计划书中等。

五、实例应用

“计算机基础应用”网络课程学习系统是作者参与开发的教学软件研究项目之一。该系统基于校园网络环境,文科院系非计算机类专业学生是主要用户。系统以注重学生认知规律的人机交互方式,通过各种诸如视频、文本、动画、音乐等多种媒体形态所呈现出的计算机基础知识的教学内容设计和为学生学习提供支持服务。

项目开发团队由不超过10人组成,成员分工明确,有项目经理、学科教师、软件设计师、程序员、美工编辑及软件测试人员等。依据用户需求,Project2003作为项目管理工具,Visio2007作为系统建模工具,系统开发工具采用 2.0标准,SQL-Server2007作为后台数据库管理工具。项目采用RUP改进模型开发,整个开发周期三个月。

(一)初始阶段

初始阶段主要在深入分析项目应用领域的基础上明确系统开发规模与用户需求,制定项目管理计划及软件配置与管理计划书、变更报告说明书等,建立起系统的评测标准和使用方案,评估潜在的风险。初始阶段的重点工作是对项目领域分析。

(二)细化阶段

项目在细化阶段根据实际需求选择了简单的C/S体系结构,采用图6所示的把教学设计与面向对象建模方法合为一体的“面向对象―教学设计”的建模方法作为系统建模方法。在此基础上,分别从教学设计与系统设计两个方面进行详细的迭代设计过程。与设计工作同步展开,测试人员依据软件需求设计制定出初步的软件测试计划和重要模块的测试用例,为软件产品的实际测试工作提供指导依据。该阶段结束前还需要完成制定软件编码规范与数据词典,为开发出可运行软件产品的测试版本提供规范。

作为计算机基础课程的学科教师,作者在项目中主要承担了细化阶段有关系统的教学设计工作。由于篇幅所限,这里主要介绍教学设计中的教学内容设计的过程。

教学内容设计即对教学课程中所包含的知识点进行策略性的组织,章(模块)是课程教学内容的组织单元,节(知识点)则是章(模块)的下一级组织对象。[23]每一章由本章概述、本章学习先决条件、本章所包含节(知识点)、练习、评价与总结六个部分组成。其中,每一章中又包含若干节(知识点),每一节中也要设计该节的内容、学习目标、难点重点、节学习先决条件及练习等。“本章学习先决条件”即确定使用者学习该章之前所具备的知识水平,“练习” 即从本章所在层级的目标为使用者提供必要的、能够反映出相关知识的运用方面的习题,“评价”可以设计为该章的学习反思、问卷调查以及电子档案等内容,“总结”的设计即为理清该章的组织结构,提炼内容。最后可以根据实际需要进行该章扩展资源方面的设计。

(三)构造阶段

构造阶段的主要任务是系统的开发与测试工作。在完成多媒体素材的编辑与合成操作以及系统经开发集成所生成的应用程序之后,按照事先制定好的测试计划和测试用例进行相应的测试活动,主要包括对系统的功能实现、使用操作、应用效果等方面的黑盒测试活动。测试活动中尤其注重系统所呈现出教学内容及是否具备创意方面的测试,检查所展示的内容能否激发使用者的学习兴趣,并作出相应的改进。

(四)交付阶段

软件评价活动在交付阶段进行,即系统正式投入使用前在实际的运行环境中开展。除了系统开发人员外,教育教学专家、学科教师、美工人员、学生等需要共同参与到软件评价活动。软件评价体系指标可以由教学内容、教学设计、技术实现、呈现艺术四部分组成,每一部分又可以分解成一系列二级评价指标,例如:教学设计可以分解为教学目标组织、教学交互设计、学习评价等;技术实现分解为系统架构设计、运行环境、操作性能等;呈现艺术分解为界面设计、媒体选择、美工效果等。系统交付前只有在实际环境中通过对其广泛的使用,才能有效发现所存在的内在不足之处与特点,从而进行更好的设计与完善。

以上各阶段结束时,用户代表、第三方技术专家与项目组人员都参与了项目评审过程。该系统遵循RUP改进开发模型,规范了项目开发与管理流程,在交付期内顺利完成。系统运行期间基于实际环境与用户要求,项目组又对其进行两次进化过程。目前该系统在试点院系进行了实际应用,反映良好,目前考虑进一步推广使用。

六、结束语

本文从对RUP模型的特点分析着手,结合教学软件项目自身特征,对模型进行相应改进,从而更好地服务于教学软件开发全过程。RUP改进模型针对教学软件的一些关键的、特有的开发活动提供了必要的准则与指导,并建立清晰的过程结构体系,从而为教学软件开发过程提供了较大的通用性。

[参考文献]

[1] Jacobson I,Booch G,Rumbaugh J. 统一软件开发过程[M].北京:机械工业出版社,2002.

[2] 何晓蓉.软件工程与UML案例解析[M].北京:中国铁道出版社,2010.

[3] 毛力,须文波.基于RUP的J2EE应用建模研究[J].计算机工程与设计,2007,28(4):852~854.

[4] [8] [15] [22] [23] 余胜泉.教学软件设计指导手册[M].北京:清华大学出版社,2011:436,129,436,271~273.

[5] 方海光,任剑锋,陈蜜.教育软件工程框架的构建[J].计算机科学,2009,36(1):29~33.

[6] 黄少颖,刘美凤,张霞.教学软件需求分析有效实施的指导原则研究[J].现代教育技术,2007,17(3):10~12.

[7] 教学评价[EB/OL].省略/教学软件评价/教学评价_百度百科.htm,2010.

[9] 刘新阳,张从善,常淑娟等.关于新型教学软件开发模式的构想[J].中国电化教育, 2003(5):65~67.

[10] 谷震离.多媒体教学软件原型法开发模型研究[J].计算机工程与设计,2006,27(10):1828~1830.

[11] 李为民,张军征.教学设计与软件工程结合的教学软件开发模式[J].现代教育技术,2009,19(7):49~52.

[12] 赵艳.RUP过程裁剪在组卷系统中的应用[J].洛阳师范学院学报,2008(5):51~53.

[13] 王建,冯伟森,李旭伟等.基于UML和RUP的中小项目的设计和实现[J].四川大学学报(自然科学版),2009,46(4):935~938.

[14] 翁楠.RUP在信息系统中的开发研究[D].大连:大连海事大学,2006.

[16] 学习者特征分析[M/CD].教育技术培训,2008.

[17] IEEE[DB/OL].ltsc.省略,2000.

[18] ADL[DB/OL].省略 index.cfm?cfid=584157&cftoken=30417847,2000.

[19] [20] [21] 浅析学习系统的软件建模方法研究[DB/OL].省略/quanguogaoxiao/show2.jsp?informationid=20101201113

软件测试实习工作计划篇10

 

一、问题的提出

 

当前,我国职业教育面临着拓展规模、提升能力水平两大问题。拓展规模,需要在大力发展学校教育的同时,积极发展包括远程职业教育、成人职业教育、终生职业教育(培训D等社会教育;提升能力水平,需要提高职业教师的自身技能水平和教学指导能力,不断改进教育教学方法。需要学校或培训机构具备足够的教学场地,购置大量的教学仪器设备和实验实习材料,给教育受众提供满意的实操环境。而解决这些问题,均受到场地、资金42

 

等若干因素的制约。同时,从事职业教育的教师数量在短期内也难以满足,教师个体素质在短期内也难以提升到理想状态。特别是急需发展职业教育的广大农村,对职业教育资源的需求日益强烈。

 

相对而言,我国高等教育经过改革开放后数十年的发展,无论是办学规模还是办学水平均有了较大幅度提高,社会影响力不断增加。积极推行高等学校办学资源的社会化、课程的公开化是实现“服务社会”的有效途径。近年来,美国等高等院校的公开课已经风靡网络,受到全世界网民的一致好评。美国高校教育教学资源的网络化和社会化,为我国高等学校实现办学目标和宗旨提供了可供借鉴的经验。推进我国高校教育资源的网络化和社会化,将为解决我国当前职业教育资源紧缺问题开辟一条崭新途径,可有效地解决职业教育受众专业实习、实训设备、设施及专任教师短缺等问题。

 

随着我国PC机在公共场所、事业单位和家庭的逐步普及,以培养职业教育师资为重点任务的高等院校组织相关专业教学人员,对职业教育各专业内容进行科学组织,精心设计,利用计算机技术,以人机交互的方式将职业教育相关专业内容通过文本(texjU图像(image、图形(graphicS、音频(aud〇、动画(animatiori)、视频(vide〇等多种方式,经单独或合成的形态表现出来,形成适合社会不同教育受众实际情况的系列教学软件,并面向社会更加广泛的地域和时空领域推行、传授,可有效地实现职业教育面向人人的目标,为我国经济社会建设培养更多的技能型实用人才。同时,可有效地激发教育受众的学习兴趣,方便学习者自己把握学习时间,选择学习内容,实现“以人为本”发展职业教育的目标。通过仿真模拟实验、实习等操作,可有效地解决目前基层职业教育设备少、实习材料短缺等问题,减少不必要的资金投入。教学软件承载、支持并体现了一定的教育理念,通过多种表现形式和问题情景的创设,支持接受式学习、自主探索式学习等多种学习方式,必将促进教育受众个性和谐地发展。

 

二、国内外开发及应用现状

 

在教育教学中应用计算机技术,使教学手段、教学思路和教学体系乃至整个社会教育模式发生了深刻的变革。上世纪80年代以来,计算机技术的飞速发展为各类教学软件的开发提供了强力技术支持。视窗操作系统(Windows的推出为软件开发建立了开发平台,多媒体技术的发展使教学内容的表现形式更加丰富多彩,网络技术的快速普及使教学突破了空间限制。目前,各种教育教学软件的开发技术已经跃进了一个新的台阶,在内容表现形式上更具趣味性和吸引力,在具体操作上更加简便和人性化,在使用功能上更具多样化和综合化。2]特别是网上课程设计、网上课程协作和网上课程管理等各具特色开发工具的形成,使各种教育教学软件开发技术水平日新月异,步入一个崭新时代。美国StanfordUniversity自2001年起,就确定专门人员併有学生参与)对教授讲授的课程进行加工,并及时放到网上,或供学生课外复习,或用于继续教育,为校外在职人员学习提供方便。众人皆知的美国ETSe继英国IELTS考试在全球实现计算机化之

 

后,已在全球实现了和TOEFL考试的无纸笔化。随着现代信息技术和与其相适应的教学开发技术的形成和发展,使教学软件系统以其强大的功能迅速得到开发和应用,代表了现代教学技术的发展方向,成为教育改革的发展趋势。

 

我国教学软件的开发研究工作基本与世界发达国家同步,但由于起步初期受到计算机软硬件技术发展水平及计算机普及率的限制,开发进度不快,技术水平不高,应用普及面不广。上世纪90年代,CAI技术在我国蓬勃兴起,引发了教育技术史上一次新的革命。典型的教学软件代表作有“开天辟地”和“万事无忧”等。进入新世纪后,基于当今世界先进的计算机软硬件技术,将许多优秀的教育思想与教学方法以及教学基本策略以基元形式积聚成库形成的“积件”(IntegrableWarf)模式,显示出旺盛的生命力。计算机网络教学技术的迅速发展,进一步拓展了教育空间。在市场需求的拉动下,各类教学软件产品迅速涌入教育领域,每年全国教育教学软件开发的投入达到数十亿元。但是,目前的教学软件开发,多集中于普通教育和幼儿教育,职业教育教学软件开发的水平不高,开发速度不快,理论支持不足,鲜有推广价值较大的产品。无论是职业学校,还是社会培训机构及教育受众,对具有较高制作技术水平的职业技术教育教学软件的需求越来越强烈。

 

三、软件应达到的技术标准

 

研究国内外教学软件开发的历史进程和开发过程,总结各地教学软件开发工作取得的经验和教训,确定开发职业教育教学软件应达到以下六项技术标准。

 

(一)实用性

 

实用性是职业教育教学软件之本。质量上乘、效果良好的教学软件,应该是一件精良的教学工具,是一个精准教学内容的集合,是一套精巧的计算机程序。教学软件的实用性集中体现在软件系统的实用性和软件内容(数据库的实用性两个方面。软件系统的实用性要求软件应用现代计算机技术,能够有效开发使教育受众的多元智能,增强软件使用效果。能够利用各种认知理论,科学控制信息表达及信息流程等,有效增强教育受众对学习内容的记忆;数据库的实用性强调软件开发在内容选择上必须面向社会各个层次的教育受众,符合市场需求和教育受众的实际需要,体现职业性、技术性和实用性的统一,凡学术性、有争论或不能运用到工作实际中的内容均不纳入。

 

二简便性

 

职业教育教学软件面向全社会,必须简便易行。(1)操作要简单。软件的操作方法应与目前社会流行的Windows等操作系统兼容,应让软件使用者不需任何专门培训也会使用。在操作设计上,应尽力体现人性化。如在实施人机互动方面,均应在设置键盘输入的同时,附加鼠标Option方式选择。当然,也要为熟悉计算机操作的教育受众提供多种输入方式;(2操作要方便。在操作过程中,应该给学习者提供各种帮助功能。除在系统中设立帮助文件外,还要在软件适当部位显示出相关帮助信息,提醒学习者按照自己的意愿操作。当出现错误操作时,软件也要主动提醒学习者,并指出正确的操作方式、方法。

 

(三交互性

 

人机交互能力的强弱,是职业教育教学软件能否被使用者接受的关键,应作为开发设计的重点。;1)要让软件用户对软件的运行状态具有高度的控制能力,如启动、停止、内容的跳转、参量的选择以及避免死循环等;;2对教育受众各种教学需求,应尽可能地体现在软件功能中,设置若干唤起方式,以此保证用户可自由取舍软件的多数功能;(3建立符合常规、简单明了、风格一致、反馈信息提示得当、容错性良好的用户界面,努力增强与使用者的亲和力。如建立明显交互标志,避免使用者盲目寻找各种功能特性等;;4要尽力为使用者提供更多干涉的机会,充分调动学习者的学习热情;©尽力避免软件使用者的误操作将导致软件系统出错或锁死等常见现象,使学习者能够永久使用软件,树立学习信心。

 

职业教育教学软件应是各个教学“积件”的集成。“积件”是一个教学素材或知识单元,几个或多个“积件”组合成一个学习单元,几个或多个学习单元可集成一套完整的教学软件。这些单元即可以单独作为教学软件实用,也可与其他单元链接,构成一个课程的整体。每个单元都应是独立的、完整的,并具有选择性和灵活性,便于与常规教学中实施的学分制、工学交替等相对接。同一课程的所有单元都均为同一学科科目,各个单元之间具有平行、递进、包容的逻辑关系,各个单元的排列组合,形成教学软件的多级分支和多层页面。为便于教育受众使用,在软件分支和页面设计中,应尽力减少页面层级,尽力在单一的界面内集成更多的对象、功能和特性,以便易于实现人机交互技术。

 

职业教育教学软件面向社会每一个人,一定要避免固化教学过程,具有普遍适用性。;1)区别于传统媒体技术和普通课件制作技术,职业教育教学软件应尽力体现模块化、智能化和交互性,确保结构清晰、适应性强;(2教学内容间的转换(超文本链接)应尽力避免简单的跳转,或仅仅与传统课堂教学过程相对应,应侧重于交流和共享;(3)在运转软件的硬件要求方面,应确保软件在普通PC机上就能运行,不需要特殊的设置和装置;(4在增强软件普适性的同时,还应注意软件的安全性、系统运行的稳定性及测试内容、结果的保密性等,设置独特的文件存储方式,对相关保密内容进行加密处理,明确只有授权人员才能打开文件。

 

(六)智能性

 

职业教育教学软件应特别注重软件内部诸因素、诸对象之间的互动关系,注重知识建构的过程。目前,市场在售的部分教学软件之所以难于被教育受众广泛接受,关键就在于过多的非教学因素影响了学习者的注意力。因此,职业教育教学软件一定要做到界面美观、简洁、大方,即对学习者多元智能产生一定的刺激,提升学习效果,又不会影响教学主题。对一些较难理解的课程内容则应尽可能地使用声、像等多种手段,以求最佳教学效果。尤其要重视对诸如工科类机械操作系统、商科类商业专题运作过程等的仿真智能环节设计,使学习者能够在计算机软件上的仿真环境中模拟练习,在奠定一定的操作基础之后,再进实训车间(或工厂实际操作。这样,既可减少教学过程对机器设备等的损耗,还可以节约实习、实训等材料,达到提高学习速度、降低学习成本的效果。

 

四、实施软件开发的各个阶段遵循开发、试验、推广“三步走”模式,将职业教育教学软件的开发过程划分为以下六个阶段。4](一)可行性分析计划阶段组织相关开发人员深入职业院校、短期培训机构、成人教育机构等进行市场调研,在认真听取需求方对开发职业教育教学软件的具体要求的基础上,进行项目可行性分析股资效益分析),制订开发计划。要以文件的形式,把开发人员职责、开发进度、所需经费和所需计算机软硬件条件等作出具体安排,以此开展、检查各项工作。

 

(二软件需求调研阶段在确定开发某一教学软件可行的情况下,需进一步对软件需要实现的功能进行详细分析,编写出软件需求说明书和数据要求说明书。通过编制软件需求说明书,可为使用者和软件开发者双方对该软件的初始规定有1个共同的理解,使之成为整个开发工作的基础。其主要内容包括对功能、性能的规定等;通过编制数据要求说明书,可向整个开发过程提供关于被处理数据的描述和数据采集要求等技术信息。

 

(三软件开发设计阶段

 

根据需求分析的结果,对整个软件系统进行宏观总体设计和微观细节设计,编写概要设计说明书、详细设计说明书、数据库设计说明书和测试计划等。概要设计说明书对程序系统做出设计,包括基本处理流程、组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等;详细设计说明书应说明软件系统的各个层次中每1个程序(每个模块或子程序的设计考虑;数据库设计说明书应明确数据库的所有标识、逻辑结构等;测试计划应提出每项测试活动的内容、进度安排、设计考虑、测试数据的整理方法及评价准则等。

 

(四运行程序代码实现阶段在程序编码过程中,应制定出统一、符合标准的编写规范,以此保证程序的可读性、易维护性,提高其运行效率。此阶段应编写模块开发卷宗和用户手册(操作手册)等。6]在模块开发过程中,每完成i个模块或一组密切相关模块时就编写出i份模块开发卷宗,待开发工作结束后,把所有的模块开发卷宗汇集在一起,为整个模块进行管理和复审提供依据,为将来软件系统维护提供技术信息;用户手册的编制可为操作人员提供软件运行的基本知识以及操作方法细节等。

 

(五分段实际测试阶段

 

教学软件完成后要经过严密的测试,以发现软件存在的问题并加以纠正。测试过程分为单元测试、组装测试以及系统测试三个阶段,采用白盒测试和黑盒测试两种测试方法。在测试过程中,应建立详细的测试计划并认真落实,避免测试的盲目性和随意性。随着测试工作的进行,应把测试的结果、发现的问题等加以记载,编写出模块开发卷宗测试分析报告。为积累开发工作经验,软件开发结束后应及时编写软件开发总结报告。

 

(六)软件运行与维护阶段在教学软件开发完成并投人使用后,由于多方面的原因,软件可能出现不能继续适应用户要求、出现新问题等情况。以延续软件的使用寿命为目的,或以服务于用户为目的,均需要软件开发者及时关注软件的使用及运行状况,并重点抓好纠错性维护和改进性维护等工作。

 

五、软件开发团队的适宜组织方式开发高质量教学软件,必须组建一支业务精良的专业队伍,建立起功能齐全的组织体系,形成高效运转的管理体制和运行机制。所有开发人员必须围绕共同目标,依据各自职责,通力合作,扎实做好各项工作。

 

(一)以软件功能为核心,合理配置研发人员确保软件开发质量,需要建立一支教学设计、美术设计和程序设计与制作专业人才队伍。参与开发的学科教师具体负责确定教学目标、教学设计及教案制定等工作,与其他开发人员一起分析课程内容、确定软件功能结构、选择媒体技术等;参与开发的美术设计人员在了解软件开发基本思路与格调的基础上,运用自己的“美术思维”对界面进行构思,达到美观和谐的要求;参与开发的计算机专业人员负责具体技术开发工作,包括图像、声音、视频等素材的运用,编写模块程序、调试修改等。此外,要注重发挥学生在开发教学软件中的作用,充分发挥他们了解教学软件优缺点的优势,让他们帮助测试软件,尽可能多地发现错误和不足。

 

二强化交流协作过程,实现“可持续开发”

 

分析成功教学软件的开发过程,发现其路径并非为以“教案一脚本一软件”为模式的单向流程,而是“市场基本需求一软件原型一新的需求认识一新的软件模型”这样一个循环反复、逐步提升的过程。因此,不断开发出优秀、实用的教学软件,需要学科优秀教师和计算机专业人员经常深入交流,全面理解所开发软件的各种特性,领会软件开发的思路和意图。计算机专业人员可向学科教师提出各种建议,帮助学科教师扩展思路,优化设计。此外,软件开发人员在进行市场调查时,还应加强与软件应用单位或个人的交流工作,充分征求他们的批评意见,实现认识不断提升、技术不断改进、内容不断更新。

 

(三依据软件内容,确定开发组织模式

 

职业教育教学软件可大可小,可包括一门学科的所有内容,也可以是一个单元、一个知识点。较小教学软件的开发,有的只需一两个人,花几个星期就能做完。但大的教学软件,就需要一个专门工作班子,花更多的时间来开发。对容量较小的教学软件,若学科教师(如计算机专业)计算机技术水平较高,可采用个人包办模式;若学科教师对软件设计与制作比较生疏,可以采用行政指定专业教师与计算机专业人员合作进行开发;若软件开发已经形成了一定的基础,则可鼓励学科教师与计算机专业人员自行组成开发小组,形成自由组合开发模式;对一些现代教育技术推广较好、软件制作力量较强的学科,可采用由分到合的开发模式。先由学科专业教师自行制作单个知识点的“积件”,而后学校再组织人员对“积件”进行集合,形成大型教学软件。

 

(四)立足现实条件,逐步建立良好的开发机制