Architecture Flashcards
The ISO/OSI networking model best resembles which architecture style?
Layered
With a sophisticated enough protocol between client and server, a client server architecture becomes a 3-tiered architecture.
False,
The mechanism for communication between components isn’t considered a layer, tier or component. The assumption you can view the communication protocol as a layer is false.
One program may be structured using two or more architecture styles. In other words, a single program isn’t confined to a single architecture style.
True
Pipe components in the pipes and filter architecture style are one-way. Data is not allowed to flow both ways through a pipe component.
True
What are the 4 main views in Philippe Kruchten’s 4+1 views of software architecture?
Logical, Process, Physical, Development
Philippe Kruchten’s 4+1 View Model of Software Architecture
The model offers 5 different views that capture different architectural perspectives on any software system.
Philippe Kruchten’s 4+1 view model of software architecture includes a view that expresses the desired look and feel of the proposed software system.
False, Philip Krutchen’s model does include a use case view, but use cases generally don’t include user interface details.
Philippe Kruchten’s 4+1 : Logical View
This view ensures that the functional requirements are all met. It will contain class and object diagrams
Philippe Kruchten’s 4+1 : Process View
This view shows the allocation of functionality to tasks and threads within tasks.
Philippe Kruchten’s 4+1 : Physical View
This view shows the mapping of software elements to the actual machines where the software elements will run
Philippe Kruchten’s 4+1 : Development View
This view is concerned with how the solution is packaged into modules or libraries and how the work is divided between developers
The Android operating system has components called broadcast recievers. A broadcast receiver doesn’t have a user interface. A broadcast receiver is a unit of code that respond to specific system-wide events. For example, you might write a broadcast receiver that executes every time the device is connected to a power source. When the Android operating system detects that the phone has been connected to a power source, it will issue an event
Publish/Subscribe
The Publish/Subscribe pattern, also known as pub/sub, is an architectural design pattern that provides a framework for exchanging messages between publishers and subscribers. This pattern involves the publisher and the subscriber relying on a message broker that relays messages from the publisher to the subscribers.
Can the organizational structure of a company effect the architecture of the software it produces?
Yes, this is Conway’s Law
The publish/subscribe architecture style is most similar to which design pattern?
Observer
Which scales better, the Client/Server or Peer-to-Peer architecture style? Here scale means adding more clients.
Peer-to-Peer scales better because clients both consume and provide resources. Clients in a Client/Server architecture only consume resources.
Which of the following is likely to have the greatest influence on the selection of an architecture?
non-functional requirements
The 3-tiered architecture style divides a system into three components: UI Business Logic Database. The Model-View-Controller architecture is a particular instance of the 3-tiered architecture style where View = UI, Controller = Business Logic and Model = Database.
False,
They are two different architecture styles. Argument #1: draw the diagrams. MVC looks more like a triad. 3-tiered is horizontal. Argument #2: with MVC the BL is in the model along with the data/state. With the 3-tiered architecture style, business logic is in the middle tier between the UI and database.
With MVC, business logic is in the model or fourth component and the control component has event handling routines.