2. Architectures CSE5306 Lecture Quiz 2 due 5 PM Tuesday, 9
June 2015
Slide 2
Architectures Divide & Conquer -- organizes the design of a
distributed system. Name the parts and show their interactions.
System (multi-server?) architecture precedes (drives) software
architecture. Adaptive (tradeoffs) middleware can provide
distribution transparency by separating apps from their platforms.
Autonomic distributed systems use feedback control loops to monitor
their behaviors and adapt.
Slide 3
Architectural Styles Lets adopt Visios UML 2.0 Object Model
Diagram as our (object-based) architectural style. Its components
are classes and instances. Its connectors are offspring inherit and
cross-family, marital uses. Consider three other styles: Layered
architecturesincluding inheritance. Data-centered
architecturesprocessors communicating via shared files or web-based
data services. Event-based architecturespublish/subscribe systems.
Hybrids trading off performance, fault-tolerance, ease of
programming, etc. In our chosen object-based architectural style,
inheritance also is layered (Fig.2-1, -2, pp.35, 36). Networks have
7 OSI layers: application, down to representation, session,
transport, network, data link and physical. Event based systems are
loosely or referentially coupled. SQLs shared data spaces are both
data-centered and event-based.
Slide 4
System Architectures A system architecture defines the
relationships among users (clients), (server) hardware and both
purchased and developed software, from apps through tools to
middleware. A system architecture can be centralized, decentralized
or a hybrid of the two.
Slide 5
Centralized Architectures Servers serve up files or databases.
Clients make a request and await a reply. If both share the same
desktop computer or LAN, they need no phone-like connection. Remote
servers (WAN) must first be called. Reliable connection-oriented
protocols are slow (e.g., the Internets TCP/IP). Idempotent
requests can be repeated; e.g., What is my bank balance? Others
cannot; e.g., Transfer $10K to Joe.
Slide 6
R U O K ? Match the following terms with their example
applications below. 1.Object-oriented architectures__
2.Data-centered architectures __ 3.Layered architectures __ 4.CSE
5306-002s architecture __ 5.Event-based architectures __
a.Networkers 7-level OSI hierarchy and UMLs class inheritance.
b.Its components are classes and instances, and its connectors are
inherit and uses. c.Yourdons structured data flow diagrams and data
structured system design diagrams. d.Loosely coupled
publish/subscribe systems. e.Visios UML 2.0 Object Model
Diagram
Slide 7
R U O K ? 6. Which of the following accurately characterize
centralized architectures? a.Servers generally serve up files or
databases. b.Client-server interactions have a request-reply
behavior. c.Clients and servers on the same LAN have connectionless
network protocols. d.Clients must connect to distant WAN servers,
usually via the Internets via TCP/IP protocol. e.All of the
above.
Slide 8
R U O K ? 7. Which of the following accurately characterize
system architecture? a.It defines relationships among clients and
servers, hardware and software, whether purchased or developed.
b.It can be centralizedoffice LANs printer server. c.It can be
decentralizedthe Internet. d.It can be a hybrid of the twoa local
database that links to the Internet when it lacks resources. e.All
of the above.
Slide 9
R U O K ? 8. What is the purpose of software architecture? a.It
prevents system engineers, who often lack software design skills,
from carelessly making software organization decisions. b.It
organizes software development tasks before implementation. c.It
defines interfaces among software modules and their verification
tests. d.It prevents coders, who often lack software design skills,
from carelessly making software organization decisions. e.All of
the above.
Slide 10
R U O K ? Match the following terms with their definitions
below. 9. Open Systems Interconnection__ 10. Connection-oriented __
11. Idempotent __ 12. Object-oriented design__ 13. Object model
diagram __ a.A request without lingering side effects that can be
repeated. b.Calling up a remote server to make a series of requests
before hanging up. c.The standard layered architecture of
networking. d.Interpreting verbal software specifications as
interrelated families of objects (nouns) and operations (verbs).
e.Layers of boxes (full of method and object names) that are all
interconnected by inheritance or uses arrows.
Slide 11
Application Layering Three application layers (Fig.2-4, p.39
and above): 1.User interfacedesktop computer GUI client.
2.Processingapplications core functionality. 3.Data
levelobject-relational database- or file-specific entry, retrieval
and persistent storage, including table descriptions, entry
constraints and application-specific metadata.
Slide 12
Multi-Tiered Architectures A physically 2-tiered client-server
application could be as simple as 1) a thin-client dumb terminal
and 2) the server handling everything (Fig.2-5a, p.41). Fat clients
(Fig2-5e) may give users too much control, resulting in security
breeches. In physically 3-tiered architectures, the middle tier is
a web server that talks to the client and to application or
database servers, as if it were a client (Fig.2-6, p.43).
Slide 13
R U O K ? Match the following terms with their definitions
below. 14. Fat client__ 15. Processing application layer __ 16.
Thin client __ 17. User interface application layer __ 18. Data
level application layer __ a.A desktop computer GUI client. b.The
applications core functionality. c.Object-relational database- or
file-specific entry, retrieval and persistent storage, including
table descriptions, entry constraints and application-specific
metadata. d.Dumb terminal lets server handle everything. e.User
terminal handles almost everything, possibly resulting in security
breeches.
Slide 14
R U O K ? 19. In what kind of distributed computer system does
a server function as both server and client? a. In physically
3-tiered architectures. b. In bank customer service websites, where
the server stands guard between inquiring clients and the banks
object-relational transaction database. c. In secure Internet
biographical data repositories, where thin clients are unable to
access others private data and a highly optimized search engine
handles the database. d. All of the above. e. None of the
above.
Slide 15
R U O K ? 20. Which of the following are the data levels
responsibilities? a. Making data persist until its next possible
use. b. Keeping data consistent across different applications;
e.g., ensuring that a debit card user does not withdraw more than
his balance. c. Keeping application data independent of
organizations and vice versa, so that changes in one do not affect
the other (information hiding). d. Accommodating special data
representations; e.g., polygons in computer-aided design systems.
e. All of the above.
Slide 16
R U O K ? 21. Which of the following applications would be most
suitable for fat clients? a.Consumer banking. b.Algorithm stock
traders that are operate autonomously in close proximity to the New
York Stock Exchanges transactional database. c.Distributed
computer-aided design system used in developing jet fighters.
d.Limited access LAN that enables astronomers control of a large
telescope. e.Car dealers control of Toyota assembly workers.
Slide 17
R U O K ? 22. Which of the following applications would be most
suitable for thin clients? a.Consumer banking. b.Algorithm stock
traders that are operate autonomously in close proximity to the New
York Stock Exchanges transactional database. c.Distributed
computer-aided design system used in developing jet fighters.
d.Limited access LAN that enables astronomers control of a large
telescope. e.Car dealers control of Toyota assembly workers.
Slide 18
R U O K ? 23. Which of the following impact the design of
multi- tiered, connection-oriented database applications?
a.Reusable data should persist between client requests. b.Clients
may use a wide variety of terminal equipment and communication
protocols. c.Connections are unreliable; i.e., may drop out and
reconnect. d.Users may have criminal intentions. e.All of the
above.
Slide 19
Decentralized Architectures Multi-tiered client-server
architectures are vertically distributed among logically different
components on different machines. In peer-to-peer systems, a client
or servers work is horizontally distributed among logically
equivalent parts on different machines, each part sharing the load
by working on its own share of the dataset. In interacting with its
peers, any individual (called a servent) may behave as a client or
as a server. A servent nodes TCP messages to another node typically
are routed through many other message- carrier nodes in an overlay
network.
Slide 20
Structured Peer-to-Peer Architectures In structured
peer-to-peer architectures, the overlay network is a distributed
hash table (DHT). Data items are evenly distributed among nodes
that bear their hash codes (e.g., the data items successors in
Chord ring of Fig.2-7, p.45). Effective membership management comes
from nodes finding shortest communication paths among themselves,
so that data lookups can be done in O(log(Node)) steps. Available
peers join a Chord ring by generating its hash coded node
identifier number and informing its immediate predecessor in the
ring. It leaves the ring by giving its data items to its successor
and asking its predecessor to replace its name with the name of its
successor. The automotive Content Addressable Network (CAN) works
similarly in multiple dimensions, two of which appear in Fig. 2-8,
p.46. (A new node joins the overworked node on the lower-left,
taking a fraction of the formers data items and informing its
neighbors of its new data range. A node leaves the space by giving
away its data to lightly loaded neighbors.)
Slide 21
Unstructured Peer-to-Peer Architectures The overlay networks of
unstructured peer-to-peer systems (e.g., the Internet) are randomly
generated, both the lists of neighbors and the data that they
oversee. To locate a needed data item, node A broadcasts (i.e.,
pushes) its request throughout the network. Node A adds the node
that responds (node B) to its partial view (i.e., routing table) of
nodes. When node A responds to (i.e., pulls) another nodes (node C)
broadcast, it also adds the broadcaster to its partial view. To
join the network, an available peer asks the most frequent contacts
on its partial view to share their data items. When a node leaves
the network (and fails to respond to requests), its requesters
delete it from their partial views. Very popular nodes are said to
have high indegree. If overloaded by requests, it can lower its
popularity by simply ignore some.
Slide 22
R U O K ? Match the following terms with the definitions below.
24. Overlay network__ 25. Horizontal distribution__ 26.
Peer-to-peer system__ 27. Servent__ 28. Vertical distribution__
a.Separating clients from servers in multiple tiers of logically
different components on different machines. b.Spreading a client or
servers excessive workload among his peers (i.e., logically
equivalent parts) on different machines. c.Distributing a client or
servers extra work among its peers; i.e., logically equivalent
parts on different machines. d.An processor that can assume the
role of a client or server to assist an overloaded peer. e.A
distributed hash table (DHT) that lists node owners of data items
in a peer-to- peer system.
Slide 23
R U O K ? 29. Which of the following characterizes a Chord ring
of peer-to-peer nodes? a.Data items are evenly distributed among
nodes that bear their hash codes. b.Nodes are logically organized
into a ring, such that a data item with key i belongs to the
nearest successor node with key k > i. c.An available peer joins
by generating its own hash-coded node identifier number and
introducing itself to its immediate predecessor. d.A peer leaves
the ring by giving its data items to its successor and asking its
predecessor to replace its name with the name of its successor.
e.All of the above.
Slide 24
R U O K ? 30. Which of the following characterizes a Content
Addressable Network (CAN) of peer-to-peer nodes? a.It is like a
Chord, but with multiple Cartesian coordinate dimensions. b.An
available node joins the network by accepting half of the data
items of an overworked existing node, and informing all nearest
neighbors of its and its benefactors new ranges of data. c.A peer
leaves the network by giving away its data to its most lightly
loaded neighbors. d.All of the above. e.None of the above.
Slide 25
R U O K ? 31. Which of the following characterizes an
unstructured system of peer-to-peer nodes? a.Like the Internet, its
overlay networks (i.e., the lists of neighbors and the data that
they oversee) are randomly generated. b. To locate a needed data
item, a node broadcasts (i.e., pushes) its request throughout the
network. c. The broadcasting node adds the responder to its partial
view of nodes. And when a node responds to (i.e., pulls) another
nodes broadcast, it adds the broadcaster to its partial view. d. To
join the network, an available peer asks the most frequent contact
on its partial view to share its data items. And when a node leaves
the network (and fails to respond to requests), its requesters
delete it from their partial views. e. All of the above.
Slide 26
R U O K ? Match the following terms with their definitions
below 32. CAN__ 33. DHT__ 34. membership management__ 35. partial
view __ 36. Indegree __ a.Nodes finding shortest communication
paths among themselves, so that data lookups can be completed in
O(log(Node)) steps. b.The number of other partial views that that
contain this nodes number; i.e., a measure of its popularity. c.The
automotive Content Addressable Network that distributes nodes over
a multi-dimensional Cartesian coordinate space. d.The distributed
hash table that serves as structured peer-to-peer systems overlay
network. e.A routing table that lists nodes and the data items they
manage.
Slide 27
Topology Management of Overlay Networks Structured P2P
architectures have better membership management; unstructured P2Ps
are faster and distribute nodes workloads more evenly, but a hybrid
can beat both. Let the unstructured one work independently below
and the structured one optimize its results in a higher
architectural layer (Fig. 2-10, p.49). Optimizing criteria (ranking
functions) encourage commerce with physically or semantically
nearest neighbors (Fig. 2-11, p.50). Very efficient search
algorithms use semantic overlay networks that structured P2P
systems imposed upon unstructured P2P systems.
Slide 28
Super-Peers When too many nodes slow down an unstructured P2P
system, its supervising structured P2P system can ask similar nodes
to elect a representative superpeer (Fig. 2-12, p.51). Then a node
queries a few superpeers, instead of flooding the whole network
with its broadcast. Superpeers maintain an index of its
subordinates data items and gather popular (distant) web pages to
rapidly fulfill local searches (content delivery network).
Superpeers should be long-lived and highly available.
Super-superpeers also can be hierarchically organized. A client may
adopt a favorite superpeer to serve collected files. As nodes join
and leave a network, periodic reelections may be needed.
Slide 29
Hybrid Architectures Yet another optimized hybrid results from
marrying client-server and decentralized architectures. An
edge-server enhances enterprise networks Internet access.
Collaborative distributed systems encourage servers or even end
users to help others and to call upon others for help.
Slide 30
Edge-Server Systems Internet service providers like AT&T
connect a great many users homes to the Internet (Fig 2- 13, p.52).
Edge servers serve wide-band Internet content to whole enterprise
networks full of always- connected users (e.g., AT&T itself).
AT&Ts dedicated edge server optimizes both content and the
distribution of applications. AT&Ts edge server can call upon
other local edge servers to broker distant web pages, etc.
Slide 31
Collaborative Distributed Systems Instead of a dozen clients
requesting a big file from a distant server, each client should
request a chunk and share it with the others. BitTorrent (Fig.2-14,
p.53) encourages such behavior by serving chunks only to those who
promise to share. A few websites have.torrent files that identify
tracker servers, which maintain lists of active nodes having chunks
of a desired file. An active node is one that currently is
downloading another file. To continue downloading its desired file,
it also must serve a file that it already has to others. If it is
giving less than it is is getting, its provider reduces its data
rate. Successful nodes actively seek trading relationships.
Slide 32
Collaborative Distributed Systems (Continued) The Globule
collaborative content distribution network consists of end users,
who voluntarily replicate distant web pages. Each user has a
manager, an analyzer and a broker. The broker may refer requests to
other servers, who can serve some web pages better. The broker may
be replicatedredundancy enhances reliability.
Slide 33
R U O K ? Match the following terms with their definitions
below. 37. BitTorrent __ 38. Superpeer __ 39. Edge server __ 40.
Globule__ 41. Ranking functions __ a.Optimizing criteria that
encourage commerce with physically or semantically nearest
neighbors. b.Many nodes elected representative, which makes
broadcasting requests unnecessary. c.A whole enterprise networks
internet service provider. d.A system that promotes collaborations
among file servers. e.A system that makes users into web page
brokers.
Slide 34
Architectures v. Middleware Middleware is the singular
architectural layer between applications and distributed platforms
(Fig.1-1, p.3). It provides distribution transparency by
translating between varied application languages L2 and hardware
languages L1. A middleware product (e.g., object-oriented CORBA)
may become bloated, if it tries to offer interaction patterns for
everyone.
Slide 35
Interceptors An object calls all methods the same way, whether
they are local or remote. When a method is remote, the objects
local interface must intercept the call. The middlewares
request-level interceptor transforms it into a generic object
invocation. The middlewares message-level interceptor sends it as a
message to the local operating systems LAN transport layer,
possibly breaking up any transmitted files into blocks for
reassembly by the remote middleware. Un-intercepted local calls
simply pass through the middleware to the local operating
system.
Slide 36
General Approaches to Adaptive Software Distributed
applications runtime environments are continually changing.
Middleware presents a stable environment, handling all cell phone
mobility, network quality-of-service dips, hardware failures and
battery drainage problems. These adaptations are categorized as:
Separation of concernsaspect-oriented software development weaves
security and fault tolerance into the middlewares application
services. Computational reflectionsmiddleware continually inspects
and adjusts its own runtime performance. Component-based
designmiddleware reconfigures itself at runtime with late binding
to modules that are loaded or unloaded at will.
Slide 37
Discussion Services that applications demand from middleware
(specialization) conflict with needs for middlewares distribution
transparency (generality). Flexibility leads to complexity.
External simplicity arises from selectively configuring components
and application independence. Distributed systems must not fail, so
they must adapt to changing environments by automatically replacing
and upgrading components at runtime.
Slide 38
R U O K ? 42. What might cause a middleware to become bloated?
a.Applications demands for middleware services (specialization)
competing with middlewares distribution transparency (generality).
b.Enabling users to selectively configure components as needed.
c.Application independence. d.Flexibility, which leads to
complexity. e.Both a and d above.
Slide 39
R U O K ? Arrange the following in their proper sequence. 43.
__ (first step)46. __ 44. __47. __ (last step) 45. __ a.
Un-intercepted local calls simply pass through the middleware to
the local operating system. b. An object calls every method the
same way, whether local or remote. c. If the method is remote, the
objects local interface intercepts the call. d. The middlewares
message-level interceptor sends the call as a message to the local
operating systems LAN transport layer, possibly breaking up any
transmitted files into blocks for reassembly by a remote
middleware. e. The middlewares request-level interceptor transforms
the call into a generic object invocation.
Slide 40
R U O K ? Match the following terms with their definitions
below. 48. CORBA__ 49. Interceptor __ 50. Middleware__ 51.
Request-level interceptor __ 52. Message-level interceptor __ a.A
middleware object that redirects RPCs to the LAN. b.Transforms
calls into messages and transfers file blocks. c.A popular
object-oriented middleware. d.Transforms method calls into a
generic object invocations. e.Interprets language L0 below into
language L1 above and vice versa, while presenting a stable client
environment.
Slide 41
R U O K ? 53. How does middleware adapt its distributed system
to environmental changes? a.Separation of concernsaspect-oriented
software development weaves security and fault tolerance into the
middlewares application services. b.Computational
reflectionsmiddleware continually inspects and adjusts its own
runtime performance. c.Component-based designmiddleware
reconfigures itself at runtime with late binding to modules that
are loaded or unloaded at will. d.All of the above. e.None of the
above.
Slide 42
R U O K ? 54. How is middleware similar to and different from
other architectures? a.Middleware is a single layer. b.Middleware
developers adopt a variety of organization schemes, with varying
success. c.Middleware tends to become bloated as developers strive
to organize it to serve every application. d.All of the above.
e.None of the above.
Slide 43
Self-Management in Distributed Systems To automatically adapt
to changing environments, we must organize components for
monitoring and adjustments, while deciding where their processes
must be executed. Autonomic computing starts with a high-level
feedback control system that self-manages, self-heals,
self-configures and self-optimizes.
Slide 44
The Feedback Control Model Self-managing systems adapt to their
changing environments by means of one or more feedback control
loops. The Initial Configuration includes the customers performance
requirements and potential customers desirements. Uncontrollable
Parameters include ongoing environment changes and random
perturbations. Analysis estimates the distributed systems current
performance metrics and continually tweaks it, feeding
configuration Corrections into the systems input. Estimates implies
that some performance parameters cannot be measured directly; e.g.,
a remote nodes latency. Corrections may include reprioritizing
schedules, choosing a higher quality-of-service, caching heavily
used data or replicating. Every corrections effects also are
carefully evaluated. Like any architecture, the feedback loop is a
logical organization; its distributed physical implementation may
look quite different.
Slide 45
Systems Monitoring with Astrolabe An Astrolabe zone
automatically summarizes performance attributes from all of its
hosts robotic agents; e.g., files, resources. User programmable
aggregation functions use SQL-like commands to aggregate zone data:
SELECT AVG(procs) AS avg_procs FROM hostinfo Gossiping occasionally
provides supplementary distant data. Astrolabe passes its
performance summaries on to external tools for analyses and
corrective actions.
Slide 46
R U O K ? 55. Which of the following accurately describe the
self-management of distributed systems? a.Broken systems healing
themselves. b.Systems reconfiguring at runtime, as their
environments change. c.Organizing components for monitoring and
adjustments in changing environments. d.Continually optimizing
performance under stress. e.All of the above.
Slide 47
R U O K ? 56. Which of the following accurately describe the
feedback control model? a.Its initial configuration includes the
customers performance requirements, as well as potential customers
desirements. b.Its uncontrollable parameters include ongoing
environment changes and random perturbations. c.The analysis block
in its feedback branch estimates the distributed systems current
performance metrics and continually tweaks it, feeding
configuration corrections into the systems input. d.Like any
architecture, the feedback loop is a logical organization; its
distributed physical implementation may look quite different. e.All
of the above.
Slide 48
R U O K ? 57. How can the feedback control model correct
distributed system failures? a.It can reprioritize schedules. b.It
can choose a higher network quality-of- service. c.It can cache
heavily used data. d.It can replicate heavily used data. e.All of
the above.
Slide 49
R U O K ? 58. Which of the following accurately describe system
monitoring with Astrolabe? a.An Astrolabe zone automatically
summarizes performance attributes from all of its hosts robotic
agents; e.g., files, resources. b.User programmable aggregation
functions use SQL- like commands to summarize zone data.
c.Gossiping occasionally provides supplementary data from nodes
outside the zone. d.Analysis and corrective actions are outside
Astrolabes scope. e.All of the above.
Slide 50
R U O K ? 59. What does this SQL-like preprogrammed command
direct Astrolabe to mean: SELECT AVG(procs) AS avg_procs FROM
hostinfo a.Repair the failed component, which can be identified by
its deficient average procedural performance. b.Average all
procedure attributes in the zones host information file and store
them in the avg_procs object. c.Analyze the performance of all
components, and display their mean performance. d.Replace a
below-average component. e.None of the above.
Slide 51
Differentiating Replication Strategies in Globule A Globule
collaborative content distribution networks end-user servers
replicate origin server web pages (p.54). Seeing many Texas
customers reading her web catalog, a consumer electronics exporter
in Tokyo (automatically) decides to replicate popular catalog pages
on a Texas edge server to improve those customers web performance.
30-50 policies for updating these replicates may be explored, with
weighted values of trans-Pacific bandwidth, customer request
latencies, number of viewable stale copies, etc. Poor (high cost)
policies arise from taking too few measurements or taking too long
to gather enough. The minimal cost is somewhere in between (see
above).
Slide 52
Automatic Component Repair Management in Jade In servers with
component-based designs, Jade continually tests all components; it
replaces failed components with new ones; and it restores all
bindings with other components, as well as the servers state just
prior to failure. A component has two types of interfaces: Its
server interface calls methods in that component. Its client
interface calls other (possibly remote) components. In Jades repair
management domain, there may be many servers, each with its own
node manager (possibly replicated for reliability), which adds and
removes nodes (servers) from the domain. Every component offers a
variety of self-tests; e.g., exception states, resource usage
problems, hardware failures. A preprogrammed repair procedure
begins after each failure: 1.Node manager terminates all bindings
with the faulty node (server). 2.It starts a new node and adds it
to the domain. 3.It configures the new node like the crashed one.
4.It reestablishes all previously terminated bindings.
Slide 53
Summary Software architecture differs from system design in the
following ways. Software architecture is concerned about the
logical organization of the software: 1) how components interact,
2) how they are structured and 3) how they can be made independent.
System design considers where the distributed systems components
are physically placed among the various machines. A model-based
system design demonstrates system performance (the customers
requirements), while providing a high-level (MATLAB) description of
the target code that software developers understand. The software
architecture renders a system design on a UML 2.0 object model
diagram of classes and dependencies. There are other popular
architectural styles for organizing the interactions among a
distributed systems components. Layering. Object orientation. Event
orientation. Data space orientation. Distributed architectures
differ from centralized client-server systems. Distributed
architectures tend to be peer-to-peer systems. The peer-to-peer
system is organized into an overlay network. The overlay network is
a process list of those peers, with whom it can communicate.
Overlay networks can be structured (deterministic), unstructured
(random) or an optimized hybrid of both.
Slide 54
R U O K ? 60. Which of the following exemplify Globules
replication performance? a.An exporter in Japan asks a Texas edge
server to replicate web-based catalog pages for loyal Texas
customers convenience. b.Many tens of policies may be considered in
deciding how often to update each replicated web page.
c.Excessively costly policies arise from taking too few
measurements or taking too long to gather enough. d.All of the
above. e.None of the above.
Slide 55
R U O K ? 61. Which of the following accurately describe Jades
component repair services? a.They work only on servers with
component- based designs. b.Jade continually tests all components.
c.Jade replaces failed components with new ones. d.Jade restores
all prior bindings with other components, as well as the servers
state just prior to failure. e.All of the above.
Slide 56
R U O K ? 62. How is software architecture different from
system design? a.Software architecture is concerned about the
logical organization of the software: 1) how components interact,
2) how they are structured and 3) how they can be made independent.
b.System design considers where the distributed systems components
are physically placed among the various machines. c.Your
model-based system design clearly demonstrates desired target
system performance to the customer, while providing all software
developers a high-level (MATLAB) description of the target code.
d.As software architect and designer, you interpret the system
design as 1) a UML 2.0 object model diagram of classes and
dependencies and 2) sequence diagram of methods messages. e.All of
the above.
Slide 57
R U O K ? 63. Which of the following are popular architectural
styles for organizing the interactions among a distributed systems
components? a.Layering. b.Object orientation. c.Event orientation.
d.Data space orientation. e.All of the above.
Slide 58
R U O K ? 64. How do distributed architectures differ from
centralized client-server systems? a.Distributed architectures tend
to be peer-to- peer systems. b.The peer-to-peer system is organized
into an overlay network. c.The overlay network contains every
process list of peers, with whom it can communicate. d.Overlay
networks can be structured (deterministic), unstructured (random)
or an optimized hybrid of both. e.All of the above.