方便阅读。
4. action工程师,根据业务的需求写Action类(兼配置文件)以控制用户数据交互,主要依据UI工程师的结果并调用Service工程师写的接口。在Action中不执行业务逻辑,只做一些简单的界面逻辑判断和数据封装。比如把页面提交的数据封装为类的实例,或者从会话中取得用户的状态。
5.service工程师,根据业务的需求写service接口和实现(兼配置文件),供Action工程师调用,service的实现依赖于dao工程师的接口。在service层,把action的调用作为一个业务进行封装,并返回业务执行的结果,比如,在action层调用登陆验证,在service层进行验证,验证成功后填写用户登录日志。是否填写用户登录日志这样的业务对于action的调用者是未知的,action只调用service的接口并对返回结果进行判断。
6. dao工程师,顾名思义,dao工程师提供dao接口和实现(兼配置文件),供service层使用,dao层只关注的数据的存取,并返回封装后的结果。在dao层不应该包含任何业务逻辑判断的代码。
7.db工程师,根据业务需求设计满足业务需求的数据库定义,并对数据库进行相应的优化,提交的内容为数据库定义的Sql语句、相应的说明文档,以及包含测试数据的sql语句。
8. test工程师,测试工程师的主要工作是对action层,service层,dao层,数据库写测试代码,包括测试类和测试的sql语句。
9. 综合管理角色(可以为团队中的任何人),主要工作为开发环境的搭建,代码版本控制,编程规范扩展,代码规范执行检查,争端仲裁,进度控制,技术选择。并随时准备为团队中遇到困难的成员解决问题。这个角色很重要,必须能有单独的一个人能有足够的时间解决团队的问题,并为团队中的成员提供技术支持等服务,这个角色在某些特定的场景下可以由团队中的任何人承担,尤其在技术咨询方面,部分团队成员对某一个特定问题的理解更深刻。
以上9种角色可以进行合并,在中小软件公司中,由于资源的限制,不得不合并一些角色。美工可以担任部分UI工程师角色,service工程师可以同时担任dao,db,test工程师角色,action工程师担任部分UI工程师,项目经理担任综合管理和需求调研角色。在需求确定的情况下,一个用例经过充分沟通后,应该产生以下几种类型的文档:数据库设计,dao接口,service接口,action类,UI数据交互,界面设计,测试代码。这些文档需要团队成员共同讨论并确认,以此形成项目任务,作为制定项目计划的参考。
无论团队人员有多少,对于一个好的项目实现来说,研发团队中应该包含以上角色。这样做的好处是:团队成员任务明确,分工精细,责任到位,合作愉快,方便制定计划。这样写出来的程序方便扩展和维护,遇到问题时可以快速定位并进行响应,有利于制定代码规范,新团队成员能较快的融入团队,增强项目的可延续性(部分团队成员的流动不会对程序的开发造成大的损失,很少出现只有一个成员了解某些代码逻辑的情况)。Good Luck,祝愿你所在的团所有成员合作愉快。
本文出自 “凌辉” 博客,请务必保留此出处http://tianli.blog.51cto.com/190322/213915