UML软件工程组织 |
应用Rational 工具简化基于J2EE的项目 (一) | ||||
第一部分 介绍 Steven Franklin 这个由多篇文章组成的系列文章讲述了如何在很紧的时间和预算的情况下通过应用 Rational 统一过程(RUP)以及 Rational 的其他工具来开发一个软件项目的。 文章的第一部分包含了高层次的计划和需求的引出。 Raional 的开发工具套件支持双向工程(RTE)、分布式的和协作的开发、高度迭代的开发周期和更多的一些特性。 这个由多篇文章组成的系列的第一部分将向大家展示 Rational 工具的作用,并显示你能够通过使用 Rational 的工具来简化分布式的 J2EE(Java 2 Platform, Enterprise Edition) 项目。我们将看一个将单的虚构的项目,并以高层次的计划和需求的引出作为开发,并将过渡到 Rational 统一过程(RUP)的各个阶段。 本文假设你已经对 RUP 有一定的了解;如果你并不了解 RUP 你可以查看文章最后列出的 相关资源. 为了简单起见,我们不想完成 RUP 中所有必要的迭代,而是只显示在项目各个阶段被用到的工具的特性。我们将跟随着我们的小的样例项目,完成它的第一个主要的构建,如下:
这个系列文章的每一篇都有相似的组织形式 ,每篇文章都以一个路标开始,就像下面的一样,每一个链接会连到相应的文章部分。
样例项目介绍 我们假设另外一个虚拟的公司,Audiophile Speaker Design, Inc. (ASDI),这个公司位于 New Brunswick 的附近。 ASDI 开始只是一家从事扬声器制造和设计的小公司,主要开发针对个人用户的一些定制的扬声器方案。随着 ASDI 公司的声望的增加,他们开发出更多主流的扬声器产品线,并向加拿大和北美国家的用户和电子商店供应产品。 ASDI 的技术设施不能满足他们的成长需要。他们已经难以管理定单,计划生产材料,跟踪部分需求和管理运输。更主要的是,ASDI 的客户抱怨他们缺乏浏览可用性和交付过程的能力。 ASDI 公司意识到了从纸张和电子表格到自动化的资产管理系统的转变是伴随风险的,ASDI 决定将他们的所有 IT 需求交给 Lookoff 一家来作。他们选择我们的主要原因是我们的良好声誉和距离他们的公司很近(便于支持)。 Note that although the sample project is fictional, it's based on my personal experiences, observation of other projects, and knowledge I've acquired through excellent books such as those listed under 注意:虽然样例项目是虚构的,但是它是基于我的个人经验、对其他项目的观察和我通过一些优秀的书籍(例如被列在文章结尾的相关资源)获取的知识。 引出高层次需求 契约问题 我们对客户强调的 RUP 的关键特性包括:
客户还是很关心软件交付的期限的缺乏。通过一些讨论,我们成功的显示了客户从项目的开始到结束都应该对项目的进展有足够的了解。他们也想项目的预算可以分阶段支付,并且要求我们在执行项目时履行一些义务。因此项目计划被划分为两给阶段:
对于阶段1,客户要求250K CDN 的上限,我们觉得这个预算对于我们创建第一个原型系统的演示版本是很充裕的。我们创建了如图 1 的干特图,我们在四个月是标记这个点应该产生演示版本,并且与客户一起审阅以确保至少与第一阶段的时间表粗略的保持同步。(之后我们与他们更加紧密的一起检查了这个时间进度表) 图一中的图是用 Microsoft Visio 创建的,但是你可以很容易的使用 Microsoft Project 或者 一些类似的软件工具来计划你的项目。这个图表对我们的主要目的是对时间进对和里程碑达成一致,并且建立工作分解结构(WBS)的层次图,工作分解结构中的每一项我们都可以跟踪、估计和执行。 编程问题 虽然 ASDI 同意了我们使用迭代和增量的开发(基于 RUP)方法,但是他们对这种方法似乎不感兴趣。他们希望得到下面的东西:
我们简单的将这些里程碑插到了我们的过程当中(如图 1 所示).
ASDI 也计划雇用一个 IT 经理与我们联络,同时也负责维护和管理完成的项目。我们需要 ASDI 的这样一个角色的人加入到项目中,这个人对于项目来说应该是一个技术上的权威。不幸的是, 这个 IT 经理(对公司来说是新兴的事物)缺乏客户运作的知识,就像我们的团队中的一样。 总结 计划未来 我们也必须细化我们的时间进度表,并尽快的开始我们探测好的起步阶段。在阶段1期间,要确保一个方案是有成本效益的和满足客户需求的,我们就必须找出如何能够满足客户需求。客户已经提到过,在决定是否将项目进行到第2阶段的主要因素是最终系统的维护和系统架构软件/硬件的成本。 总而言之,我们在前几周应该做的事情包括:
主要风险 我们认为我们必须建立一个问题的数据库,我们能够以一种集中查找数据库的方式提出行动条目、问题和风险。通过将这些信息发布到网上,这样就可以使不论是集中办公还是远程的开发团队都可以监视项目信息。如果有必要的话甚至远距离的工作者都可以跟踪和更新项目的风险。
|
版权所有:UML软件工程组织 |