随着对项目管理理解的深入,自己对项目管理的两点有了深刻理解:需求开发与管理、项目组织结构。
一、需求开发与管理
宽泛地讲,需求来源于用户的一些“需要”,这些“需要”被分析、确认后形成完整的文档,该文档详细地说明了产品“必须或应当”做什么。所以如果只有一些 零碎的对话、资料或邮件,你就以为自己已经掌握了需求,那是自欺欺人。需求是产品的根源,需求工作的优劣对产品影响最大。就像一条河流,如果源头被污染 了,那么整条河流也就被污染了。 我们经常看到的是:人们并不清楚究竟该做什么,但却一直忙碌不停地开发。
Adobe高级技术官员 Christophe Coenraets发表了一篇题为"30-Minute Flex Test-Drive for Java Developers."的文章,目的是为Java开发者在很短的时间内学习Flex的关键特性,以及它的潜在的编程模型提供机会。
通过配置运行在Tomcat上或另一个应用服务器上的内含的WAR文件,向开发人员展示了10个应用事例。这些例子主要集中于将Flex与Java整合, 其中包括远程方法与web services的,server push,实时协作,发布/订阅消息与JMS联合以及持续性。它们也演示了图表与多媒体组件等特点。
从企业应用到简单的CRUD应用,Flex正被采用。对于你们当中已经采用Flex构建了企业应用,选择它的原因是什么呢?对于它,你又喜欢它什么了呢?
Flex正被一些Java shops,ISVs和OEMs采用来在防火墙内部与外部构建应用。然而,我也意识到仍有许多的Java开发者并不熟悉Flex,并且有时对它有错误概 念。Flex与Java back-end结合的特别好,从试用过Flex的开发者反馈回的信息看对它的评价一直都是非常棒的。
一个问题就是,每天我们都有许多新产品要去试用,但是我们仅有这么多的时间…,因此,我写了“this 30 minutes test-drive”,用最少的时间,给出开发者对于Flex的理解—Flex如何工作,它能做些什么:你要做的就是配置运行在你选择的Tomcat上 或另一个应用服务器上的内含的WAR文件,这些例子主要集中于将Flex与Java back-end整合,针对的读者是对Flex事先没有了解的Java开发者把你们的问题/评论和任何能提高这个测试的建议发给我们,不要迟疑,多 谢!!!
这个测试的目的是用较少的时间,给出开发者对于Flex的理解—Flex如何工作,它能做些什么。测试由尽可能简明的例子组成,清晰地展示了有趣的特征。 这些例子主要集中于将Flex与Java back-end整合。针对的读者是对Flex事先没有了解的Java开发者
开始之前你要知道的几件事...
Flex编程模块由以下部分组成
MXML,一个XML语言,用来公开地展示你的应用的用户接。ActionScript,一个符合ECMAScript的面向对象的编程模块。除了语法上 的一些不同,ActionScript与Java看上去以及感受上很相似,也支持面向对象结构:包,类。继承,接口,强制类型(也是动态性)等等。
一个扩展的类库。在http://livedocs.macromedia.com/flex/2/langref/index.html上可以获得与 Javadoc格式类似的在线的API文档,Flex源代码(.mxml和.as文件)被编译成Flash字节码(.swf),在客户端可以被Flash 虚拟机执行。
你可以通过不同的方式使用Flex编译器:从命令行做为ant脚本的一部分,使用FlexBuilder,编译过程被整合于 IDE中使用web编译器(可以通过Flex Data Services获得)。这与JSP编译模型有些类似,第一次一个应用被要求编译成字节码,然后缓存到服务并发请求中。
在产品运行的环境中你根本不用web编译器,然而在这个测试中为了在你机器上安装最少量的组件,我们一直使用了web编译器(你需要安装的是一个war文件)。
Flex产品包括:
Flex SDK,它是免费的,包含Flex库,编译器(mxmlc),调试器,文档。
Flex Data Services (FDS),一个部署于你的J2EE应用服务器上的一套可选择的服务器端组件。FDS包括一个Java RPC 服务(Java RPC service--见例3),发布/订阅消息(publish/subscribe messaging--见例6与7),数据管理服务(data management services --见例8)。FDS对于采用单CPU情况是免费的(FDS Express),如果部署在多CPU系统上,需要按每CPU方式得到许可。
FlexBuilder,一个用于Flex开发的可选择的IDE。做为一个为Eclipse构建的插件,FlexBuilder包括一个设计视图和一个代码视 图,代码提示,可视调试等,FlexBuilder
按每开发者方式为基础获得许可。
可选择charting component(图表组件)按每开发者方式为基础获得许可。
你可以完全免费地使用SDK并选择IDE来开发和部署Flex应用。对于需要Flex Data Services的例子我会显著地标示出来。
安装测试驱动文件
因为我们将使用Flex Data Services,你需要一个J2EE服务器或最小程度上,要有一个Servlet容器。
下载测试驱动的war文件。
如果你要使用执行全部J2EE stack的应用服务器(IBM Websphere, BEA Weblogic, JBoss, JRun,等等),从http: //coenraets.org/download/testdrive/flex4j/j2ee/testdrive.war下载要用到的版本。它包括 Flex Data Services的应用事例,内嵌的支持事例的HSQLDB数据库。
如果你使用Tomcat 5.5.x,从http: //coenraets.org/download/testdrive/flex4j/tomcat/testdrive.war下载要用到的版本。它 包括内嵌的支持事例的HSQLDB数据库,JOTM(在例8中用到的一个数据管理服务--data management services所需要的Java事务API --Java Transaction API的开源实现)。
如果你使用Tomcat 5.0.x,从http://coenraets.org/download/testdrive/flex4j/tomcat50
/testdrive.war 下载要用到的版本。它包括Flex Data Services,应用事例,内嵌的支持事例的HSQLDB数据库,JOTM(在例8中用到的一个数据管理服务--data management services所需要的Java事务API --Java Transaction API的开源实现)。
注意:5.5.x和5.0.x版本唯一不同就是在META-INF/context.xml文件中的JOTM的配置(在Tomcat 5.5中你配置UserTransaction的方式已经改变了)。
Deploy testdrive.war in your application server
在你的应用服务器中部署testdrive.war文件 ,访问http://localhost:8080/testdrive(适当地改变主机名和端口号)。