Visual Software Architecture Description Based on Design Space

Author(s):  
Qian Zhang
Author(s):  
YUJIAN FU ◽  
ZHIJIANG DONG ◽  
XUDONG HE

A software architecture design has many benefits including aiding comprehension, supporting early analysis, and providing guidance for subsequent development activities. An additional major benefit is if a partial prototype implementation can be automatically generated from a given software architecture design. However, in the past decade less progress was made on automatically realizing software architecture designs. In this paper, we present a translator for automatically generating an implementation from a software architectural description. The implementation not only captures the functionality of the given architecture description, but also contains additional monitoring code for ensuring desirable behavior properties through runtime verification. Our method takes a software description written in SAM, a software architecture model integrating dual formal methods Petri nets and temporal logic, and generates ArchJava/Java/AspectJ code. More specifically, the structure of a SAM architecture description produces ArchJava code, the behavior models of components/connectors represented in Petri nets lead to plain Java code, and the property specifications defined in temporal logic generate AspectJ code; the above code segments are then integrated into Java code. An experimental result is provided.


Author(s):  
Tahani Elfatih Babeker, Hany Ammar

  increase numbers and complexity of software development requires that learners of software engineering and software architecture or software architects who do not have sufficient practical experience must have the skills and abilities to perform their jobs. But there is a gap between academia and practical so the question why does not use one of the architecture description languages in teaching and learn software engineering and software architecture to fill this gap? The objective of this study to classification ADLs according to their domain, domain specific or general purpose languages, doing these systematic literature review flowing the steps from Ketchenham. As the result we find that most ADLs are Domain Specific ADLs (Aviation Systems, Distribution Systems, Mobile Systems, Product Lines …etc. ) none of these ADLs is used in the field of software architecture education, but most intended to deal with experts in the field, except general purpose ADLs, like ACME, which we make as start point to design Arabic ADL, so as to enrich Arabic content, also to be as helping language in teaching Software Architecture course, because most of ADLs need experience and high level of understanding to use, moreover, when student think and design with same language subject more understandable. So using software architecture description languages in educating purpose, help on understanding high level of abstraction of software architecture and software engineering courses, there are some studies that aimed to reduce the complexity of these courses using different methodologies and approaches, but none of them using architecture description languages as helping tool. So the use of architecture description languages is helpful in teaching software architecture and software engineering courses.  


Sign in / Sign up

Export Citation Format

Share Document