1
Automating the Evaluation of Software Architecture By Almari Hassan, ANU CECS IT Group, [email protected]. Supervisor: Associate Professor: Clive Boughton. 1 Introduction In software engineering, one of the main objectives, even as far back as the first software engineering conferences of the 1960s, has been the development of software systems which consistently satisfy a certain set of requirements, both functional and non-functional (Becker (2008)). The importance of software architecture under the umbrella discipline of software engineering has increased through the years. In fact, in the 1990s, this sub-discipline was a main focus of research, as predicted by Perry and Wolf (Fielding (2000)). Thus, an aspect of this study is the reasoning of quality attributes as they relate to software architecture. 2 Problem Area * Software Intensive Systems Engineering Group, College of Engineering & Computer Science, Australian National University Research School of Computer Science, College of Engineering & Computer Science, Australian National University Unsuitable software architecture can cause a host of problems that is likely to lead to unsatisfied outcomes and dissatisfied customers. 3. Why we bother? Formal methods, modelling approaches, evaluation techniques, architecture description languages, architectural styles, and design patterns are different aspects of software development that contribute to software architecture maturity, either totally or partially. In order to understand the automation mechanisms and architecture evaluation, we need to integrate the necessary and useful knowledge as well as the methods of these development aspects. We must now try to find out how we should go about getting good fit. Where do we find it? What is the characteristic of processes which create t successfully?" Alexander (1964). 4. Our Approach to the problem? 4.1 What is UPDM? Unified Profile for DoDAF (Department of Defence Architectural Framework) and MODAF (Ministry of Defence Architectural Framework). Which technique should I use? Is there a standardized one? Are there automated methods to do the evaluation of the system? How to balance Quality Attribute (QA) in your system Architecture evaluation at an early stage helps open the communication paths between stake-holders and to develop a satisfactory system architecture which increase the success of project. Indeed, software architecture is a focal point in the development process, involving decisions in team structure, work division, configuration repository, documentation organization, management strategies, and development scheduling (Qin et al. (2008)). Standalone Evaluation methods with no tools to support? Specific Quality Evaluation Methods ? Standardized BUT NOT Automated Methods? Need Experts ? Standardized AND Automated Methods? Can Evaluate more than Quality? No for Need Experts ? • To amalgamate all necessary knowledge that affects the automation of architecture evaluation processes, to fit together to produce accompanying knowledge for getting optimal and practical architecture evaluation method that is in tandem with the current technological trends. For example, we need to dig more and answer some questions such as; is the advanced use case modelling method useful to our problem solving?, Do modelling approaches such as MDA help us solve and develop good evaluation model?, What level of formality do we need and which is the best tool for that? • To synthesize methodologies for evaluating security ( Selected QA ) within systems architectures. To develop software architecture evaluation model for security and automated the result. •To develop all necessary algorithms, tactics, analytical theories, metrics and scenarios to support the evaluation model. UPDM is one solution ! As a tool for the approach 3.1 Objectives of the study QA Tactics, Scenarios, and metrics Develop measures models using SysML Profile within the UPDM Using UPDM tools to implement the models Link UPDM tool to Mathlab & Simulink To obtain the results 4.2 Solution steps :

Automating the Evaluation of Software Architecture · MODAF (Ministry of Defence Architectural Framework). Which technique should I use? Is there a standardized one? Are there automated

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Automating the Evaluation of Software Architecture · MODAF (Ministry of Defence Architectural Framework). Which technique should I use? Is there a standardized one? Are there automated

Automating the Evaluation of Software Architecture By Almari Hassan∗, ANU CECS IT Group, [email protected]. Supervisor: Associate Professor: Clive Boughton. †

1 Introduction

In software engineering, one of the main objectives, even as far back as the first software engineering conferences of the 1960s, has been the development of software systems which consistently satisfy a certain set of requirements, both functional and non-functional (Becker (2008)). The importance of software architecture under the umbrella discipline of software engineering has increased through the years. In fact, in the 1990s, this sub-discipline was a main focus of research, as predicted by Perry and Wolf (Fielding (2000)). Thus, an aspect of this study is the reasoning of quality attributes as they relate to software architecture.

2 Problem Area

*Software Intensive Systems Engineering Group, College of Engineering & Computer Science, Australian National University † Research School of Computer Science, College of Engineering & Computer Science, Australian National University

Unsuitable software architecture can cause a host of problems that is likely to lead to unsatisfied outcomes and dissatisfied customers.

3. Why we bother? Formal methods, modelling approaches, evaluation techniques, architecture description languages, architectural styles, and design patterns are different aspects of software development that contribute to software architecture maturity, either totally or partially. In order to understand the automation mechanisms and architecture evaluation, we need to integrate the necessary and useful knowledge as well as the methods of these development aspects. We must now try to find out how we should go about getting good fit. Where do we find it? What is the characteristic of processes which create t successfully?" Alexander (1964).

4. Our Approach to the problem? 4.1 What is UPDM? Unified Profile for DoDAF (Department of Defence Architectural Framework) and MODAF (Ministry of Defence Architectural Framework).

Which technique should I use? Is there a standardized one? Are there automated methods to do the evaluation of the system?

How

to balance Quality A

ttribute (Q

A) in your system

Architecture evaluation at an early stage helps open the communication paths between stake-holders and to develop a satisfactory system architecture which increase the success of project. Indeed, software architecture is a focal point in the development process, involving decisions in team structure, work division, configuration repository, documentation organization, management strategies, and development scheduling (Qin et al. (2008)).

Standalone Evaluation methods with no tools to support? Specific Quality Evaluation Methods ? Standardized BUT NOT Automated Methods? Need Experts ?

Standardized AND Automated Methods? Can Evaluate more than Quality? No for Need Experts ?

•  To amalgamate all necessary knowledge that affects the automation of architecture evaluation processes, to fit together to produce accompanying knowledge for getting optimal and practical architecture evaluation method that is in tandem with the current technological trends. For example, we need to dig more and answer some questions such as; is the advanced use case modelling method useful to our problem solving?, Do modelling approaches such as MDA help us solve and develop good evaluation model?, What level of formality do we need and which is the best tool for that? •  To synthesize methodologies for evaluating security ( Selected QA ) within systems architectures. •  To develop software architecture evaluation model for security and automated the result. • To develop all necessary algorithms, tactics, analytical theories, metrics and scenarios to support the evaluation model.

UPDM is one

solutio

n ! As a

tool

for the a

pproac

h

3.1 Objectives of the study

QA Tactics, Scenarios, and

metrics

Develop measures

models using SysML Profile

within the UPDM

Using UPDM tools to

implement the models

Link UPDM tool to Mathlab & Simulink To obtain the

results

4.2 Solution steps :