60 likes | 217 Views
Software Architecture-based Analysis and Design. SEA Group Software Engineering and Architecture Group. My Research. Requirements. Model Checking. Interoperability for Regression Analysis. Software Architecture. Testing. ADLs / Viewpoints. Implementation. Model Checking SA.
E N D
Software Architecture-based Analysis and Design SEA GroupSoftware Engineering and Architecture Group
My Research Requirements ModelChecking InteroperabilityforRegressionAnalysis Software Architecture Testing ADLs/ Viewpoints Implementation
Model Checking SA • Model Checking SA: • Charmy Framework [TSE09] • An executable prototype of the SA is automatically generated (from the model-based SA specification), and used for simulation and checking • Classification and Comparison of Model Checking SA techniques [JSS10] • Comparison of 17 model checking SA techniques with respect to 20 parameters
SA-based Testing • SA-based Testing [TSE04]: • Testing of the implementation conformance to the architectural specification • Issues: level of abstraction, traceability • Open questions: • State of the art/practice of SA-based testing? • Industry needs • SA-based Regression Testing [JSS06]: • We consider assessing both “low-level” and “high-level” evolution,i.e.,whether a slightly modified implementation conforms to the initial architecture, and whether the implementation continues to conform to an evolved architecture.
Multi-model Regression analysis • Tosupportdifferentanalysis, weneedtomodelour SA withdifferentADLs • As soonasoneanalysistechniquerequires the SA tochange, all the othermodelsshallchangeaccordingly • Duallyperformsautomaticmodeltransformation[TSE10] and evolution[TR10] • Idea: Regressionanalysis via modeltransformation Darwin/LTSA Modelchecking Performance AEMILIA AADL Fault analysis
Viewpoints-based SA testing • ISO/IEC 42010 standard draft • Describes an Architecture Description is, in terms of viewpoints and views (and other concepts) • Current ADLs tend to mix different viewpoints into a single model • Idea: improving testability by clearly separating different viewpoints exposed by a certain architectural description