Engenharia de software
Matéria: Tópicos em Computação I Professor: Marcelo Fatudo Aluno: Paulo Cezar P. Da Motta
Definição:
Segundo Friedrich Ludwig Bauer: “Engenharia de software é a criação e a utilização de sólidos princípios de engenharia a fim de obter software de maneira econômica, que seja confiável e que trabalhe eficientemente em máquinas reais”. O próprio significado de engenharia já traz os conceitos de criação, construção, análise, desenvolvimento e manutenção. A engenharia de software se concentra nos aspectos práticos de produção de um sistema de software, enquanto a ciência da computação estuda os fundamentos teóricos dos aspectos computacionais. O termo foi criado na década de 1960 e utilizado oficialmente em 1968 na NATO conference on software engineering(Conferência sobre engenharia de software da OTAN). A criação da engenharia de software foi uma tentativa de contornar a crise do software e dar um tratamento de engenharia(mais sistemático e controlado) ao desenvolvimento de sistemas de software complexos. Um sistema de software complexo se caracteriza por um conjunto de componentes abstratos de software(estruturas de dados e algoritmos) encapsulados na forma de procedimentos, funções, módulos, objetos ou agentes e interconectados entre si, compondo a arquitetura do software, que deverão ser executados em sistemas computacionais. Os fundamentos científicos envolvem o uso de modelos abstratos e precisos que permitem ao engenheiro especificar, projetar, implementar e manter sistemas de software, avaliando e garantindo suas qualidades. Além disto, deve oferecer mecanismos para se planejar e gerenciar o processo de desenvolvimento. Empresas desenvolvedoras de software passaram a empregar esses conceitos sobretudo para orientar suas áreas de desenvolvimento, muitas delas organizadas sob a forma de fábrica de software.
Áreas de Conhecimento:
Segundo o SWEBOK(Corpo de conhecimento da engenharia de software), versão de