A empresa CityConnect Services desenvolve uma plataforma que integra serviços urbanos de uma grande cidade: Consulta de horários de ônibus e metrô. Informações de trânsito em tempo quase real. Agendamento de atendimentos presenciais em órgãos públicos. Notificações para cidadãos (alertas de trânsito, clima extremo, emergências). A primeira versão foi criada como uma aplicação monolítica centralizada, com um único backend integrando todos os serviços externos. Por causa do aumento do número de usuários e de integrações, surgiram problemas: Qualquer instabilidade em um serviço externo (por exemplo, API de transporte) afeta todo o sistema. O tempo de resposta varia muito, pois chamadas a serviços diferentes concorrem no mesmo backend. A equipe tem dificuldade de escalar partes específicas da aplicação; só consegue escalar tudo junto. A disponibilidade é crítica: cidadãos dependem das informações em situações de urgência. A direção decidiu evoluir a plataforma para uma arquitetura de sistema distribuído, separando responsabilidades, aumentando resiliência e facilitando a evolução, mas a equipe ainda consolida conceitos de sistemas e aplicações distribuídas.
