I need to provide my client wit开发者_JAVA百科h a proposed model of the solution I am suggesting. The problem is very vaguely as follows:
- We need to create a solution that amalgamates much of the information in the organisation
- Information will be available from several systems.
- INformation from the "central hub" will also be made available to other external systems (this information is not private - we are trying to share it as widely as possible).
- Essentially we want to model the interactions between different components in the system.
What would be a good set of diagrams to use?
So far I have decided to have a Use Case and Communication Diagram. Class diagrams are too detailed at this stage. What other high level diagrams do you think are appropriate.
Essentially we want to model the interactions between different components in the system.
Clearly, then, you want a component diagram. Lay out the components and their interfaces as the focal point of your presentation.
I agree that starting with use case is best because that helps define the requirements (although I do not think it is a replacement for a requirements spec.). Then create the component diagram. Note that components should be platform independent for as long as possible. Keep deployment decisions as late in the project as possible.
The next step would be to show the interaction between the components using sequence diagrams to define the major scenarios. Each component has a lifeline showing messages passed between them. Each sequence diagram describes one path through the system, i.e., one stimulus, one response, that accomplishes an important function. These can be time consuming to create so you want to choose them carefully. Each diagram should contain a summary, preconditions and postconditions. A good UML tool (like Enterprise Architect from SparxSystems) will add your interfaces to the components as you create them in the scenarios and will also make visible any interfaces that you add in the component view.
hmm. Does it have to use UML models specifically?
As I understand your post it looks like a dataflow diagram (DFD) might be useful. It would allow you to show what data flowed from/to where. A level 0 DFD (Context diag) would let you illustrate your system and those it integrates with.
If you need to go to more precision, a sequence diagram would allow you to illustrate the interaction protocol between your system and those it integrates with.
精彩评论