所做的项目就要进尾声,做为开发组的一员,总会根据自己所做的,所写的总结一些,思考一些,为自己以后的项目开发提供经验和教训。
看了听棠.NET 所写的关于构架中COMMON层的想法,很有同感,这也是我常常思考的问题:如何使一个项目以最小的代码量,最大的一致性完成?能不能为以后类似的项目提供现成的类库?而不是周而复始的重复的写代码?能否使系统便于修改,能以最少的时间,最小的工作量完成客户的需求的变更?这是我所思考的,也是在摸索的。。。。
在一个新项目开始时,在需求分析后,在整个系统构架方面,我相信用.NET的技术人员都能搭建得出来,无非就是数据访问层、实体层、业务逻辑层、业务外观层、表示层。但是我觉得这样的构架是表面的,大体的,只能说是已经把握大致的方向,大凡用.NET 平台开发业务系统都会如此,但是作为一个合格的系统分析员的你,是否已经完成了自己的份内工作呢,没有,远远没有。你必须考虑一些整体性的东西,面向整个系统思考问题,而不是面向某个模块,某个功能来思考问题。
那么,如果你是一个系统分析员。你会怎么做呢?
1. 首先将系统纵向划分是不可避免的,也就是将系统划分成一个个的模块:模块的功能,模块的实现,模块的流程,模块级别,模块之间的关系。此时,你的水平的就体现出来了,你应该能根据系统开发的技术,所使用的基础类库来总结出一个BASE模块,也就是COMMON,或许你的公司开发已经很成熟,早就有了公司名.层名.BASE公司名.层名.BASE 的类库,那你得有自己的公司名.项目名.层名.BASE 的类库(模块),为整个系统提供基础服务。比如在ASP。NET的界面层设计时,你是否已经有了CompanyName.ProjectName.WEB.BASE模块呢?是否已经将Duwamish的Pagebase 放进去了,除了这些外,根据本系统的所采用的技术,类库,你是否已经设计出一些HELPER性质类及方法呢,并已经形成开发文档,准备开发呢? 比如:如果你采用了第三方WEB控件库,你是否会有一些WEBCONTROLHELPE类准备放在CompanyName.ProjectName.WEB.BASE里呢?
2.关于编码规范,命名规则的文档,你是否已经准备。是否已经确认项目中的成员已经牢记在心?但这远远不够,你得更加深入的写更多的关于系统整体的文档。比如:系统异常你会怎么处理?系统日志?对类的方法的撰写规范?比如:一个业务管理系统里,可能会有各种各样的单的处理,这些单都要批准,在这个批准逻辑里,你将采用什么样的统一规范的方法,采用什么样的模式,比如:多条批准还是单条批准,方法传入参数的规定,返回参数及消息的规范,你是否已经统统将这些形成文档。你是否为系统的界面表现形式和操作流程形成了界面开发规范文档?是否每个编辑性质的页面都必须固定加入CTRL+S快捷保存方式?
3.你是否有一套整个项目管理系统?能够任务分配,BUG跟踪,进度跟踪。能够在某些COMMON性质的类出来时能够以最快的速度分发给系统开发人员?能否激发整个系统开发人员去发现COMMON。并及时发表在管理系统上。我想,我真的很需要这样的管理系统。如果我是projecter的话。
来源:https://www.cnblogs.com/zhongkeruanjian/archive/2005/03/12/117537.html