敏捷开发对于个体的要求很高,因为在一个确定的时间跨度内,比如两周内出一个版本,如果没有相当的开发经验、训练和能力,所承受的压力可能是想象不到的,结果可能就是举措失当,乱了章法。
成长是需要时间的,帮助和赋能是要下力气的。
缘起
- 1.4 版的冲突和困境;
刚过去的两周开发 1.4 版,交互设计是一个越来越严重的瓶颈,UI 修改频繁并且修改时机有待调整;前端模块的开发和集成存在认知盲区问题和实操经验缺乏问题,其实质是模块自身单元测试问题; - UI 设计稿串讲在以后版本要实施,以便提升成熟度,增强认知共识;
UI 设计稿在一个迭代中最好不修改,实在要修改,其修改时机也是放在本版UI实现且产品功能完成后再进行; - 尝试南北两个独立团队,各自承担不同的终端版本;
人际沟通、技能修炼、尊重与信任;
模块通信
本文就用一个图示意一下,在两个模块之间有通信时,如何进行模块集成?
- S1:创建一个事件;
- S2:监听这个事件;
- S3:触发这个事件(fire event);
- S4:B 模块会执行在设置监听时所定义的 function() 功能逻辑(execute registered callback);
- NoteCode 前端模块通信;
模块集成
- X 单元(Event Handler)首先应当测试通过;
- B 模块测试通过;
- B 和 X 集成;
- 在 Chrome 中,直接执行 S3 就可驱动 B 模块;
- 直接使用 X 单元,而不是 A 模块,就可以排除 Y 单元问题;
- 最后再将 A 和 B 集成;
如何定位问题?
- S4 执行函数的第一句应当记录接收到的所有数据;
- 输出日志到 Console;
示例
-
webimConfigs.nimMsgPool.setUnread('group_id',msg_cnt)