Engenharia de Software/O que é Engenharia de Software?

Origem: Wikilivros, livros abertos por um mundo aberto.

Engenharia de software é uma área do conhecimento da Computação que busca estruturar de forma racional e científica, através do uso de modelos matemáticos, a especificação, desenvolvimento e manutenção de sistemas de software aplicando tecnologias e métodos da Ciência da computação, Gerência de projetos , das Engenharias e outros campos do conhecimento.

Definição[editar | editar código-fonte]

O termo Engenharia de Software 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). Sua criação surgiu numa 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.

F.L. Bauer (1924) é um cientista da computação alemão. Foto de 2004

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".

A Engenharia de Software se concentra nos aspectos práticos da produção de um sistema de software, enquanto a ciência da computação estuda os fundamentos teóricos dos aspectos computacionais.

Áreas de Conhecimento[editar | editar código-fonte]

Segundo o SWEBOK (Corpo de Conhecimento da Engenharia de Software), as áreas de conhecimento da Engenharia de Software são:

Resumo[editar | editar código-fonte]

  • Engenharia de Software é uma área do conhecimento da Computação que busca estruturar de forma racional e científica, através do uso de modelos matemáticos, a especificação, desenvolvimento e manutenção de sistemas de software aplicando tecnologias e métodos da Ciência da computação, Gerência de projetos , das Engenharias e outros campos do conhecimento.

Exercícios[editar | editar código-fonte]

Ligações externas[editar | editar código-fonte]