PDF Archive

Easily share your PDF documents with your contacts, on the Web and Social Networks.

Share a file Manage my documents Convert Recover PDF Search Help Contact



SAUnit7 .pdf


Original filename: SAUnit7.pdf
Author: ILOVEPDF.COM

This PDF 1.6 document has been generated by ILOVEPDF.COM, and has been sent on pdf-archive.com on 23/08/2015 at 15:46, from IP address 103.5.x.x. The current document download page has been viewed 460 times.
File size: 138 KB (4 pages).
Privacy: public file




Download original PDF file









Document preview


SOFTWARE ARCHITECTURE

06IS72

Reflection is used to intercept and modify the effects of operations of the blackboard.
From the point of view of application agents, computational reflection is transparent: an agent
writes a piece of data on the blackboard, and has no knowledge this write operation has been
intercepted and redirected to the meta-level. The following scenario illustrates the general behavior
of the Reflective Blackboard architecture:
1. A knowledge source (or agent) performs an operation on the blackboard (write for
example), supplying a piece of data and expecting some other piece of retrieved data;
2. This operation is intercepted by the meta-level’s MOP, which will perform, if
specified, control activities over the performed operation;
3. The MOP checks for the existence of meta-objects associated to the blackboard data and
related to the performed operation. If the knowledge source has performed a write operation on
the blackboard, the searched meta-objects will be those related to the written piece of data. On
the other hand, if the knowledge source has performed read or delete operations, the searched
meta-object will be related to the piece of data read from the blackboard;

UNIT-7
Contents
 Some Design Patterns
 Structural decomposition
 Whole – Part
 Organization of work: Master – Slave
 Access Control
 Proxy

Page 107

SOFTWARE ARCHITECTURE

06IS72

UNIT-7
Chapter 9: SOME DESIGN PATTERNS
Structural Decomposition :
Design patterns systematically names, explains and evaluates an important and recurring design
in object-oriented systems. Their main objective is to reuse successful designs and architectures
of experienced and professional designers. Structural design patterns relate to class and object
composition. They use inheritance to compose interfaces and define ways to compose objects to
obtain new functionality.
The design patterns in this group further emphasize and clarify the fundamental differences
between the UML and OPM design pattern models:

whole-Part :
In this there will be two parts. The structure of whole and part are shown below :
Class: Whole
Responsibility:




Aggregates several smaller objects
Provides services built on top of part objects
Acts as a wrapper around its constituent parts

Collaborators: Part

Page 108

SOFTWARE ARCHITECTURE

06IS72

Class: Part
Responsibility:
 Represents a particular object and its services
Collaborators: - Nil


Whole object: It is an aggregation of smaller objects



The smaller objects are called Parts

Whole object forms a semantic grouping of its Parts in that it coordinates and
organizes their collaboration
The Whole uses the functionality of Parts objects for implementing services
Implementation
1. Design the public Interface of the Whole
2. Separate the Whole into Parts, or make it from existing ones (Use either bottom- up, topdown or both mixed)
3. Use existing Parts from component libraries or class libraries or package, specify their
collaboration if you use bottom-up approach
4. Partition the Whole's services into smaller collaborating services and map these
collaborating services to separate Parts if you follow a top-down approach
5. Specific the services of the Whole in terms of services of the Parts
6. Implement the Parts (Recursively if Parts are not leaf)
7. Implement the Whole by putting all the Parts together
Advantages
Changeability of Parts
Reusability
Defines class hierarchies consisting of primitive objects
Makes the client simple
Makes it easier to add new kinds of components
Disadvantages

Page 109

SOFTWARE ARCHITECTURE

06IS72

1) Makes your design overly general
2) Lower efficiency through indirection
3) Complexity of decomposition into Parts might be an art

Organization of work : Master-Slave :


The Master-Slave design pattern supports fault tolerance, parallel computation and
computational accuracy. A master component distributes work to identical slave
components and computes a final result from the results these slaves return.



It is used when you have two or more processes that need to run simultaneously and
continuously but at different rates. If these processes run in a single loop, severe timing
issues can occur. These timing issues occur when one part of the loop takes longer to
execute than expected. If this happens, the remaining sections in the loop get delayed.



The Master/Slave pattern consists of multiple parallel loops. Each of the loops may
execute tasks at different rates. Of these parallel loops, one loop acts as the master and
the others act as slaves. The master loop controls all of the slave loops, and
communicates with them using messaging architectures.

 It acquires a waveform from a transmission line and displays it on a graph every 100ms,
and also provides a user interface that allows the user to change parameters for each
acquisition. The Master/Slave design pattern is well suited for this application. In this
application, the master loop will contain the user interface. The voltage acquisition and
logging will happen in one slave loop, while the transmission line acquisition and
graphing will.


This situation can be avoided by applying the Master/Slave design pattern to the
application. In this case, the user interface will be handled by the master loop, and every
controllable section of the robotic arm will have its own slave loop. Using this method,
each controllable section of the arm will have its own loop, and therefore, its own piece of
processing time.



The Master/Slave design pattern is very advantageous when creating multi-task
applications. It gives you a more modular approach to application development because
of its multi-loop functionality, but most importantly, it gives you more control of your
application’s time management.

The Master/Slave design pattern consists of multiple parallel loops. The loop that controls
all the others is the master and the remaining loops are slaves. One master loop
always drives one or more slave loops. Since data communication directly between these loops
breaks data flow, it must be done by writing and reading to messaging architectures

Page 110


SAUnit7.pdf - page 1/4
SAUnit7.pdf - page 2/4
SAUnit7.pdf - page 3/4
SAUnit7.pdf - page 4/4

Related documents


saunit7
saunit6
sasyllabus
saunit4
saunit5
28i16 ijaet0916913 v6 iss4 1693to1702


Related keywords