Page:
(Bot)
(Prev)
(Next)
Class:
(Outline)
(Assign)
(Answer)
Course:
(Content)
IT533 - SOFTWARE ARCHITECTURES - CLASS 3
EXAMPLES
To:
(J2EE)
(NET)
(Web)
(XSLT)
(Pipe)
Our primary interest in these examples is to see how the
component-and-connector viewtype and styles can be used to
document the runtime architecture.
Later in the course, we will revisit some of these architectures
to develop a better understanding of their components and
connectors.
J2EE Web Services Architecture
(Top)
See class handout.
-
Discussion Questions:
- What viewtype is used to present this architecture?
- What styles are used in this architecture?
- What types of components are shown in the architecture?
- What types of connectors are shown in the architecture?
- What does this architecture say about deployment to
physical processors?
Microsoft .NET Architecture
(Top)
See class handout.
-
Discussion Questions:
- What viewtype is used to present this architecture?
- What styles are used in this architecture?
Web Services
(Top)
See class handout.
[Newcomer02, p17]
-
Discussion Questions:
- What is missing from this architecture document?
- Is this a component architecture or is it an architecture
of the components that implement a connection?
XSLT and EJB Architecture
(Top)
See class handout.
From Java and XSLT by Burke,
page 131
-
Discussion Questions:
- What is missing from this architecture document?
- What does this architecture say about the deployment
of the components?
- Do the connections represent data flow or control flow?
- Which components are active components and which are
passive components?
- Which components might be COTS?
Which might be reusable?
Which must be custom?
- How would you map this component-and-connector view into
a module view?
Pipe-and-Filter Patterns
(Top)
The Java code that would be used to construct and execute this filter
chain would be:
public final void runFilter()
{
//Create components
Extractor theExtractor = new Extractor();
Sorter theSorter = new Sorter();
Aggregator theAggregator = new Aggregator();
Formatter the Formatter = new Formatter();
//Connect components
theExtractor.connectTo(theSorter);
theSorter.connectTo(theAggregator);
theAggregator.connectTo(theFormatter);
//Run filter
theExtractor.execute();
}
-
Discussion Questions:
- How can you modify the component view to show a filter
controller that builds and executes the filter chain?
- How can you modify the architecture to show a generic
filter controller that reads a configuration file that
lists the specific pump, filters, and sink that should be
assembled to create the filter chain?
- Which components might be COTS?
Which might be reusable?
Which might be custom?
Page:
(Top)
(Prev)
(Next)
Class:
(Outline)
(Assign)
(Answer)
Course:
(Content)
Prepared by David L. March -- Last Revised on April 13, 2003
COPYRIGHT © 2003 BY DAVID L. MARCH