Content deleted Content added
No edit summary |
Citation bot (talk | contribs) Alter: pages, template type. Add: type, publisher, s2cid, authors 1-1. Removed parameters. Formatted dashes. Some additions/deletions were parameter name changes. | Use this bot. Report bugs. | Suggested by Abductive | #UCB_toolbar |
||
Line 20:
Box-and-line have been for a long time the most predominant means for describing SAs. While providing useful documentation, the level of
informality limited the usefulness of the architecture description. A more rigorous way for describing SAs was required. Quoting Allen and Garlan (1997),<ref name="Allen1997">{{Cite journal | last1 = Allen | first1 = R. | last2 = Garlan | first2 = D. | doi = 10.1145/258077.258078 | title = A formal basis for architectural connection | journal = ACM Transactions on Software Engineering and Methodology | volume = 6 | issue = 3 | pages = 213 | year = 1997 | citeseerx = 10.1.1.40.66 | s2cid = 326385 }}</ref> "while these [box-and-line] descriptions may provide useful documentation, the current level of informality limits their usefulness. Since it is generally imprecise what is meant by such architectural descriptions, it may be impossible to analyze an architecture for consistency or determine non-trivial properties of it. Moreover, there is no way to check that a system implementation is faithful to its architectural design." A similar conclusion is drawn in Perry and Wolf (1992),<ref name="PERRY1992">{{Cite journal | last1 = Perry | first1 = D. E. | last2 = Wolf | first2 = A. L. | author-link2 = Alexander L. Wolf| doi = 10.1145/141874.141884 | title = Foundations for the study of software architecture | journal = [[ACM SIGSOFT Software Engineering Notes]]| volume = 17 | issue = 4 | pages = 40 | year = 1992 | url = http://users.ece.utexas.edu/~perry/work/papers/swa-sen.pdf| citeseerx = 10.1.1.40.5174 | s2cid = 628695 }}</ref> which reports that: "Aside from providing clear and precise documentation, the primary purpose of specifications is to provide automated analysis of the documents and to expose various kinds of problems that would otherwise go undetected."
Since then, a thread of research on formal languages for SA description has been carried out. Tens of formal ADLs have been proposed, each characterized by different conceptual architectural elements, different syntax or semantics, focusing on a specific operational ___domain, or only suitable for different analysis techniques. For example, ___domain-specific ADLs have been presented to deal with embedded and real-time systems (such as AADL,<ref name=AADL>{{cite web |title= AADL — Architecture Analysis and Design Language |publisher=Software Engineering Institute, Carnegie Mellon University |date=July 2019 |url= http://www.aadl.info}}</ref> EAST-ADL,<ref>{{cite web|title= EAST-ADL |url= http://www.east-adl.info/}}</ref> and EADL<ref name="EADL">{{Cite journal | last1 = Li | first1 = J. | last2 = Pilkington | first2 = N. T. | last3 = Xie | first3 = F. | last4 = Liu | first4 = Q. | title = Embedded architecture description language | doi = 10.1016/j.jss.2009.09.043 | journal = Journal of Systems and Software | volume = 83 | issue = 2 | pages = 235 | year = 2010 | citeseerx = 10.1.1.134.8898 | s2cid = 8075069 }}</ref>), control-loop applications (DiaSpec<ref>{{cite web |title= AADL |url= http://www.diaspec.com/ |access-date= 2012-12-10 |archive-url= https://web.archive.org/web/20130601210552/http://diaspec.com/ |archive-date= 2013-06-01 |url-status= dead }}</ref>), product line architectures (Koala<ref name="KOALA">{{Cite journal | last1 = Van Ommering | first1 = R. | last2 = Van Der Linden | first2 = F. | last3 = Kramer | first3 = J. | last4 = Magee | first4 = J. | title = The Koala component model for consumer electronics software | doi = 10.1109/2.825699 | journal = Computer | volume = 33 | issue = 3 | pages = 78 | year = 2000 | citeseerx = 10.1.1.469.8243 }}</ref>), and dynamic systems (Π-ADL<ref name="Oquendo2004">{{cite journal|last1=Oquendo|first1=Flavio|title=π-ADL|journal=ACM SIGSOFT Software Engineering Notes|volume=29|issue=3|year=2004|pages=
However, these efforts have not seen the desired adoption by industrial practice. Some reasons for this lack of industry adoption have been analyzed by Woods and Hilliard,<ref name="Woods2005">{{Cite book | last1 = Woods | first1 = E. | last2 = Hilliard | first2 = R. | doi = 10.1109/WICSA.2005.15 | chapter = Architecture Description Languages in Practice Session Report | title = 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05) | pages = 243 | year = 2005 | isbn = 978-0-7695-2548-8 | s2cid = 18175375 }}</ref> Pandey,<ref name="Pandey2010">{{Cite journal | last1 = Pandey | first1 = R. K. | title = Architectural description languages (ADLs) vs UML | doi = 10.1145/1764810.1764828 | journal = ACM SIGSOFT Software Engineering Notes | volume = 35 | issue = 3 | pages =
As a way to overcome some of those limitations, [[Unified Modeling Language|UML]] has been indicated as a possible successor of existing ADLs. Many proposals have been presented to use or extend the UML to more properly model software architectures.<ref>{{cite web|title= Garlan_TR |url= http://www.sei.cmu.edu/library/abstracts/reports/04tr008.cfm}}</ref><ref>{{Cite book | last1 = Pérez-Martínez | first1 = J. E. | last2 = Sierra-Alonso | first2 = A. | chapter = UML 1.4 versus UML 2.0 as Languages to Describe Software Architectures | doi = 10.1007/978-3-540-24769-2_7 | title = Software Architecture | series = Lecture Notes in Computer Science | volume = 3047 | pages = 88 | year = 2004 | isbn = 978-3-540-22000-8 }}</ref>
In fact, as highlighted in a recent study conducted with practitioners,<ref name="IndustrySurvey">{{cite journal| first1 = Ivano| last1 = Malavolta| first2 = Patricia| last2 = Lago| first3 = Henry| last3 = Muccini| first4 = Patrizio| last4 = Pelliccione| first5 = Antony| last5 = Tang | year = 2013 | title = What Industry Needs from Architectural Languages: A Survey | journal = IEEE Transactions on Software Engineering | volume = 39 | issue = 6 | pages = 869–891| doi = 10.1109/TSE.2012.74| s2cid = 6383726}}</ref> whilst practitioners are generally satisfied with the design capabilities provided by the languages they use, they are dissatisfied with the architectural language analysis features and their abilities to define extra-functional properties; architectural languages used in practice mostly originate from industrial development instead of from academic research; more formality and better usability are required of an architectural language.
==Characteristics==
Line 161:
==External links==
* {{cite journal |
* {{cite journal |doi=10.1109/TSE.2012.74 | title = What Industry Needs from Architectural Languages: A Survey | journal = IEEE Transactions on Software Engineering | volume = 39 | issue = 6 | pages = 869–891 | year = 2013 | last1 = Malavolta | first1 = Ivano | last2 = Lago | first2 = Patricia | last3 = Muccini | first3 = Henry | last4 = Pelliccione | first4 = Patrizio | last5 = Tang | first5 = Antony | s2cid = 6383726 }}
* [https://web.archive.org/web/20150909170715/http://www.mrtc.mdh.se/han/FoPlan/ass2-bjornander.pdf Architecture Description Languages] // Mälardalen University
* {{cite book |first=P.C. |last=Clements |chapter=A survey of architecture description languages |chapter-url=http://splc.sei.cmu.edu/library/assets/Survey_of_ADLs.pdf |title=Proceedings of the 8th International Workshop on Software Specification and Design |year=1996 |isbn=0-8186-7361-3 |pages=16–25 |doi=10.1109/IWSSD.1996.501143 |s2cid=7307554 |archive-url=https://web.archive.org/web/20131224115957/http://splc.sei.cmu.edu/library/assets/Survey_of_ADLs.pdf |archive-date=2013-12-24 }}
* [http://www.avolution.com.au ABACUS]
* [https://www.cs.cmu.edu/~acme ACME]
Line 176:
* [https://www.amazon.com/dp/3540291695 DEMO] Another example of an enterprise architecture ADL
* [https://web.archive.org/web/20130823003552/http://diaspec.bordeaux.inria.fr/ DiaSpec] an approach and tool to generate a distributed framework from a software architecture
* {{cite journal |
* [http://complexevents.com/stanford/rapide/ Rapide]
* [http://www.mcc.com/projects/ssepp SSEP]
|