importância da iso 12207 (marcelo nogueira)

Upload: washington-botelho

Post on 10-Apr-2018

233 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    1/11

    1

    "QUAL A IMPORTNCIA DA ADOO DA NORMA ISO 12207 NAS

    EMPRESAS DE DESENVOLVIMENTO DE SOFTWARE?".

    MARCELONOGUEIRA UNIP - Universidade Paulista Mestrado em Engenharia de Produo

    Abstract

    The systems development companies have their material and human resources as much as overloaded, in front the demand to her submitted. However the not adoption of a software quality norm, or for lack of culture or unfor ignorance of the existence of the norm, carry projects of vanishes relevance to the failure and even increasithe quantity of cases of the unfinished systems, consequently wasting time, financial resources and not attendithe needs to clients and neither of the developer.

    Key words: Software quality, ISO 12207, Software Engineering.

    Tema: Gesto da Informao.1. INTRODUO

    Num ambiente competitivo e de mudana cada vez mais complexo, a gesto adequadaInformao assume uma importncia decisiva no processo de tomada de deciso organizaes.

    Tratando-se de um tema simultaneamente abrangente e especializado, a adoo da EngenhariSoftware como linha base da Gesto da Informao, possibilitar, no s desenvolveconsolidar os conhecimentos no desenvolvimento de software para encarar com confiannovos desafios no mundo dos negcios, e tambm reforar as competncias profissionmantendo-se atualizado em relao ao potencial dos sistemas de informao e das notecnologias numa perspectiva empresarial e competitiva globalmente.

    A partir do conhecimento adquirido de normas de Qualidade de Software, o desenvolvedor elemento multiplicador de solues, contribuindo e agregando valor aos sistemas novos e par j existentes, com aplicao de metodologias e tecnologias adequadas, capazes de gerir sucesso as informaes relevantes aos negcios aplicveis, trazendo s organizaes, vantacompetitivas.

    No estudo da Engenharia de Software, o autor Roger S. Pressman [PRESSMAN02], demonpreocupao com a Crise do Software que atualmente ele intitula como Aflio Crnichegando a determinar nmeros expressivos sobre a no finalizao de projetos de sistecomeados e no terminados.Num mundo cada vez mais de recursos financeiros escassos, como possvel aceitardesperdcio de tempo e dinheiro. O mesmo autor tambm aponta para o possvel problcausador de tal absurdo: A falta de adoo de mtodos, ferramentas e procedimentosdesenvolvimento de software e a difcil relao de entendimento entre o usurio comdesenvolvedor.

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    2/11

    2

    Vrias tcnicas de modelagem foram criadas e o desenvolvedor mesmo assim ainda dificuldades de realizar um projeto de sistemas livre de manutenes e re-trabalhos, condendiretamente a qualidade do produto.

    A adoo da norma ISO/IEC 12207:1997, pelo desenvolvedor de software, direciona coestruturar e gerenciar o ciclo de desenvolvimento, proporcionando acompanhamento de todprocesso, permitindo que o software venha representar a realidade da empresa modelada gerao de um sistema customizado, atendendo assim seus requisitos e as necessidades dempresa.

    Adotar a norma permite padronizar os processos de desenvolvimento de software, aumentanaderncia a uma ferramenta de apoio a modelagem do software agregando a elas facilidade

    relacionamento e compreenso do Usurio e do Desenvolvedor, utilizando mtodos sistmque diminuiro erros na modelagem, e por conseqncia a manuteno exagerada, eliminacustos indevidos, extino do tempo desnecessrio dedicado ao re-trabalho, obtendo qualidadsoftware, bem como criar a real possibilidade de extrair de um sistema, informaes relevaque venham no s para contribuir com a deciso, mas para ser um fator de excelnempresarial, permitindo novos negcios, permanncia e sobrevivncia num mercado atuante.

    2. RELEVNCIA

    Atualmente com a viso global permitindo a participao nas exportaes de software para oupases, cada vez mais a qualidade no processo de desenvolvimento e do produto de softwganha maior observao e adoo das melhores prticas e solues tecnolgicas.

    3. ENGENHARIA DE SOFTWARE

    Segundo Rezende [REZENDE99], Engenharia a arte das construes, embasada conhecimento cientfico e emprico, adequada ao atendimento das necessidades humanas.

    Engenharia de Software a metodologia de desenvolvimento e manuteno de sistemmodulares, com as seguintes caractersticas [REZENDE99]:

    - Adequao aos requisitos funcionais do negcio do cliente e seus respectivprocedimentos pertinentes;- Efetivao de padres de qualidade e produtividade em suas atividades e produtos;- Fundamentao na tecnologia da informao disponvel, vivel e oportuna;- Planejamento e gesto de atividades, recursos, custos e datas.

    Segundo Pressman [PRESSMAN95], Engenharia de Software :

    - O estabelecimento e uso de slidos princpios de engenharia para que se possa obeconomicamente um software que seja confivel e que funcione eficientemente mquinas reais;

    - Descendente da engenharia de sistemas e de hardware. Abrange um conjunto delementos fundamentais (mtodos, ferramentas e procedimentos), que possibilita,

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    3/11

    3

    gerente, o controle do processo de desenvolvimento do software e oferece ao profissiouma base para a construo de software de alta qualidade.

    Segundo Martin [MARTIN91], Engenharia de Software :

    - o estudo dos princpios e sua aplicao no desenvolvimento e manuteno de sistemasoftware;- Tanto a engenharia de software como as tcnicas estruturadas so colees metodologias de software e ferramentas;

    Como concluso, pode-se relatar que engenharia de software um conjunto de prticas desenvolvimento de solues de software, ou seja, roteiro que pode utilizar diversas tcnicas.

    A seqncia de passos preestabelecidos permite optar e variar de tcnicas e ferramentas na diversas fases [REZENDE99].

    4. OBJETIVOS DA ENGENHARIA DE SOFTWARE

    De um modo geral, considera-se que os objetivos primrios da Engenharia de Software saprimoramento da qualidade dos produtos de software e o aumento da produtividade engenheiros de software, alm do atendimento aos requisitos de eficcia e eficincia, ou efetividade [MAFFEO92].

    A Engenharia de Software visa sistematizar a produo, a manuteno, a evoluo erecuperao de produtos intensivos de software, de modo que ocorra dentro de prazos e cuestimados, com progresso controlado e utilizando princpios, mtodos, tecnologia e processocontnuo aprimoramento. Os produtos desenvolvidos e mantidos, seguindo um processo efetisegundo preceitos da Engenharia de Software asseguram, por construo, qualidade satisfatapoiando adequadamente os seus usurios na realizao de suas tarefas, operam satisfatreconomicamente em ambientes reais e podem evoluir continuamente, adaptando-se a um muem constante evoluo [FIORINI98].

    Associando a esses objetivos, o termo engenharia pretende indicar que o desenvolvimento

    software deve submeter-se a leis similares s que governam a manufatura de produtos industem engenharias tradicionais, pois ambos so metodolgicos [MAFFEO92].

    Com base nos objetivos da Engenharia de Software, fica evidente a necessidade da adoouma norma de qualidade para padronizar e gerenciar os processos de desenvolvimentosoftware.5. CRISE DO SOFTWARE

    Para generalizar o termo, ocorre quando o software no satisfaz seus envolvidos, sejam cliee/ou usurios, desenvolvedores ou empresa [REZENDE99].

    Esses problemas no se referem apenas a programas que no funcionam.Na verdade, a chamCrise do Software abrange todos os problemas relacionados a [REZENDE99]:

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    4/11

    4

    - Como sistemas computacionais so construdos;- Como sistemas computacionais so implantados, referindo-se aqui ao processo

    substituir sistemas antigos, desativando sistemas correntemente em operao, ou processo de instalar um sistema inteiramente novo;

    - Como provida a manuteno da quantidade crescente de software construdo, associa sistemas computacionais cada vez mais complexos;

    - Como fazer face crescente demanda para construo de software, visando satisfazeconjunto enormemente variado de anseios por informatizao, atualmente detectadosociedade moderna;

    - Como administrar as questes comportamentais, envolvendo os clientes e/ou usuriospoltica, cultura e filosofia empresarial.

    Apesar da enorme variedade de problemas que caracterizam a crise do software, engenheiro

    software e gerentes de projetos para desenvolvimento de sistemas computacionais tendeconcentrar suas preocupaes no seguinte aspecto: A enorme impreciso das estimativacronogramas e de custos de desenvolvimento (Tabelas 1, 2, 3 e 4) [LEE02].

    Tabela 1- Custos em projeto de software por fase de desenvolvimento [LEE02].

    Custos em projeto de software por Fase de Desenvolvimento Etapa de Trabalho %Anlise de Requisitos 3 Desenho 8 Programao 7

    Testes 15 Manuteno 67

    Tabela 2- Custos para correo de erros de software [LEE02].

    Custos para Correo de Erros de Software Fase de desenvolvimento % de Erros Erros Custo

    do software Desvios Introduzidos encontrados Relativo para ($) (%) (%) Correo

    Anlise de Requisitos 5 55 18 1,0 Desenho 25 30 10 1,0 - 1,5 Teste do Cdigo e da Unidade 10 Teste de Integrao 50 10 50 1,0 - 5,0 Validao e Documentao 10 Manuteno Operacional 5 22 10 100

    Tabela 3- Excedentes de Custo [LEE02].

    Excedentes de Custo % Excedente de Custo % de Respostas

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    5/11

    5

    201% - 400% 8,8%

    >400% 4,4%

    Tabela 4- Excedente de Prazo [LEE02].

    Excedente de Prazo % Excedente de Prazo % de Respostas

    400% 1,1% 6. ANTICRISE DO SOFTWARE

    Segundo Rezende [REZENDE99], pode-se resumir que a anticrise a unio e trabalho conjuharmonioso de trs elementos: Empresa (Alta Administrao), Cliente e/ou usurio e a unide informtica (Desenvolvedores de solues).

    E na prtica, cabe principalmente unidade de informtica aceitar este conceito e fazer o pospara a efetivao desta tese (Anticrise), utilizando-se de todos os recursos disponveis para tal

    A Unidade de informtica um dos principais agentes de mudana nas organizapreocupando-se com o negcio empresarial, auxiliando efetivamente os gestores nos processotomada de deciso, tanto operacionais, como gerenciais e estratgicas.

    7. QUALIDADE DE SOFTWARE

    Atingir um alto nvel de qualidade de produto ou servio o objetivo da maioria organizaes. Atualmente no mais aceitvel entregar produtos com baixa qualidade e repos problemas e as deficincias depois que os produtos foram entregues ao clien[SOMMERVILLE03]

    Segundo Machado [MACHADO01], para muitos engenheiros de software, a qualidadeprocesso de software to importante quanto qualidade do produto. Assim na dcada dehouve uma grande preocupao com a modelagem e melhorias no processo de softwAbordagens importantes como as normas ISO 9000 e a ISO / IEC 12207, o modelo CM(Capability Maturity Model) e o SPICE (Software Process Improvement and CapabidEtermination) sugerem que melhorando o processo de software, podemos melhorar a qualiddos produtos.

    A qualidade conseqncia dos processos, das pessoas e da tecnologia. A relao entrqualidade do produto e cada um desses fatores complexa. Por isso, muito mais dif

    controlar o grau de qualidade do produto do que controlar os requisitos.[PDUA03]

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    6/11

    6

    Segundo o Ministrio da Cincia e Tecnologia [MCT02], ainda que divulgadas na dcada deo conhecimento e utilizao das normas e modelos para qualidade de software, esto distantetornar-se realidade nas empresas desenvolvedoras de software, conforme (Tabelas 5, 6, 7 e 8).

    Tabela 5- Conhecimento da Norma ISO/IEC 12207 [MCT02].

    Conhecimento da Norma NBR ISO/IEC 12207 - Processos de Ciclo de Vida de Software -

    Categorias Total Micro Pequena Mdia Grande Conhece e usa sistematicamente 3,9 1,4 3,8 2,6 9,1 Conhece e comea a usar 8,3 6,1 6,8 7,7 14,8

    Conhece, mas no usa 55,1 48,6 51,1 64,1 67,0 No conhece 32,7 43,9 38,3 25,6 9,1

    Tabela 6- Conhecimento da Norma ISO 9000 [MCT02].

    Conhecimento das Normas ISO 9000 - Gesto da Qualidade

    Categorias Total Micro Pequena Mdia Grande Conhece e usa sistematicamente 19,4 3,4 16,3 34,1 44,0 Conhece e comea a usar 14,8 14,1 18,5 12,2 12,1 Conhece, mas no usa 52,4 62,4 50,4 43,9 41,8 No conhece 13,4 20,1 14,8 9,8 2,2

    Tabela 7- Conhecimento do Modelo CMM [MCT02].

    Conhecimento do modelo CMM - Capability Maturity Model

    Categorias Total Micro Pequena Mdia Grande Conhece e usa sistematicamente 3,9 0,7 2,9 2,5 11,4 Conhece e comea a usar 17,1 3,4 20,4 30,0 29,5 Conhece, mas no usa 53,7 62,2 48,9 47,5 48,9 No conhece 25,3 33,8 27,7 20,0 10,2

    Tabela 8- Conhecimento do Projeto SPICE [MCT02].

    Conhecimento do projeto SPICE - Software Process Improvement

    and Capability dEtermination (Technical Report ISO/IEC TR 15504) Categorias Total Micro Pequena Mdia Grande

    Conhece e usa sistematicamente 1,0 2,0 - - 1,1 Conhece e comea a usar 3,2 1,4 3,0 5,1 5,7 Conhece, mas no usa 56,7 49,0 50,4 59,0 77,3

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    7/11

    7

    No conhece 39,1 47,6 46,6 35,9 15,9

    Diante deste fato, podemos afirmar que por falta de utilizao das normas ou modelosqualidade de software, produzimos softwares de qualidade contestvel e participanefetivamente da Crise do Software [PRESSMAN95].7.1 Produto de SoftwareQuando entregamos a um cliente um pacote bem delimitado e identificado, podemos dizer entregamos um produto [SPINOLA98].

    A definio para produto de software segundo a norma IEEE-STD-610 [IEEE90] :

    O conjunto completo, ou qualquer dos itens individuais do conjunto, de programas computador, procedimentos, e documentao associada e dados designados para liberao um cliente ou usurio final [PAULK95].7.2 Processo de Software O conceito de processo de software se baseia no conceito generalizado de processo, que poddefinido como uma seqncia de estados de um sistema que se transforma [SPINOLA98].

    O SEI (Software Engineering Institute ), daCarnegie Melon University prope o seguinte [SEI]:

    Um processo uma seqncia de passos realizados para um dado propsito. Colocadomaneira mais simples, processo aquilo que voc faz. Processo aquilo que as pessoas fazusando procedimentos, mtodos, ferramentas, e equipamentos, para transformar matria pr(entradas) em produto (sada) que tenha valor para o cliente.[PAULK95]

    O processo de software pode ser definido como um conjunto de atividades, mtodos, prtictransformaes que as pessoas empregam para desenvolver e manter software e os prodassociados (ex. planos de projeto, documentos de projeto (design), cdigo, casos de testmanual do usurio).[PAULK95]

    8. ISO/IEC 12207

    Segundo Machado [MACHADO01], a globalizao da economia vem influenciando as emprprodutoras e prestadoras de servios de software a alcanar o patamar de qualidadprodutividade internacional para enfrentarem a competitividade cada vez maior. A nointernacional NBR ISO/IEC 12207 Tecnologia da Informao Processos de Ciclo de VidaSoftware [ISO12207: 97] usada como referncia em muitos pases, inclusive no Brasil, alcanar esse diferencial competitivo.

    Figura 1- Arquitetura da norma NBR ISO 12207 [MACHADO01].

    Da concepoat a

    descontinuidade

    Processo

    Processo Processo

    Atividade 1

    Tarefa

    ...

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    8/11

    8

    Ela tem por objetivo auxiliar os envolvidos na produo de software a definir seus papis,

    meio de processos bem definidos, e assim proporcionar s organizaes que a utilizam melhor entendimento das atividades a serem executadas nas operaes que envolvem, de algforma, o software.A arquitetura descrita na norma (Figura 1) [MACHADO01] utiliza uma terminologia bdefinida e composta de: processos, atividades e tarefas para aquisio, fornecimedesenvolvimento, operao, e manuteno do software.

    A norma estabelece uma arquitetura de alto nvel para o ciclo de vida do software que abradesde a concepo at a descontinuidade do mesmo. Essa arquitetura baseada em proceschave e no inter-relacionamento entre eles e segue dois princpios bsicos:

    - Modularidade: Os processos tm alta coeso e baixo acoplamento, ou seja, todas as pade um processo so fortemente relacionadas e o nmero de interfaces entre os processmantido ao mnimo.

    - Responsabilidade: Cada processo na norma de responsabilidade de uma Paenvolvida, que pode ser uma organizao ou parte dela. As partes envolvidas podemda mesma organizao ou de organizaes diferentes.

    Segundo Machado [MACHADO01], na norma ISO/IEC 12207, os processos que envolvemciclo de vida do software so agrupados em trs classes que representam sua natureza. Cprocesso definido em termos de suas prprias atividades, e cada atividade adicionalmdefinida em termos de suas tarefas (Figura 2).

    Figura 2- Processos de Ciclo de Vida do Software [ISO12207: 97].

    Processos fundamentais Processos de apoio

    Aquisio

    Fornecimento

    Desenvolvimento

    Documentao

    Gerncia de configurao

    Garantia da Qualidade

    Verificao

    Validao

    Reviso con unta

    Operao

    A d a p

    t a o

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    9/11

    9

    8.1 Processos Fundamentais

    Os processos fundamentais atendem ao incio, contratao entre o adquirente e o fornecedoexecuo do desenvolvimento, da operao ou manuteno de produtos de software duranciclo de vida do software [MACHADO01].

    Nas empresas de desenvolvimento o planejamento feito de modo precrio pela ausconstante de documentao entre o desenvolvedor e o adquirente. Existe resistncia em ambpartes interessadas em gerar documentao, pois normalmente acreditam estar perdendo temna especificao dos requisitos, no planejamento num todo do projeto. Muitos desenvolvedpartem direto para o desenvolvimento (Codificao) e depois so levados a um processocorreo e manuteno interminvel, provocando desgaste da relao comercial estabeleccom o no cumprimento de prazos de entrega e o custo do projeto que foi orado por uestimativa aleatria acumularo prejuzos intangveis.8.2 Processos de Apoio

    Os processos de apoio auxiliam e contribuem para o sucesso e a qualidade do projeto de softw

    Um processo de apoio empregado e executado quando necessrio para documentao, gerde configurao, garantia da qualidade, processo de verificao, processo de validao, revconjunta, auditoria e resoluo de problemas [MACHADO01].

    A documentao do software ser a ltima tarefa que o desenvolvedor ir se preocupar, setratado como se no tivesse que acontecer antes do desenvolvimento propriamente dito, a fimser possvel acompanhar se os requisitos do projeto foram atendidos ou se nem forespecificados no momento oportuno. Os processos de verificao e validao ocorrunilateralmente, ou seja, este requisito era bvio, nem precisava mencionar, e para atendenecessidades do adquirente, este processo ser repetido por inmeras vezes, alongand

    manuteno e atrasando o funcionamento e atendimento as necessidades do negcio.

    8.3 Processos Organizacionais

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    10/11

    10

    Os processos organizacionais so empregados por uma organizao para estabeleceimplementar uma estrutura constituda pelos processos de ciclo de vida e pelo pessoal envolno desenvolvimento do software. Eles so geralmente empregados fora do domnio de projetcontratos especficos; entretanto, os ensinamentos desses projetos e contratos contribuem pamelhoria da organizao, so eles: Processos de Gerncia, Infra-estrutura, MelhoriaTreinamento [MACHADO01].

    O processo de gerncia depende diretamente do porte da empresa. Em alguns casos existipessoa responsvel, em outros o prprio desenvolvedor assumir o papel, mas no a funoseja, aparecer como responsvel, mas devido carncia de tempo e de recursos humanos todo o trabalho e no praticar a gerncia do projeto.

    Para implementar os processos de infra-estrutura, melhoria e treinamento, fundamental a fide gerncia que exercer acompanhamento das necessidades do projeto e seus devidos ajuquanto a estrutura necessria para um desenvolvimento dentro dos requisitos do projeto,dinamismo necessrio para melhoria contnua do processo e os devidos treinamentos padequao das tecnologias especificadas nos requisitos.

    8.4 Processos de Adaptao

    O processo de adaptao define as atividades necessrias para adaptar a norma para sua aplicna organizao ou em projetos. A adaptao deve ser executada com base em alguns fatoresdiferenciam uma organizao ou projeto de outros, dentre os quais a estratgia de aquisimodelos de ciclo de vida de projeto, caractersticas de sistemas e software e cultorganizacional. A existncia desse processo permite que a norma seja adaptvel a qualqprojeto, organizao, modelo de ciclo de vida, cultura e tcnica de desenvolvime[MACHADO01].Atualmente j existe um movimento das empresas para adoo de normas e modelos maturidade do processo de desenvolvimento de software, buscando melhor produtividade e nfase em promover uma reengenharia nos processos de desenvolvimento de software, queento eram basicamente vindos da experincia dos desenvolvedores de cdigo e nogestores de projetos de grande expresso, e que assumem papel de alta relevncia nas empr

    para se obter vantagens competitivas num mercado que busca a informao certa no momcerto.

    9. CONCLUSO

    Todas as normas e modelos de qualidade para software tm por objetivo buscar organizamelhoria continua no processo de desenvolvimento de software. Com os processos desenvolvimento de software controlados, documentados e gerenciados o desenvolvedor poassumir projetos de alta complexidade, aliados a tcnica e criatividade, pois ter mais chancsucesso. Melhor capacitado e provedor de metodologias que levam ao desenvolvimentosoftware com qualidade, o desenvolvedor poder criar solues que atendam as necessidadesrequisitos da empresa, contribuindo para criao de vantagens competitivas, sustentando as bestratgicas das organizaes.

  • 8/8/2019 Importncia da ISO 12207 (Marcelo Nogueira)

    11/11

    11

    10. REFERENCIAS BIBLIOGRFICAS

    [FIORINI98] FIORINI, SOELI T., et al. Engenharia de Software com CMM , Rio de Janeiro, Ed.Brasport, 1998.[IEEE90] IEEE STD. 610 12-1990, IEEE Standard Glossary of Software EngineeringTerminology , IEEE, Piscataway, NJ, 1997.[ISO12207: 97] NBR ISO/IEC 12207:1997,Tecnologia de Informao Processos de Ciclo deVida de Software , Rio de Janeiro, ABNT Associao Brasileira de Normas Tcnicas.[LEE02] LEE, RICHARD C. e TEPFENHART, WILLIAM M.,UML e C++ - Guia dedesenvolvimento orientado a objeto , So Paulo, Ed. Makron Books, 2002.[MACHADO01] MACHADO, CRISTINA NGELA FILIPAK in WEBER, KIVAL CHAVet al.Qualidade e Produtividade em Software , So Paulo, Ed. Makron Books, 2001.

    [MAFFEO92] MAFFEO, BRUNO, Engenharia de Software e Especificao de Sistemas , Rio deJaneiro, Ed. Campus, 1992.[MARTIN91] MARTIN, JAMES ,Engenharia da Informao , Rio de Janeiro, Ed. Campus, 1991.[MCT02] MINISTRIO DA CINCIA E TECNOLOGIA, Secretaria de Poltica de InformQualidade e Produtividade no Setor de Software Brasileiro , Braslia, N.4, 2002.[PDUA03] FILHO, WILSON DE PDUA PAULA, Engenharia de Software , Rio de Janeiro,Ed. LTC, 2003.[PAULK95] PAULK, M.C. et al.The Capatibility Maturity Model Guidelines for improvingthe software process , Addison Wesley, SEI series, 1995.[PRESSMAN95] PRESSMAN, ROGER S., Engenharia de Software , So Paulo, Ed. MakronBooks, 1995.[PRESSMAN02] PRESSMAN, ROGER S., Engenharia de Software , Rio de Janeiro, Ed.McGraw-Hill, 2002.[REZENDE99] REZENDE, DENIS ALCIDES, Engenharia de Software e Sistemas de

    Informaes , Rio de Janeiro, Ed. Brasport, 1999.[SEI] SEI,Software Engineering Institute , Carnegie Melon University, http://www.sei.cmu.edu. [SOMMERVILLE03] SOMMERVILLE, IAN, Engenharia de Software , So Paulo, Ed. PearsonEducation, 2003.[SPINOLA98] SPINOLA, MAURO DE MESQUITA, Diretrizes para o desenvolvimento desoftware de sistemas embutidos , Tese de Doutorado, USP - So Paulo, 1998.