InfoQ: 虚拟研讨会:软件架构文档 One Obedientfuckslave External Download Data Canon 2060 Victorian Costume Rental Obedient Fuck Slave

Slave Slave Fuck

InfoQ: 虚拟研讨会:软件架构文档 One Obedientfuckslave External Download Data Canon 2060 Victorian Costume Rental Obedient Fuck Slave

One Obedientfuckslave External Download Data Canon 2060 Victorian Costume Rental Obedient Fuck Slave

惠普研发实验室创始人:跨国公司产品创新之路

敏捷技术日之测试驱动开发9月4日北京举行,欢迎报名!

分享卓越软件研发管理实践(珠海 9.18-19)

相关赞助商

由InfoQ和MSUP战略合作举办的亚太软件研发团队管理年会珠海站(9.18-19),欲报从速

架构文档在项目中用于在上至其管理团队,从架构师或首席设计师到开发者,以及随着时间的流逝,未来的维护者和开发者之间进行沟通所用。仅这个简单的声明就引出了三个问题,它们的答案有助于决定文档的数量和类型。项目中出现了多少疏漏? 有多少开发人员在开发产品,他们的水平如何?以及该产品将使用多久?疏漏越多,说明需要更多的文档用来交流管理。开发者越多和他们的开发水平越低,就意味着开发者需要更多的指导。而产品使用时间越长,则需要越多用于和未来该产品的开发者们交流的文档。

架构文档的交流部分包括与管理层,开发者们沟通和在软件生命周期中的交流。分析需求可能来自为了决定产品的质量(包括性能,安全,可靠性等)的内部原因或来自如兼容某些规则或标准的需求。

在这个虚拟研讨会中,InfoQ希望能从顶级的软件架构专家们那里找到软件架构文档的重要性和如何记录架构,特别是在敏捷软件开发环境中。

回答我们问题的小组成员有:

Len Bass,SEI的高级技术成员,《Software Architecture in Practice》和即将面世的《Documenting Software Architectures: Views and Beyond》的第二版 的作者之一。

Grady Booch,IBM荣誉科学家,《Handbook of Software Architecture》的作者。

Paulo Merson,SEI的高级技术成员,《Documenting Software Architectures: Views and Beyond》的作者之一。

Eoin Woods, Barclays Global Investors应用程序架构组的领导人,《Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives》作者之一。

在使用敏捷和精益开发方法(如SCRUM,极限编程,看板等)的开发团队中,软件架构文档的作用是什么?

Len:架构文档的作用并不因为开发方法的不同而变化。 文档并不是唯一的交流方法,在敏捷中如SCRUM或XP面对面交流等方法取代了一部分文档的需求。但并没有替代对于设计决策的详细交流的文档需求。面对面的会议很难正确表达它们。敏捷方法并不能处理跨时间的交流或向管理层的交流。 在敏捷方法中,所减少的文档是面对面交流能够解决的那部分沟通需求,但不会有更多减少。

Grady:对于那些使用更形式化的方法的团队来说其角色也一样。简单来说,记录一个软件密集型系统的架构有如下几个目的:让团队推敲重要决定,去记录组织的重要事件,对于每一次迭代的专门管理提供一些基本资料。对于这些轻量级的方法,架构文档更多地用于反映实际建造的系统,而不是将要设计的系统。

Paulo:软件架构的角色通常来说是为了在不精确且动态变化的需求与可运行的代码实现之间搭起桥梁。 架构文档捕捉设计决策,它是个指导实现(最主要)的部件,能够在早期用于评估所设想的解决方案的方向是否正确,还有助于任务分配和跟踪。但是对于敏捷呢,如果说敏捷开发是架构文档的对立面显然不对。敏捷并不是为了避免设计,而是避免预先大量设计(BDUF)。更深远广泛的架构策略是预先制定的,但许多其他的决策会推迟直到需要时才做。比如说,数据模型经常会被充分的预先讨论以避免之后的大变更。另一方面,在对于那些在下一个版本发布中的要开发的特性,它们的序列图和接口定义文档可以在实现前几天来完成。

敏捷开发者应该是有设计能力的,而敏捷架构师应该是有编写代码的技能的。 因此设计决策的交流就会更短而且更容易聚焦。实践来看是什么样的呢?

Eoin vInfoQ: 虚拟研讨会:软件架构文档 One Obedientfuckslave External Download Data Canon 2060 Victorian Costume Rental Obedient Fuck Slavef f Slave Obedient Obedient oInfoQ: 虚拟研讨会:软件架构文档 One Obedientfuckslave External Download Data Canon 2060 Victorian Costume Rental Obedient Fuck Slavev n Obedient Obedient Obedient Obedient