研发开发规范

研发制度

 

研发开发规范

 

  

 

 

 

 

2018-05

目  录

版本变更信息 3

    4

第一章 研发开发模式 5

第二章 研发设计原则 5

第三章 团队协作原则 6

第四章 研发需要提交的文件 7

第五章 研发JAVA代码规范 7

以上制度自公布之日执行。 9

 

版本变更信息

编 制 说 明

本手册是针对公司所有研发员工开发而提出的,适合公司进行产品开发的研发员工【开发】。本手册的目的是为了对公司研发人员进行产品开发的工作进行规范。

 

 

第一章 研发开发模式

采用快速迭代的敏捷开发模式,各产品组要熟悉敏捷开发的基本开发理念,标准开发步骤如下:

1. 需求调研:收集、整理需求【参与人员:产品组、实施组、客户】。

2. 产品设计:根据需求设计出思维导图,并细化画出原型【参与人员:产品组、测试组、客户】。

3. 美工设计:根据原型进行UI设计,形成效果图,经产品组、测试组确认后,并切成静态页面【参与人员:美工组、产品组、测试组、客户】。

4. 程序编码:产品组完成产品的编码工作,并完成内部测试【参与人员:产品组】。

5. 产品测试:由测试组对产品进行统一的测评,达到客户正式上线要求【参与人员:测试组、实施组】。

6. 维护跟踪:在产品正式上线后,在一定开发周期内【产品不同时间长度不同】及时跟踪产品项目,直至达到稳定使用为止【参与人员:产品组、测试组、实施组、客户】。

7. 新需求、BUG修复时,重复迭代以上过程。

第二章 研发设计原则

为了实现“公司出品,必是精品”的产品理念,特总结以下设计原则(原则不分先后顺序):

1. 用户需要是输出而不是输入(特别是管理系统)。要用发展的眼光进行设计。

2. 不要为了1%的需求,损坏99%的使用场景。考虑场景。

3. 这个功能对核心需求带来什么好处?有多大价值?一定需要吗?考虑分层。

4. 页面3秒原则,保证用户极短时间内可以读懂页面。页面可读性、职责单一、页面有辨识度。

5. 坚持价值,代价4象限分析--最大价值最小代价才是最好,依次是最小价值最小代价、最大价值最大代价、最小价值最大代价。

6. 完全按照用户的需求完成产品,最终产品一定完蛋。

7. 做出好产品才是一切!其它所有的与此相比都是不重要的~

8. 产品要明确目标、突出亮点,才不至于偏离目标,有拿得出手的功能给客户展示。

9. 初步设计时要做加法,尽可能不遗漏用户期望实现的功能;定稿设计时要做减法,在不影响用户体验情况下尽可能的进行收束。

10. 不要忽略重要但不紧急的事情,时刻问自己这个事情失败了:代价是否可以承受。

11. 一定要把故事讲好,既不重复别人,也不重复自己,一个好故事抵得住十个好创意。

12. 。。。。。。待续

第三章 团队协作原则

为提高公司不同团队间、同一团队内的团队协作效率,特总结以下原则(原则权重从高到底排列):

1. 对公司整体有益的工作优先。

2. 对产品整体有益的工作优先。

3. 同等条件下外部接口工作【协作工作:组间协作、组内协作】优先。

4. 同等条件下快速能见成效的微小工作优先。

5. 同等条件下同性质工作【项目某个模块、日常的某个具体事】优先。

6. 同等条件下自己负责的工作优先【在本职工作未完成时不要试图帮别人】。

 

第四章 研发需要提交的文件

1. 需求文档:产品相关的标准、规范、制度、文档、电子表格、数据库等能描述产品需求的相关原始需求文档,并据此整理的总结性需求文档【产品组负责】。

2. 设计文档:思维导图xmind、原型设计rp、美工效果图、静态页面html、更新说明、pdm文件、增量sql文件等【产品组负责】。

3. 实施文档:项目部署方案、项目部署报告等【实施组为主、产品组配合】。

 

第五章 研发JAVA代码规范

1. 产品命名

各产品在命名时都以cn.?开头(即作为前缀),其后是产品的简称【由产品组命名并报研发副总批准】。

正例:教学诊改命名为cn.?.jxzg。

反例:教学诊改命名为AAA.?.zhjx。

2. 包命名

1) 所有包都位于cn.?包下。

2) 公共包位于cn.?.publics下,存放与业务系统无关的通用包、类。

3) 通用业务包位于位于cn.?.yw下,存放与业务系统相关的通用包、类。

4) 产品业务包位于cn.?.产品简称下,存放与产品业务系统相关的包、类。

正例:电子表格处理poixls包命名为cn.?.publics. poixls。

反例:电子表格处理poixls包命名为aaa.bbb. poixls。

3. 类说明

1) 类说明必须位于类的顶部。

2) 应包含功能描述、修改日志。

 

正例

/**

* @description: 本类主要用于字符串的操作

*

* @create: 张三  2006-05-01

*

* @logs: 

1.1 2006-05-01 张三 增加…

2.0 2006-05-07 张三 修改…

3.0 2007-05-01 张飞 增加…

**/

4. 方法说明

1) 方法说明必须位于方法的顶部。

2) 应包含方法描述、参数说明、返回值说明、调用实例(复杂参数)。

 

正例

/**

* @description: 比较两个ip的大小

*

* @param: 

as_ip1:要比较的第一个ip

as_ip2:要比较的第二个ip

as_error:出现异常或错误时回传错误信息

注意:参数传入时需要进行初始化

*

* @return: 

1:前者大,-1:后者大,0:相等,-100:出现异常

调用实例:

String ls_ip1=”192.168.16.5”;

String ls_ip1=”192.168.16.6”;

StringBuffer lsb_err =new StringBuffer(“”);

int li_rtn=ipCompare(ls_ip1,ls_ip2,ls_ err);

**/

public int ipCompare(String as_ip1,String as_ip2,StringBuffer asb_err){

。。。。。。

    return 1;

}

 第六章 研发通用代码规范

1. 字符串长度限制提示

正例:最多10个汉字或20个字符、**超过长度限制(10个汉字或20个字符)

反例:请输入名称(最多10个字)、姓名超过字数限制(20个字)。

2. 列表默认排序

所有涉及列表的地方:都要根据业务考虑按什么顺序显示合适。

正例:用户01、用户02、用户03、用户04。

反例:用户01、用户04、用户02、用户03。

3. 缓存问题

由于升级时经常出现后台缓存、页面缓存的问题,造成用户无法使用。A、必须清除应用服务器的缓存;B、必须在调用资源时采用强制刷新手段(页面禁止缓存、资源文件【js、css、图片等】加版本号强制刷新、采用webpack打包工具换文件名);C、测试、实施遇到页面异常时【不允许自行清缓存解决】,开发人员必须想措施保证系统无缝升级。

正例font-awesome.min-3.2.1.css?ver=20171227.1

反例font-awesome.min-3.2.1.css

 

 

 

 

 

 以上制度自公布之日执行。

  • 15
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值