SED Practical Class 3 Software Architecture

116 downloads 60 Views 74KB Size Report
The Shaw and Garlan reference below contains several alternative architectural solutions. Read these and compare them with your solution. Make notes on the.
SED Practical Class 3 Week 7

Software Architecture Objectives In this practical you will choose a software architecture for a particular problem and identify strengths and weaknesses of your own and other people’s solutions.

Task This practical is to be undertaken by students working in pairs. 1. Study the problem statement for the key word in context problem given below (10 minutes) 2. Design a software architecture for this problem (30 minutes) 3. The Shaw and Garlan reference below contains several alternative architectural solutions. Read these and compare them with your solution. Make notes on the strengths and weaknesses of your solution. Note that there is not a single “correct” software architecture for this problem – each of those presented by Shaw and Garlan have advantages and disadvantages (25 mins) 4. Write up your architecture and a summary of the strengths and weaknesses of this solution on one sheet of A4. (5 minutes) 5. If time, pairs should present their solutions to the tutorial group.

Key Word in Context Problem

(problem from Parnas 1972)

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.

References D.L. Parnas, On the Criteria To Be Used in Decomposing Systems into Modules, Communications of the ACM, Vol. 15, No. 12, December 1972 pp. 1053 – 1058 Shaw and Garlan, An Introduction to Software Architecture, Technical Report CMU-CS94-166, January 1994. Available from the unit webpage. UWA CITS2220 semester 1, 2010