PSG College of Technology, Coimbatore - 641 004 Semester Examinations, Semester

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

1422

No of Pages : 3 Course Code : 12XTEC

Roll No:
(To be filled in by the candidate)

PSG COLLEGE OF TECHNOLOGY, COIMBATORE - 641 004

SEMESTER EXAMINATIONS, APRIL / MAY - 2016

MSc – THEORETICAL COMPUTER SCIENCE Semester : 8

12XTEC SOFTWARE PATTERNS

Time : 3 Hours Maximum Marks : 100


INSTRUCTIONS:
1. Answer ALL questions from PART - A and answer any 5 questions from PART - B.
Question under PART - C is Compulsory.
PART - A Marks : 10 x 3 = 30

1. How does a designer make code reusable? Give an example.


2. Give two good examples of Design Patterns in Java’s core libraries.
3. Is the build() method in the Builder pattern mandatory? Justify your answer.
4. “Many client specific interfaces are better than one general purpose interface”. Which
design principle states this? Justify this principle with an example.
5. Apply Bridge Pattern and provide a better design to the badly coupled hierarchy.

6. Compare data coupling and content coupling. Give proper examples to justify your
comparison.
7. “A developer has implemented code, such that parameters get passed through multiple
methods without modifications”. Comment on this statement.
8. Which design pattern would you use together with the Composite pattern, and why?
9. List the advantages of Pipe and Filter Architectural Pattern.

Page No: 1
1422

No of Pages : 3 Course Code : 12XTEC

10. Is this design, an anti pattern or pattern? Justify.

PART - B Marks : 5 x 10 = 50

11. Design a system that keeps track of employees’ attendance using barcode scanner. This
concept set forth to automate the traditional attendance system of taking signature by
using authentication technique. The traditional system requires a register maintained for
manually signing the attendance by the employees which is time consuming. Hence this
proposed project eliminates the need of maintaining attendance sheet. The proposed
system uses barcode method for authenticating employees with a unique barcode that
represents their unique id. Every employee will have their attendance card. They have to
scan their cards using barcode scanner and the system notes down their attendance as
per date and time. System stores employee’s attendance details and generates brief
report for admin as required. Such kind of application is very useful in organizations or
corporations for taking daily attendance. Use a Prototype Creational Pattern and portray
the Structure; provide the Benefits and Consequences of the pattern, and Related
Patterns.
12. Design an Intelligent PC Location Tracking System. We usually come across conditions
where we need to track the location of a particular PC/Laptop. This condition arises from
security issues as well as companies need to track PC/Laptop locations to check the
geological location of their online customers. This data is obtained through IP address
tracking. The IP addresses issued by internet providers are location dependent. Our
systems need to reverse engineer this data in order to get the city of that particular
terminal. We here use a live windows based application as demo IP recorder to capture
the IP addresses of terminals. Then we make a reverse lookup to map those IP
addresses into city coordinates. This helps a company to record and track its target
customers by plotting them on a map. It helps companies take better marketing
decisions by checking the geographic spread of their software/product in various cities.
Apply Proxy Pattern as Structural Pattern for tracking the PC’s and model using the
Class Diagram. Also model using Chain of Responsibility Pattern for tracking the IP
address and sketch the Class Diagram.
13. Design a Mobile Banking System that provides various banking functionality to a user
with ease on his mobile phone. It allows the user to check his/her balance, view latest
transactions, transfer funds, request for cheque book and view cheque status. It even
allows user to open fixed and recurring deposits. Use State pattern to model the below
functions: the user may request for cheque book and even check the cheque book
status; the user may even do a cheque status enquiry and stop the cheque. Use
Memento Pattern to check for the latest 5 transactions.
14. Consider an advanced Restaurant Review system that detects hidden sentiments in
feedback of the customer and rates the restaurant accordingly. The system uses opinion

Page No: 2
1422

No of Pages : 3 Course Code : 12XTEC

mining methodology in order to achieve desired functionality. Opinion Mining for


Restaurant Reviews is a web application which gives review of the feedback that is
posted. The System takes feedback of various users, based on the opinion, system will
specify whether the posted restaurant is good, bad, or worst. We use a database of
sentiment based keywords along with positivity or negativity weight in database and then
based on these sentiment keywords mined in user feedback is ranked. Once the user
login to the system he views the restaurant and gives feedback about the restaurant.
System will use database and will match the feedback with the keywords in database
and will rank the feedback. The role of the admin is to post new restaurant and adds
keywords in database. This application is useful for all the people who are food lovers.
Apply Decorator Pattern to add sentiment keywords to the database. Use Observer
Pattern to rank the restaurant, for every feedback made by a customer. Design using
Structure, Sequence Diagram, Intent, Known Uses, Related Patterns.
15. Explain all the types of cohesion, with proper examples. Consider an online Loan
Application and Verification System, and associate the types of cohesion with design
patterns applied to this system.
16. The NextGen POS System is a computerized application used to record sales and
handle payments; it is typically used in a retail store. It includes hardware components
such as a computer and bar code scanner, and software to run the system. It interfaces
to various service applications, such as third-party tax calculator and inventory control.
These systems must be fault-tolerant; that is, even if remote services are temporarily
unavailable, they must be capable of capturing sales and handling at least cash
payments. A POS system must support multiple and varied client-side terminals and
interfaces. These include a thin-client Web browser terminal, a regular PC with
something like a Java Swing GUI, touch screen input, wireless PDAs and so forth.
Provide a Layers Architectural Style to this system. Describe the pattern in an elaborate
form.

PART - C Marks : 1 x 20 = 20

17. Explain in detail all the principles of Object Oriented Design specifically on design
classes. Consider an online Movie Ticket Booking system, and correlate all the principles
with design problems in this system.

/END/
FD/JU

Page No: 3

You might also like