90 likes | 175 Vues
Contributing to Rainbow’s Stitch Adaptation Language. Independent Study Summer 2006. Ali Almossawi Bradley Schmerl Shang-Wen (Owen) Cheng. Q1. When faced with a problem, how do you determine what action to take ? …. Overview.
E N D
Contributing to Rainbow’s Stitch Adaptation Language Independent StudySummer 2006 Ali Almossawi Bradley Schmerl Shang-Wen (Owen) Cheng
Q1. When faced with a problem, how do you determinewhataction to take? … Overview Objective: Write an editor for the Stitch adaptation language as an Eclipse plug-in and investigate the language’s expressiveness Interviews with sysadmins Learning outcome: Learnt how to write Eclipse plug-ins Learning outcome: Learnt how to conduct a highly focused interview and probe for specific answers
The Editor • Syntax and semantic checking • Integrated parser, tree walker and semantic checkers written by Owen • Reports errors and warnings to the problems view • Shows markers in the gutter
The Editor • Outlineview • Modified ANTLR’s AST and improved its appearance • Linked tree nodes to lines in code • Sort option • “Only show this node’s code” option
The Editor • Content Assistance • Keywords • Tactics • Color Coding • Customizable • Preference Page
The Editor Quick Demo
The Interviews • Objective • Determine whether or not I can write satisfactory repair scripts using Stitch based on the information I get from the sysadmin during the interview. The results would thereby determine the expressiveness of the language. • Method 1. Prepare sysadmin 2. Conduct interview 3. Write Stitch script 4. Perform interview post-mortem
The Interviews • Results and Realizations • Rainbow does architecture-based adaptation, not script-type automation of tasks • It seemed natural to think in terms of strategies, tactics, triggers and attribute vectors • Wrote a Stitch script for the “Students using more bandwidth than allowed” problem • Also… • Documented some sysadmin problems that I typically come across and their corresponding solution strategies
Questions The End 19