1、Quora精选:为什么软件开发周期总是预估的2~3倍?https://www.sohu.com/a/132411358_355123
这篇文章通过一个徒步旅行的比喻,解释了为什么软件开发周期通常会比预估的长2到3倍。文章中提到,开发过程中经常会出现意想不到的挑战和困难,比如需求变更、技术问题、资源限制等,这些都会导致项目进度延误。就像徒步旅行中遇到的路况复杂、身体不适等问题一样,软件开发中的这些挑战往往难以在项目初期就被完全预见和规划。因此,实际的开发周期往往会比最初的预估要长。
2、什么是分而治之?
分治算法,即分而治之,就是把原问题分解为几个类似原问题的子问题,解决完子问题,再把子问题的解合并在一起,就可以得到原问题的解。分治算法一般包括三个过程:分解:将原问题分解成若干个子问题。解决:递归求解各自子问题,如果子问题足够小,直接求解。 合并:将子问题的解合并为原问题的解。
3、了解WBS
工作分解结构(简称WBS)跟因数分解是一个原理,就是把一个项目,按一定的原则分解,项目分解成任务,任务再分解成一项项工作,再把一项项工作分配到每个人的日常活动中,直到分解不下去为止。即:项目→任务→工作→日常活动。
工作分解结构以可交付成果为导向,对项目要素进行的分组,它归纳和定义了项目的整个工作范围,每下降一层代表对项目工作的更详细定义。WBS总是处于计划过程的中心,也是制定进度计划、资源需求、成本预算、风险管理计划和采购计划等的重要基础。
一个完整的WBS包括四个部分:WBS元素、工作包、结构化编码以及WBS词典。
- 创建 WBS 的步骤:
1.定义项目目标:明确项目的最终目标和可交付成果。
2.分解项目范围:将项目范围分解成主要的组件或阶段。
3.创建工作包:将主要的组件或阶段进一步分解为工作包,工作包是可管理的、独立的工作单元。
4.定义任务和子任务:将工作包分解为更小的任务和子任务,直到它们可以被估计、分配和执行。
5.验证和更新:与项目团队和利益相关者一起审查 WBS,确保没有遗漏,并根据反馈进行更新。 - WBS 的主要特点:
1.层次结构:WBS 以层次化的方式组织项目工作,通常包括几个层级,如项目、阶段、主要组件、工作包和任务。
2.100% 确保范围:WBS 应确保项目的所有工作都被包含在内,没有任何遗漏。
3.可交付成果导向:WBS 专注于项目产生的可交付成果,而不是过程。
4.灵活性和可定制性:WBS 可以根据项目的具体需求进行调整和定制。
5.易于理解:WBS 提供了一个直观的图形表示,使得项目团队成员和非项目专业人士都能容易理解。 - 分解方式:
1、按产品的物理结构分解。
2、按产品或项目的功能分解。
3、按照实施过程分解。
4、按照项目的地域分布分解。
5、按照项目的各个目标分解。
6、按部门分解。
7、按职能分解。 - 主要用途:
1、WBS是一个描述思路的规划和设计工具。它帮助项目经理和项目团队确定和有效地管理项目的工作。
2、WBS是一个清晰地表示各项目工作之间的相互联系的结构设计工具。
3、WBS是一个展现项目全貌,详细说明为完成项目所必须完成的各项工作的计划工具。
4、WBS定义了里程碑事件,可以向高级管理层和客户报告项目完成情况,作为项目状况的报告工具。
4.某培训机构入学管理系统有报名、交费和就读等多项功能,下面是对其各项功能的说明:
①报名:由报名处负责,需要在学员登记表上进行报名登记,需要查询课程表让学员选报课程,学院所报课程将记录到学员选课表。
②交费:由收费处负责,需要根据学员所报课程的收费标准进选课表行收费,然后在账目表上记账,并打印收款收据给办理交费的学员。
③就读:由培训处负责,其在验证学员收款收据后,根据学员所报课程将学员安排到合适班级就读。
画出入学管理系统的顶层图和1层图