复杂问题简单化以及简单问题复杂化并不矛盾,而是在项目的不同阶段。

在项目设计阶段,要考虑的是“简单问题复杂化”。说的通俗点,就是在给定需求的基础上尽量扩展,考虑更多的可能,做尽可能大的设计,来确保项目需求一旦发生变更,不会影响总体框架,仅仅是代理工作量的变化。

在项目开发阶段,就要使用“复杂问题简单化”的原则。就是要将任何复杂的东西,拆解成为简单的模块、功能。这样的好处有几点:第一,可以很容易进行任务分解,减少沟通、纠错时间;第二,可以提高代码的可维护性,任何人进行维护时,都可以很容易的理解思路并进行更改;第三,降低开发人员素质要求,解决简单问题能力的人员素质要求要比解决复杂问题的人员素质要求低得多。

一个好的项目管理人员,就应该在项目管理中应用这些,确保项目稳定、顺利推进。当然,过由不及,在每个阶段要综合考虑项目时间、成本等各类因素,把握一个度,达到项目整体效率的最优。

相反的,两个工程弄反了,就是灾难了。项目设计阶段,复杂问题简单化,将复杂的问题仅进行简单考虑,不深入思索,就会导致基础不满足需求变更需要,不停的在改动基础的架构,技术人员的苦就没法说了;而在开发阶段,简单问题复杂化,导致没有单一简单的问题可以分解到较低水平的人员手中,或者分下去后一直完不成,导致水平高的忙死,水平低的闲死,严重工作量分配不均。

复杂问题简单化以及简单问题复杂化相关推荐

  1. (埋葬那些在网上把简单问题复杂化专业化把垃圾答案胡乱贴的懵懂派)一道月薪3W的java面试题 (小明和小强都是张老师的学生,张老师的生日是某月某日,2人都不知道张老师的生日)

    关注微信公众号:wwwcoder,现在已将博客搬到这里,内容精选过后才发布出来.谢谢大家支持 小明和小强都是张老师的学生,张老师的生日是M月N日,2人都知道张老师的生日 是下列10组中的一天,张老师把 ...

  2. c语言用链表编写简单程序,C语言单链表简单实现(简单程序复杂化)

    ps: goto还是很好玩的. #include #include typedef struct _node{ int value; struct _node *next; } node; typed ...

  3. 个人总结的编程经验语录

    个人总结的经验语录 学习编程是一个渐变的过程,1年精通,3年熟悉,8年入门,10年懵逼,15年颈椎康复指南,30年灰飞烟灭. 老板或者客户:什么需求我不清楚,想要什么效果也不知道,但是你做出来什么是我 ...

  4. 2021-11-25听讲座小记

    乐趣 做任何工作,研究要有乐趣,再培养方法和技巧. 乐趣–方法–技巧–风格 Research含义 Research的含义: 1arch,表明你要研究的方向: 2search,研究要找课题,选题的问题: ...

  5. 简单的问题和复杂的问题

    把复杂问题简单化要比把简单问题复杂化难得多.     现在能找到的学术文章几乎都是在把简单问题复杂化,他们在很简单的核心思想外面包裹了一层又一层深奥的外衣,不遗余力的加大读者理解的难度.当你反复阅读并 ...

  6. 软件定义重划边界——IT就是把复杂东西简单化

    一方面,软件定义为IT划定了新的边界;另一方面,软件定义又加剧了IT边界的模糊化.只有负责数据中心运维的专业人员才能分清哪些是服务器,哪些是存储,而数据中心的使用者根本看不到服务器.存储之间的条条框框 ...

  7. 学会把复杂问题简单化

    1. 在一家公司里,有这样一条标语:"复杂的事情简单做,简单的事情认真做."世界是丰富复杂的,处理问题的方式就像掌心的纹,但不外乎有两种:一种是把复杂事情"简单化&quo ...

  8. 简化是解决复杂性问题的首要前提---真正的管理者是把复杂的问题变得简单化

    如何执行-四化 把复杂的问题过程简单化 把简单的过程量化 把量化的因素流程化 把流程的因素框架化 真正的专家是把复杂的问题变得简单化 什么叫专家?大多数人都认为专家是对某一个领域比较厉害的.比较专注的 ...

  9. C++11,使简单的事情简单

    Joe Armstrong说过一句话: 面向对象编程语言的问题在于,它总是附带着所有它需要的隐含环境.你想要一个香蕉,但得到的却是一个拿着香蕉的大猩猩,和整个丛林. 显然地,这将简单问题复杂化了.我们 ...

最新文章

  1. 浅谈网络协议(四) IP的由来--DHCP与PXE
  2. Android 开源框架之 Android-async-http 源码解读
  3. boost::timer::cpu_timer相关的测试程序
  4. 1012 数字分类 (20 分)(c语言)
  5. java idea连数据库报错:Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone'时区错误
  6. java学习(42):巩固练习
  7. ubuntu支持中文设置
  8. 那些慢慢消失的手机功能,最怀念第一个!
  9. 系统学习数字图像处理之灰度变换和空域滤波
  10. windows环境下安装selenium
  11. mysql 重复最多的_MySQL查询重复出现次数最多的记录
  12. 什么是前端模块化?前端模块化开发到底有无必要
  13. 手机和工业计算机运算能力对比,手机cpu和电脑cpu差距有多大_手机cpu跟电脑cpu差多少...
  14. 【调剂】中科院上海微系统与信息技术研究所2023年高校联培项目招收调剂生的通知...
  15. 计算机学院宣传橱窗,校园橱窗、报栏、展板、宣传标语管理办法
  16. linux主分区和逻辑分区
  17. 程序员的1927年12月31日午夜一秒谜案
  18. 自己写的代码太low?想提升代码质量但是不知道怎么做?IDEA安这个插件~
  19. 基于Java基础的图书管理系统
  20. 【报名】RT-Thread师资培训,苏州大学王怀宜教授主讲!

热门文章

  1. 我说CMMI 2.0 之:原因分析与解决方案
  2. 美能达bizhub 423系列打印机打印PDF传输超过140页,错误已清除的问题
  3. 数据库安装(MySQL子库--MariaDB)
  4. 头发的离开,是毛的追求还是头的不挽留?
  5. 数字孪生,开启三维智慧园区管理新篇章
  6. python2.x 与python3.x之d.keys()返回类型的区别
  7. [Java]简单实现计时功能
  8. PHP + HTML5兔子奔月吃月饼游戏源码
  9. 在Ubuntu 20.04下安装 ROOT cern
  10. STP(生成树协议)