<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wx="http://ilps.science.uva.nl/WikiXML/wx" xml:lang="pt" lang="pt">
<head>
<title>Engenharia de software</title>
<meta name="wx_namespace" content="0"/>
<meta name="wx_pagename" content="Engenharia_de_software"/>
<meta name="wx_page_id" content="803"/>
</head>
<body>
<div id="wx_article">
<wx:section level="1" title="Engenharia de software" id="wxsec1"><h1 class="pagetitle" id="wx1">Engenharia de software</h1>

<wx:template id="wx_t1" pagename="Predefinição:Portal" page_id="122287"/>
<table style="margin: 0 0 1em 1em; border: solid #aaa 1px; background: #f9f9f9; padding: 1ex; font-size: 90%; clear: right; float: right;" class="noprint" id="wx2">
<tr id="wx3">
<td id="wx4"><a href="/wpt/Imagem:Portal.svg" title="Portal" wx:linktype="image" wx:pagename="Imagem:Portal.svg" id="wx5"><img src="/wpt/Imagem:Portal.svg" alt="Portal" width="36" id="wx6"/></a> </td>
<td id="wx7">
<p id="wx8">A Wikipédia possui o<br id="wx9"/>
<i id="wx10"><b id="wx11"><a href="/wpt/Portal:Tecnologias_de_informa%C3%A7%C3%A3o" class="new" title="Portal:Tecnologias de informação" wx:linktype="unknown" wx:pagename="Portal:Tecnologias_de_informação" id="wx12">Portal das tecnologias de informação</a></b></i></p>

<div class="hiddenStructure" id="wx13"><i id="wx14"><b id="wx15">{{{Portal2}}}</b></i></div>

<div class="hiddenStructure" id="wx16"><i id="wx17"><b id="wx18">{{{Portal3}}}</b></i></div>

<div class="hiddenStructure" id="wx19"><i id="wx20"><b id="wx21">{{{Portal4}}}</b></i></div>

<div class="hiddenStructure" id="wx22"><i id="wx23"><b id="wx24">{{{Portal5}}}</b></i></div>
</td>
</tr>
</table>

<wx:templateend start="wx_t1"/>
<wx:template id="wx_t2" pagename="Predefinição:Processo-Desenvolvimento-Software" page_id="622543"/>
<table class="infobox noprint" style="font-size: 95%; text-align: center; width: 18em;" id="wx25">
<tr id="wx26">
<th style="background: #E7C6A5" id="wx27"><big id="wx28"><b id="wx29"><a href="/wpt/Processo_de_desenvolvimento_de_software" title="Processo de desenvolvimento de software" wx:linktype="known" wx:pagename="Processo_de_desenvolvimento_de_software" wx:page_id="24419" id="wx30">Processo de Desenvolvimento de Software</a></b></big> </th>
</tr>

<tr id="wx31">
<td id="wx32">
<p id="wx33">Este artigo é parte da série <a href="/wpt/Processo_de_desenvolvimento_de_software" title="Processo de desenvolvimento de software" wx:linktype="known" wx:pagename="Processo_de_desenvolvimento_de_software" wx:page_id="24419" id="wx34">Processo de desenvolvimento de software</a></p>
</td>
</tr>

<tr id="wx35">
<th style="background: #E7C6A5" id="wx36"><b id="wx37">Atividade</b>
<p id="wx38">e <b id="wx39">Passos</b></p>
</th>
</tr>

<tr id="wx40">
<td id="wx41"><a href="/wpt/Analise_de_requisitos_de_software" title="Analise de requisitos de software" wx:linktype="known" wx:pagename="Analise_de_requisitos_de_software" wx:page_id="1511664" id="wx42">Requisito</a>
<p id="wx43">| <a href="/wpt/Arquitetura_de_software" title="Arquitetura de software" wx:linktype="known" wx:pagename="Arquitetura_de_software" wx:page_id="633703" id="wx44">Arquitetura</a> | <a href="/wpt/Especifica%C3%A7%C3%A3o_de_Programa" title="Especificação de Programa" wx:linktype="known" wx:pagename="Especificação_de_Programa" wx:page_id="1248740" id="wx45">Especificação</a> | <a href="/wpt/Programa%C3%A7%C3%A3o_de_computadores" title="Programação de computadores" wx:linktype="known" wx:pagename="Programação_de_computadores" wx:page_id="1417" id="wx46">Implementação</a> | <a href="/wpt/Teste_de_software" title="Teste de software" wx:linktype="known" wx:pagename="Teste_de_software" wx:page_id="51589" id="wx47">Teste</a> | <a href="/wpt/Implanta%C3%A7%C3%A3o_de_software" title="Implantação de software" wx:linktype="known" wx:pagename="Implantação_de_software" wx:page_id="41237" id="wx48">Implantação</a> | <a href="/wpt/Manuten%C3%A7%C3%A3o_software" title="Manutenção software" wx:linktype="known" wx:pagename="Manutenção_software" wx:page_id="643772" id="wx49">Manutenção</a></p>
</td>
</tr>

<tr id="wx50">
<th style="background: #E7C6A5" id="wx51"><b id="wx52">Modelos</b> </th>
</tr>

<tr id="wx53">
<td id="wx54"><a href="/wpt/Desenvolvimento_%C3%A1gil_de_software" title="Desenvolvimento ágil de software" wx:linktype="known" wx:pagename="Desenvolvimento_ágil_de_software" wx:page_id="74786" id="wx55">Ágil</a>
<p id="wx56">| <a href="/wpt/Cleanroom" title="Cleanroom" wx:linktype="known" wx:pagename="Cleanroom" wx:page_id="186616" id="wx57">Cleanroom</a> | <a href="/wpt/Desenvolvimento_iterativo_e_incremental" title="Desenvolvimento iterativo e incremental" wx:linktype="known" wx:pagename="Desenvolvimento_iterativo_e_incremental" wx:page_id="667953" id="wx58">Iterativo</a> | <a href="/wpt/RAD" title="RAD" wx:linktype="known" wx:pagename="RAD" wx:page_id="99817" id="wx59">RAD</a> | <a href="/wpt/Rational_Unified_Process" title="Rational Unified Process" wx:linktype="known" wx:pagename="Rational_Unified_Process" wx:page_id="1458069" id="wx60">RUP</a> | <a href="/wpt/Modelo_em_espiral" title="Modelo em espiral" wx:linktype="known" wx:pagename="Modelo_em_espiral" wx:page_id="805179" id="wx61">Espiral</a> | <a href="/wpt/Modelo_em_cascata" title="Modelo em cascata" wx:linktype="known" wx:pagename="Modelo_em_cascata" wx:page_id="175850" id="wx62">Cascata</a> | <a href="/wpt/Programa%C3%A7%C3%A3o_extrema" title="Programação extrema" wx:linktype="known" wx:pagename="Programação_extrema" wx:page_id="44409" id="wx63">XP</a> | <a href="/wpt/Scrum" title="Scrum" wx:linktype="known" wx:pagename="Scrum" wx:page_id="660587" id="wx64">Scrum</a></p>
</td>
</tr>

<tr id="wx65">
<th style="background: #E7C6A5" id="wx66"><b id="wx67">Disciplinas de Apoio</b> </th>
</tr>

<tr id="wx68">
<td id="wx69"><a href="/wpt/Ger%C3%AAncia_de_Configura%C3%A7%C3%A3o_de_Software" title="Gerência de Configuração de Software" wx:linktype="known" wx:pagename="Gerência_de_Configuração_de_Software" wx:page_id="458718" id="wx70">Gerência de configuração</a>
<p id="wx71">| <a href="/wpt/Documenta%C3%A7%C3%A3o_de_software" title="Documentação de software" wx:linktype="known" wx:pagename="Documentação_de_software" wx:page_id="571416" id="wx72">Documentação</a> | <a href="/wpt/Ger%C3%AAncia_de_projetos" title="Gerência de projetos" wx:linktype="known" wx:pagename="Gerência_de_projetos" wx:page_id="38643" id="wx73">Gerência de projetos</a></p>
</td>
</tr>
</table>

<wx:templateend start="wx_t2"/>
<p id="wx74"><b id="wx75">Engenharia de software</b> é uma área do conhecimento da informática voltada para a especificação, desenvolvimento e manutenção de sistemas de <i id="wx76"><a href="/wpt/Software" title="Software" wx:linktype="known" wx:pagename="Software" wx:page_id="1709" id="wx77">software</a></i> aplicando tecnologias e práticas de <a href="/wpt/Ci%C3%AAncia_da_computa%C3%A7%C3%A3o" title="Ciência da computação" wx:linktype="known" wx:pagename="Ciência_da_computação" wx:page_id="2683" id="wx78">ciência da computação</a>, <a href="/wpt/Ger%C3%AAncia_de_projetos" title="Gerência de projetos" wx:linktype="known" wx:pagename="Gerência_de_projetos" wx:page_id="38643" id="wx79">gerência de projetos</a> e outras disciplinas, objetivando organização, produtividade e qualidade.</p>

<p id="wx80">Atualmente, essas <a href="/wpt/Tecnologia" title="Tecnologia" wx:linktype="known" wx:pagename="Tecnologia" wx:page_id="1809" id="wx81">tecnologias</a> e práticas englobam <a href="/wpt/Linguagem_de_programa%C3%A7%C3%A3o" title="Linguagem de programação" wx:linktype="known" wx:pagename="Linguagem_de_programação" wx:page_id="13352" id="wx82">linguagens de programação</a>, <a href="/wpt/Banco_de_dados" title="Banco de dados" wx:linktype="known" wx:pagename="Banco_de_dados" wx:page_id="452" id="wx83">bases de dados</a>, <a href="/wpt/IDE" title="IDE" wx:linktype="known" wx:pagename="IDE" wx:page_id="49506" id="wx84">ferramentas</a>, <a href="/wpt/Plataforma" title="Plataforma" wx:linktype="known" wx:pagename="Plataforma" wx:page_id="359744" id="wx85">plataformas</a>, <a href="/wpt/Biblioteca_de_rotinas" title="Biblioteca de rotinas" wx:linktype="known" wx:pagename="Biblioteca_de_rotinas" wx:page_id="74304" id="wx86">bibliotecas</a>, <a href="/wpt/Padr%C3%B5es" title="Padrões" wx:linktype="known" wx:pagename="Padrões" wx:page_id="39616" id="wx87">padrões</a>, processos e a questão da <a href="/wpt/Qualidade_de_Software" title="Qualidade de Software" wx:linktype="known" wx:pagename="Qualidade_de_Software" wx:page_id="323615" id="wx88">Qualidade de Software</a>.</p>

<p id="wx89">Os fundamentos <a href="/wpt/Ci%C3%AAncia" title="Ciência" wx:linktype="known" wx:pagename="Ciência" wx:page_id="554" id="wx90">científicos</a> para a engenharia de software envolvem o uso de <a href="/wpt/Modelo_%28matem%C3%A1tica%29" title="Modelo (matemática)" wx:linktype="known" wx:pagename="Modelo_(matemática)" wx:page_id="14821" id="wx91">modelos</a> abstratos e precisos que permitem ao engenheiro especificar, projetar, implementar e manter sistemas de software, avaliando e garantindo suas qualidades. Além disso, a engenharia de software deve oferecer mecanismos para se planejar e gerenciar o processo de desenvolvimento de um <a href="/wpt/Sistema_de_informa%C3%A7%C3%A3o" title="Sistema de informação" wx:linktype="known" wx:pagename="Sistema_de_informação" wx:page_id="7327" id="wx92">sistema de informação</a>.</p>

<p id="wx93"><br id="wx94"/>
</p>

<div id="wx_toc"/>

<a id="Defini.C3.A7.C3.A3o" name="Defini.C3.A7.C3.A3o"/>
<wx:section level="2" title="Definição" id="wxsec2"><h2 id="wx95">Definição</h2>

<p id="wx96">Segundo <a href="/wpt/Friedrich_Ludwig_Bauer" title="Friedrich Ludwig Bauer" wx:linktype="known" wx:pagename="Friedrich_Ludwig_Bauer" wx:page_id="261354" id="wx97">Friedrich Ludwig Bauer</a>, "Engenharia de software é a criação e a utilização de sólidos princípios de engenharia a fim de obter <a href="/wpt/Software" title="Software" wx:linktype="known" wx:pagename="Software" wx:page_id="1709" id="wx98">software</a> de maneira econômica, que seja confiável e que trabalhe eficientemente em máquinas reais". O próprio significado de <a href="/wpt/Engenharia" title="Engenharia" wx:linktype="known" wx:pagename="Engenharia" wx:page_id="744" id="wx99">engenharia</a> já traz os conceitos de criação, construção, análise, desenvolvimento e manutenção.</p>

<p id="wx100">A <b id="wx101">engenharia de software</b> se concentra nos aspectos práticos da produção de um sistema de <i id="wx102">software</i>, enquanto a <a href="/wpt/Ci%C3%AAncia_da_computa%C3%A7%C3%A3o" title="Ciência da computação" wx:linktype="known" wx:pagename="Ciência_da_computação" wx:page_id="2683" id="wx103">ciência da computação</a> estuda os fundamentos teóricos dos aspectos computacionais.</p>

<p id="wx104">O termo foi criado na década de 1960 e utilizado oficialmente em 1968 na <i id="wx105">NATO Conference on Software Engineering</i> (Conferência sobre Engenharia de Software da OTAN). Sua criação surgiu numa tentativa de contornar a <a href="/wpt/Crise_do_software" title="Crise do software" wx:linktype="known" wx:pagename="Crise_do_software" wx:page_id="286415" id="wx106">crise do software</a> 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 <a href="/wpt/Arquitetura_de_software" title="Arquitetura de software" wx:linktype="known" wx:pagename="Arquitetura_de_software" wx:page_id="633703" id="wx107">arquitetura do software</a>, que deverão ser executados em <a href="/wpt/Sistemas_computacionais" title="Sistemas computacionais" wx:linktype="known" wx:pagename="Sistemas_computacionais" wx:page_id="118792" id="wx108">sistemas computacionais</a>.</p>

<p id="wx109">Os fundamentos científicos para a engenharia de software envolvem o uso de <b id="wx110">modelos abstratos e precisos</b> que permitem ao engenheiro especificar, projetar, implementar e manter sistemas de software, avaliando e garantido suas qualidades. Além disto, a engenharia de software deve oferecer mecanismos para se planejar e gerenciar o processo de desenvolvimento. Empresas desenvolvedoras de software passaram a empregar os conceitos de Engenharia de Software sobretudo para orientar suas áreas de desenvolvimento, muitas delas organizadas sob a forma de <a href="/wpt/F%C3%A1brica_de_Software" title="Fábrica de Software" wx:linktype="known" wx:pagename="Fábrica_de_Software" wx:page_id="233416" id="wx111">Fábrica de Software</a>.</p>

<p id="wx112">A <a href="/wpt/Engenharia_de_Sistemas" title="Engenharia de Sistemas" wx:linktype="known" wx:pagename="Engenharia_de_Sistemas" wx:page_id="1376008" id="wx113">Engenharia de Sistemas</a> é uma área mais ampla por tratar de todos os aspectos de sistemas baseados em <a href="/wpt/Computador" title="Computador" wx:linktype="known" wx:pagename="Computador" wx:page_id="536" id="wx114">computadores</a>, incluindo <i id="wx115">hardware</i> e engenharia de processos além do <i id="wx116">software</i>.</p>

<a id="_.C3.81reas_de_Conhecimento" name=".C3.81reas_de_Conhecimento"/>
</wx:section><wx:section level="2" title="Áreas de Conhecimento" id="wxsec3"><h2 id="wx117">Áreas de Conhecimento</h2>

<p id="wx118">Segundo o <a href="/wpt/Software_Engineering_Body_of_Knowledge" title="Software Engineering Body of Knowledge" wx:linktype="known" wx:pagename="Software_Engineering_Body_of_Knowledge" wx:page_id="416032" id="wx119">SWEBOK</a> (Corpo de Conhecimento da Engenharia de Software), as áreas de conhecimento da <b id="wx120">Engenharia de Software</b> são:</p>

<ul id="wx121">
<li id="wx122"><a href="/wpt/Requisitos_de_Software" title="Requisitos de Software" wx:linktype="known" wx:pagename="Requisitos_de_Software" wx:page_id="839846" id="wx123">Requisitos de Software</a></li>

<li id="wx124"><a href="/wpt/Projeto_de_Software" title="Projeto de Software" wx:linktype="known" wx:pagename="Projeto_de_Software" wx:page_id="1028540" id="wx125">Projeto (Design) de Software</a></li>

<li id="wx126"><a href="/wpt/Constru%C3%A7%C3%A3o_de_Software" class="new" title="Construção de Software" wx:linktype="unknown" wx:pagename="Construção_de_Software" id="wx127">Construção de Software</a></li>

<li id="wx128"><a href="/wpt/Teste_de_software" title="Teste de software" wx:linktype="known" wx:pagename="Teste_de_software" wx:page_id="51589" id="wx129">Teste de Software</a></li>

<li id="wx130"><a href="/wpt/Manuten%C3%A7%C3%A3o_de_Software" class="new" title="Manutenção de Software" wx:linktype="unknown" wx:pagename="Manutenção_de_Software" id="wx131">Manutenção de software</a></li>

<li id="wx132"><a href="/wpt/Ger%C3%AAncia_de_Configura%C3%A7%C3%A3o_de_Software" title="Gerência de Configuração de Software" wx:linktype="known" wx:pagename="Gerência_de_Configuração_de_Software" wx:page_id="458718" id="wx133">Gerência de Configuração de Software</a></li>

<li id="wx134"><a href="/wpt/Ger%C3%AAncia_de_Engenharia_de_Software" class="new" title="Gerência de Engenharia de Software" wx:linktype="unknown" wx:pagename="Gerência_de_Engenharia_de_Software" id="wx135">Gerência de Engenharia de Software</a></li>

<li id="wx136"><a href="/wpt/Processos_de_Engenharia_de_Software" class="new" title="Processos de Engenharia de Software" wx:linktype="unknown" wx:pagename="Processos_de_Engenharia_de_Software" id="wx137">Processos de Engenharia de Software</a></li>

<li id="wx138"><a href="/wpt/Ferramentas_e_M%C3%A9todos_de_Engenharia_de_Software" class="new" title="Ferramentas e Métodos de Engenharia de Software" wx:linktype="unknown" wx:pagename="Ferramentas_e_Métodos_de_Engenharia_de_Software" id="wx139">Ferramentas e Métodos de Engenharia de Software</a></li>

<li id="wx140"><a href="/wpt/Qualidade_de_Software" title="Qualidade de Software" wx:linktype="known" wx:pagename="Qualidade_de_Software" wx:page_id="323615" id="wx141">Qualidade de Software</a></li>
</ul>

<hr id="wx142"/>
<p id="wx143">Conforme <a href="/wpt/Pressman" class="new" title="Pressman" wx:linktype="unknown" wx:pagename="Pressman" id="wx144">Pressman</a>, a Engenharia de Software (ES) é uma tecnologia em camadas. E a base de todas essas camadas é o foco na qualidade do software desenvolvido. Portanto, inclusive do ponto de vista didático, é interessante estudarmos a ES em suas camadas de <a href="/wpt/Processo" title="Processo" wx:linktype="known" wx:pagename="Processo" wx:page_id="3504" id="wx145">Processo</a>, <a href="/wpt/M%C3%A9todos" title="Métodos" wx:linktype="known" wx:pagename="Métodos" wx:page_id="185334" id="wx146">Métodos</a> e <a href="/wpt/Ferramentas" title="Ferramentas" wx:linktype="known" wx:pagename="Ferramentas" wx:page_id="169330" id="wx147">Ferramentas</a>.</p>

<a id="Processo_de_Software" name="Processo_de_Software"/>
</wx:section><wx:section level="2" title="Processo de Software" id="wxsec4"><h2 id="wx148">Processo de Software</h2>

<p id="wx149">Processo de <i id="wx150">software</i>, ou processo de engenharia de software, é uma seqüência coerente de práticas que objetiva o desenvolvimento ou evolução de sistemas de <i id="wx151">software</i>. Estas práticas englobam as atividades de especificação, projeto, implementação, testes e caracterizam-se pela interação de ferramentas, pessoas e métodos.</p>

<p id="wx152"><a href="/wpt/SEE" title="SEE" wx:linktype="known" wx:pagename="SEE" wx:page_id="364484" id="wx153">SEE</a> e <a href="/wpt/PSEE" title="PSEE" wx:linktype="known" wx:pagename="PSEE" wx:page_id="364487" id="wx154">PSEE</a> são os ambientes voltados ao desenvolvimento e manutenção de processos. O projeto <a href="/wpt/ExPSEE" class="new" title="ExPSEE" wx:linktype="unknown" wx:pagename="ExPSEE" id="wx155">ExPSEE</a> é uma continuação dos estudos de processos, principalmente do ambiente <a href="/wpt/PSEE" title="PSEE" wx:linktype="known" wx:pagename="PSEE" wx:page_id="364487" id="wx156">PSEE</a>.</p>

<p id="wx157">Devido ao uso da palavra projeto em muitos contextos, por questões de clareza, há vezes em que se prefira usar o original em inglês <a href="/wpt/Design" title="Design" wx:linktype="known" wx:pagename="Design" wx:page_id="657" id="wx158">design</a>.</p>

<a id="Modelos_de_Processo_de_Software" name="Modelos_de_Processo_de_Software"/>
<wx:section level="3" title="Modelos de Processo de Software" id="wxsec14"><h3 id="wx159">Modelos de Processo de Software</h3>

<p id="wx160">Um modelo de <a href="/wpt/Processo_de_desenvolvimento_de_software" title="Processo de desenvolvimento de software" wx:linktype="known" wx:pagename="Processo_de_desenvolvimento_de_software" wx:page_id="24419" id="wx161">processo de desenvolvimento de software</a>, ou simplesmente modelo de processo, pode ser visto como uma representação, ou abstração dos objetos e atividades envolvidas no processo de software. Além disso, oferece uma forma mais abrangente e fácil de representar o gerenciamento de processo de software e consequentemente o progresso do projeto.</p>

<p id="wx162">Exemplos de alguns modelos de processo de software:</p>

<ul id="wx163">
<li id="wx164"><a href="/wpt/Modelos_ciclo_de_vida" title="Modelos ciclo de vida" wx:linktype="known" wx:pagename="Modelos_ciclo_de_vida" wx:page_id="217917" id="wx165">Modelos ciclo de vida</a></li>

<li id="wx166">
<p id="wx167">Sequencial ou <a href="/wpt/Modelo_em_cascata" title="Modelo em cascata" wx:linktype="known" wx:pagename="Modelo_em_cascata" wx:page_id="175850" id="wx168">Cascata</a> (do inglês <i id="wx169">waterfall</i>) - com fases distintas de especificação, projeto e desenvolvimento.</p>
</li>

<li id="wx170"><a href="/wpt/Desenvolvimento_iterativo_e_incremental" title="Desenvolvimento iterativo e incremental" wx:linktype="known" wx:pagename="Desenvolvimento_iterativo_e_incremental" wx:page_id="667953" id="wx171">Desenvolvimento iterativo e incremental</a>
<p id="wx172">- desenvolvimento é iniciado com um subconjunto simples de <a href="/wpt/Requisitos_de_Software" title="Requisitos de Software" wx:linktype="known" wx:pagename="Requisitos_de_Software" wx:page_id="839846" id="wx173">Requisitos de Software</a> e interativamente alcança evoluções subseqüentes das versões até o sistema todo estar implementado</p>
</li>

<li id="wx174">
<p id="wx175">Evolucional ou <a href="/wpt/Prototipa%C3%A7%C3%A3o" title="Prototipação" wx:linktype="known" wx:pagename="Prototipação" wx:page_id="1021095" id="wx176">Prototipação</a> - especificação, projeto e desenvolvimento de <a href="/wpt/Prot%C3%B3tipos" class="new" title="Protótipos" wx:linktype="unknown" wx:pagename="Protótipos" id="wx177">protótipos</a>.</p>
</li>

<li id="wx178">
<p id="wx179">V-Model - Parecido com o modelo cascata, mas com uma organização melhor, que permite que se compare com outros modelos mais modernos.</p>
</li>

<li id="wx180"><a href="/wpt/Modelo_em_espiral" title="Modelo em espiral" wx:linktype="known" wx:pagename="Modelo_em_espiral" wx:page_id="805179" id="wx181">Espiral</a>
<p id="wx182">- evolução através de vários ciclos completos de especificação, projeto e desenvolvimento.</p>
</li>

<li id="wx183">
<p id="wx184">Componentizado - reuso através de montagem de componentes já existentes.</p>
</li>

<li id="wx185">
<p id="wx186">Formal - implementação a partir de modelo matemático formal.</p>
</li>

<li id="wx187"><a href="/wpt/Desenvolvimento_%C3%A1gil_de_software" title="Desenvolvimento ágil de software" wx:linktype="known" wx:pagename="Desenvolvimento_ágil_de_software" wx:page_id="74786" id="wx188">Ágil</a></li>

<li id="wx189"><a href="/wpt/RAD" title="RAD" wx:linktype="known" wx:pagename="RAD" wx:page_id="99817" id="wx190">RAD</a></li>

<li id="wx191">
<p id="wx192">Quarta geração</p>
</li>
</ul>

<a id="Modelos_de_Maturidade" name="Modelos_de_Maturidade"/>
</wx:section><wx:section level="3" title="Modelos de Maturidade" id="wxsec15"><h3 id="wx193">Modelos de Maturidade</h3>

<p id="wx194">Os modelos de maturidade são um metamodelo de processo. Eles surgiram para avaliar a qualidade dos processos de <i id="wx195">software</i> aplicados em uma organização (empresa ou instituição). O mais conhecido é o <i id="wx196">Capability Maturity Model Integration</i> (<b id="wx197"><a href="/wpt/CMMI" title="CMMI" wx:linktype="known" wx:pagename="CMMI" wx:page_id="203653" id="wx198">CMMi</a></b>), do <a href="/wpt/Software_Engineering_Institute" title="Software Engineering Institute" wx:linktype="known" wx:pagename="Software_Engineering_Institute" wx:page_id="62576" id="wx199">Software Engineering Institute - SEI</a>.</p>

<p id="wx200">O CMMi pode ser organizado através de duas formas, contínua e estagiada. Pelo modelo estagiado, mais tradicional e mantendo compatibilidade com o CMM, uma organização pode ter sua maturidade medida em 5 níveis:</p>

<ul id="wx201">
<li id="wx202">
<p id="wx203">Nível 1 - Caótico;</p>
</li>

<li id="wx204">
<p id="wx205">Nível 2 - Capacidade de repetir sucessos anteriores pelo acompanhamento de custos, cronogramas e funcionalidades;</p>
</li>

<li id="wx206">
<p id="wx207">Nível 3 - O processo de software é bem definido, documentado e padronizado;</p>
</li>

<li id="wx208">
<p id="wx209">Nível 4 - Realiza uma gerência quantitativa do processo de software e do produto;</p>
</li>

<li id="wx210">
<p id="wx211">Nível 5 - Usa a informação quantitativa para melhorar continuamente e gerenciar o processo de software.</p>
</li>
</ul>

<p id="wx212">O CMMi é um modelo de maturidade recentemente criado com o fim de agrupar as diferentes formas de utilização que foram dadas ao seu predecessor, o <a href="/wpt/CMM" title="CMM" wx:linktype="known" wx:pagename="CMM" wx:page_id="1466676" id="wx213">CMM</a>.</p>

<a id="Metodologias_e_M.C3.A9todos" name="Metodologias_e_M.C3.A9todos"/>
</wx:section></wx:section><wx:section level="2" title="Metodologias e Métodos" id="wxsec5"><h2 id="wx214">Metodologias e Métodos</h2>

<p id="wx215">O termo <a href="/wpt/Metodologia_%28engenharia_de_software%29" title="Metodologia (engenharia de software)" wx:linktype="known" wx:pagename="Metodologia_(engenharia_de_software)" wx:page_id="845140" id="wx216">metodologia</a> é bastante controverso nas ciências em geral e na Engenharia de Software em particular. Muitos autores parecem tratar <a href="/wpt/Metodologia" title="Metodologia" wx:linktype="known" wx:pagename="Metodologia" wx:page_id="107276" id="wx217">metodologia</a> e <a href="/wpt/M%C3%A9todo" title="Método" wx:linktype="known" wx:pagename="Método" wx:page_id="109751" id="wx218">método</a> como sinônimos, porém seria mais adequado dizer que uma metodologia envolve princípios filosóficos que guiam uma gama de métodos que utilizam ferramentas e práticas diferenciadas para realizar algo <sup id="_ref-0" class="reference"><a href="#_note-0" title="" wx:fragment="_note-0" wx:linktype="note" id="wx219"/></sup>.</p>

<p id="wx220">Assim teríamos, por exemplo, a <a href="/wpt/Metodologia_Estruturada" class="new" title="Metodologia Estruturada" wx:linktype="unknown" wx:pagename="Metodologia_Estruturada" id="wx221">Metodologia Estruturada</a>, na qual existem vários métodos, como <a href="/wpt/An%C3%A1lise_Estruturada" title="Análise Estruturada" wx:linktype="known" wx:pagename="Análise_Estruturada" wx:page_id="667291" id="wx222">Análise Estruturada</a> e <a href="/wpt/Projeto_Estruturado" title="Projeto Estruturado" wx:linktype="known" wx:pagename="Projeto_Estruturado" wx:page_id="828502" id="wx223">Projeto Estruturado</a> (muitas vezes denominados <a href="/wpt/SA/SD" class="new" title="SA/SD" wx:linktype="unknown" wx:pagename="SA/SD" id="wx224">SA/SD</a>, e <a href="/wpt/An%C3%A1lise_Essencial" class="new" title="Análise Essencial" wx:linktype="unknown" wx:pagename="Análise_Essencial" id="wx225">Análise Essencial</a>). Tanto a <a href="/wpt/An%C3%A1lise_Estruturada" title="Análise Estruturada" wx:linktype="known" wx:pagename="Análise_Estruturada" wx:page_id="667291" id="wx226">Análise Estruturada</a> quanto a <a href="/wpt/An%C3%A1lise_Essencial" class="new" title="Análise Essencial" wx:linktype="unknown" wx:pagename="Análise_Essencial" id="wx227">Análise Essencial</a> utilizam a ferramenta <a href="/wpt/Diagrama_de_Fluxos_de_Dados" title="Diagrama de Fluxos de Dados" wx:linktype="known" wx:pagename="Diagrama_de_Fluxos_de_Dados" wx:page_id="667307" id="wx228">Diagrama de Fluxos de Dados</a> para modelar o funcionamento do sistema.</p>

<ul id="wx229">
<li id="wx230">
<p id="wx231">Metodologia Estruturada</p>

<ul id="wx232">
<li id="wx233"><a href="/wpt/An%C3%A1lise_Estruturada" title="Análise Estruturada" wx:linktype="known" wx:pagename="Análise_Estruturada" wx:page_id="667291" id="wx234">Análise Estruturada</a></li>

<li id="wx235"><a href="/wpt/Projeto_Estruturado" title="Projeto Estruturado" wx:linktype="known" wx:pagename="Projeto_Estruturado" wx:page_id="828502" id="wx236">Projeto Estruturado</a></li>

<li id="wx237"><a href="/wpt/Programa%C3%A7%C3%A3o_Estruturada" title="Programação Estruturada" wx:linktype="known" wx:pagename="Programação_Estruturada" wx:page_id="3216" id="wx238">Programação Estruturada</a></li>

<li id="wx239"><a href="/wpt/An%C3%A1lise_Essencial" class="new" title="Análise Essencial" wx:linktype="unknown" wx:pagename="Análise_Essencial" id="wx240">Análise Essencial</a></li>

<li id="wx241"><a href="/wpt/SADT" title="SADT" wx:linktype="known" wx:pagename="SADT" wx:page_id="1452128" id="wx242">SADT</a></li>

<li id="wx243"><a href="/wpt/DFD" title="DFD" wx:linktype="known" wx:pagename="DFD" wx:page_id="667299" id="wx244">DFD</a>
<p id="wx245">- Diagrama de Fluxo de Dados</p>
</li>

<li id="wx246">
<p id="wx247">MER - <a href="/wpt/Modelo_de_Entidades_e_Relacionamentos" title="Modelo de Entidades e Relacionamentos" wx:linktype="known" wx:pagename="Modelo_de_Entidades_e_Relacionamentos" wx:page_id="301543" id="wx248">Modelo de Entidades e Relacionamentos</a></p>
</li>
</ul>
</li>

<li id="wx249">
<p id="wx250">Metodologia Orientada a Objetos</p>

<ul id="wx251">
<li id="wx252"><a href="/wpt/Orienta%C3%A7%C3%A3o_a_Objetos" title="Orientação a Objetos" wx:linktype="known" wx:pagename="Orientação_a_Objetos" wx:page_id="626022" id="wx253">Orientação a Objetos</a></li>

<li id="wx254"><a href="/wpt/Rational_Unified_Process" title="Rational Unified Process" wx:linktype="known" wx:pagename="Rational_Unified_Process" wx:page_id="1458069" id="wx255">Rational Unified Process</a>
<p id="wx256">( RUP )</p>
</li>
</ul>
</li>

<li id="wx257"><a href="/wpt/Desenvolvimento_%C3%A1gil_de_software" title="Desenvolvimento ágil de software" wx:linktype="known" wx:pagename="Desenvolvimento_ágil_de_software" wx:page_id="74786" id="wx258">Desenvolvimento ágil de software</a> 

<ul id="wx259">
<li id="wx260"><a href="/wpt/Feature_Driven_Development" class="new" title="Feature Driven Development" wx:linktype="unknown" wx:pagename="Feature_Driven_Development" id="wx261">Feature Driven Development</a>
<p id="wx262">( FDD )</p>
</li>

<li id="wx263"><a href="/wpt/Enterprise_Unified_Process" title="Enterprise Unified Process" wx:linktype="known" wx:pagename="Enterprise_Unified_Process" wx:page_id="881353" id="wx264">Enterprise Unified Process</a>
<p id="wx265">(EUP)</p>
</li>

<li id="wx266"><a href="/wpt/Scrum" title="Scrum" wx:linktype="known" wx:pagename="Scrum" wx:page_id="660587" id="wx267">Scrum</a>
<p id="wx268">(Scrum)</p>
</li>

<li id="wx269"><a href="/wpt/Crystal" title="Crystal" wx:linktype="known" wx:pagename="Crystal" wx:page_id="1581167" id="wx270">Crystal</a>
<p id="wx271">(Crystal Clear, Crystal Orange, Crystal Orange Web)</p>
</li>

<li id="wx272"><a href="/wpt/Programa%C3%A7%C3%A3o_extrema" title="Programação extrema" wx:linktype="known" wx:pagename="Programação_extrema" wx:page_id="44409" id="wx273">Programação extrema</a>
<p id="wx274">( XP )</p>
</li>
</ul>
</li>

<li id="wx275">
<p id="wx276">Outras Metodologias</p>

<ul id="wx277">
<li id="wx278"><a href="/wpt/Microsoft_Solution_Framework" title="Microsoft Solution Framework" wx:linktype="known" wx:pagename="Microsoft_Solution_Framework" wx:page_id="1644250" id="wx279">Microsoft Solution Framework</a>
<p id="wx280">( MSF )</p>
</li>
</ul>
</li>
</ul>

<a id="Modelagem" name="Modelagem"/>
<wx:section level="3" title="Modelagem" id="wxsec16"><h3 id="wx281">Modelagem</h3>

<p id="wx282">A abstração do sistema de <i id="wx283">software</i> através de modelos que o descrevem é um poderoso instrumento para o entendimento e comunicação do produto final que será desenvolvido.</p>

<p id="wx284">A maior dificuldade nesta atividade está no equilíbrio (<i id="wx285">tradeoff</i>) entre simplicidade (favorecendo a comunicação) e a complexidade (favorecendo a precisão) do modelo.</p>

<p id="wx286">Para a modelagem podemos citar 3 métodos:</p>

<ul id="wx287">
<li id="wx288"><a href="/wpt/An%C3%A1lise_estruturada" title="Análise estruturada" wx:linktype="known" wx:pagename="Análise_estruturada" wx:page_id="694552" id="wx289">Análise estruturada</a>
<p id="wx290">, criada por Gane &amp; Searson;</p>
</li>

<li id="wx291"><a href="/wpt/An%C3%A1lise_essencial" class="new" title="Análise essencial" wx:linktype="unknown" wx:pagename="Análise_essencial" id="wx292">Análise essencial</a>
<p id="wx293">, criada por Palmer &amp; McMenamin e Ed. Yourdon;</p>
</li>

<li id="wx294"><a href="/wpt/UML" title="UML" wx:linktype="known" wx:pagename="UML" wx:page_id="1877" id="wx295">UML</a>
<p id="wx296">criada por Grady Booch, Ivar Jacobson &amp; Jaimes Rumbaugh (veja <a href="/wpt/Requisitos_do_Sistema/Diagrama_de_Casos_de_Uso/Casos_de_Uso_Expandidos" title="Requisitos do Sistema/Diagrama de Casos de Uso/Casos de Uso Expandidos" wx:linktype="known" wx:pagename="Requisitos_do_Sistema/Diagrama_de_Casos_de_Uso/Casos_de_Uso_Expandidos" wx:page_id="356317" id="wx297">exemplos</a>).</p>
</li>
</ul>

<p id="wx298">Atualmente a modelagem mais recomendada, e sendo a mais comum, é a utilização da linguagem <a href="/wpt/UML" title="UML" wx:linktype="known" wx:pagename="UML" wx:page_id="1877" id="wx299">UML</a>.</p>

<a id="Ferramentas.2C_Tecnologias_e_Pr.C3.A1ticas" name="Ferramentas.2C_Tecnologias_e_Pr.C3.A1ticas"/>
</wx:section></wx:section><wx:section level="2" title="Ferramentas, Tecnologias e Práticas" id="wxsec6"><h2 id="wx300">Ferramentas, Tecnologias e Práticas</h2>

<p id="wx301">A <b id="wx302">engenharia de software</b> aborda uma série de práticas e tecnologias, principalmente estudadas pela <a href="/wpt/Ci%C3%AAncia_da_computa%C3%A7%C3%A3o" title="Ciência da computação" wx:linktype="known" wx:pagename="Ciência_da_computação" wx:page_id="2683" id="wx303">ciência da computação</a>, enfocando seu impacto na produtividade e qualidade de <i id="wx304">software</i>.</p>

<p id="wx305">Destacam-se o estudo de <a href="/wpt/Linguagem_de_programa%C3%A7%C3%A3o" title="Linguagem de programação" wx:linktype="known" wx:pagename="Linguagem_de_programação" wx:page_id="13352" id="wx306">linguagem de programação</a>, <a href="/wpt/Banco_de_dados" title="Banco de dados" wx:linktype="known" wx:pagename="Banco_de_dados" wx:page_id="452" id="wx307">banco de dados</a> e <a href="/wpt/Paradigma_de_programa%C3%A7%C3%A3o" title="Paradigma de programação" wx:linktype="known" wx:pagename="Paradigma_de_programação" wx:page_id="208104" id="wx308">paradigmas de programação</a>, como:</p>

<ul id="wx309">
<li id="wx310"><a href="/wpt/Programa%C3%A7%C3%A3o_estruturada" title="Programação estruturada" wx:linktype="known" wx:pagename="Programação_estruturada" wx:page_id="1593" id="wx311">Programação estruturada</a></li>

<li id="wx312"><a href="/wpt/Programa%C3%A7%C3%A3o_funcional" title="Programação funcional" wx:linktype="known" wx:pagename="Programação_funcional" wx:page_id="1464" id="wx313">Programação funcional</a></li>

<li id="wx314"><a href="/wpt/Programa%C3%A7%C3%A3o_orientada_a_objetos" title="Programação orientada a objetos" wx:linktype="known" wx:pagename="Programação_orientada_a_objetos" wx:page_id="125741" id="wx315">Programação orientada a objetos</a></li>

<li id="wx316"><a href="/wpt/Componentes_de_Software" title="Componentes de Software" wx:linktype="known" wx:pagename="Componentes_de_Software" wx:page_id="343739" id="wx317">Componentes de Software</a></li>

<li id="wx318"><a href="/wpt/Programa%C3%A7%C3%A3o_orientada_a_aspecto" title="Programação orientada a aspecto" wx:linktype="known" wx:pagename="Programação_orientada_a_aspecto" wx:page_id="313791" id="wx319">Programação orientada a aspecto</a></li>
</ul>

<a id="Ferramentas" name="Ferramentas"/>
<wx:section level="3" title="Ferramentas" id="wxsec17"><h3 id="wx320">Ferramentas</h3>

<p id="wx321">Outro ponto importante é o uso de <a href="/wpt/Ferramenta_CASE" title="Ferramenta CASE" wx:linktype="known" wx:pagename="Ferramenta_CASE" wx:page_id="60259" id="wx322">ferramentas <b id="wx323">CASE</b></a> (do inglês <i id="wx324">Computer-Aided Software Engineering</i>). Essa classificação abrange toda ferramenta baseada em computadores que auxiliam atividades de engenharia de <i id="wx325">software</i>, desde a análise de requisitos e modelagem até programação e testes.</p>

<p id="wx326">Os <a href="/wpt/Ambiente_de_Desenvolvimento_Integrado" title="Ambiente de Desenvolvimento Integrado" wx:linktype="known" wx:pagename="Ambiente_de_Desenvolvimento_Integrado" wx:page_id="430474" id="wx327">ambientes de desenvolvimento integrado</a> (<b id="wx328">IDEs</b>) têm maior destaque e suportam, entre outras coisas:</p>

<ul id="wx329">
<li id="wx330"><a href="/wpt/Editor" title="Editor" wx:linktype="known" wx:pagename="Editor" wx:page_id="118431" id="wx331">Editor</a></li>

<li id="wx332"><a href="/wpt/Compilador" title="Compilador" wx:linktype="known" wx:pagename="Compilador" wx:page_id="2763" id="wx333">Compilador</a></li>

<li id="wx334"><i id="wx335"><a href="/wpt/Debug" title="Debug" wx:linktype="known" wx:pagename="Debug" wx:page_id="305427" id="wx336">Debug</a></i></li>

<li id="wx337"><a href="/wpt/Gera%C3%A7%C3%A3o_de_c%C3%B3digo" title="Geração de código" wx:linktype="known" wx:pagename="Geração_de_código" wx:page_id="618078" id="wx338">Geração de código</a></li>

<li id="wx339"><a href="/wpt/Modelagem" title="Modelagem" wx:linktype="known" wx:pagename="Modelagem" wx:page_id="5405" id="wx340">Modelagem</a></li>

<li id="wx341"><i id="wx342"><a href="/wpt/Deploy" class="new" title="Deploy" wx:linktype="unknown" wx:pagename="Deploy" id="wx343">Deploy</a></i></li>

<li id="wx344"><a href="/wpt/Testes_n%C3%A3o_automatizados" class="new" title="Testes não automatizados" wx:linktype="unknown" wx:pagename="Testes_não_automatizados" id="wx345">Testes não automatizados</a></li>

<li id="wx346"><a href="/wpt/Testes_automatizados" title="Testes automatizados" wx:linktype="known" wx:pagename="Testes_automatizados" wx:page_id="592404" id="wx347">Testes automatizados</a></li>

<li id="wx348"><a href="/wpt/Refatora%C3%A7%C3%A3o" title="Refatoração" wx:linktype="known" wx:pagename="Refatoração" wx:page_id="126534" id="wx349">Refatoração</a>
<p id="wx350">(<i id="wx351">Refatoring</i>)</p>
</li>

<li id="wx352"><a href="/wpt/Gest%C3%A3o_de_Riscos_nos_projectos_de_Software" title="Gestão de Riscos nos projectos de Software" wx:linktype="known" wx:pagename="Gestão_de_Riscos_nos_projectos_de_Software" wx:page_id="1195892" id="wx353">Gestão de Riscos nos projectos de Software</a></li>

<li id="wx354"><a href="/wpt/Uso_da_Prototipagem_na_Eng._de_Requisitos" title="Uso da Prototipagem na Eng. de Requisitos" wx:linktype="known" wx:pagename="Uso_da_Prototipagem_na_Eng._de_Requisitos" wx:page_id="374160" id="wx355">Uso da Prototipagem na Eng. de Requisitos</a></li>
</ul>

<a id="Ger.C3.AAncia_de_Projetos" name="Ger.C3.AAncia_de_Projetos"/>
</wx:section></wx:section><wx:section level="2" title="Gerência de Projetos" id="wxsec7"><h2 id="wx356">Gerência de Projetos</h2>

<p id="wx357">A <a href="/wpt/Ger%C3%AAncia_de_projetos" title="Gerência de projetos" wx:linktype="known" wx:pagename="Gerência_de_projetos" wx:page_id="38643" id="wx358">gerência de projetos</a> se preocupa em entregar o sistema de <i id="wx359">software</i> no prazo e de acordo com os requisitos estabelecidos, levando em conta sempre as limitações de orçamento e tempo.</p>

<p id="wx360">A gerência de projetos de software se caracteriza por tratar sobre um produto intangível, muito flexível e com processo de desenvolvimento com baixa padronização.</p>

<a id="Planejamento" name="Planejamento"/>
<wx:section level="3" title="Planejamento" id="wxsec18"><h3 id="wx361">Planejamento</h3>

<p id="wx362">O planejamento de um projeto de desenvolvimento de <i id="wx363">software</i> inclui:</p>

<ul id="wx364">
<li id="wx365">
<p id="wx366">organização do projeto (incluindo equipes e responsabilidades)</p>
</li>

<li id="wx367">
<p id="wx368">estruturação das tarefas (do inglês WBS - <i id="wx369"><a href="/wpt/Work_breakdown_structure" title="Work breakdown structure" wx:linktype="known" wx:pagename="Work_breakdown_structure" wx:page_id="223888" id="wx370">work breakdown structure</a></i>)</p>
</li>

<li id="wx371">
<p id="wx372">cronograma do projeto (do inglês <i id="wx373">project schedule</i>)</p>
</li>

<li id="wx374">
<p id="wx375">análise e gestão de risco</p>
</li>

<li id="wx376">
<p id="wx377">estimativa de custos</p>
</li>
</ul>

<p id="wx378">Essas atividades sofrem com dificuldades típicas de desenvolvimento de <i id="wx379">software</i>. A produtividade não é linear em relação ao tamanho da equipe e o aumento de produtividade não é imediato devido aos custos de aprendizado de novos membros. A diminuição de qualidade para acelerar o desenvolvimento constantemente prejudica futuramente a produtividade.</p>

<p id="wx380">A estimativa de dificuldades e custos de desenvolvimentos são muito difíceis, além do surgimento de problemas técnicos. Esses fatores requerem uma análise de riscos cuidadosa.</p>

<p id="wx381">Além da própria identificação dos riscos, há que ter em conta a sua gestão. Seja evitando, seja resolvendo, os riscos necessitam ser identificados (estimando o seu impacto) e devem ser criados planos para resolução de problemas.</p>

<a id="An.C3.A1lise_de_Requisitos" name="An.C3.A1lise_de_Requisitos"/>
</wx:section><wx:section level="3" title="Análise de Requisitos" id="wxsec19"><h3 id="wx382">Análise de Requisitos</h3>

<p id="wx383">As atividades de análise concentram-se na identificação, especificação e descrição dos <a href="/wpt/Processo_de_Engenharia_de_Requisitos" title="Processo de Engenharia de Requisitos" wx:linktype="known" wx:pagename="Processo_de_Engenharia_de_Requisitos" wx:page_id="217341" id="wx384">requisitos</a> do sistema de <i id="wx385">software</i>. Em resumo, requisito é uma necessidade que o <i id="wx386">software</i> deve cumprir.</p>

<p id="wx387">Há várias interpretações e classificações sobre <a href="/wpt/Processo_de_Engenharia_de_Requisitos" title="Processo de Engenharia de Requisitos" wx:linktype="known" wx:pagename="Processo_de_Engenharia_de_Requisitos" wx:page_id="217341" id="wx388">requisitos</a>, entre elas:</p>

<ul id="wx389">
<li id="wx390">
<p id="wx391">funcional</p>
</li>

<li id="wx392">
<p id="wx393">não funcional</p>
</li>

<li id="wx394">
<p id="wx395">de usuário</p>
</li>

<li id="wx396">
<p id="wx397">de sistema</p>
</li>
</ul>

<p id="wx398">É comum que o cliente não saiba o que ele realmente deseja, que haja problemas na comunicação e ainda que haja mudança constante de requisitos. Todos esses fatores são recrudescidos pela intangibilidade sobre característicos de sistemas de <i id="wx399">software</i>, principalmente sobre o custo de cada requisito.</p>

<a id="Gest.C3.A3o" name="Gest.C3.A3o"/>
</wx:section><wx:section level="3" title="Gestão" id="wxsec20"><h3 id="wx400">Gestão</h3>

<ul id="wx401">
<li id="wx402">
<p id="wx403">Pessoal</p>
</li>

<li id="wx404">
<p id="wx405">Produto</p>
</li>

<li id="wx406">
<p id="wx407">Processo</p>
</li>

<li id="wx408">
<p id="wx409">Projeto</p>
</li>

<li id="wx410">
<p id="wx411">Material</p>
</li>
</ul>

<a id="Hist.C3.B3rico" name="Hist.C3.B3rico"/>
</wx:section></wx:section><wx:section level="2" title="Histórico" id="wxsec8"><h2 id="wx412">Histórico</h2>

<p id="wx413">A Engenharia de Software (ES) surgiu em meados dos anos <a href="/wpt/1970" title="1970" wx:linktype="known" wx:pagename="1970" wx:page_id="11492" id="wx414">1970</a> numa tentativa de contornar a crise do <a href="/wpt/Software" title="Software" wx:linktype="known" wx:pagename="Software" wx:page_id="1709" id="wx415">software</a> e dar um tratamento de <a href="/wpt/Engenharia" title="Engenharia" wx:linktype="known" wx:pagename="Engenharia" wx:page_id="744" id="wx416">engenharia</a> (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 (<a href="/wpt/Estrutura_de_dados" title="Estrutura de dados" wx:linktype="known" wx:pagename="Estrutura_de_dados" wx:page_id="52637" id="wx417">estruturas de dados</a> e <a href="/wpt/Algoritmo" title="Algoritmo" wx:linktype="known" wx:pagename="Algoritmo" wx:page_id="257" id="wx418">algoritmos</a>) encapsulados na forma de procedimentos, <a href="/wpt/Fun%C3%A7%C3%B5es" title="Funções" wx:linktype="known" wx:pagename="Funções" wx:page_id="129124" id="wx419">funções</a>, <a href="/wpt/M%C3%B3dulo_de_um_programa" title="Módulo de um programa" wx:linktype="known" wx:pagename="Módulo_de_um_programa" wx:page_id="141794" id="wx420">módulos</a>, <a href="/wpt/Objeto" title="Objeto" wx:linktype="known" wx:pagename="Objeto" wx:page_id="45465" id="wx421">objetos</a> ou <a href="/wpt/Agentes" class="new" title="Agentes" wx:linktype="unknown" wx:pagename="Agentes" id="wx422">agentes</a> interconectados entre si, compondo a arquitetura do software, que deverão ser executados em <a href="/wpt/Sistemas_computacionais" title="Sistemas computacionais" wx:linktype="known" wx:pagename="Sistemas_computacionais" wx:page_id="118792" id="wx423">sistemas computacionais</a>.</p>

<a id="ES_no_Presente_e_Tend.C3.AAncias" name="ES_no_Presente_e_Tend.C3.AAncias"/>
</wx:section><wx:section level="2" title="ES no Presente e Tendências" id="wxsec9"><h2 id="wx424">ES no Presente e Tendências</h2>

<p id="wx425">Atualmente existe um destaque todo especial para a Engenharia de Software na Web. Também utilizado por <a href="/wpt/Presmann" class="new" title="Presmann" wx:linktype="unknown" wx:pagename="Presmann" id="wx426">Presmann</a> a sigla WebE, é o processo usado para criar <a href="/wpt/Aplica%C3%A7%C3%A3o_Web" title="Aplicação Web" wx:linktype="known" wx:pagename="Aplicação_Web" wx:page_id="171600" id="wx427">WebApps</a> (aplicações baseadas na Web) de alta qualidade. Embora os princípios básicos da WebE sejam muito próximos da Engenharia de Software clássica, existem peculiariedades especificas e próprias.</p>

<p id="wx428">Com o advento do B2B (<a href="/wpt/E-business" title="E-business" wx:linktype="known" wx:pagename="E-business" wx:page_id="96556" id="wx429">e-business</a>) e do B2C (<a href="/wpt/E-commerce" title="E-commerce" wx:linktype="known" wx:pagename="E-commerce" wx:page_id="71558" id="wx430">e-commerce</a>), e ainda mais com aplicações para a <a href="/wpt/Web_2.0" title="Web 2.0" wx:linktype="known" wx:pagename="Web_2.0" wx:page_id="180258" id="wx431">Web 2.0</a>, maior importância ficou sendo esse tipo de engenharia. Normalmente adotam no desenvolvimento a arquitetura <a href="/wpt/MVC" title="MVC" wx:linktype="known" wx:pagename="MVC" wx:page_id="175169" id="wx432">MVC</a> (Model-View-Controller).</p>

<a id="Notas_e_refer.C3.AAncias" name="Notas_e_refer.C3.AAncias"/>
</wx:section><wx:section level="2" title="Notas e referências" id="wxsec10"><h2 id="wx433">Notas e referências</h2>

<ol class="references" id="wx434">
<li id="_note-0"><a href="#_ref-0" title="" wx:fragment="_ref-0" wx:linktype="noteref" id="wx435">↑</a>
<p id="wx436">Veja mais detalhes em <a href="/wpt/Metodologia_%28engenharia_de_software%29" title="Metodologia (engenharia de software)" wx:linktype="known" wx:pagename="Metodologia_(engenharia_de_software)" wx:page_id="845140" id="wx437">Metodologia (engenharia de software)</a></p>
</li>
</ol>

<a id="Bibliografia" name="Bibliografia"/>
</wx:section><wx:section level="2" title="Bibliografia" id="wxsec11"><h2 id="wx438">Bibliografia</h2>

<ul id="wx439">
<li id="wx440">
<p id="wx441">MAGELA, Rogerio. Engenharia de Software Aplicada: Princípios (volume 1). Alta Books. 2006.</p>
</li>
</ul>

<ul id="wx442">
<li id="wx443">
<p id="wx444">MAGELA, Rogerio. Engenharia de Software Aplicada: Fundamentos (volume 2). Alta Books. 2006.</p>
</li>
</ul>

<ul id="wx445">
<li id="wx446"><wx:template id="wx_t3" pagename="Predefinição:Referência_a_livro" page_id="177760"/><cite class="book" style="font-style:normal" id="wx447">MOLINARI, Leonardo. <i id="wx448">Gerência de Configuração - Técnicas e Práticas no Desenvolvimento do Software</i>. Florianópolis: Visual Books, 2007. 85-7502-210-5</cite><wx:templateend start="wx_t3"/>
</li>
</ul>

<ul id="wx449">
<li id="wx450">
<p id="wx451">PRESSMAN, Roger. Software Engineering: A Practitioner's Approach, 6ªedição, Mc Graw Hill, 2005.</p>
</li>
</ul>

<a id="Liga.C3.A7.C3.B5es_externas" name="Liga.C3.A7.C3.B5es_externas"/>
</wx:section><wx:section level="2" title="Ligações externas" id="wxsec12"><h2 id="wx452"><wx:template id="wx_t4" pagename="Predefinição:Ligações_externas" page_id="62491"/>Ligações externas<wx:templateend start="wx_t4"/></h2>

<ul id="wx453">
<li id="wx454"><a href="http://www.gpes.dcc.ufmg.br/" class="external text" wx:linktype="external" rel="nofollow" id="wx455">GPES</a>
<p id="wx456">Grupo de Pesquisa em Engenharia de Software do Departamento de Ciência da Computação da Universidade Federal de Minas Gerais.</p>
</li>

<li id="wx457"><a href="http://www.engenhariasoftware.com.br/" class="external text" wx:linktype="external" rel="nofollow" id="wx458">Engenharia de Software</a>
<p id="wx459">O Primeiro Site Brasileiro Especializado em Engenharia de Software<wx:template id="wx_t5" pagename="Predefinição:Carece_de_fontes" page_id="255346"/><sup id="wx460"><font color="gray" id="wx461">[</font><a href="/wpt/Wikipedia:Livro_de_estilo/Cite_as_fontes" title="Wikipedia:Livro de estilo/Cite as fontes" wx:linktype="known" wx:pagename="Wikipedia:Livro_de_estilo/Cite_as_fontes" id="wx462"><span title="Esta afirmativa precisa de uma referência para confirmá-la ." id="wx463"><font color="gray" id="wx464"><i id="wx465">carece de fontes</i></font></span></a><span class="printfooter" id="wx466">?</span><font color="gray" id="wx467">]</font></sup><wx:templateend start="wx_t5"/>.</p>
</li>

<li id="wx468"><a href="/wpt/Praxis_%28engenharia_de_software%29" title="Praxis (engenharia de software)" wx:linktype="known" wx:pagename="Praxis_(engenharia_de_software)" wx:page_id="1413" id="wx469">Praxis</a>
<p id="wx470">- Processo de desenvolvimento de software com enfoque educacional</p>
</li>

<li id="wx471"><a href="http://www.improveit.com.br/podcast" class="external text" wx:linktype="external" rel="nofollow" id="wx472">Podcasts bem interessantes (em português) sobre áreas de interesse da Engenharia de Software</a>
<p id="wx473">CMMI, MPS.BR, Scrum, Extreme Programming e Lean Software Development</p>
</li>

<li id="wx474"><a href="http://www.devmedia.com.br/esmag" class="external text" wx:linktype="external" rel="nofollow" id="wx475">Revista Engenharia de Software</a>
<p id="wx476">Revista sobre Engenharia de Software em portugues</p>
</li>
</ul>

<a id="Ver_tamb.C3.A9m" name="Ver_tamb.C3.A9m"/>
</wx:section><wx:section level="2" title="Ver também" id="wxsec13"><h2 id="wx477"><wx:template id="wx_t6" pagename="Predefinição:Ver_também" page_id="62492"/>Ver também<wx:templateend start="wx_t6"/></h2>

<wx:template id="wx_t7" pagename="Predefinição:Portal_de_engenharia" page_id="1553531"/>
<table style="margin: 0 0 1em 1em; border: solid #aaa 1px; background: #f9f9f9; padding: 1ex; font-size: 90%; clear: right; float: right;" class="noprint" id="wx478">
<tr id="wx479">
<td id="wx480"><a href="/wpt/Imagem:Portal.svg" title="Portal" wx:linktype="image" wx:pagename="Imagem:Portal.svg" id="wx481"><img src="/wpt/Imagem:Portal.svg" alt="Portal" width="36" id="wx482"/></a> </td>
<td id="wx483">
<p id="wx484">A Wikipédia possui o<br id="wx485"/>
<i id="wx486"><b id="wx487"><a href="/wpt/Portal:Engenharia" class="new" title="Portal:Engenharia" wx:linktype="unknown" wx:pagename="Portal:Engenharia" id="wx488">Portal de engenharia</a></b></i></p>

<div class="hiddenStructure" id="wx489"><i id="wx490"><b id="wx491">{{{Portal2}}}</b></i></div>

<div class="hiddenStructure" id="wx492"><i id="wx493"><b id="wx494">{{{Portal3}}}</b></i></div>

<div class="hiddenStructure" id="wx495"><i id="wx496"><b id="wx497">{{{Portal4}}}</b></i></div>

<div class="hiddenStructure" id="wx498"><i id="wx499"><b id="wx500">{{{Portal5}}}</b></i></div>
</td>
</tr>
</table>

<wx:templateend start="wx_t7"/>
<ul id="wx501">
<li id="wx502"><a href="/wpt/Desenvolvimento_de_software" title="Desenvolvimento de software" wx:linktype="known" wx:pagename="Desenvolvimento_de_software" wx:page_id="354212" id="wx503">Desenvolvimento de software</a></li>

<li id="wx504"><a href="/wpt/Qualidade_de_software" title="Qualidade de software" wx:linktype="known" wx:pagename="Qualidade_de_software" wx:page_id="157547" id="wx505">Qualidade de software</a></li>

<li id="wx506"><a href="/wpt/Software_Engineering_Body_of_Knowledge" title="Software Engineering Body of Knowledge" wx:linktype="known" wx:pagename="Software_Engineering_Body_of_Knowledge" wx:page_id="416032" id="wx507">Software Engineering Body of Knowledge</a></li>
</ul>
</wx:section></wx:section></div>
<div id="wx_categorylinks">
<a href="/wpt/index.php?title=Especial:Categories&amp;article=Engenharia_de_software" title="Especial:Categories" wx:linktype="known" wx:pagename="Especial:Categories" id="wx508">Categorias de páginas</a>: <span dir="ltr" id="wx509"><a href="/wpt/Categoria:%21Artigos_que_carecem_de_fontes" title="Categoria:!Artigos que carecem de fontes" wx:linktype="known" wx:pagename="Categoria:!Artigos_que_carecem_de_fontes" wx:page_id="255353" id="wx510">!Artigos que carecem de fontes</a></span> | <span dir="ltr" id="wx511"><a href="/wpt/Categoria:Engenharia_de_software" title="Categoria:Engenharia de software" wx:linktype="known" wx:pagename="Categoria:Engenharia_de_software" wx:page_id="38258" id="wx512">Engenharia de software</a></span></div>
<div id="wx_languagelinks">
Outras línguas: <a href="http://af.wikipedia.org/wiki/Sagteware-ingenieurswese" class="external" wx:linktype="interwiki" wx:pagename="af:Sagteware-ingenieurswese" id="wx513">Afrikaans</a> | <a href="http://ar.wikipedia.org/wiki/%D9%87%D9%86%D8%AF%D8%B3%D8%A9_%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D9%8A%D8%A7%D8%AA" class="external" wx:linktype="interwiki" wx:pagename="ar:هندسة_البرمجيات" id="wx514">العربية</a> | <a href="http://ast.wikipedia.org/wiki/Inxenier%C3%ADa_del_software" class="external" wx:linktype="interwiki" wx:pagename="ast:Inxeniería_del_software" id="wx515">Asturianu</a> | <a href="http://bs.wikipedia.org/wiki/Softverski_in%C5%BEinjering" class="external" wx:linktype="interwiki" wx:pagename="bs:Softverski_inžinjering" id="wx516">Bosanski</a> | <a href="http://ca.wikipedia.org/wiki/Enginyeria_de_programari" class="external" wx:linktype="interwiki" wx:pagename="ca:Enginyeria_de_programari" id="wx517">Català</a> | <a href="http://cs.wikipedia.org/wiki/Softwarov%C3%A9_in%C5%BEen%C3%BDrstv%C3%AD" class="external" wx:linktype="interwiki" wx:pagename="cs:Softwarové_inženýrství" id="wx518">Česky</a> | <a href="http://da.wikipedia.org/wiki/Softwareudvikling" class="external" wx:linktype="interwiki" wx:pagename="da:Softwareudvikling" id="wx519">Dansk</a> | <a href="http://de.wikipedia.org/wiki/Softwaretechnik" class="external" wx:linktype="interwiki" wx:pagename="de:Softwaretechnik" id="wx520">Deutsch</a> | <a href="http://en.wikipedia.org/wiki/Software_engineering" class="external" wx:linktype="interwiki" wx:pagename="en:Software_engineering" id="wx521">English</a> | <a href="http://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software" class="external" wx:linktype="interwiki" wx:pagename="es:Ingeniería_de_software" id="wx522">Español</a> | <a href="http://fa.wikipedia.org/wiki/%D9%85%D9%87%D9%86%D8%AF%D8%B3%DB%8C_%D9%86%D8%B1%D9%85%E2%80%8C%D8%A7%D9%81%D8%B2%D8%A7%D8%B1" class="external" wx:linktype="interwiki" wx:pagename="fa:مهندسی_نرم‌افزار" id="wx523">فارسی</a> | <a href="http://fi.wikipedia.org/wiki/Ohjelmistotuotanto" class="external" wx:linktype="interwiki" wx:pagename="fi:Ohjelmistotuotanto" id="wx524">Suomi</a> | <a href="http://fr.wikipedia.org/wiki/G%C3%A9nie_logiciel" class="external" wx:linktype="interwiki" wx:pagename="fr:Génie_logiciel" id="wx525">Français</a> | <a href="http://ga.wikipedia.org/wiki/Innealt%C3%B3ireacht_bogearra%C3%AD" class="external" wx:linktype="interwiki" wx:pagename="ga:Innealtóireacht_bogearraí" id="wx526">Gaeilge</a> | <a href="http://gl.wikipedia.org/wiki/Enxe%C3%B1ar%C3%ADa_de_software" class="external" wx:linktype="interwiki" wx:pagename="gl:Enxeñaría_de_software" id="wx527">Galego</a> | <a href="http://he.wikipedia.org/wiki/%D7%94%D7%A0%D7%93%D7%A1%D7%AA_%D7%AA%D7%95%D7%9B%D7%A0%D7%94" class="external" wx:linktype="interwiki" wx:pagename="he:הנדסת_תוכנה" id="wx528">עברית</a> | <a href="http://hr.wikipedia.org/wiki/Programsko_in%C5%BEenjerstvo" class="external" wx:linktype="interwiki" wx:pagename="hr:Programsko_inženjerstvo" id="wx529">Hrvatski</a> | <a href="http://id.wikipedia.org/wiki/Rekayasa_perangkat_lunak" class="external" wx:linktype="interwiki" wx:pagename="id:Rekayasa_perangkat_lunak" id="wx530">Bahasa Indonesia</a> | <a href="http://is.wikipedia.org/wiki/Hugb%C3%BAna%C3%B0arverkfr%C3%A6%C3%B0i" class="external" wx:linktype="interwiki" wx:pagename="is:Hugbúnaðarverkfræði" id="wx531">Íslenska</a> | <a href="http://it.wikipedia.org/wiki/Ingegneria_del_software" class="external" wx:linktype="interwiki" wx:pagename="it:Ingegneria_del_software" id="wx532">Italiano</a> | <a href="http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E5%B7%A5%E5%AD%A6" class="external" wx:linktype="interwiki" wx:pagename="ja:ソフトウェア工学" id="wx533">日本語</a> | <a href="http://ko.wikipedia.org/wiki/%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4_%EA%B3%B5%ED%95%99" class="external" wx:linktype="interwiki" wx:pagename="ko:소프트웨어_공학" id="wx534">한국어</a> | <a href="http://lt.wikipedia.org/wiki/Program%C5%B3_in%C5%BEinerija" class="external" wx:linktype="interwiki" wx:pagename="lt:Programų_inžinerija" id="wx535">Lietuvių</a> | <a href="http://lv.wikipedia.org/wiki/Programmin%C5%BEenierija" class="external" wx:linktype="interwiki" wx:pagename="lv:Programminženierija" id="wx536">Latviešu</a> | <a href="http://nl.wikipedia.org/wiki/Software_Engineering" class="external" wx:linktype="interwiki" wx:pagename="nl:Software_Engineering" id="wx537">Nederlands</a> | <a href="http://no.wikipedia.org/wiki/Programvareutvikling" class="external" wx:linktype="interwiki" wx:pagename="no:Programvareutvikling" id="wx538">Norsk (bokmål)</a> | <a href="http://pl.wikipedia.org/wiki/In%C5%BCynieria_oprogramowania" class="external" wx:linktype="interwiki" wx:pagename="pl:Inżynieria_oprogramowania" id="wx539">Polski</a> | <a href="http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BE%D0%B1%D0%B5%D1%81%D0%BF%D0%B5%D1%87%D0%B5%D0%BD%D0%B8%D1%8F" class="external" wx:linktype="interwiki" wx:pagename="ru:Разработка_программного_обеспечения" id="wx540">Русский</a> | <a href="http://sk.wikipedia.org/wiki/Softv%C3%A9rov%C3%A9_in%C5%BEinierstvo" class="external" wx:linktype="interwiki" wx:pagename="sk:Softvérové_inžinierstvo" id="wx541">Slovenčina</a> | <a href="http://sr.wikipedia.org/wiki/%D0%98%D0%BD%D0%B6%D0%B5%D1%9A%D0%B5%D1%80%D0%B8%D0%BD%D0%B3_%D1%81%D0%BE%D1%84%D1%82%D0%B2%D0%B5%D1%80%D0%B0" class="external" wx:linktype="interwiki" wx:pagename="sr:Инжењеринг_софтвера" id="wx542">Српски / Srpski</a> | <a href="http://su.wikipedia.org/wiki/R%C3%A9kayasa_software" class="external" wx:linktype="interwiki" wx:pagename="su:Rékayasa_software" id="wx543">Basa Sunda</a> | <a href="http://sv.wikipedia.org/wiki/Programvaruutveckling" class="external" wx:linktype="interwiki" wx:pagename="sv:Programvaruutveckling" id="wx544">Svenska</a> | <a href="http://ta.wikipedia.org/wiki/%E0%AE%AE%E0%AF%86%E0%AE%A9%E0%AF%8D%E0%AE%AA%E0%AF%8A%E0%AE%B0%E0%AF%81%E0%AE%9F%E0%AF%8D_%E0%AE%AA%E0%AF%8A%E0%AE%B1%E0%AE%BF%E0%AE%AF%E0%AE%BF%E0%AE%AF%E0%AE%B2%E0%AF%8D" class="external" wx:linktype="interwiki" wx:pagename="ta:மென்பொருட்_பொறியியல்" id="wx545">தமிழ்</a> | <a href="http://th.wikipedia.org/wiki/%E0%B8%A7%E0%B8%B4%E0%B8%A8%E0%B8%A7%E0%B8%81%E0%B8%A3%E0%B8%A3%E0%B8%A1%E0%B8%8B%E0%B8%AD%E0%B8%9F%E0%B8%95%E0%B9%8C%E0%B9%81%E0%B8%A7%E0%B8%A3%E0%B9%8C" class="external" wx:linktype="interwiki" wx:pagename="th:วิศวกรรมซอฟต์แวร์" id="wx546">ไทย</a> | <a href="http://tl.wikipedia.org/wiki/Software_engineering" class="external" wx:linktype="interwiki" wx:pagename="tl:Software_engineering" id="wx547">Tagalog</a> | <a href="http://tr.wikipedia.org/wiki/Yaz%C4%B1l%C4%B1m_m%C3%BChendisli%C4%9Fi" class="external" wx:linktype="interwiki" wx:pagename="tr:Yazılım_mühendisliği" id="wx548">Türkçe</a> | <a href="http://vi.wikipedia.org/wiki/C%C3%B4ng_ngh%E1%BB%87_ph%E1%BA%A7n_m%E1%BB%81m" class="external" wx:linktype="interwiki" wx:pagename="vi:Công_nghệ_phần_mềm" id="wx549">Tiếng Việt</a> | <a href="http://zh.wikipedia.org/wiki/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B" class="external" wx:linktype="interwiki" wx:pagename="zh:软件工程" id="wx550">中文</a></div>
</body>
<wx:templatearguments for="wx_t1"><wx:argument name="Portal">
<a href="/wpt/Portal:Tecnologias_de_informa%C3%A7%C3%A3o" class="new" title="Portal:Tecnologias de informação" wx:linktype="unknown" wx:pagename="Portal:Tecnologias_de_informação" id="wx551">Portal das tecnologias de informação</a>
</wx:argument></wx:templatearguments>
<wx:templatearguments for="wx_t2"><wx:argument name="Portal">
<a href="/wpt/Portal:Tecnologias_de_informa%C3%A7%C3%A3o" class="new" title="Portal:Tecnologias de informação" wx:linktype="unknown" wx:pagename="Portal:Tecnologias_de_informação" id="wx552">Portal das tecnologias de informação</a>
</wx:argument></wx:templatearguments>
<wx:templatearguments for="wx_t3"><wx:argument name="ID">
<p id="wx553">85-7502-210-5</p>
</wx:argument></wx:templatearguments>
<wx:templatearguments for="wx_t4"><wx:argument name="ID">
<p id="wx554">85-7502-210-5</p>
</wx:argument></wx:templatearguments>
<wx:templatearguments for="wx_t5"><wx:argument name="ID">
<p id="wx555">85-7502-210-5</p>
</wx:argument></wx:templatearguments>
<wx:templatearguments for="wx_t6"><wx:argument name="ID">
<p id="wx556">85-7502-210-5</p>
</wx:argument></wx:templatearguments>
<wx:templatearguments for="wx_t7"><wx:argument name="ID">
<p id="wx557">85-7502-210-5</p>
</wx:argument></wx:templatearguments>
</html>
