KWIC
Design Challenge
Monday, May 16, 2011
KWIC Design Challenge Monday, May 16, 2011 Contextualized Index - - PowerPoint PPT Presentation
KWIC Design Challenge Monday, May 16, 2011 Contextualized Index set of all circular shifts lines of text program in alphabetical order Monday, May 16, 2011 Contextualized Index are fluffy Clouds Clouds are fluffy great Waterloo is
Design Challenge
Monday, May 16, 2011
program
Monday, May 16, 2011
program
Monday, May 16, 2011
program
Monday, May 16, 2011
Parnas has 2 designs Garlan & Shaw have 4 designs
Monday, May 16, 2011
input shifter alphabetizer
Monday, May 16, 2011
input shifter alphabetizer
Monday, May 16, 2011
Monday, May 16, 2011
Flow ADT modules can be impl. indep.? change of input file format decision to store all text in RAM decision to compress decision to index or copy decision to alphabetize or search
no yes I I all +DiskLS all +NormalLS S+A+O C A+O A
Monday, May 16, 2011
Master Control Input Circular Shift Alphabetizer Output Input Medium Characters Index Alphabetized Index Output Medium Direct Memory Access System I/O Subprogram Call
Figure 6: KWIC – Shared Data Solution
Monday, May 16, 2011
Master Control Input Output Input Medium Output Medium System I/O Subprogram Call Characters Circular Shift Alphabetic Shifts
Figure 7: KWIC – Abstract Data Type Solution
Monday, May 16, 2011
Output Medium Master Control Input Output Input Medium Lines Circular Shift Alphabetizer Lines System I/O Subprogram Call Implicit Invocation
Figure 8: KWIC – Implicit Invocation Solution
Monday, May 16, 2011
filters are logically independent of other filters.
Input Output Input Medium Output Medium Circular Shift Alphabetizer System I/O Pipe
Figure 9: KWIC – Pipe and Filter Solution
Monday, May 16, 2011
_ _ + + _ Shared Memory ADT Events Dataflow _ + _ + + + _ + _ _ + _ + _ + Change in Algorithm Change in Data Repn Change in Function Performance Reuse
Figure 10: KWIC – Comparison of Solutions
Monday, May 16, 2011
_ _ + + _ Shared Memory ADT Events Dataflow _ + _ + + + _ + _ _ + _ + _ + Change in Algorithm Change in Data Repn Change in Function Performance Reuse
Figure 10: KWIC – Comparison of Solutions
Monday, May 16, 2011