DESIGN PATTERNS FOR SOFTWARE EVOLUTION REQUIREMENTS
O termo engenharia de software conhecido como Evolução de Software pode ser entendido em dois sentidos. Primeiro, como as mudanças experimentadas pelo software ao longo do ciclo de desenvolvimento; segundo, o software muda enquanto o sistema está em serviço. Em ambos os casos, as arquiteturas de software devem liderar, apoiar e facilitar quaisquer modificações, reconfiguração ou adaptação a um ambiente em mudança, de sistemas de software. Apresentamos aqui a análise de diversos padrões de design e arquitetônicos para sustentar a evolução dos sistemas de software de acordo com duas perspectivas, uma conectada à manutenção e outra com dinâmica de mudanças de qualquer design de software. Também estudamos fraquezas e benefícios, alinhados com as características padrão ISO 25010, de cada padrão selecionado de forma que possam ser facilmente analisados como candidatos em um contexto de melhoria arquitetônica. No momento, é amplamente reconhecido que o design e os padrões arquitetônicos devem ser usados para o desenvolvimento de software focado na qualidade. A análise conduzida em padrões facilita a evolução do software, facilitando as mudanças de software ao longo das fases de desenvolvimento de software e posterior manutenção do produto final.
DESIGN PATTERNS FOR SOFTWARE EVOLUTION REQUIREMENTS
-
DOI: 10.22533/at.ed.87021180819
-
Palavras-chave: Manutenção de software, Padrões Arquitetônicos, Padrões de Design, Padrão de Qualidade de Software, Reconfiguração Dinâmica
-
Keywords: Maintainability, Architectural Patterns, Design Patterns, Software Quality Standard, Dynamic Reconfiguration
-
Abstract:
The Software Engineering term known as Software Evolution can be understood in two senses. First, as the changes experienced by software over the development cycle; second, software changes while the system is in service. In both cases, software architectures should lead, support and ease any modifications, reconfiguration or adaptation to a changing environment, of software systems. We present here the analysis of several design and architectural patterns for sustaining software systems evolution according to two perspectives: one connected with maintainability and the other with dynamicity of changes of any software design. We also study weaknesses and benefits, aligned with ISO 25010 standard characteristics, of each selected pattern in such way that they can easily be analyzed as candidate in a context of architectural improvement. At moment, it is widely acknowledged that design and architectural patterns should be used for software development focused on quality. The analysis conducted on patterns facilitates software evolution by easing software changes throughout software development phases and further maintenance of the final product.
-
Número de páginas: 15
- Manuel Capel Tuñón
- Eladio Garví
- Anna Griman Padua