离初赛提交作品的截止日期只有不到一个月的时间,我想这个时候有必要总结一下过去一段时间我们得到的一些结论,然后为下一阶段的工作提出具体的计划来。
在前一阶段的时间里,我们主要是就SOA的概念,以及如何在大赛的题目要求下实现SOA的思想进行了一些探索。现在看来,SOA从大的方面来说可以理解为将以前完全由开发人员根据客户的需求构建系统,转变为由开发人员开发出各个功能模块(也就是服务),然后由客户根据自己的业务需求对这些功能进行组织,从而构成一个系统。这样以来,系统就可以随需应变,最大程度上重用原有的IT资源。
概括起来,要实现一个SOA应用,要做以下几个工作:
首先是提供一系列封装完好的服务,对业务需求进行分析细化,粒度越细灵活性就会越大,通过统一的标准描述,例如WSDL;
然后必须要有一个容器,可以提供发布和订阅的功能,所有的服务都放在里面供业务逻辑调用,ESB应该就是起这个作用;
接下来就必须将这些服务按照一定的业务逻辑流程组合在一起,这就是工作流要出现的地方。
上面用很浅显的语言对SOA进行了分析,我们对SOA的认识应该说都还很不深刻,仅仅靠看资料然后慢慢琢磨就指望能够提高对SOA的理解,是不切实际的,而且比赛的时间也不允许我们做到对SOA有很透彻的研究以后再去动手。眼下我们最重要也是最迫切的事情就是结合大赛题目作出一些实质性的工作,我建议从以下几个方面开始着手:
(1) 对大赛题目进行需求分析,确定业务流程,划分功能模块;
(2) ESB在系统集成中起到了很重要的作用,尽快研究IBM ESB的使用方法;
(3) 文档的整理工作应该马上展开,先整理出基本的格式以满足大赛的要求,待方案确定后再完善具体的内容。
根据以上的工作需求,建议按人员角色进行工作任务划分:
(1) 由一名队员专门负责文档的整理,要求在一个星期的时间内整出一份符合大赛要求的文档模板;
(2) 由两名队员专门负责需求分析,业务流程分析以及建模,要求在一个星期内完成;
(3) 由一名队员专门负责对IBM ESB的研究,了解怎样在WebSphere上实现SOA应用。
欢迎大家就以上内容广泛地提出意见。
by Zorro