Domanda |
Risposta |
What is Architectural Design? inizia ad imparare
|
|
Understanding how a system should be organized and designing the overall structure of that system
|
|
|
name 6 Architectural Patterns. inizia ad imparare
|
|
Layered Architecture, Repositories, Process Contro, Pipe and Filter, Object Oriented, Event based.
|
|
|
Describe Pipe and filter. inizia ad imparare
|
|
-A series of processes (filters) connected by pipes -The behavior of the system is the composition of behavior of the filters -Filters don’t need to know anything about what they are connected to -Filters can be implemented in parallel
|
|
|
Give exampls of where pipe and filter may be used. inizia ad imparare
|
|
1) UNIX shell command. 2) Compilers: Lexical analysis -> Parsing -> Semantic analysis -> Code generation 3) Signal processing.
|
|
|
What are the benefits of pipe and filter? inizia ad imparare
|
|
Easy to understand, Workflow style matches the structure of many business processes, Evolution is straightforward, Can be implemented as either sequential or concurrent system.
|
|
|
Give some drawbacks of pipe and filter. inizia ad imparare
|
|
The format of data transfer has to be agreed upon between communicating components, Each component must parse its input and unparse its output to the agreed form.
|
|
|
Describe Object Oriented Architectures inizia ad imparare
|
|
Decompose problems into sets of interacting objects, Objects must know the identity of objects they interact with, Internal data representations of objects are not visible externally.
|
|
|
What are the two sub types of object oriented architecture? inizia ad imparare
|
|
Client server and object broker
|
|
|
describe Client Server Architecture inizia ad imparare
|
|
Servers provide services; clients request and use these services, Clients do not need to know about one another, Clients must know the identity of the server, Breaks the system into manageable components.
|
|
|
Give a use of Client Server Architecture inizia ad imparare
|
|
Data in a shared database needs to be accessed from a range of locations
|
|
|
what are the benefits of Client Server Architecture inizia ad imparare
|
|
Servers can be distributed across a network General functionality available to all clients; does not need to be replicated
|
|
|
What are the drawbacks of Client Server Architecture inizia ad imparare
|
|
Performance depends on the network, so can be unpredictable, Servers are single points of failure, susceptible to attacks and failure.
|
|
|
What is Object Brokers Architecture inizia ad imparare
|
|
Adds a broker between the clients and the servers, Clients don’t need to know which server they are using, Can have multiple brokers and multiple servers.
|
|
|
what is Event-Based Architecture inizia ad imparare
|
|
Components react to externally generated events and communicate with other components through events
|
|
|
what are Event-Based Architectureused for? inizia ad imparare
|
|
Debugging systems: listen for breakpoints, Graphical User Interfaces: listen for user inputs, Database management systems: data integrity checks.
|
|
|
what are the Event-Based Architecture Benefits inizia ad imparare
|
|
Loosely coupled and well distributed, Support broadcast communication in a distributed context.
|
|
|
What are the Event-Based Architecture Drawbacks inizia ad imparare
|
|
Workflow is usually not obvious, Performance may be a concern.
|
|
|
describe Layered Architecture inizia ad imparare
|
|
The system is organized into layers with related functionality associated with each layer
|
|
|
give a use of Layered Architecture inizia ad imparare
|
|
Operating systems Network communication protocols
|
|
|
What are Layered Architecture Benefits? inizia ad imparare
|
|
Allows replacement of entire layers so long as the interface is maintained, Redundant services can be provided in each layer to increase the dependability of the system.
|
|
|
What are Layered Architecture Drawbacks inizia ad imparare
|
|
Providing a clean separation between layers of difficult, Performance can be a problem because of multiple levels of interpretation of a service request.
|
|
|
What are the 2 kinds of layerd architecture? inizia ad imparare
|
|
|
|
|
describe open layerd architecture inizia ad imparare
|
|
A layer can use services from any lower layer, More compact code, as the services of lower layers can be accessed directly, Increased dependency between layers.
|
|
|
describe Closed Layered Architecture inizia ad imparare
|
|
Each layer only uses services of the layer immediately below, Minimizes dependencies between layers, Reduces the impact of change.
|
|
|
What is a Repositories Architecture inizia ad imparare
|
|
All data in a system is managed in a central repository that is accessible to all system components
|
|
|
give a use for Repositories Architecture inizia ad imparare
|
|
Databases, Blackboard expert systems, Programming environments.
|
|
|
what are the Repositories Architecture Benefits inizia ad imparare
|
|
Components can be independent, Changes made by one component can be propagated to all components, All data can be managed consistently as it is all in one place.
|
|
|
what are the Repositories Architecture Drawbacks? inizia ad imparare
|
|
The repository is a single point of failure so problems in the repository affect the whole system, Distributing the repository across several computers may be difficult, Organizing all communication through the repository might be inefficient.
|
|
|
what is the Repositories Architecture: MVC inizia ad imparare
|
|
|
|
|
Explain the Repositories Architecture: MVC inizia ad imparare
|
|
|
|
|
What are the Repositories Architecture MVC Uses? inizia ad imparare
|
|
There are multiple ways to view and interact with data, Future requirements for interaction and presentation of data are unknown.
|
|
|