Project management 你如何开始将你的项目分解成更小的部分?

Project management 你如何开始将你的项目分解成更小的部分?,project-management,agile,Project Management,Agile,我看到了这条线索: 这是有帮助的。我只是不知道从哪里开始。我是否只是读了一本关于敏捷的书,并作为项目经理使用了这种方法?敏捷从一开始到结束是一个完整的系统吗?任何软件的建议也是欢迎的,任何平台 这是一款具有适度复杂性的facebook应用程序,如果这很重要的话。我试着“把它做好”,而不是凭直觉。我知道每个人的“正确行事”可能会有所不同,但我需要一些系统化技术 我不期望完美的项目管理只是正确的大方向。我知道,除非我打破这一点并保持热情,否则我永远不会兑现承诺。它会很快变得势不可挡——只是一想到它

我看到了这条线索:

这是有帮助的。我只是不知道从哪里开始。我是否只是读了一本关于敏捷的书,并作为项目经理使用了这种方法?敏捷从一开始到结束是一个完整的系统吗?任何软件的建议也是欢迎的,任何平台

这是一款具有适度复杂性的facebook应用程序,如果这很重要的话。我试着“把它做好”,而不是凭直觉。我知道每个人的“正确行事”可能会有所不同,但我需要一些系统化技术

我不期望完美的项目管理只是正确的大方向。我知道,除非我打破这一点并保持热情,否则我永远不会兑现承诺。它会很快变得势不可挡——只是一想到它


谢谢。

你可以读一本关于敏捷开发的书,但那不会为你编写代码。我会坐在远离电脑的地方,列出你项目中5-10个小任务的清单。它们应该足够小,你应该能够在一两天的工作中完成它们。接下来,为他们写一个时间估算。然后尽可能多地做这些。当你回顾你的时间估计时,你可以反思你的时间管理

在进行过程中,请尝试将重点放在隔离项目中存在的关键功能和抽象上。如果除了你自己还有一个客户,在每次迭代中与他们交谈,看看他们对项目进展的看法


当你这样做的时候,你也可以阅读敏捷开发。敏捷开发试图解决在团队中工作时遇到的许多问题。如果可以的话,我也会找一个朋友来做这件事,你可能会发现你通过这种方式学到了更多。

我的方法是在任何项目上向前推进,这样我就有了很多里程碑,在这些里程碑中,某件事情是有效的,并且完成了某个特定的点

我可以在一个简单的命令行应用程序中实现我的应用程序的所有细节,只是为了看到它与文件系统或网络通信;我可以让它从文件而不是键盘读取输入,这样我就可以快速地在可重复的数据上完成输入,而不必手动重复

我可以单独使用GUI。我可以摆弄HTML和CSS,直到我有了一个惊人美丽的GUI,而不用担心它的功能

然后,我将构建一个项目,将前两个子项目结合在一起。然后,我选择两个工作子项目,创建一个单独的、工作的、更大的项目。如果需要更多的东西,我可以做


这样做的好处是我可以更快地使用代码,并且可以更早地识别风险。项目中较小的部分更容易测试,我可以单独开发它们。这也缩短了我的编译时间。

以下是一些基于Scrum的建议步骤

  • 创建应用程序将执行的功能列表(“产品待办事项”)。理想情况下,这应该与客户一起完成

  • 在开发人员完成这些工作的情况下,为这些特性分配总的估算(可能只有你自己)

  • 优先考虑这些特性。再次与客户联系(如果有)

  • 将这些功能分配到30天的存储桶(sprint)

  • 使用分配给Sprint的功能,创建一个任务列表(Sprint backlog),这些任务可以以8-16小时为增量完成。

    以下是一些示例:

    • 为功能X创建数据表。
    • 为屏幕1创建UI布局。
    • 创建事件对于屏幕1上的控件

    您也不必将自己局限于编程任务。任务也可以包括研究之类的事情,只要最终结果得以实现。研究Facebook的API并确定接口方法

  • 在冲刺结束时,根据您/您的团队完成任务的速度(您的速度)进行评估。这可能需要对产品和/或Sprint积压工作中的估计值进行调整


  • 我的解决方法是首先和非技术人员坐在一起,创建产品中的功能列表。功能列表按优先级排列,最需要的功能位于顶部。一旦我们有了这份清单,我们就会和技术人员开会。在这里,对于我们拥有的每个特性,我们将其分解为更小的任务,开发人员将提供每个任务完成所需时间的估计。我们计算估计的总时间,并为第一次迭代选择任务。我们的第一次迭代通常在14到21天之间,我们在开发人员之间平均分配工作。这个过程也帮助我们找到依赖关系,我们通常有3个团队:

  • 核心团队-api工作
  • 图形部分的gui团队
  • 测试团队-为每项任务进行肌酐单元测试
  • 我们每天都会召开站立会议,以了解每项任务的进展情况。通常在迭代结束时,我们就有了产品的工作和测试版本。
    在迭代结束时,我们召开了一次会议,看看开发人员遇到了什么问题。
    希望这个关于我们如何使用敏捷的小视图能有所帮助。

    +1很好的建议-我喜欢简单。我如何分析和设计依赖于其他部分的系统部分(特别是当客户建议我应该先做哪一部分时),我还将在优先级划分步骤中考虑风险。如果你正在做一些你以前没有做过的事情,或者有一个广泛的估计范围,你可能想在过程的早期处理任务或任务的未知部分。在第五点上,这些项目是8-16小时的增量吗?你会推荐哪本书来展示这些相同的步骤?我也很好奇它怎么说来处理需求收集…只是一个白板和一个电子表格?谢谢,