Fornecer aos alunos os fundamentos e as técnicas do processo de desenvolvimento de software, especialmente, para sistemas mecatrônicos.
Conceitos de Engenharia de Software, engenharia de requisitos, projeto de software, desenvolvimento de software, verificação e validação, gerenciamento de qualidade, modelagem de sistemas de tempo real.
Introdução: sistemas sociotécnicos; sistemas críticos, processo de software; gerenciamento de projetos. Requisitos: requisitos de software; processos de engenharia de requisitos; modelos de sistema; diagramas UML; especificação de sistemas críticos; especificação formal. Projeto: projeto de arquitetura; projeto orientado a objetos; projeto de sistemas de tempo real; projeto de interface como o usuário; diagramas UML. Desenvolvimento: rápido de software; reuso de software; engenharai de software baseada em componentes; desenvolvimento de sistemas críticos; evolução de software. Verificação e validação: verificação e validação; teste de software; validação de sistemas críticos. Gerenciamento: gerenciamento de qualidade; gerenciamento de cocnfigurações. Tecnologias emergentes.
Principal:Sommerville, I. Engenharia de Software. 8a. Ed. São Paulo: Pearson Addison-Wesley, 2007.Complementar: Pressman, R.S. Engenharia de Software. 6a. Ed. MacGraw-Hill, 2006.Pfleeger, S.L. Engenharia de Software: Teoria e Prática, 2a. Ed., São Paulo: Prentice-Hall, 2004.Filho, W.P.P., Engenharia de Software: Fundamentos, Métodos e Padrões, 2a. Ed., Rio de Janeiro: LTC, 2003.