Presentation on theme: "Tektronix Oscilloscope Case Study Garlan & Shaw 1994."— Presentation transcript:
Tektronix Oscilloscope Case Study Garlan & Shaw 1994
Challenge: Product Family Little reuse of sw between oscilliscopes o Each product division did their own thing: programming language, tools, conventions, etc. o SW couldn't even be reused between two oscilliscopes from the same product division: rewrite for new HW Lack of reuse was slowing down the business process o too long to release new oscilliscopes o too hard to adapt to specialized markets Performance problems: o switching modes on the scope require loading all new sw o because of limited reuse, loading the sw took too long Can CMU save the day?
Design 1: OO
Pros: greater clarity about the domain / data types Unresolved: how do the types fit together? how should functionality be partitioned? o with type of data being measured? o externally? which objects should the UI interact with?
Design 2: Layers
Pros: intuitively appealing Unresolved: strict layer model not appropriate for domain: users need to interact with functions at all levels
Design 3: Pipe & Filter
Pros: easy to compose functions in different ways similar to EE view of signal processing as a dataflow problem Unresolved: how do users interact with the system? unclear.
Design 4: Modified Pipe & Filter
Pros: benefits of Design 3 clear interface between UI and signal processing can think of filters as higher-order functions o parameters determine which transformation is performed Unresolved: poor performance o waveforms are large o copying between filters is expensive filters run at different speeds
Design 5: Coloured, Modified P&F "Coloured Pipes": may allow data to be processed without copying may allow data to be ignored by slow filters All issues resolved.
A Fresh View of Compilers your independent reading