lesson 3 Flashcards
is a set of characteristics
and features that make a building or other
structure notable or historically identifiable.
architectural style
architectural style is a set of characteristics
and _____ that make a building or other
structure notable or historically identifiable.
features
A ____ may include such elements as form,
method of construction, building materials, and
regional character.
style
Category
Architecture styles
Communication
Service-Oriented Architecture (SOA),
Message Bus
Deployment
Client/Server,N-Tier, 3-Tier
Domain
Domain Driven Design
Structure
Component-Based, Object-Oriented, Layered
Architecture
is an architectural style that
supports service orientation.
Service-oriented architecture (SOA)
It refers to applications that expose
and consume functionality as a service using contracts and
messages.
Service-oriented architecture (SOA)
By consequence, it is as well applied in the field of software
design where services are provided to the other components
by application components through a communication protocol
over a network.
Service-oriented architecture (SOA)
(SOA)
Service-oriented architecture (SOA)
A ___ is a discrete unit of functionality that can be accessed
remotely and acted upon and updated independently, such as
retrieving a credit card statement online.
service
is also intended to be independent of vendors, products and
technologies.
SOA
Key principles of the SOA architectural style 5
• Services are autonomous
• Services are distributable.
• Services are loosely coupled
• Services share schema and contract, not class.
• Compatibility is based on policy.
Reuse of common services with standard
interfaces increases business and technology opportunities and
reduces cost.
Domain alignment
Services are autonomous and accessed through a
formal contract, which provides loose coupling and abstraction.
Abstraction
Services can expose descriptions that allow other
applications and services to locate them and automatically
determine the interface.
Discoverability
Because the protocols and data formats are based
on industry standards, the provider and consumer of the service can
be built and deployed on different platforms.
Interoperability
Services can be granular in order to provide specific
functionality, rather than duplicating the functionality in number of
applications, which removes duplication.
Rationalization
describes the principle
of using a software system that can receive and
send messages using one or more
communication channels, so that applications
can interact without needing to know specific
details about each other.
Message bus architecture
A message bus provides the ability to handle: 4
• Message-oriented communications.
• Complex processing logic.
• Modifications to processing logic.
• Integration with different environments.
Main benefits of SOA architectural style
Domain alignment. Reuse of common services with standard
interfaces increases business and technology opportunities and
reduces cost.
Abstraction. Services are autonomous and accessed through a
formal contract, which provides loose coupling and abstraction.
Discoverability. Services can expose descriptions that allow other
applications and services to locate them and automatically
determine the interface.
Interoperability. Because the protocols and data formats are based
on industry standards, the provider and consumer of the service can
be built and deployed on different platforms.
Rationalization. Services can be granular in order to provide specific
functionality, rather than duplicating the functionality in number of
applications, which removes duplication.
Variations on the message bus style :
Enterprise Service Bus (ESB).
Internet Service Bus (ISB)
ESB
Enterprise Service Bus
ISB
Internet Service Bus
Based on message
bus designs, an ___ uses services for
communication between the bus and
components attached to the bus.
Enterprise Service Bus (ESB)
This is similar to an
enterprise service bus, but with applications
hosted in the cloud instead of on an enterprise
network.
Internet Service Bus (ISB).
Benefits of the message-bus style
• Extensibility.
• Low complexity.
• Flexibility
• Loose coupling.
• Scalability.
• Application simplicity
The ___ describes
distributed systems that involve a separate client
and server system, and a connecting network.
Client/Server Architectural Style
The simplest form of client/server system involves
a server application that is accessed directly by
multiple clients, referred to as a ___.
2-Tier
architectural style
Variations on the client/server style 3
Client-Queue-Client systems
Peer-to-Peer (P2P) applications
Application servers
This approach allows clients to
communicate with other clients through a server-based queue.
Client-Queue-Client systems.
Developed from the Client-QueueClient style, the P2P style allows the client and server to swap their
roles in order to distribute and synchronize files and information
across multiple clients.
Peer-to-Peer (P2P) applications
A specialized architectural style where the
server hosts and executes applications and services that a thin
client accesses through a browser or specialized client installed
software.
Application servers
Benefits of the client/server architectural style
• Higher security. All data is stored on the server, which
generally offers a greater control of security than client
machines.
• Centralized data access. Because data is stored only
on the server, access and updates to the data are far
easier to administer than in other architectural styles.
• Ease of maintenance. Roles and responsibilities of a
computing system are distributed among several
servers that are known to each other through a
network.
All data is stored on the server, which
generally offers a greater control of security than client
machines.
Higher security
Because data is stored only
on the server, access and updates to the data are far
easier to administer than in other architectural styles.
Centralized data access
Roles and responsibilities of a
computing system are distributed among several
servers that are known to each other through a
network.
Ease of maintenance
are architectural deployment
styles that describe the separation of functionality
into segments in much the same way as the
layered style, but with each segment being a tier
that can be located on a physically separate
computer.
N-tier and 3-tier Architectural Style