我曾为许多软件项目工作过,在这些项目中,我正在为客户开发软件解决方案,在那里,我需要使用客户提供的web服务与客户后端集成,以便检索信息等。
问题是客户可能无法按时交付所需的web服务。或者按照与计划不同的顺序交付web服务。
我的问题是如何规划这个项目,以便我的编码和实现将根据交付的所需的web服务开始?我应该考虑使用敏捷吗?在那种情况下该如何使用呢?
如何应对客户延误的风险?
解决方案可以分为几个阶段,并且可以根据web服务的准备状态进行交付。
假设我需要16个web服务。如果客户现在交付了三个,我就可以实现项目的一部分,并接受它。如果客户再开发两个web服务,那么我就可以准备好实现项目的另一个部分了。等等,如何把它放在计划结构中呢?
发布于 2015-05-12 18:16:29
重要的是与客户建立一种开放、透明和信任的关系。客户需要了解你面临的挑战--以及成本--才能以你被迫工作的方式工作。同时,您需要理解为什么客户端不能以可预测的方式交付。一旦对双方都有了赞赏,通常就会出现使双方都满意的解决办法。
但和客户一起去那里需要时间。为了更容易地进行这样的讨论,你可以做几件事:

董事会可视化了双方正在使用的过程,以及在任何时间点上所做的工作。列标题旁边的数字是WIP (进行中的工作)限制--可以在任何时间点在任何阶段进行的最大工作量。例如,如果您是团队中唯一的员工,那么整个第二行的WIP限制最好仅为1。目前,忽略这些数字,只需在您和客户的流程中设置面板,这样您和客户就可以看到正在发生的事情。
基于这一设计,您可能会首先确定一组web服务--您需要提供每个‘功能’或"MVP“(最低可行的产品)的服务--它们实际上可以演示工作。
使用看板的好处是,你可以用它来向客户展示你所面临的问题,比仅仅描述它更有效--一张图片值1000字--而且可能是1000美元!要构建这个板,你可以使用带有粘性的物理板或者电子看板--尤其是如果你的客户在一个偏远的地方。
希望这能有所帮助。
发布于 2015-05-12 05:05:35
好吧..。这种情况时时刻刻都会发生,而敏捷并不能解决问题,而是可以最终确定web服务定义/合同。此时,您实际上可以使用一些工具,比如SOAPUI,通过模拟客户端web服务来构建系统。
一旦客户服务启动并运行,您可以实际测试它。当然,这不是理想的解决方案,但是,如果您没有任何其他事情可以在这段时间内完成,这实际上可以节省一些时间。
发布于 2015-07-09 01:42:17
...how计划项目,以便我的编码和实现将开始根据交付的所需的web服务?
听起来好像你已经在做这样的计划了,但是客户有时交付的时间很晚,或者不符合顺序。
我应该考虑使用敏捷吗?
是的,你应该考虑“使用敏捷”。您是否真的选择采用敏捷实践,或者具体地说是Scrum,应该取决于您对环境的仔细考虑.而不仅仅是你在这里描述的问题。
...how会在那种情况下使用吗?和...how来处理客户延迟的风险?
在这里,对于像Scrum这样的特定方法的情况,更容易回答,而不是更一般的敏捷原则。
有了Scrum,它的目标是交付可交付解决方案的高质量增量。Scrum优先考虑交付品的质量,而不是它的及时性。对于Scrum,本质上,延迟的风险和后果是可以接受的。毕竟,客户及其交付您所依赖的组件的团队应该是Scrum团队的一部分。
https://softwareengineering.stackexchange.com/questions/283575
复制相似问题