LoveUnix » 行业应用 项目实施 » 短信银行(TongSMS 1.5)开发流程建议
让LU留住您的每

一天 让LU博客留住您的每一天
2003-10-7 10:54 threehair
短信银行(TongSMS 1.5)开发流程建议 <br /><br />2003-6-26 14:05:23<br /><br /><br />[发布并查看相关评论] <br />短信银行组开发经理 刘邦涛 <br /><br />1.概述<br />  以架构为核心的,用例驱动的,基于迭代的开发方法。<br /><br />  针对现阶段的TongSMS 1.5的开发过程中,着重强调:<br /><br />  标准的开发流程----------配置管理-----单元测试------测试覆盖率(?) <br /><br />  所有的文档进入ml库。所有的代码进入psl库。开发流程如下图所示:<br /> <br /><img src='http://www.tongtech.com/jsqy/gljy.gif' border='0' alt='user posted image' /><br />2.前期准备工作:<br />1 版本控制管理工具<br /><br />2 粗略的功能说明<br /><br /><br />3.具体过程<br />在开发过程中我们依循的准则是80-20规则,即上一阶段的工作完成了80%后就开始下一个阶段的工作。<br /><br />3.0 任务书<br />项目的启动以任务书为标志。任务书由高级管理者签发。<br /><br />3.1 需求设计阶段<br />输入: 任务书; 需求规格说明书模版;需求跟踪矩阵模版;<br /><br />目的: 产生详细的需求说明书。建立需求基线。此阶段完成以后,任何对需求的修改都需要评审。这一步紧紧需要定义到具体有哪些需求,以及对每一个需求的简要描述。<br /><br />输出: 需求规格说明书;需求跟踪矩阵;术语表<br /><br />过程: 根据市场的需求,以及相应的竞争对手的产品功能。整理后形成。<br /><br /><br /><br />3.2 功能分析阶段<br />输入: 需求规格说明书;用例模版;界面描述模版;<br /><br />目的: 针对需求规格说明书中定义的需求,使用use case进行细化。需要具体定义每一步的流程。对于系统中需要用到的界面。在此阶段完成。<br /><br />输出: 详细的用例;界面;<br /><br />过程: 针对每一个功能需求,写出详细的use case。如果需要界面,需要同时提供界面文档。对于界面部分,最好能够提供可以看见的模拟。<br /><br /><br /><br />3.3 架构开发阶段<br />与功能分析是同步进行<br /><br />输入:粗略的功能说明<br /><br />目的:根据粗略的功能说明,设计一种合适的体系结构。满足系统的要求,并充分考虑各种因素。除了可扩展性,性能等等软件工程因素,一个很重要的考虑就是组内项目成员对某一种技术的熟悉程度,这样可能会限制架构采用的技术<br /><br />输出:架构文档,架构代码。<br /><br />过程:首先书写大致的架构文档,提交讨论,“大致”确定后就可以编写架构代码。这可能是一个反复迭代的过程。直至大的功能点可以在该架构上跑通,没有明显的不一致问题。则该阶段结束。在这个工程中,一个很重要的工作是定义接口。针对短信银行,需要定义与银行的接口,与管理中心的接口,与手机的接口,外部到来的主动提醒事件的接口,可能还有与证券,与汇率等等的接口。这些都需要综合考虑。采取一致的处理方式。系统核心部分的输入输出的方式不能太多。核心不能太大。否则,就失去意义。<br /><br />3.4 程序设计阶段<br />输入: “详细”的用例说明书,界面描述。系统架构文档;系统架构代码;程序设计说明书模版;<br /><br />目的: 本阶段的主要目的是生成程序设计说明书,形成稳定的系统架构。程序设计说明书建议使用UML,对需求跟踪矩阵的每一个功能点,形成”单独”的设计文档。<br /><br />输出: 设计文档;修改后的架构文档;<br /><br />过程: 首先将系统分为几个大的部分,可能是按照分层的思想分模块,比如web层,业务层,持久层。数据库表设计等等。每部分一个或者几个人。进行设计。完成后讨论,评审。<br /><br />问题:公用代码怎样处理?<br /><br /><br /><br />3.5 编码和单元测试阶段<br />输入:系统架构文档;系统架构代码;程序设计说明书;编码规范说明;junit<br /><br />目的: 完成代码编写和单元测试。测试需要使用自动化测试。<br /><br />输出: 代码;单元测试案例;修改后程序设计说明书;<br /><br />过程: 编写某一个功能的代码,编写单元测试案例,正确后提交。然后编写下一个功能。依此类推;实施迭代的开发过程;<br /><br /><br /><br />3.6 集成测试<br />输入: 需求说明书;需求跟踪矩阵;自动测试工具?<br /><br />目的: 依照设计文档对程序进行完整的测试。<br /><br />输出: 测试报告<br /><br />过程: 书写集成测试方案;编写测试案例,案例中的绝大部分功能应该基于自动化测试工具,可以进行自动测试;进行测试;填写测试报告;在这其中还有一个修改bug的过程。<br /><br />4 总结<br />制定这个开发过程,我们主要考虑了现阶段项目的实际情况,以及上一版中出现的问题,有针对性地提出了这些开发过程。希望能够在上一版的基础上能够使项目更加可控。<br /><br />我们需要强调的是,每一次的开发过程,都是随着我们对项目以及软件工程的理解,在不断的变化的。这一次的开发过程,仅仅体现了在现阶段,在目前这个项目上,我们需要做到的。<br /><br />这个文档是在大家的意见的基础上,搜集整理而成。<br /><br />针对项目的每一个过程,我们提供了相应的模板,希望能够在项目的实施过程中不断地改进完善。<br />2003-06-22<br /><br />修订历史<br /><br />2003-04-20 刘邦涛建立初步版本<br /><br />2003-05-26 对上一版进行修订,加入了流程图。<br /><br />2003-05-28 建立了每一个过程对应的模板<br /><br />2003-06-11 与童欣,张婉秋讨论。并将上述文档交给张婉秋整理成正式文档。准备提交项目组讨论进行正式的讨论。<br /><br />2003-06-22 小的修订。主要针对本次文章。

2003-10-8 12:43 无双
很规范啊<br />虽然短信银行没有什么前途(主要在与银行间产权分不清)<br /><br />但是这里的设计图还是有参考价值的

2003-10-8 15:00 threehair
同意。我觉得本来软件工程这块概念性比较强,所以想找一些具体的内容有助于理解软件工程。

2003-10-8 17:06 无双
好啊<br />你考过了高程一起研究吧<br /><br />没有东西练手真难

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.