Teaching Software Architecture Patterns Using ACME Language: تدريس أنماط معمارية البرمجيات باستخدام لغة أكمي - Tahani Elfatih Babeker, Hany Ammar (مجلة العلوم الهندسية و تكنولوجيا المعلومات, 2020)
Software Architecture is one of the most important courses, in computer science discipline. It has many branches all of them aimed to prepare students to be architects on the industry. But actually, there is a gap between what the students find on the theoretical courses and what they find on the industry. On other words, the practical experience differs from academic theory. So the question is how to prepare students to join the industry? Abstract nature of the software engineering courses as general and software architecture in a special manner, led to difficulties in understanding, this raises the second question, how to make these courses understandable? All previous studies focusing on these problems either by changing course curricula or by using software tools. This paper extension for the previous study [1] as we survey Architecture Description Languages (ADLs) and conclude that ACME is a general-purpose language and it may be suitable for use as practical part for software architecture curricula. We aimed to design a framework use, ACME language, use it as a practical part of the software architecture course and supporting on teaching, focus on architecture patterns, thus we use most common architecture patterns layer and Pipes-Filters, starting with a simple example and increase the complexity.