假设我在一个平台(例如Java、Win32或.NET)上设计了一个平台,该平台由各种层组成,如数据库、用户界面、云等。
现在,每个团队都将致力于开发他们的产品,说数据库是最好的,而不是专注于他们与其他团队的关系,因此在进行集成时会产生各种问题。
现在,为了实现一个稳定和无bug的平台,以下是我的问题:
发布于 2012-01-25 13:49:53
如何确保在集成所有层的同时,所涉及的开销更少。
业绩衡量和分析。
还有其他方法可以使这个过程自动化吗?
不是的。好的设计真的很辛苦。
如果一个特定的团队正在使用其他团队提供的API调用,而另一个团队仍然没有准备好API调用,就会出现死锁。如何克服这种情况?
可悲的是。生成API调用的团队需要将API套件分解成几个部分,并首先交付重要的部分。
正在使用API调用的团队需要根据重要性将他们的工作分解成几个部分。他们需要首先把重点放在重要的部分上。他们需要向API生产者传达他们的优先级。
比如说,我想监测并从不同的团队获得关于他们的进展的反馈。这类活动是否有任何自动化?
不要自动完成这个任务。
实际上每天都要和实际的人交谈。
在每个团队内每天举行一次Scrum会议。这是15分钟,这将极大地改善项目。
在团队领导中进行一次日常的scrums。这是15分钟,这将极大地改善项目。
发布于 2012-01-25 12:50:03
你的团队听起来好像受到管理不善和其他问题的困扰。在典型的敏捷项目中,您将看到技术专家小组(A组只做数据库,B组只做Web服务,C组只做GUI等等)。被人皱眉头。
理想情况下,应该有一个团队来编写满足用户需求的软件(用户故事)。该小组的任何其他分部都不能接受。该团队中的每个资源都应该能够被分配一个用户故事,并在所有层从数据库到GUI完成它。当然,有些开发人员有优势和弱点,但是团队应该能够在需要时互相帮助。
你的团队已经解散了,现在团队之间缺乏协调。我知道重组团队可能是困难的,也可能是不可能的,以下是其他一些建议:
发布于 2012-01-26 06:51:33
1)如何确保在集成所有层时,所涉及的开销更少,以及是否还有其他方法来实现此过程的自动化?
您应该有一个用于整个系统的架构小组。但要确保他们不只是设计一些界面。它们应该为团队之间的讨论提供便利,并且只有在双方都同意使用/实现起来相当容易的情况下,才能解决接口问题。设计还需要灵活,以便如果任何团队要求更改,则需要及时与所有相关团队进行讨论,并商定或拒绝。
2)另外,如果一个特定的团队正在使用其他团队提供的API调用,而另一个团队仍然没有准备好API调用,那么就会出现死锁。如何克服这种情况?
如果您事先就接口的工作方式达成了一致(请参阅前面的一点),那么您可以为单元测试创建模拟版本,或者在最坏的情况下为规范程序创建一段时间的模拟版本。
( 3)说,我想监察各小组的进度,并听取他们的意见。这类活动是否有任何自动化?
正如S.Lott已经说过的,你必须每天和人们交谈。在每个团队中举行一次每日scrum会议,并与整个项目负责人举行每日scrum会议。我认为架构师至少应该参加团队领导会议,甚至所有的会议,所以他们总是意识到可能影响接口的问题。
https://softwareengineering.stackexchange.com/questions/131730
复制相似问题