• 软件工程:帕金森定律,项目工期的那点事儿


    hi,我是熵减,见字如面。

    image

    在软件开发中,你是否遇到过这种情况:

    团队要开发一个简单的购物车应用,项目预期时间是2周工期。负责开发的工程师默认利用完整的2周时间来完成任务。在第一周,工程师会认为任务很轻松,有充足的时间来完成任务,所以会采取气定神闲的节奏。然而,在第二周,却发现了重要的设计缺陷,工程师需要更多的时间来修复问题。为了保证deadline,只能采取加班等方式来弥补。

    上面这个小案例,就是一个典型的帕金森定律在软件开发中的发挥作用的场景。

    在软件工程中,工程师团队应该避免过度依赖可用的时间,要合理的分解任务,监控进度,切及时的解决问题。

    什么是帕金森定律

    帕金森定律是指在软件开发中的一种现象,它描述了一个项目的时间表通常会根据可用的时间而扩展,而不是根据实际的需求而定。

    换句简单的话说:就是项目中的工作,最终会填满为完成它而分配的所有时间。

    这个定律的名称来源于帕金森病,因为它的创始人认为,这个定律在疾病中也是普遍存在的。

    在软件开发中,帕金森定律通常表现为:当一个任务被分配给一个开发者时,他们倾向于填满他们所分配的时间,即使这个任务在更短的时间内也能完成。而这种情况,往往可能最终会导致项目的延迟和超预算。

    而为了避免帕金森定律的影响,开发者和项目管理人员需要始终关注实际需求,并且对任务分配和时间管理进行谨慎的规划。在开发过程中,也需要不断地检查和评估进度,并对进度偏差进行及时的调整。

    对软件工程的4个提示

    帕金森定律,在我们的日常的软件工程中,可以带来以下的4个有效的启发提示:

    • 时间估计需要谨慎:帕金森定律表明,开发者倾向于根据可用时间来填充任务,而不是根据任务的实际需求。因此,在软件工程中,时间估计需要谨慎,需要考虑到任务的实际需求和可用时间。
    • 紧急情况需要处理:由于帕金森定律的存在,项目的时间表通常会因为可用时间而扩展,这可能导致项目超时。因此,当出现紧急情况时,项目管理人员需要及时采取措施,以确保项目能够按时完成。
    • 管理者需要持续监控:为了避免帕金森定律的影响,项目管理人员需要持续监控开发进度,并进行调整。这需要使用适当的项目管理工具和技术,以确保项目能够按时完成。
    • 任务需要做细化分解:帕金森定律表明,开发者倾向于根据可用时间来填充任务,而不是根据任务的实际需求。因此,在软件工程中,任务需要进行适当的分解,以确保任务的实际需求得到满足,同时也能够充分利用可用时间。

    在软件工程中,要保质保量的按时完成预期目标,就需要对任务分配、时间管理和项目进度进行谨慎的规划和管理,团队要始终有前紧后松的意识。

    工程中常见的5个误区

    在我们日常的软件开发中,基于帕金森定律的习惯的误区,工程师很容易采取一些不合适的做法,会导致工程无法按时交付或者质量的低下。

    以下是软件工程中比较常见的5个误区:

    • 着眼于可用时间而非任务需求:开发人员只关注可用时间,而忽略了任务的实际需求。这会导致开发的功能不符合实际需求,从而浪费了时间和资源。

    • 忽略紧急情况:开发人员在发现紧急情况时,选择忽略或者不及时处理。这可能最终导致项目超时或者直接走向失败。

    • 缺乏监控和调整:开发人员缺乏对项目进度的监控和调整,无法及时发现和解决问题。这会导致项目超时或者失败。

    • 任务分解不合理:开发人员任务分解不合理,任务过于复杂或者过于简单,导致无法充分利用可用时间,或者无法满足实际需求。

    • 理解上有巨大的偏差:开发人员对任务的实际需求存在理解上有巨大的偏差,导致任务的完成时间超出预期或者功能不符合实际需求。

    在软件工程中,开发团队要有效的理解帕金森定律的意义,采取有针对性的关键策略,避免让项目陷入被动的局面,造成不能及时和高质量交付的情况。

    写在最后

    在软件工程中,帕金森定律是一个比较常见的现象,容易让开发人员忽略任务需求,而过度关注可用时间。

    这会导致项目失败或交付系统质量低下,因此,工程师们需要认识到这个问题的存在,并采取适当的措施来避免出现此类误区。

    工程师应该要充分理解任务需求,并根据需求合理分解任务,监控进度,及时解决问题。同时,工程师应该避免过分依赖可用时间,采取高效的时间管理方法,避免加班等低效的做法。

    通过认识帕金森定律,并采取有效的措施,工程师门可以更好地管理自己的时间和任务,提高项目交付的成功率和质量。


    阅读,思考,练习,分享,日日不断之功。

    嗯,写完了。

    新的一天,加油哦 (ง •̀_•́)ง

  • 相关阅读:
    单元格合并报java.lang.IllegalArgumentException
    生活中的知识产权有哪些?
    绿肥红瘦专栏数据的爬取
    开学季--CSDN联合天津科技大学校园活动正式来袭啦~
    springboot整合mybatis实现增删改查(xml)--项目阶段1
    Hudi第一章:编译安装
    windows下部署flask: apache+mod_wsgi问题汇总
    Java mail发送邮件时卡住,没有任何异常日志(出现阻塞线程)
    好莱坞编剧大罢工终于结束;与OpenAI创始人共进早餐;使用DALL-E 3制作绘本分享;生成式AI的基础设施架构 | ShowMeAI日报
    比赛总结:Japan Registry Services (JPRS) Programming Contest 2023 (AtCoder Beginner Contest 324)
  • 原文地址:https://www.cnblogs.com/peida/p/17324710.html