是以教育为本位,还是以技术为本位
    这里所谓的“本位”,指的是在二者之间哪一个是目的、哪一个是手段的问题。技术本位的思维令人担忧在教育和技术之间,哪一个是目的?哪一个是手段?教育软件作为一种综合性非常强的产品,具有教育产品和软件产品的共同特性。但是很显然,技术是为教育服务的,技术是教育软件实现的手段;教育是技术服务的对象,是教育软件的目的。但是很不幸,这个非常重要的理念问题不仅没有得到众多的教育软件开发商的重视,连许多从事多年CAI工作的教育工作者也忽视了这个问题。
    笔者曾听过一位教育软件公司的技术总监在教育软件的立项报告会上大谈要开发的教育软件在技术上有多先进,比如完全采用了Java技术,可以跨多种平台;系统完全采用了B/S模式,功能模块非常丰富等,但是对于如何满足学校、教师和学生的教育教学需求,却轻描淡写、一笔带过。
    在只重技术如何先进却忽视了如何满足教育需求的技术本位的思维下,开发出的教育软件虽然在技术上非常先进,但是由于不符合教育教学的实际,造成“黑板搬家”、“书本搬家”的局面,为业界人士所诟病。象这样的产品,又怎么能受用户的欢迎呢?我们的CAI工作者们有许多也深受技术本位思维的桎梏,在技术上跟风,比如今天流行Authorware,就学Authorware,明天流行Flash和Director,就跟着人家学Flash和Director去了。结果造成做出的CAI课件在技术上很先进,界面上很花俏,动画效果、音响效果都非常好,但是在教学实际中使用的效果却不尽人意。花了许多功夫,做了许多文章,但是为什么差强人意呢?因为他们把大量的精力花在如何提高自己的技术手段上,而在CAI的教学设计上还是受传统CAI模式的影响,因此做不出好作品来。
    笔者绝没有让教育软件的开发完全摒弃技术问题的意思,而是说技术是为教育软件的开发服务的,技术问题应该是在充分了解用户需求的基础上产生的,而不是仅仅为了技术的先进性而采用先进的技术,否则就会陷入技术本位的思维,技术本位的思维是开发不出优秀的产品的。
    那么如何体现教育在教育软件开发上的本体地位呢?概括地说,就是要实现从单纯的技术思维向教育思维的转化。具体表现为以下几点:
    深入用户,真正理解用户需求
    客户需求是任何软件开发的第一推动力,但是教育软件开发商却很少深入用户,了解用户的需要。笔者曾听一位技术主管说:“需求分析不是什么人都可以做的。”言外之意只有技术人员才能做需求分析。笔者也承认“需求分析不是什么人都可以做的”,但是却有另外的涵义。需求分析员应该站在用户角度上考虑问题,能够深刻理解客户需求,但同时只有对技术相当深度的理解,能够将教学模型转化为软件开发的技术模型,才能完成真正意义上的需求分析。
    那些总是高高在上而不深入实际、技术至上的纯技术思维的技术人员,是开发不出来优秀的产品的。比如,许多校园网软件声称完全采用了B/S模式,但是当笔者询问如何解决打印问题时,却得知只有将网页复制到Excel中重新排版才能实现打印,这种方式将本来应该很简单的事情搞得非常复杂。打印这一基本功能,是许多系统中必不可少的功能,教育软件也不例外,因此在实际应用中,完全采用B/S模式,反而会使用户感觉非常不便。一味地追求技术上的先进性,反而把简单的事情搞复杂、复杂的事情搞简单了。
    从教育和技术的双重角度审视教育软件
    教育软件一个很不对头的开发模式就是教育软件媒体化,比如采用媒体的术语(比如“脚本”)指导教育软件的开发。笔者建议从教育和技术的双重角度开发教育软件,具体表现为以“模型”代替“脚本”,建立两种模型,一种是教育教学模型,一种是软件结构模型。教育教学模型就是综合与教育软件相关的各种因素(如学习者因素、教学情境因素、教学内容因素等)及其组织结构关系,形成一个图形化的模块化结构,并描述各个模块功能及相互关系。软件结构模型就是在深刻理解教育教学模型的基础上,从技术的角度分析教育教学模型,确定采用什么样的技术开发教育软件最适合,软件有哪些模块、怎样构成,怎样形成一个图形化的模块化结构。软件结构模型与教育教学模型是相对应的,但是侧重点各有不同。笔者反对教育软件的纯技术思维,也同样反对纯教育思维,因为只考虑教育因素而不考虑技术因素,会使教育软件陷入空想之中而无法实现。教育软件同样需要软件技术的强有力的支持。有些教育软件公司至今还在使用体积庞大、运行速度慢的VB来开发教育软件,因此教育软件在技术上还需更上一层楼。
    一言蔽之,教育软件的开发应以教育为本位,教育是技术的目的,技术是教育的手段。优秀的教育软件,必然是目的与手段的完美统一。