Análise de sistemas: levantamento e gerenciamento de requisitos, processos de desenvolvimento de software, metodologias de desenvolvimento ágeis. SCRUM e XP. Modelagem funcional e de dados. Usabilidade de software. Análise e projeto orientados a objetos. Gerenciamento de configuração e controle de versão. Ferramentas de desenvolvimento de software e ferramentas CASE. Desenvolvimento web em Java. JavaScript, HTML5, CSS3, WebSocket, Single Page Application (SPA). Framework JavaScript AngularJS, React, DHTML, AJAX. Java EE e frameworks. Java Server Faces (JSF 1.x e 2.x), Enterprise Java Beans (EJB 3.x), Java Persistence API (JPA 2.x), JAX-RS (2.x), Hibernate, JBoss Seam, JAX-WS”. JMS. Spring Framework. JSon. JUnit. Jasper. JDBC. Noções e conceitos de desenvolvimento para dispositivos móveis. iText. Java Framework Apache CXF. Programação PHP. Frameworks CodeIgniter, Laravel e Zend, ambiente Drupal, Joomla, Moodle, WordPress e serviços RESTful. Programação .Net/C#: .NET Framework Office Solutions para integração com MS-Word, LibreOffice; análise estática de código fonte (Clean Code e ferramenta SonarQube); interoperabilidade de sistemas. Arquitetura orientada a serviços e Web Services. Arquitetura de software. Arquitetura 3 Camadas (modelo MVC). Arquitetura de aplicações para ambiente web. Servidor de aplicações. Servidor web. Ambientes internet, extranet, intranet e portal, finalidades, características físicas e lógicas, aplicações e serviços. Padrões XML, XSLT, UDDI, WSDL, SOAP e JSON. REST. Qualidade de software. MPS-BR. Conceitos básicos e objetivos. Disciplinas e formas de representação. Níveis de capacidade e maturidade. Arquitetura orientada a microserviços. Domain Driven Design (DDD). Test Driven Development (TDD). Testes automatizados. Testes unitários, testes de integração, testes de aceitação. Teste e inspeção de software. Arquitetura de software. Reuso de software. Interação usuário-computador. Acessibilidade em sistemas computacionais. Desenvolvimento de aplicações para dispositivos móveis. Erros no ciclo de vida de desenvolvimento de software. Métodos e técnicas para análise e projeto de sistemas. Sistemas colaborativos: fundamentos e aplicações. Qualidade de software. Terminologia e conceitos básicos de teste. Teste no ciclo de vida: fases de teste. Técnicas de teste de software: teste funcional, estrutural e baseado em erros. Estratégias de teste de software. Planejamento de teste. Depuração, manutenção e teste de regressão. Teste e validação do aspecto comportamental de sistemas. Ferramentas de teste de software. Conceitos de mensageria.