Showing posts with label S5 M.Sc. Software Engg.. Show all posts
Showing posts with label S5 M.Sc. Software Engg.. Show all posts

Sunday, May 4, 2014

Software Architecture

11. What is the expansion of RMA? 
RMA: rate-monotonic analysis: originated from research in scheduling algorithms for real-time systems.

12. What is Aesop? 
Aesop is a system for developing style-oriented architectural design environments.

13. Name some of the features of Aesop. 
-a generic object model for representing architectural designs;
-the characterization of architectural styles as specializations of the object model;
-a toolkit for creating an open architectural design environment from a description of a specific architectural style.

14. Mention the categories into which architectural styles fall in. 
The categories are:
-Idioms and patterns
-Reference models

15. Name the Properties of architectural styles.
-they provide a vocabulary of design elements
-they define a set of configuration rules
-they define a semantic interpretation
-they define analyses

16. What are the significant benefits in the use of architectural styles? 
-it provides design reuse
-Using architectural styles can lead to significant code reuse.
-It is easier for others to understand a systems’ organization if conventional structures are used.
-Use of standardized styles supports interoperability.

17. Define Fable. 
Aesop combines a description of a style with a shared toolkit of common facilities to produce an environment, called a Fable, specialized to that style (or styles).

18. Illustrate the structure of a Fable. 
Tool 1
(GUI)
Tool 2 Tool n
Fable Abstract Machine
Persitent
object base

Saturday, May 3, 2014

Software Architecture unit 5

1. Name three examples for research systems that aim to support architectural design and analysis. 
-UniCon: a language and set of tools for architectural description. 
-Aesop: a toolkit for constructing style-specific architectural design environments. 
-Wright: a language which supports architectural specification. 

2. Briefly explain UniCon. 
UniCon is an architectural-description language intended to aid designers in defining software architectures in terms of abstractions that they find useful, and in making a smooth transition to code. 

3.Illustrate the Heterogeneous implementation of a pipeline using both pipes and procedures. 
Gatherer Sorter Reverser 
Rev 
Stk Lib 

4. Define the structure for Components and Connectors. 
Components contain the following: 
-Interface 
-Component type 
-Player 
-Implementation 
Connectors contain the following: 
-Protocol 
-Connector type 
-Role 
-Implementation 

5. Define components in UniCon. 

 Components are the loci of computation and state. Each component has an interface specification that defines its properties, which include the component’s type or subtype, functionality, guarantees about global invariants, performance characteristics etc. 

Friday, May 2, 2014

Software Architecture

11. Mention the classes of components that appear regularly in architectural descriptions. 

• Computation 
• Memory 
• Manager 
• Controller 
• Link 

12. Briefly describe the critical elements of a design language. 
• Components 
• Operators 
• Abstraction 
• Closure 
• Specification 

13. Define desiderata. What are its features? 
The broad outlines of a system to support architectural design are relatively clear from informal experience. Such a system must provide models, notations, and tools to describe architectural components and their interactions. It must handle large-scale, high-level designs. 

14. Mention the desiderata for ADLs. 
Composition 
Abstraction 
Reusability 
Configuration 
Heterogeneity 
Analysis 

15. What are the notations for describing software architectures? 
• Informal diagrams 
• Modularization facilities 
• Module interconnection languages 
• Support for alternative kinds of interaction 
• Specialized notations for certain architectural styles 

16. Mention the language used to describe the use of module interfaces. 
The language used to describe the use of module interfaces is the Module Interconnection Languages. 

17. What is a First-Class connector? What are the problems with the current practice in the usage of these connectors? 
Architectural descriptions treat software systems as compositions of components. They focus on the components, leaving the description of interactions among these components implicit, distributed, and difficult to identify. If the interfaces to the components are explicit, they usually consist of import/export statements. 


18. Why should abstractions be hidden from external view? 
• Inability to associate related elements and name the cluster 
• Inability to specify relations among related elements 
• Inability to specify aggregate properties of a collection of elements. 

Thursday, May 1, 2014

Software Architecture Unit 4

1. What are the approaches to formalizing software architecture? 
Three approaches to formalizing software architecture are:
- consider the nature of formal specification as it might apply to software architecture.
- consider an example of architecture for a specific system.
-Illustrate a quite different use of formalism as a way to understand the meaning of an architectural style and its associated design space.

2. Mention the features in the usage of Formalisms. 
Formalisms can be used to provide precise, abstract models and to provide analytical techniques based on these models. They can be used to provide notations for describing specific engineering designs. They are also useful for simulating behavior.

3. Enumerate the different things that might be formalized. 
- The architecture of a specific system
- An architectural style
- A theory of software architecture.
- Formal semantics for architectural description languages

4. What are the problems faced by olden software systems? 
. No way to directly express the abstractions.
. Module interconnection languages and the modularization
facilities.

5. Mention the steps used to formalize a Digital Oscilloscope. 
The specification has been simplified .The architecture of the system as a configuration of components connected functionally through inputs and outputs.

Wednesday, April 30, 2014

Software Architecture

11. What are the forces which led the evolution of shared information systems in software development? 
• The advent of on-line computing 
• The concern for efficiency 
• The need for management to control entire software development process 


12. Define Integrated environments for building design. 
Integrated environments for building design are frame works for controlling a collection of stand-alone applications that solve part of the building design problem. 

13. What the concerns in developing integrated environments for building designs? 
• Efficient in managing problem solving and information exchange 
• Flexible in dealing with changes to tools 
• Graceful in reacting to changes in information and problem-solving strategies 

14. What are the common responsibilities of a system for distributed problem solving? 
• Problem partitioning 
• Task distribution 
• Agent control 
• Agent communication 

15. Give the characteristics of Batch sequential systems. 
• Very coarse-grained 
• Unable to provide feedback in real time 
• Unable to exploit concurrency 
• Unlikely to proceed at an interactive pace 

16. Write the characteristics of pipe-and-filter systems. 
• Fine-grained 
• Able to produce the output in right way 
• Able to provide feedback 
• Often interactive 

17. Define design space. 
Design space consists of design rules that indicate good and bad combinations of choices, and use them to select an appropriate system designed based on functional requirements. 

18. Define functional design space
The dimensions that describe functional and performance requirements make up the functional design space. 

Tuesday, April 29, 2014

Software Architecture Unit 3

1. What is Shared Information Systems? 
Shared Information System is a significant class of system which is responsible for collecting, manipulating, and preserving large bodies of complex information. 

2. What are the different domains appear in the form of shared information system? 
• Data processing 
• Software development environments 
• Building design 

3. What do you mean by Batch sequential database? 
The application consisting of a small number of large stand-alone programs that are performed in sequential updates on flat or unstructured files are called Batch sequential databases. 

4. What are the components of a batch sequential database? 
• Edit program 
• Transaction sort 
•Update programs 
• Print program 

5. What are the two trends forced a movement away from batch sequential processing to 
repositories? 
• Interactive technology 
• As organizations grew, the set of transactions and queries grew. 

Monday, April 28, 2014

Software Architecture

11. Give the functions of sensor integration and sensor interpretation in layered architecture in Mobile robotics. 
The sensor integration and sensor interpretation deals with input from the real world. They perform sensor interpretation by analyzing the data from the sensor and perform sensor integration by combining the analysis of different sensor inputs.

12. What is TCA?
TCA means Task-Control Architecture used to control numerous mobile robots. TCA is based on hierarchies of tasks, or task trees. In TCA the parent tasks initiate child tasks. The software designer can define temporal dependencies between pairs of tasks.

13. What are the functions supported by TCA’s implicit invocation mechanisms? 
TCA’s implicit invocation mechanisms support three functions:
. Exceptions
. Wiretapping
. Monitors

14. What do you mean by wiretapping? 
Messages can be intercepted by tasks superimposed on an existing task tree. For instance, a safety-check component can use this feature to validate outgoing motion commands.


15. What are Monitors? 
Monitors read information and execute some action if the data fulfills a certain criterion. Monitors will offer a convenient way of dealing with fault-tolerance issues by setting aside agents to supervise the system.

16. What are components of the CODGER architecture? 
• The components of the CODGER architecture are as follows:
• The “captain” : the overall supervisor.
• The “map navigator”: the high-level path planner.
•The “lookout”: a module that monitors the environment for landmarks.
• The “pilot”: the low-level path planner and motor controller.
• The perception subsystem: the modules that accept the raw input from multiple
sensors and integrate it into a coherent interpretation.

17. Name the architecture style that mostly supports the Mobile Robotics. 
The Black board architecture is more suitable for mobile robotics, since it can saturate all the four requirements such as deliberative and reactive behavior, uncertainty, account for dangers, flexibility.

18. Which architectural style is followed by Cruise Control and why? 
The Control-Loop architectural style is followed by Cruise Control. The architectural style is appropriate here because the software is embedded in a physical system that involves continuing behavior, especially when the system is subjected to external perturbations.

Sunday, April 27, 2014

Software Architecture unit 2

1. What is KWIC? 
The KWIC (Key Word In Context) index system accepts an ordered set of lines; each line is an ordered set of words, and each word is an ordered set of characters. Any line may be “circularly shifted” by repeatedly removing the first word and appending it at the end of the line. The KWIC index system outputs a listing of all circular shifts of all lines in alphabetical order. 

2. What are the software design changes proposed by Parnas? 
• Changes in the processing algorithm 
• Changes in the data representation 

3. What are the considerations given by Garlan, Kaiser, and Notkin? 
The considerations given by Garlan, Kaiser, and Notkin are as follows: 
. Enhancement to system function 
. Performance 
. Reuse 

4. Give reasons, why Main Program/Subroutine with shared data style is not suitable for KWIC? 
A change in data storage format will affect almost all of the modules. Also changes in the overall processing algorithm and enhancements to system function are not easily accommodated. Finally this decomposition is not particularly supportive of reuse. 

5. Why Abstract data type style is more suitable for KWIC? 

Abstract data type style is more suitable for KWIC, because both the algorithms  and data representations can be changed in individual modules without affecting others. Also reuse is better supported, because modules make fewer assumptions about the others with which they interact. 

Saturday, April 26, 2014

Software Architecture

11. “The type of transaction in an input stream triggers selection of process to execute”. Identify the type of repository. 
If the types of transaction in an input stream trigger selection process to execute, the repository can be a traditional database. 

12. What do you mean by a Black board? 
Black board is a repository in which the current state of the central data structure is the main trigger for selecting processes to execute. The black board is usually presented with three major parts: 
1. The knowledge sources 
2. The black board data structure 
3. Control structure 

13. What is an interpreter? 
An interpreter includes the pseudo program being interpreted and the interpretation engine itself. The pseudo program includes the program itself and the interpreter’s analog of its execution state. The interpretation engine includes both the definition of the interpreter and the current sate of its execution. 

14. What are components of an interpreter? 
The components of an interpreter include: . 
An interpretation engine to do work 
. A Memory that contains the pseudo code to be interpreted 
. A representation of the control state of the interpretation engine 

. A representation of the current state of the program being simulated. 

15. What is a set point? 
Set point is the desired value for a controlled variable. 

16. Define Open-loop system. 
Open-loop system is defined as the system in which information about process  variables is not used to adjust the system. 

17. Define Closed-loop system. 
Closed-loop system is defined as the system in which information about process variables is used to manipulate a process variable to compensate for variations in process variables and operating conditions. 

18. Define Feedback control system. 
Feedback control system is defined as the controlled variable is measured, and the result is used to manipulate one or more of the process variables. 

Friday, April 25, 2014

Software Architecture - Unit 1

1. What is Software Architecture? 
Software architecture involves the description of elements from which systems  are built, interactions among those elements, patterns that guide their composition, and constraints on these patterns. 

2. What is Engineering? 
Engineering is a disciplined application of scientific knowledge to resolve  conflicting constraints and requirements for problems of immediate, practical  significance. 

3. List the categories of Software architecture styles. 
• Dataflow systems 
• Call-and-return systems 
• Independent components 
• Virtual machines 
• Data-centered systems 

4 What are Pipes and Filters? 

In a Pipe-and-filter architecture style, each component has a set of inputs and a set of outputs. A component reads streams of data on its inputs and produces streams of data on its outputs. The components are termed as filters. The connectors of this style serve output of one filter to input for another. The connectors are termed as the pipes. 

5 Write the two important aspects of Data abstraction and Object-Oriented Organization style. 

The two important aspects of Data abstraction and Object-Oriented Organization style are (1) An object is responsible for preserving the integrity of its representation and (2) The representation is hidden from other objects.