总结:

数据融合项目自2018年10月中旬开始,至2019年2月上旬止,经过了接近四个月的开发进入稳定版。在此次开发过程中,在各个方面都遇到了一些问题,最终影响了开发的效率,和产品的质量。但是,也从中吸取了经验和教训,提升了自己。

概述:

项目成立的初衷是,针对现有监察委数据融合系统存在的,无可视化、效率低下、难以普及、难以操作等弊端,提出做出高效率的数据融合的v版。

在基于原系统的需求和设计上,进行了初步改良。 因此没有需求和产品的介入,直接进入了设计开发阶段。导致了需求不明确,项目蓝图不清晰。继而出现开发阶段需求反复调整。联调和测试阶段无可靠依据。

改良方案是:

  • 利用codis的map存储特性,自动将同一key的不同数据进行整合,继而通过搭建集群、使用pipline等措施提高整合的效率。
  • 利用kafka的partition独立消费机制,实现任务的分布式创建执行,使融合程序达到简单方便可横向扩充资源的目的。可根据任务量修改部署执行的环境、可通过集群技术增加组件的吞吐量,不至于因程序瓶顶而降低融合效率。
  • 同样采用分布式技术执行融合过程。
  • 采用es作为容器存储融合的结果,加速查询效率。

个人心路历程:

我加入项目组时,融合程序的日程是,即将开发完毕,在初步自测功能和性能。

所以我从项目使用的相关技术组件,环境搭建,以及程序设计实现的角度去了解整个融合程序。

由于前期需求工作的缺失,不足够完全清楚程序为了解决什么样的实际场景,又最终要达到什么样的效果,以及程序后续的被应用场景。

对程序的理解直接来源于,原数据融合程序的数据库设计,而个人对数据库设计的理解仅仅达到了我以为的程度,细节上的误读导致了后期才发现一些存在的不合理性。

即使是开发,也不能仅立足于技术和设计,还要结合需求场景等等因素,从本质上去理解程序的意义,给自己的设计以及开发指引方向,提供灵感,使工作更加合理,减少不必要的麻烦,提高工作效率和代码质量

然后由于个人对业务上的不够熟悉,可视化系统原型设计上,没有很好的参与。对功能理解不到位
仓促的做接口的设计,定义了很多不合理的参数,后续开发中一改再改。没有达成统一清晰的接口定义,在实现上也略显混乱。
同时,由于前端同事加入项目组时机过晚,也没有参与可视化原型的设计,也对功能不够理解。同时原型图设计的不够详尽,仅有页面没有交互,以及接口定义的种种问题。

使得前端同时在开发过程中,不能有效提出自己的想法和见解,过于被动依赖后端同时的支持,而需求变更等等问题,使前端工作进行缓慢,并且大量精力浪费在了讲解接口,功能,设计等方面。缓慢的进度也让所有开发人员感到疲惫倦怠。

无论是前端和后端人员,应该是直接对需求和功能负责,在需求传递时就应该到位,并参与原型设计,在理解工作目标功能设计等基础上,相互平等,相互协调,各司其职,达到思维碰撞,共同完成一个合理的、友好的、高效的功能。

希望在接下来的工作中能够吸取上述经验和教训,少走弯路,更高效率高质量的完成工作。

一次项目开发中,收获的经验和教训相关推荐

  1. React项目开发中的数据管理

    原文链接:https://blog.csdn.net/hl582567508/article/details/76982756 redux中文文档:http://cn.redux.js.org/ Re ...

  2. 项目开发中常用JS表单取值方法

    项目开发中常用JS表单取值方法 一.常用表单基本取值方法(form1为表单名称,TextBox1为控件ID,以文本框为例,html控件与web服务器控件是一样的)         1.form1.Te ...

  3. aspnet是前端还是后端_项目开发中无法回避的问题:前端和后端如何合作和并行工作?...

    项目开发中无法回避的问题:前端和后端如何合作和并行工作? 前端,后端要想非常愉快的合作开发和集成,那最开始第1步就是要定义一套共用的数据模型接口.这一步是所有工作可以顺利进行的前提. 数据模型接口之后 ...

  4. ssh项目同时使用mysql跟sqlserver数据库_MSSQL_如何把sqlserver数据迁移到mysql数据库及需要注意事项,在项目开发中,有时由于项目 - phpStudy...

    如何把sqlserver数据迁移到mysql数据库及需要注意事项 在项目开发中,有时由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Serve ...

  5. IntelliJ IDEA 项目开发中各个目录的关系

    项目根目录(Project Root):本地硬盘中存放项目内容的根目录 项目名称(Project Name):IDEA 保存的项目名称,默认和项目根目录的名称相同,可以修改.有啥作用?通过 IDEA ...

  6. 项目开发中发布更新文档备注

    项目开发中 经常会遇到 某一个团队成员更新了,配置文件但是没有及时沟通导致项目发布后出现异常的情况. 这时就需要一个项目更新发布的规范说明文件,比如每次更新更改了哪些,进行文档备注. 更新的脚本文件也 ...

  7. Vue项目开发中的点滴积累系列文章

    题记 -- 严于律己,精于行动,点滴积累,着眼未来,你也许不负青春 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架 本文章 记录从基础入门到实际项目开发中的点点 ...

  8. 项目开发中对使用的第三方库统一进行管理__添加属性表/页

    最近接手的一个项目开发中用到了很多第三方库,比如boost.gdal.xerces等等这些.从接手项目到现在从中学习到了很多之前从未见识过的东西.项目绝大部分都是前辈们写的,对于里面的对第三方库的管理 ...

  9. 17.项目开发中遇到的问题(this.$parent.$parent子组件调父组件的父组件的方法不可用问题)

    前言: 在今天的项目开发中,遇到了一个问题,就是通过this.$parent.$parent.getHostInf()无法去调用其父组件的父组件的方法(因为此时获取的不是其父组件,而是包含父组件的一个 ...

  10. 软件项目开发中的百分之九十效应

    在软件项目管理中,经常遇到这样的情况:进度到百分之九十后开始停滞,要花很长很长时间很大很大代价(甚至超过前百分之九十所花费的工时.工期)才能完成最后的百分之十.我把这种情况叫作:软件项目的百分之九十效 ...

最新文章

  1. 【智能驾驶】自动驾驶深度感知技术对车和行人的检测
  2. tarjan对有向图的缩点(求强连通分量)
  3. 《java基础知识》Java变量作用域
  4. html5 支持表格吗,html5 – 在HTML 5中使用表格很好吗?
  5. shell执行docker命令卡挂住_Docker官方文档翻译4
  6. 提高加密程序加密强度的技巧
  7. 通过NHibernate ORM和CodeDom在任何数据库中自动生成表以生成代码
  8. 如何利用开源风控系统 TH-Nubula(星云)防止撞库?
  9. 马士兵java学习之路
  10. 自制狂拍灰太狼小游戏(HTML+CSS+JavaScript)
  11. cmd命令窗口快捷键与小技巧
  12. 【LeetCode LCP 3】机器人大冒险
  13. 黑客是用idle还是python_python学习一定用pycharm吗?再看看还有什么其他IDE可以选择...
  14. Windows系统操作指令
  15. Team Foundation 中的带编号的错误和事件消息
  16. 2015年中国云计算市场回顾与展望
  17. 分布式之Quorum NWR算法
  18. 构建人工智能评测平台(体系)
  19. 剧本翻译之SHUFFLE 6月15日
  20. Java基础知识总结——java快速入门

热门文章

  1. LDPC码Gallager构造校验矩阵(MATLAB)
  2. 抖音赚钱记,新手如何玩转抖音,每天赚300起(连载九)
  3. arcgis中python批处理_ArcGIS教程:ArcGIS中的批处理
  4. halcon拓展系列—求平面度、段差算子regions_to_plane
  5. seo从入门到精通_SEO外包_seo技术教学案例培训学习研究中心自学网
  6. IAR OF STM8 Error[Pe095]: array is too large
  7. 经济的寒冬,数据的春天
  8. mendeley引用参考文献不显示_【参考文献管理工具-1】使用Mendeley在Word中插入引用与参考文献...
  9. 【echarts tooltip 固定位置】
  10. 清爽即正义,简洁即真理—lingvist