[使用手册] AndroMDA生成SSH架构系统快速入门手册(6)

CshBBrain 2010-01-08
AndroMDA推荐的开发模式

翻译者:Jason S.H.Chen
(英文地址:http://www.andromda.org/index.php?option=com_content&view=article&id=117:development-approach&catid=42:getting-started-java&Itemid=89

本节我们先概述一下开发模式。一般情况下,我们推荐采用敏捷,迭代的开发模式来开发日志跟踪系统。敏捷迭代开发模式将是瀑布开发模式的替代方案之一,在瀑布开发模式中;首先必须完成整个系统的设计工作,然后再进行系统编码,完成编码后再进行测试,最后部署系统;瀑布开发模式是在整个系统的设计开发工作都完了才进行集成测试,这样的话,不能及时发现设计阶段和编码阶段所出现的问题,因此将这些阶段的风险都累积到了集成测试阶段。正因为瀑布开发模式风险太大,所以现在的开发团队都尽量避免使用这种开发模式。和瀑布开发模式不同的是,迭代开发模式鼓励我们尽快看到我们工作的成果,因为有可以评估的工作成果,所以我们能尽可能快的发现问题,并修正出现的问题。
按照敏捷开发模式的理念,我们将经过几次迭代完成日志跟踪系统的开发。在第一次迭代中,我们将开发查询功能。这将包括完成这个功能的用户页面,web层组件,业务层组件,数据访问层组件等组件的开发。在后面的迭代中,我们会先后完成考勤的新增,提交审批和审批等功能。
敏捷开发模式的另外一个重要理念是测试驱动开发,测试驱动开发建议你先完成测试用例的编写,然后编写相应的代码,编写的代码覆盖相应的测试用例。测试用例定义了系统功能的需求,这就强制要求你只编写系统功能必要的代码,到达减少系统中无用的代码。另外你已经创建了一系列的测试用例用于系统的回归测试。我们就拿原型中的查询页面为例吧,要实现此页面的功能,业务层只需要提供2个功能:
1. 提供获取用于界面显示用户选择下拉列表框中的用户信息的列表。
2. 提供根据用户输入的查询条件查询对应结果的功能。
我们先来看怎样实现获取所有用户信息,并用下拉列表框显示在查询条件页面上这个功能:
1. 进行模型创建,创建的模型只需要覆盖获取所有用户信息的测试用例即可。
2. 根据创建的模型生成对应的实体和业务接口。
3. 编写业务方法的单元测试方法,很明显第一运行测试肯定是测试通过的,因为服务方法还没有编写具体的实现。
4. 在业务层实现“getAllUsers”方法。
5. 从新执行测试,确保测试通过。
6. 在查询页面创建下拉列表框调用刚才写的业务方法。
我们将采用同样的模式完成所有一个一个功能。包括这里的根据查询条件进行考勤数据查询功能。
现在我们已经明白了基本的开发模式和开发过程,下面我们将正式进行日志跟踪系统的开发了。
Global site tag (gtag.js) - Google Analytics