1.概述

软件是关乎于人的行业,而人依靠文化来长久维系。这个行业很多问题的根源来自以下两个方面:
  • 维系人的文化
  • 扮演角色的人

2.波动的水纹

当我们在湖中投入一颗石子时,一道道波纹总会被传播很远……

2.1 现象

  • 同一产品版本繁多,版本变动频繁。不同版本之间甚至存在不一致,一个版本的变动可能影响到其他版本的正常功能。
  • 项目需求难以满足。产品疲于应付不同项目的需求。
  • 产品开发人员被抽调出来为不同的项目特定需求进行开发。同一产品组不得不同时维护多个不同差异的版本,每一次的变动都存在着影响不同版本的潜在风险。
  • 项目需求的波动总是被传播到产品开发部门。
  • 产品为了满足项目的需求不得不进行修改,不得不接受设计侵入。

2.2 问题

  • 产品架构设计缺失,难以满足项目需求,缺少可扩充性,缺少完善的API。
  • 项目需求波动,向产品提出的修改侵入产品设计,进而影响产品的稳定性。

2.3 解决方案

问自己的两个问题:
  • 1.我们可以在现有的基础上进行改进、完善吗?成本回报如何?
  • 2.如果风险无法消除,我们有备用的方案吗?这个备用方案已经启动了吗?

问题一:

  • 解决方案一:成立构架小组,优化产品设计,重构现有代码。
  • 解决方案二:成立新的产品开发小组,进行第二代产品开发,同时原有成员维护当前版本。

问题二:

  • 1.建立项目向产品提出修改的评审流程:——建立”波纹”隔离墙。

        1)在项目组内选择合适人选对向产品提出的修改设计进行初步评判——要求构架设计能力;2)提交技术评审委员会进行评估——须恰当选择委员会成员;3)提交产品修改或项目组自己开发。
  • 2.建立产品版本的周期性内部发布机制(可以月为单位):——为项目经理提供如何在项目中使用产品的依据。

        1)每月固定时间发布版本,并在项目部安装部署;2)每月固定时间发布当前功能列表;3)每月固定时间发布下月将实现的功能点;4)公布产品6个月内的Roadmap—可以只是稳定当前版本.不添加新功能。
    

3.天马流星拳与一阳指

  • 天马流星拳是一部动画片《圣斗士星矢》里的招式,主人公可以在1秒钟内打出几百拳,属于广种薄收的招式;
  • 一阳指的奥秘在于集全身内力于指尖,一招制敌。

3.1现象

  • 项目总是感觉缺少人手
  • 公司里各式各样的技术都在使用,却缺少能够解决问题的人
  • 总是遇到很多技术瓶颈
  • 测试人员忙于学习,应付不同技术的测试
  • 公司产品很多,但仍难以适应项目需求

3.2 问题

  • 缺少公司整体技术路线规划
  • 人员技能分散,学习成本、培训成本较高
  • 产品仍需时间成熟,人员力量分散

3.3 解决方案

  • 1.根据公司所在行业特点,当前情况规划技术路线:

        1)建议选择C++,Java,python为主要技术发展路线;2)规定项目使用技术除客户指定外,必须从技术规划中自由选择,否则必须审批;3)要求项目经理尽可能的引导用户使用公司规划的相关技术。
  • 2.从企业整体层次培养员工相关技术技能——研发能力提升计划。

        1)第一阶段培养开发人员——确保能够保质完成任务;2)第二阶段培养设计人员——提升企业研发能力及核心竞争力;3)从中发掘、培养,确保合适的人在合适的位置做合适的事;4)培养可持续提升企业研发人员能力的文化、机制。
  • 3.给产品合理时间成熟完善,如果可以或需要,协助产品完善(形式可以探讨),并准备相应的备份方案。

系统架构中常见问题及解决方案相关推荐

  1. Java生鲜电商平台-SpringCloud微服务架构中分布式事务解决方案

    Java生鲜电商平台-SpringCloud微服务架构中分布式事务解决方案 说明:Java生鲜电商平台中由于采用了微服务架构进行业务的处理,买家,卖家,配送,销售,供应商等进行服务化,但是不可避免存在 ...

  2. 面试官:哥们,你们的系统架构中为什么要引入消息中间件?

    点击上方"蓝字", 右上角选择"设为星标" 周一至五早11点半!精品文章准时送上! 本文来自石杉的架构笔记 这篇文章开始,我们把消息中间件这块高频的面试题给大家 ...

  3. vue项目中常见问题及解决方案

    vue项目中常见问题及解决方案 参考文章: (1)vue项目中常见问题及解决方案 (2)https://www.cnblogs.com/jiekzou/p/11011271.html (3)https ...

  4. 表单html遇到的问题及处理,Web前端开发中常见问题及解决方案

    Web前端开发中常见问题及解决方案 时间:2017-04-24     来源:web前端开发小赢家 作为一名web前端开发工程师,我们在工作时免不了会遇到各种各样的问题.因为web前端开发相对于Jav ...

  5. 年薪百万BAT大佬带你剖析你们的系统架构中为什么要引入消息中间件?

    这篇文章开始,我们把消息中间件这块高频的面试题给大家说一下,也会涵盖一些MQ中间件常见的技术问题. 假如面试官看你简历里写了MQ中间件的使用经验,很可能会有如下问题: 你们公司生产环境用的是什么消息中 ...

  6. 用系统架构中的系统思维分析一个咖啡厅系统

    此文是对<系统架构>中第2章系统思维的笔记,前前后后看了很多遍,为了达到活学活用,尝试用系统思维分析一个生动的现实生活中的案例,这样有助于更深刻的理解及现实的建模能力.现分享给大家一起讨论 ...

  7. 分布式商城系统架构中的超卖问题深度剖析(从问题原因到解决方案到优化总结)以及重复下单问题

    超卖问题(包含重复下单问题) 背景 首先,超卖问题的出现是由于高并发环境下,大量秒杀请求同时发给服务端导致的秒杀商品的销售数量>其库存数量的问题.其本质就是并发场景下,多线程或者多进程对共享资源 ...

  8. 系统架构中概念总结一

    下面这些资料大部分都是从网上找的,方便什么时候不明白的时候查阅,概念涉及到网络.存储.数据库等各方面的内容. 容错(Fault Tolerant) 容错就是当由于种种原因在系统中出现了数据.文件损坏或 ...

  9. 系统架构中概念总结二

    IDC IDC(Internet Data Center),即互联网数据中心.是指在互联网上提供的各项增值服务服务.他包括:申请域名.租用虚拟主机空间.主机托管等业务的服务. IDC 即是Intern ...

最新文章

  1. 使用Python、OpenCV进行图像接缝雕刻
  2. 搜索引擎工作的基础流程与原理
  3. python3 ftplib_ftplib — FTP protocol client
  4. Servlet的多重映射
  5. linux系统下的mysqlgt;aborted_MySQL令人头疼的Aborted告警案例分析
  6. python定时发送信息_python实现定时发送消息
  7. 用c语言编程参赛信息查询,确定参赛者名单(C语言实现)
  8. 95-290-362-源码-内存管理-Buffer-LocalBufferPool
  9. 分享个WEB前端CSS兼容的问题.
  10. Oracle修复Win7/Win8.1/Win10下Java安装程序安全漏洞
  11. VMware在NAT模式下配置静态IP
  12. 这个问题,正在郁闷中,网上找了好久,也只见问不见答!
  13. 【嵌入式】基于ARM的嵌入式Linux开发总结
  14. mysql的索引是什么数据结构_mysql索引的数据结构是什么
  15. 服务器ajax无响应时间,ajax 服务器响应时间
  16. 行内元素之间产生的间隙
  17. ANT:修改测试报告的样式jmeter-results-shanhe-me.xsl
  18. 第八届“中国软件杯”大学生软件设计大赛总决赛落幕
  19. 本地缓存之LIFO、LRU、FIFO、LFU实现
  20. cesium entity使用

热门文章

  1. uni-app图片上传(位置固定)
  2. 初学乍练redis:分片与集群
  3. 计算机里删除的文件可以在哪里进行恢复,电脑上删除的文件怎么恢复?方法在这里...
  4. PowerDesign提示未安装打印机
  5. React Native开发环境配置检测
  6. Chrome+selenium+headless报错无法加载插件
  7. php可以用中文的单引号吗,PHP中单双引号用法误区
  8. 关于Quartus II 13.0破解失败问题
  9. java-net-php-python-jspm药品一体化管理系统演示录像2019计算机毕业设计程序
  10. 软件项目管理案例教程-韩万江-期末复习