Employing Object-Oriented Design Principles in the Design of Learning Objects in a Software Engineering Course

Author(s):  
P. Mohan ◽  
S. Bucarey A. ◽  
B. Daniel
Proceedings ◽  
2021 ◽  
Vol 74 (1) ◽  
pp. 13
Author(s):  
Hatice Koç ◽  
Ali Mert Erdoğan ◽  
Yousef Barjakly ◽  
Serhat Peker

Software engineering is a discipline utilizing Unified Modelling Language (UML) diagrams, which are accepted as a standard to depict object-oriented design models. UML diagrams make it easier to identify the requirements and scopes of systems and applications by providing visual models. In this manner, this study aims to systematically review the literature on UML diagram utilization in software engineering research. A comprehensive review was conducted over the last two decades, spanning from 2000 to 2019. Among several papers, 128 were selected and examined. The main findings showed that UML diagrams were mostly used for the purpose of design and modeling, and class diagrams were the most commonly used ones.


Author(s):  
Javier Garzas ◽  
Mario Piattini

In order to establish itself as a branch of engineering, a profession must understand its accumulated knowledge. In this regard, software engineering has advanced greatly in recent years, but it still suffers from the lack of a structured classification of its knowledge. In this sense, in the field of object-oriented micro-architectural design designers have accumulated a large body of knowledge and it is still have not organized or unified. Therefore, items such as design patterns are the most popular example of accumulated knowledge, but other elements of knowledge exist such as principles, heuristics, best practices, bad smells, refactorings, and so on, which are not clearly differentiated; indeed, many are synonymous and others are just vague concepts.


2018 ◽  
Vol 140 ◽  
pp. 74-90 ◽  
Author(s):  
Johannes Bräuer ◽  
Reinhold Plösch ◽  
Matthias Saft ◽  
Christian Körner

Author(s):  
MATHUPAYAS THONGMAK ◽  
PORNSIRI MUENCHAISRI

Maintainability is an important factor that developers should be concerned because two-thirds of software costs involve maintenance. Aspect-oriented programming (AOP) paradigm is aimed to increase the software maintainability. It solves code tangling and code scattering problems by introducing a new modular unit, called "aspect". Various research works are provided to support measuring the object-oriented software, but only few studies are set up to support measuring the aspect-oriented software. This paper proposes aspect-oriented software maintainability metrics and a set of aspect-oriented design guidelines to support the metrics. By combining the proposed guidelines, object-oriented design principles, and aspect-oriented design principles, the metrics are constructed according to the Factor-Strategy (FS) quality model and the Factor-Criteria-Metric (FCM) quality model. Principle violation check definitions in the form of Boolean expressions are also defined to conduct software measurement and to fulfill the metrics. Finally, the aspect-oriented software maintainability metrics are applied to detect design principle violations in fifty AspectJ systems. The results show that for all systems their hidden flaws are exposed. Moreover, the proposed metrics are used to compare the maintainability between two versions of systems written in Java and AspectJ.


Author(s):  
Bertrand Meyer ◽  
Jean-Marc Nerson ◽  
Masanobu Matsuo

Sign in / Sign up

Export Citation Format

Share Document