O design de software é uma etapa crucial no desenvolvimento de sistemas de software, pois define a estrutura e a arquitetura do sistema antes da implementação. Com relação aos conceitos e práticas importantes no design de software analise os itens a seguir. I. Modelagem UML (Unified Modeling Language, ou Linguagem de Modelagem Unificada) é usada para visualizar e documentar o design do software através de diagramas como diagramas de classes, diagramas de sequência e diagramas de casos de uso. II. Design Orientado a Domínio (ou domain-driven design, DDD) é uma abordagem que foca na modelagem que pode levar a abstrações de software chamadas modelos de domínio. III. Design Responsivo e Escalável busca garantir que o software possa lidar com diferentes cargas de trabalho e se adaptar a diferentes dispositivos e tamanhos de tela. Está correto o que se afirma em.
- A)I, apenas.
Errada, porque os itens II e III também estão corretos, não apenas o item I.
- B)I e II, apenas.
Errada, porque o item III também está correto e completa o conjunto de afirmações verdadeiras.
- C)II e III, apenas.
Errada, porque o item I também está correto e não pode ser excluído.
- D)I e III, apenas.
Errada, porque o item II também está correto e faz parte do conjunto verdadeiro.
- E)I, II e III.
Certa, porque os três itens descrevem corretamente conceitos de UML, DDD e design responsivo/escalável.
Gabarito: E
A questão mistura três ideias que aparecem muito em design de software e, aqui, todas estão corretas. A UML serve para representar o sistema de forma visual, com diagramas como classes, sequência e casos de uso, ajudando a documentar e comunicar o projeto antes de codar. Já o DDD, ou Domain-Driven Design, organiza o software a partir do conhecimento do domínio do problema, criando modelos de domínio que refletem a realidade do negócio, e não apenas a estrutura técnica. O terceiro ponto também está certo: design responsivo e escalável é justamente a preocupação com adaptação a diferentes tamanhos de tela e com o crescimento da demanda sem quebra de desempenho. Em outras palavras, o sistema precisa se comportar bem tanto no celular quanto no datacenter, sem drama. Isso é uma prática de arquitetura e design bastante valorizada em sistemas modernos. Por isso, o gabarito é a letra E, porque os itens I, II e III descrevem conceitos válidos e compatíveis com a engenharia de software. A questão não exige artigo de lei, mas está alinhada à doutrina clássica de modelagem, arquitetura e orientação a domínio: UML para visualizar, DDD para modelar o negócio e responsividade/escalabilidade para qualidade de uso e crescimento do sistema.