RUP如何描述软件架构? RUP和软件架构之间有什么关系?

时间:2010-02-07 05:39:59

标签: architecture

我正在寻找从RUP角度描述软件架构的文章或文档。

你知道任何文件吗?

2 个答案:

答案 0 :(得分:5)

软件架构的概念是RUP的核心,并且在整个过程中得到了很好的支持。

首先,RUP描述了几个角色,其中一个是software architect

  

这通常包括识别   并在架构上记录   该系统的重要方面,   包括要求,设计,   实施和部署“视图”   系统。

然后,RUP有一个名为sofware architecture document (SAD)的工件:

  

软件架构文档   提供全面的架构   系统概述,使用数字   不同的建筑观点   描绘了不同方面   系统

系统被“切片”,文档使用不同的视图。流程开发总监Philippe Kruchten推广了4+1 architectural view model。意见如下:

  • 用例/场景
  • 逻辑视图
  • 开发视图
  • 流程视图
  • 物理/ depoyment视图
IMO,这确实是一个很好的结构。但是,您不需要在SAD中遵循此结构。 SAD的目的是描述与代码互补的信息,尤其是如何满足非功能性需求。以下是关于此类文档应包含的内容的interesting guidelines

您可以查看RUP示例:course registration systemcollegiate sport paging system

答案 1 :(得分:3)

Rational Unified Process将“基于组件的体系结构”描述为其七个核心“最佳实践”之一。这对我来说并不完全清楚这意味着什么。在网络上,最好的描述似乎就是这个,来自白皮书“Rational Unified Process: Best Practices for Software Development Teams”:

  

使用基于组件的体系结构 - 在为全面开发提交资源之前,该流程侧重于强大的可执行体系结构的早期开发和基线。它描述了如何设计灵活的弹性架构,适应变化,直观易懂,并促进更有效的软件重用。 Rational Unified Process支持基于组件的软件开发。组件是非平凡的模块,子系统可以实现清晰的功能。 Rational Unified Process提供了一种使用新组件和现有组件定义体系结构的系统方法。它们是在一个定义良好的体系结构中组装的,或者是ad hoc,或者是组件基础结构,例如Internet,CORBA和COM,这些组件正在出现可重用组件的行业。

原始参考资料是本书Component-Based Software Engineering: Selected Papers from the Software Engineering Institute的第140页。

IBM developerWorks文章“What is a software architecture?”对我来说看起来更有用,更方便。虽然它不是特定于RUP的,但它试图定义“组件”和软件架构试图描述的关键元素。或者,任何有关该过程的书籍都应该包含有关推荐的软件架构的内容。维基百科文章末尾有一个further reading list,这将是一个很好的起点。