其实这些成见都是「以貌取人」,无论Adobe的Flex或微软的Silverlight,前端的互动程序都是「类JavaScript」的技术,对开发者而言并没有很高的技术门坎,至于后端的商业逻辑与数据库存取,其实都是延用既有的技术,所以也不会有数据库串连的困难。
主要的挑战,是开发与设计人员要放下身段跨界学习彼此领域的技术,而不是各自依循原有的工作模式。若心态上存有专业的傲慢,就不会好的协同合作模式,唯有跨越超越这个门坎,才能重塑新的工作流程。
委外开发是必然的选项吗?当开发工具内建RIA的开发机制,你我随手就可以设计简单的互动效果,提升软件的易用性。Adobe甚至在官方网站提供各种应用范例,并公布原始码。所以,若不要求达到很高的美学质感,实现RIA并不昂贵,也不困难。
迷思1
RIA对企业并不实际
酷炫的视觉效果只是加分,简单、直觉才是RIA的王道。回顾Web最早期的应用是为了信息的分享,因此以静态的文件式操作为主,当应用程序搬上Web,便面临许多使用上的困境,例如使用者会反射性地企图按「上一页」返回前一个功能。
虽然Java Applet与ActiveX曾为Web的互动带来一线曙光,但由于效能及档案大小的限制,因此仅局限于小区块的应用。而RIA已带来新的契机,微软的Silverlight与Adobe Flex技术,可以突破过去Web开发的技术瓶颈,为互动设计打开方便之门,使Web应用得以更像一套应用程序。
举例来说,当原本必须点选、确定、换页才能做到的排序与分类机制,改以鼠标拖放完成,不但直觉而且可避免使用者犯错。此外,在Web输入窗体时,提供必要的提示;或者用户离开座位再回来,系统以闪动或变色的方式提示从哪个字段接续工作,诸如此类具导引性互动设计,可有效提高生产力。
迷思2
Flex解决方案成本很高
Flex解决方案,目前来看费用并不贵。
前端开发工具Flex Builder的建议售价,教育版是免费,{zg}等级是35,740元,是开发工具的正常价位。而后端技术则没有限制,企业可弹性选择Java、PHP、.NET,甚至是现在最火红的RoR等,而且在我们采访的案例中,大买家科技选择Flex的原因之一,正是因为Flex的开放性。
Flex之所以给人贵气逼人的印象,源自于Micromedia曾将Flex与自家的Java应用服务器FES(Flex Enterprise Services)捆绑。然而企业宁愿选择WebLogic或WebSphere,或走向Apache的开放源码策略,因此当时FES的推动并不顺利。后来Adobe采开放、松绑策略,因此费用与平台的要求所导致的门坎,从此解禁。
不过,开发成本角度来看,传统网页的开发成本,RIA的一个页面可能衍生50~60种变化,尤其是委外的项目,对「Rich」的要求更高,因此成本可能提升。
迷思3
Ajax比较简单
Ajax主要是JavaScript技术,而Silverlight与ActionScript基本上也都是类JavaScript的语言,因此技术门坎不高。而且,Ajax现阶段没有供企业加速开发的IDE工具,除错困难,因此维护更为辛苦。
再就视觉设计而论,Ajax要实作透明、潮层、阴影或动画等{tx}非常困难,通常是藉助平台(Framework)的帮忙。而这方面则是Silverlight与Flash的强项,透过工具的协助,可简单完成。
美商辛纳基公司台湾区总经理吕维德分享国外的RIA项目经验,他谈到2007年仍有客户询问Ajax项目,但过了7、8月之后,就再也没有出现Ajax的需求,几乎都是Flash的项目。因此他认为:「Ajax有局限性,相较于Flex与Silverlight,它已是上一代的RIA技术。」
此外,企业若考虑安全性问题,JavaScript引发不少信息安全的疑虑,虽然有经验的开发者懂得如何开发安全的程序,但黑客的手法不断翻新,JavaScript随网页下载到客户端,仍有可能被有心人士找到漏洞。
迷思4
设计人不需要学写程序
在RIA的世界,视觉设计人员一定要成长,唯有跨界学习才能与工程师沟通,寻求更好的协同合作方式。
现阶段的RIA都只是炫,却一点也不美。主要的原因在于实作者仍是工程师,所以没有美学的呈现。要有具美学素养的设计人员加入,RIA的层次才有机会提高,不过一般来说,设计人员心态上难以接受写程序,即使写一行程序代码都不能接受。
其实设计师不需要非常了解语法,只要懂得程序的原理,然后靠复制/贴上,就可以省掉许多制图的麻烦。设计师对程序的排斥与过去的工作习惯有关,Flash的动画是以影格概念制作,利用时间轴(Timeline)串连一张张的图档。事实上,有些情况是写程序代码就可以达到同样的效果。
除了设计人员心态上的调整,程序语言也会走向高抽象化的层次,降低学习的门坎。Adobe的ActionScript经过几个版本的演进,已经逐渐简化,但抽象化程度仍然不够高,而微软的VB.NET及C#就更不用说了
迷思5
RIA连接数据库很困难
不懂程序的逻辑可能会有这方面的误解。过去设计人员设计网站的内容,多是动画及图示的展现,当RIA走进企业应用,必须存取数据库再动态产生内容,许多设计师误以为这些内容必须以画图完成。
无论Flash或Silverlight都是前端表示层的技术,而数据库存取属于后端应用,所以两者并无关联,开发者可透过各种数据系结技术串连数据库,并没有实作上的困难。只要链接数据库,再抓取数据再送至前端即可。
以Flash为例,开发者可根据后端采用的技术Java、PHP、JSP选择的链接数据库的方式。而前、后端数据的传递,则可透过HTTP、Web Services、XML或传统的Get/POST等协议互通。
而.NET阵营则是.NET Framework原有的数据系结功能,例如ADO.NET或者Visual Studio 2008将推出的LINQ(Language Integrated Query)等,都可以轻易地串连组件与数据库,几行程码再加上一个SQL述句即可完成。
迷思6
工程师不需要学习设计工具
无论Silverlight或Flex技术,都需要程序逻辑辅助才能真正「动」起来,RIA是开发与设计合作的成果,但双方的协同合作需要了解彼此的领域知识,才能避免鸡同鸭讲的情况。
设计人员设计的动画或者控件的变色/缩放或者对象的重迭效果,{zh1}都会转化成程序的逻辑,开发者若不了解设计工具的运作,就不知道该从何处下手。
其实观察传统的网页开发模式,不难发现设计人员通常是负责按钮或场景等平面设计,剩下的工作都是开发者包办。吕维德也坦承:「设计人员画出版型、大体上切割好之后,就由工程师主导。」
网站进入实作阶段,多数动态效果都是由程序逻辑控制,工程师有必要了解设计领域的知识,甚至具备美学的基础,才能与设计人员合作。
再者,若企业决定委外寻求视觉设计公司的协助,工程师必须担任企业与视觉设计公司沟通的桥梁,了解设计工具的必要性就更高了。
迷思7
企业不需要培养设计人
目前由于视觉与互动设计人才,在企业应用领域相当缺乏,因此RIA项目确实以委外开发居多,但是随着RIA技术的推广,以及开发工具内建视觉设计的机制,企业已可以轻易在软件中加入动态的视觉效果,委外不见得是必然的选项。
其实,简单的互动机制就可以大幅提升软件的易用性,台湾微软特约资深讲师李智桦分析:「事实上,10个工程师中约有2个是美学素养不差的人才。」所以企业可从既有工程师中,寻求具基本设计能力的人才,而随着RIA的逐渐普及,软件的视觉设计水平也会提升。
视觉设计公司与客户是采项目合作模式,所以企业若是寻求长期的顾问服务,成本相对提高很多,再加上跨产业与领域的合作,存在许多沟通的问题,因此失败率很高。
内部的设计人员,也许美学素养比不上视觉设计公司,但仍可担任软件的「化妆师」,协助企业提升提高系统的易用性,降低使用的门坎。
迷思8
设计人在企业没有舞台
设计人员常被称为「美工」,一直以来在企业中的地位不高,但是当企业开始重视软件的「门面」,这类的人才的需求及价值将明显提升。
社会把设计人员极端化,认为学艺术的人往往不修边幅、日夜颠倒、不守规范,事实上未必是如此。如果个性可以接受新鲜事物,愿意参与企业各种产品的包装,那么设计人员便有机会提升企业的整体美学素养,因此重要性不言可喻。
设计人员在企业内有没有升迁的机会,与个人特质有关。而进入企业体系的设计人员,李智桦认为:「他们的职业生涯其实与开发者的立足点相同。」很少开发者是一辈子写程序,{zh1}多数也会走向管理职工作。
当设计人员有机会参与产品的包装,而且是在项目的初期就加入,负责勾勒对外的形象和呈现方式,并担任各部门与开发团队之间沟通与协调的角色,如果足以担此重任,表示他具备很好的待人接物能力,这样的人才也会是主管或产品营销人选