O objetivo da disciplina é exercitar técnicas avançadas de gestão e de desenvolvimento de software com arquitetura distribuída. Os alunos organizam-se em um time único para planejar, projetar, organizar, controlar e coordenar as atividades de desenvolvimento de um sistema de software, com características adequadas para aplicar os tópicos previstos nesse programa, e simular um ambiente corporativo de desenvolvimento.
Ambiente de desenvolvimento: método ágil e suas ferramentas. Capacitação tecnológica: arquiteturas distribuídas e orientadas a serviço. Planejamento do projeto. Modelagem de processos de negócio. Design do produto. Ciclos de desenvolvimento e testes.
1. Implantação do ambiente de produção de software: ferramentas de gestão de processo ágil, repositórios, gestão de configuração. 2. Capacitação em tecnologia: Web, mobile, frameworks para implementação, web services, nuvem, SaaS, microserviços, bancos de dados distribuídos e banco de dados não-relacionais. 3. Planejamento do produto: design Sprint, prototipação, WBS, estimativa de custo e tempo. 4. Modelagem de processos de negócios. 5. Design: design de interação com usuário (front end), design da arquitetura (back end). Visões de arquitetura. 6. Modelo da informação. Arquitetura de informação. Acessibilidade de conteúdo. 7. Requisitos não-funcionais: usabilidade, desempenho, capacidade, disponibilidade e outros. 8. Patterns de análise, de arquitetura, de programação, de interface de usuário. 9. Teste: Plano de teste, testes automáticos, testes de RNF, plano de teste de integração;
Fox, A. Patterson, D. Construindo software como serviço (SaaS): uma abordagem ágil usando computação em nuvem. Strawberry Canyon. 2015. ISBN 9780984881277 Bibliografia complementar / Complementary bibliography [1] Sommerville, I. Software Engineering. Addison - Wesley. 10Ed. 2015. ISBN 978-0133943030. [2] Schulmeyer, G.G, Handbook of Software Quality Assurance. Artech House. 2008. 4th ed. ISBN 978-1630811969. [3] Wesky, M., Business Process Management: Concepts, Language, Architecture. Springer 2007. [4] Sharp, A., Workflow Modelling: Tools for Process Improvement and Application Developmen. Artech House 2009. [5] Gileadi, I; Ford, C.; Moerman, M.; Purba, S.. Patterns for Performance and Operability: Building and Testing Enterprise Software. Auerbach Publications. 2007. ISBN 9781420053340