Motivados pela elevada taxa de insucesso de projetos de desenvolvimento de software, há cerca de cinquenta anos, engenheiros e desenvolvedores de software aperceberam-se da necessidade de definir e seguir um processo de desenvolvimento. Depois desse processo inicial (waterfall) muitos outros se seguiram, melhorando os processos anteriores em diversos aspetos e, com isso, melhorando a qualidade do produto de software produzido. Ainda assim, a taxa de insucesso continuava elevada. O virar do século trouxe-nos os princípios de desenvolvimento ágil, e com eles um foco no cliente, e uma exigência do seu envolvimento na equipa, a um ponto que este não estava acostumado a suportar. Este envolvimento do cliente, e a entrega frequente a este de software funcional para obter o seu feedback, trouxe muitas melhorias ao nível do alinhamento do produto final de software com os requisitos do cliente e utilizadores, no final do projeto (não necessariamente os requisitos no início do projeto!).
António Miguel Cruz
Professor Adjunto no Instituto Politécnico de Viana do Castelo, onde leciona desde 2005, e membro do Software Engineering and Management Group do Centro de Investigação ALGORITMI – Universidade do Minho. Concluiu o Programa Doutoral em Engenharia Informática pela Universidade do Porto em 2011. Tem certificação PMP – Project Management Professional do PMI desde 2014. Publicou diversos trabalhos em actas de conferências científicas e jornais científicos internacionais, e possui 3 capítulos de livros publicados. Participa e coordena projetos de prestação de serviços a empresas. Participou em 9 eventos científicos internacionais. Tem orientado projetos e dissertações de mestrado nas áreas de Engenharia Informática, Ciências da Computação e Sistemas e Tecnologias de Informação. Nas suas atividades profissionais interagiu com diversos colaboradores em co-autorias de trabalhos científicos. Os seus interesses de investigação centram-se na Engenharia de Software, Model-driven Development, Transformação de Modelos, Software Modeling, Code Generation, User Interface Modeling, Métodos Formais, Cloud computing e Metamodelos.