Birla Institute of Technology & Science, Pilani
Work-Integrated Learning Programmes Division
Second Semester 2015-2016
Comprehensive Examination
(EC-3 Make-up)
Course No. : SS ZG653
Course Title : SOFTWARE ARCHITECTURES
Nature of Exam : Open Book
Weightage : 50%
Duration : 3 Hours
Date of Exam : 23/04/2016 (FN)
[2+2+2+2]
[5]
[10]
Q.3. Consider a computer system that has a scanner installed. Assume that the OS (follows a Microkernel architecture), has already detected a scanner and is ready to be used. The OS is a particular flavor of UNIX. Now consider a scenario that a user uses GUI application to scan a document. Identify the essential modules for this problem. Map each module with the components of the Microkernel pattern. Identify the key functionality of each module keeping the role of each microkernel entities in mind. For each component draw a sequence diagram to depict this operation. [2+2+2+3= 9]
Q.1 (a) Write a short note explaining why Change Propagation Mechanism is required in the case of MVC pattern. Explain use of the publisher-subscriber pattern for this purpose. Explain with a class diagram and a sequence diagram using UML notation.
[2+2+2+2]
Q.1 (b) Consider word processor software that allows to “undo” the “deletion of a paragraph”. To implement this feature, “command pattern” is used. Draw a class diagram to depict this scenario. Briefly explain the methods/data-structure needed to implement this “undo”.
[5]
Q.2. Consider the following simplified module view of an eCommerce system.
The Item-Selection module fails only if both its submodules fail. It works if one of the submodules is operational. The Order-Fulfillment module fails only if one of its submodules fails. The system fails if either Item-Selection module or Order-fulfilment module fails. Compute with detailed steps, the failure probability of Item-Selection and Order-Fulfilment and the probability that the system remains operational, given the probability of failure of each sub-module as shown in the diagram.
[10]
Q.3. Consider a computer system that has a scanner installed. Assume that the OS (follows a Microkernel architecture), has already detected a scanner and is ready to be used. The OS is a particular flavor of UNIX. Now consider a scenario that a user uses GUI application to scan a document. Identify the essential modules for this problem. Map each module with the components of the Microkernel pattern. Identify the key functionality of each module keeping the role of each microkernel entities in mind. For each component draw a sequence diagram to depict this operation. [2+2+2+3= 9]
Q.4. Consider a financial batch processing application that continuously receives batches of transactions. Each batch of transaction is first sorted based on its account number and the sorted batch is given to the next component that computes various transaction summary results. This summary result data is given to a printing module which eventually passes the summary to the archiving module. The archiving module stores the summary in a datastore. This application requires high throughput and needs to process batches within a short time. Suggest the architectural pattern that’s most appropriate for this system. Identify various components of this application, the data items, and draw a structure diagram depicting these components, their interactions and data-flow.
[1 + 4 = 5]
[3]
Q.5. Case Study: Question paper Correction and Reporting Application
You are designing a system having the following display input and output requirements
Input of the system is a set of answers for multiple choice questions (MCQ). This input is provided in a comma separated format with each line providing the question number and the solution as marked by the person taking the test.
i. This input is processed against the answer template and the following data is made available
- Student ID (which is also the Key), total number of correct and wrong answers for each answer sheet, total number of unmarked answers for each answer sheet, total number of answer sheets validated
ii. Following data is shown on the display in real time
- A bar graph of number of students who have passed and failed the test with two bars. Colour is configurable from the same display window
- Analysis of total number of unanswered questions from each paper in the form of Student ID and total un-answered in a tabular format
Based on the details provided above, answer the following
(a) Identify the modules for this problem that play the roles of M, V and C.
[2]
(b) Draw a sequence diagram to describe an efficient mechanism of implementing change of color requested for the bar graph
[5]
Q.6. (a) Describe in steps how Broker can be used as Service Locator and as intermediary.
[3]
Q.6. (b) Describe a few benefits and overheads of the Broker pattern.
Q.6. (a) Describe in steps how Broker can be used as Service Locator and as intermediary.
[3]
Q.6. (b) Describe a few benefits and overheads of the Broker pattern.
No comments:
Post a Comment