Lucas Bueno Ruas de Oliveira

Learn More
Software-intensive systems have become increasingly large and complex and new techniques and methodologies are necessary to deal with such complexity. Model-Driven Development (MDD) has been used to deal with complex scenarios, since software models, despite details, facilitate the visualization of the whole. Moreover, MDD has been widely recognized as a(More)
Currently, software systems have become increasingly large and complex, often resulted by the integration of several operationally independent systems, resulting in a new class of systems: the Systems of Systems (SoS). In another perspective, software architectures play a major role in determining system quality, since they form the backbone of any(More)
—Software architectures play a major role in determining system quality, since they form the backbone to any successful software-intensive system. In this context, reference architecture is a generic architecture for a class of software systems used as a foundation for the design of concrete architectures from this class. Because of their fundamental role,(More)
Robotics has emerged as one of the most prominent research areas in the last years. To cope with the great variety of robots application areas, as well as the heterogeneity of the robots, Service-Oriented Architecture (SOA) has been adopted to develop robotic systems, i.e., the software systems that manage the robots. Nevertheless, there is a lack of(More)
Aspect-Oriented Programming (AOP) has arisen as a new technology to support a better SoC (Separation of Concerns), intending to contribute to the development of reusable, maintainable, and evolvable software systems. Aspects have been also explored in the early life cycle phases, aiming at contributing to a more adequate development of aspect-oriented(More)
—Robotic systems have been increasingly adopted in several sectors of the society. To cope with this demand and diversity, researchers have investigated the Service-Oriented Architecture (SOA) to develop such systems. SOA promotes interoperability between software modules and heterogeneous hardware devices, and a better reusability and flexibility for(More)
Software architectures have played a significant role in determining the success of software systems. In this context, reference ar-chitectures have emerged as a special type of architecture that contains knowledge of a specific domain, aiming at improving reuse and productivity , facilitating the development of systems of that domain. Considering their(More)
Currently, embedded software have been required more and more by a diversity of new products. As a consequence, an increase in the software complexity can be observed, requiring more attention to the software quality. Initiatives of exploring software engineering knowledge to develop this type of software can be identified, resulting in the Embedded(More)