现在的位置: 首页 > 综合 > 正文

项目建模大致流程

2018年03月31日 ⁄ 综合 ⁄ 共 2089字 ⁄ 字号 评论关闭

一、前言

从10年初到现在13年5月,差不多干了3年多的管理了,虽然是部门经理的职位,带着两个技术团队(iOS & Android),但是,由于是小公司,所以,除了日常的团队管理外,更多的是技术上和项目上的管理,以及参与手机跨平台架构设计,UML建模和Coding工作,今天这篇文章,就讲讲整个项目UML建模的大致流程。

虽然,小公司,像我现在所在的公司,不到100人,基本上,都是上面的领导拍着脑袋决定做什么,不做什么,但是,在我看来,无论做什么项目,还是得了解领导想做一个什么样的应用,含有哪些功能,UI界面如何,项目周期以及上线运营要到达一个什么样的效果,我都必需要提前很早了解个大致,并在接下来的细化中,不断完善。

二、流程

大致的流程分为:

a. 发现业务过程;

b. 执行领域分析;

c. 识别协作系统;

d. 发现系统需求;

e. 提交客户结果。

2.1 发现业务过程

做任务一个项目,都需要了解这个项目的业务过程,即这个项目最终的结果,要达到客户心里所想的那样,符合需求。

通常,需要先与客户的负责人沟通,从业务的初始状态,开始与客户交流,倾听,记录客户叙述整个的业务过程,积极与客户交流该业务中你可能不太理解或不明白的业务,让整个过程表现的就像是朋友间的聊天,轻松自在而不会使气氛很凝重。

当然,客户也不可能完全了解整个业务过程,那么你就得在倾听或交流中,发现潜在的业务逻辑,并在客户将整个业务过程大致叙述完之后,再将这些潜在的业务逻辑一个一个的问客户。

最终,根据这份会话记录,得出一份UML的活动图(最好以泳道图的方式展现更加直观)给客户看,目的:一是让客户重新了解一次这个项目的业务逻辑,另一个是避免有漏掉的业务。

可能由于项目较大,或是无法一次谈话,就能全部了解清楚,因此,最好每次只与客户聊一到两个话题即可。

2.2 执行领域分析

了解了整个业务过程这后,接下来,就是分析这个业务,将其拆成许多个类图,然后,分析各个类图,将相同属性功能的合并为同一个类图。

2.3 识别协作系统

将所有类图关联起来,有些类图可能之间存在聚合或组合关系,有些是抽象类,因此有些类图是泛化关系。

2.4 发现系统需求

如果一个大型系统,如物流,那么涉及的角色,业务环节较多,那么需要按照不同的角色,进行多次联合会议,来进一步细化业务,最终得到一个按某种规则(如角色,环节)来定义的包图,而每个规则又是一个小包,这个小包含有相关联的用例图。

2.5 提交客户结果

这里的结果,不是开发出来的系统或者应用,而只是根据二、三、四和五得出来的需求,离真正的概要设计,详细设计还远着很。根据前面所说,我们最终将得到:业务过程图(二),类图及之间关系(三、四)和功能包图(五)。这些东西将提交给客户,并我们将保留一份。

 三、细化建模和设计

这个部分开始,工程师们开始要考虑概要设计和详细设计了,同时,测试人员也要开始考虑编写白盒和黑盒的测试用例,不过,为了更进一步的让工程师和测试人员了解更全面的信息,我们将会开始做如下事情:

3.1 用例图描述

由2.4,我们有了功能包图和许多的用例图,接下来,咱们需要分析这些用例图,并对它们加以描述,一个用例图,用一个描述,还要写上前置条件,后置条件,和步骤。

如下格式:

a. 用例"xxxx"

    描述:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    前置条件: xxxxxxx

    后置条件: xxxxxxxxx

    操作步骤:1. xxxx; 2. xxxxx; 3. xxxx

最终根据这些用例图的描述,可以将同一个功能包中的所有用例相互的关联起来。用例图中,系统外的参与者是不可少的,别忘记加上。

3.2 功能包之间的关系:交互

一个系统有不同的功能区分,这时,就需要将这些功能集成起来,并用一种方式来描述它们之间是如何交互的,知道了这些,工程师们就可以更加轻松简单的编写代码。

在UML中,描述交互的图有两种:顺序图和协作图。

个人比较喜欢用顺序图来描述,因为对象之间的交互如果一但多起来,协作图就会看起来比较混乱,而顺序图的对象间的交互很直观,而且还能描述对象的生命周期。

3.3 GUI、前后端及部署

到目前为止,我们还没有一个GUI的DEMO让我们的客户看到一个雏形,因此,我们这部分就开始让美术设计人员参与界面的设计,别小看这个环节,GUI的好坏,决定着使用着的心情,一个好看的GUI,操作方便的GUI可以让用户使用的心情愉快,而相反,用户会越来越不想使用,直到最后产生抵触的情绪并最终放弃使用。所以,我们需要将设计出来的DEMO给客户看,并让客户体验一些简单的功能,得到客户的反馈以改进我们的界面设计。

现在的系统,都分为前端与后端(后台),而前端可以为PC(台式),移动设备(笔记本,手机,PAD等),因此,要考虑产品部署到前端和后端时,不能导致某些功能不能使用,或与部署的系统冲突不兼容等原因。考虑到这些之后,就需要给出一个部署图。

四、总结

以上说的,只是我平时日积月累下来的一些经验,和参考,阅读一些UML建模方面的书籍的心得体会,我也希望大家给出一些建议,让我可以更进一步的改进自己的工作方法。

抱歉!评论已关闭.