Sie sind auf Seite 1von 5

Resumo aula 1 ENGENHARIA DE SOFTWARE.

. Engenharia de software uma rea do conhecimento da computao voltada para a especificao, desenvolvimento e manuteno de sistemas de software aplicando tecnologias e prticas de gerncia de projetos e outras disciplinas, objetivando organizao, produtividade e qualidade. Atualmente, essas tecnologias e prticas englobam linguagens de programao, banco de dados, ferramentas, plataformas, bibliotecas, padres, processos e a questo da Qualidade de Software. Os fundamentos cientficos para a engenharia de software 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. Alm disso, a engenharia de software deve oferecer mecanismos para se planejar e gerenciar o processo de desenvolvimento de um sistema de informao Sistema computacional, pois ambos se confundem! Friedrich Ludwig Bauer (Regensburg, 10 de Junho de 1924) um cientista da computao alemo e professor emrito na Universidade Munique de Tecnologia.

Friedrich foi o autor da primeira definio de Engenharia de software, em 1969, na Conferncia NATO Science Committee, que definindo como "o estabelecimento e uso de slidos princpios de engenharia para obter software economicamente confivel e que trabalhe de forma eficiente em mquinas reais".! DEFINIO "Engenharia de Software a criao e a utilizao de slidos princpios de engenharia a fim de obter software de maneira econmica, que seja confivel e que trabalhe eficientemente em mquinas reais". O prprio significado de engenharia j traz os conceitos de criao, construo, anlise, desenvolvimento e manuteno.

A Engenharia de Software se concentra nos aspectos prticos da produo de um sistema de software, enquanto a cincia da computao estuda os fundamentos tericos dos aspectos computacionais. FINALIDADE O termo foi criado na dcada de 1960 e utilizado oficialmente em 1968 na NATO Conference on Software Engineering (Conferncia sobre Engenharia de Software da OTAN). Sua criao surgiu numa tentativa de contornar a crise do software e dar um tratamento de engenharia (mais sistemtico 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, funes, mdulos, objetos ou agentes e interconectados entre si, compondo a arquitetura do software, que devero ser executados em sistemas computacionais. FUNDAMENTOS. Os fundamentos cientficos 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. Alm 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 Fbrica de Software. ENGENHARIA DE SISTEMAS A Engenharia de Sistemas uma rea mais ampla por tratar de todos os aspectos de sistemas baseados em computadores, incluindo hardware e engenharia de processos alm do software Engenharias da Sistemas um campo interdisciplinar da engenharia que foca no desenvolvimento e organizao de sistemas artificiais complexos. A engenharia de sistemas integra outros grupos de disciplinas. Segundo o SWEBOK (Corpo de Conhecimento da Engenharia de Software), verso 2004, as reas de conhecimento da Engenharia de Software so: Swebok = Software Engineering Body of Knowledge.

REAS DE CONHECIMENTO DA ES Requisitos (Requirements) de Software Projeto (Design) de Software Construo (Construction) de Software Teste (Testing) de Software Manuteno (Maintenance) de software Gerncia de Configurao de Software Gerncia de Engenharia de Software Processos de Engenharia de Software Ferramentas e Mtodos de Engenharia de Software Qualidade (Quality) de Software PROCESSOS DE ENGENHARIA DE SOFTWARE Definio: Um processo de Engenharia de Software formado por um conjunto de passos, de processo parcialmente ordenados, relacionados com artefatos, pessoas, recursos, estruturas organizacionais e restries, tendo como objetivo produzir e manter os produtos de software finais requeridos.

Processos: Os processos so divididos em atividades ou tarefas. Uma atividade um passo de processo que produz mudanas de estado visveis externamente no produto de software. Atividades incorporam e implementam procedimentos, regras e polticas, e tm como objetivo gerar ou modificar um dado conjunto de artefatos. Artefato: Um artefato um produto criado ou modificado durante um processo. Tal produto resultado de uma atividade e pode ser utilizado posteriormente como matria prima para a mesma ou para outra atividade a fim de gerar novos produtos.

Atividade: Uma atividade aloca recursos (por exemplo, computadores, impressoras e material de expediente), escalonada, monitorada e atribuda a desenvolvedores (agentes), que podem utilizar ferramentas para execut-la. Toda atividade possui uma descrio, a qual pode especificar os artefatos necessrios, as relaes de dependncia com outras atividades, as datas de incio e fim planejadas, os recursos a serem alocados e os agentes responsveis pela mesma. Agente: O agente pode ser uma pessoa ou uma ferramenta automatizada (quando a atividade automtica) e relaciona-se com as atividades de um processo. Os agentes podem estar organizados em cargos, aos quais podem ser definidas diferentes responsabilidades. Processo: A realizao do processo afetada pelas restries, que podem atingir atividades, agentes, recursos, artefatos, papis e seus relacionamentos. Uma restrio uma condio definida que um passo de processo deve satisfazer antes ou depois de ser executado. Processos de Engenharia de Software Outra definio. Processo de software, ou processo de engenharia de software, uma seqncia coerente de prticas que objetiva o desenvolvimento ou evoluo de sistemas de software. Estas prticas englobam as atividades de especificao, projeto, implementao, testes e caracterizam-se pela interao de ferramentas, pessoas e mtodos. Modelos de Processos Um modelo de processo de desenvolvimento de software, ou simplesmente modelo de processo, pode ser visto como uma representao, ou abstrao dos objetos e atividades envolvidas no processo de software. Alm disso, oferece uma forma mais abrangente e fcil de representar o gerenciamento de processo de software e conseqentemente o progresso do projeto. Exemplos de alguns modelos de processo de software; Modelos ciclo de vida Sequencial ou Cascata (do ingls waterfall) - com fases distintas de especificao, projeto e desenvolvimento. Desenvolvimento iterativo e incremental - desenvolvimento iniciado com um subconjunto simples de Requisitos de Software e interativamente alcana evolues subseqentes das verses at o sistema todo estar implementado.

Evolucional ou Prototipao - especificao, projeto e desenvolvimento de prottipos. Quarta gerao V-Model - Parecido com o modelo cascata, mas com uma organizao melhor, que permite que se compare com outros modelos mais modernos. Espiral - evoluo atravs de vrios ciclos completos de especificao, projeto e desenvolvimento. Componentizado - reuso atravs de montagem de componentes j existentes. Formal - implementao a partir de modelo matemtico formal. gil RAD Quarta gerao Engenharia de Software Pressman Roger Introduo Engenharia de software Ariadne M. B. R. Carvalho Thelma C. dos Santos Chiossi Sommerville, Ian. Engenharia de Software. 8a edio. Pearson Education, 2007.

Das könnte Ihnen auch gefallen