今天在msn上跟chuanbo讨论component design,说到component和class有什么具体的区别。现在找到了一篇讲组件设计的小文章:
http://www.agilemodeling.com/artifacts/componentDiagram.htm
开头的那段话对上面那个问题尤其有用吧:
Component diagrams are particularly
useful with larger teams. Your initial architectural
modeling efforts during cycle 0 should focus on identifying the initial
architectural landscape for your system. UML component
diagrams are great for doing this as they enable you to
model the high-level software components, and more
importantly the interfaces to those components. Once
the interfaces are defined, and agreed to by your team,
it makes it much easier to organize the development
effort between subteams. You will discover the need to
evolve the interfaces to reflect new requirements or
changes to your design as your project progresses,
changes that need to be negotiated between the subteams
and then implemented appropriately.