Você está na página 1de 29

Projeto e Desenvolvimento de Sistemas de Informao (Software)

P R O F. PAT R I C K L E A N D R O S O U Z A { PAT R I C K S O U Z A . P R O F @ G M A I L . C O M }

Quem sou Eu ?
Graduado em Cincia da computao pela universidade FUMEC, especialista em Gesto de Tecnologia da informao e Gerenciamento Estratgico de Projetos. Profissional com 12 anos de experincia nas reas de TI e Telecom tendo atuado nas reas de suporte, administrao e implantao de sistemas de misso critica, coordenao de equipe e gerenciamento de projetos. Atualmente atuo como gerente de projetos na Telefonica|Vivo e professor universitrio de disciplinas de TI e gesto de TI Contatos : email : patricksouza.prof@gmail.com Linked-in: Patrick L. Souza Facebook: Patrick Leandro Twitter: @patrick_pls

Quem so vocs ?
Nome

Expectativa com a disciplina


Objetivos de carreira na rea de gesto

As Regras do Jogo
Uso de celular Chamada e controle de freqncias: Critrios de avaliao Inicio e trmino das aulas

Objetivos Gerais da Disciplina


Proporcionar ao aluno conhecimento de todas as etapas de um projeto de construo de um sitemas de informao, com suas caracteristicas e especificidades. Entender conceitos de engenharia de requisitos, design e implementao de softwares.

Roteiro
1. Teoria de engenharia de software

Conceito de Software Evoluo dos Softwares O que Engenharia de Software Conceitos da Eng. Software Artefatos x Atividades Desenvolvidas

2. Ciclo de vida do Software


Analise Desenvolvimento Implantao Fim de vida til

Roteiro
3. Processo de Desenv. de Software

Conceitos Modelo Clssico (Linear) Modelo de Prottipos Modelo Espiral Modelo Incremental RUP (Rational Unified Process)

4. Engenharia de Requisitos

O que so Requisitos de Sistema Mapeamento de Requisitos Analise de Requisitos Modelagem Requisitos Funcionais e No Funcionais Documento de Requisitos Gerencia de Requisitos (Mudanas)

Roteiro
5. Design de Software (Desenho)
Conceitos de Design de Software Elementos do Processo de Design de Software Design de Arquitetura Restrio de Design Representaes do Design de Software (Modelos)

6. Implementao (Desenvolvimento)
Linguagem de Programao e Eng. De Software Classes de Linguagens Escolha da linguagem de programao Documentao de Cdigo

Roteiro
7. Testes de Softwares
Fundamentos / Objetivos de Testes de Softwares Teste Unitrio Teste de Integrao Teste de Validao Teste de Sistemas

8. Projeto de Implantao

Planejamento de Implantao de Sistemas Gesto da Implantao Execuo da Implantao de Sistema

Roteiro
9. Manuteno de Software

Custo de manuteno de Software Manuteno Corretiva Manuteno

10.Documentao de Software
Documentao de Requisitos Documentao de Modelos e Arquitetura Documentao de cdigo

Bibliografia
PAULA FILHO, Wilson de P., ENGENHARIA DE SOFTWARE,

fundamentos, mtodos e padres 2. Ed. So Paulo: LTC, 2003. PRESSMAN, Roger S., ENGENHARIA DE SOFTWARE, uma abordagem prtica 5. Ed. So Paulo: Pearson, 2004. SOMMERVILLE, Ian. ENGENHARIA DE SOFTWARE. 6. Ed. So Paulo: Prentice-Hall, 2003.

Projeto e Desenvolvimento de Sistemas


AULA 1 INTRODUO ENGENHARIA DE SOFTWARE

O que software?
Software = Sistema de Computador

Programas de computador e documentao associada


Produtos de software podem ser desenvolvidos para

um cliente particular ou podem ser desenvolvidos para um mercado geral

Por que desenvolver Software


Automatizar um determinado processo/Atividade Melhorar a qualidade e confiabilidade das informaes Apoiar decises estratgicas Ser um instrumento de melhoria da qualidade de vida Dar mais credibilidade as informaes

Tipos de Softwares
Software Bsico: Coleo de programas escritos para apoiar outros programas. ex.: compiladores, gerenciadores de arquivos, Sistema Operacional, drivers, etc.

Software real time: Software que monitora, analisa e controla eventos crticos. So sistemas aonde um resultado atrasado no tem valor. ex.: monitorao de frequncia cardacas, sistema de controle de trfego areo entre outros.

Tipos de Softwares
Software Comercial:
Sistemas de operaes comerciais e tomadas de decises administrativas. ex.: folha de pagamentos, contas a pagar e a receber, controle de estoques etc.

Software Cientfico:
Caracterizado por algoritmos de processamento numrico. ex.: astronomia, anlise de fadiga da mecnica de automveis, manufatura automatizada etc.

Tipos de Softwares
Software Embutido:
Usado para controlar produtos e sistemas para os mercados industriais e de consumo. reside em memria s de leitura. ex.: controle do teclado de um micro ondas, controle de combustvel, funes digitais de automveis, Smart Phones, Tablets etc.

A Evoluo dos Softwares


--------------------------------------------------------------------------------------------------

Primeiros Anos
A 2a. Era 3a. Gerao
Orientao Batch Nenhuma Documentao
Multi-usurio Tempo Real 1. DB Sistemas Distribudos HW de Baixo Custo Uso de PC

4a. Gerao
Redes de alta vel. Clientes / Servidores Sw. Internet

O Cu o Limite
Computao Mvel
Redes Ultra rpidas

1950-1960

1970

1980

1990

2000

A Evoluo dos Softwares


--------------------------------------------------------------------------------------------------

E as Consequncias... Empregos !
Demanda de profissionais Qualificados

Ofertas de emprego (Analista de sistemas, DBA,


desenvolvedores etc. )

Aquecimento da economia no setor P&D de tecnologia

E as Consequncias... Maior Complexidade


30% dos grandes projetos de TI so cancelados antes de concluir 50% dos projetos de TI tm o oramento excedido Tempo de desenvolvimento bem maior do que o estimado A manuteno dos softwares e reutilizao so difceis e caras

E as Consequncias... Maior Complexidade

Muitos sistemas de informao no so usados porque no atendem s necessidades dos usurios. Sistemas legados so um srio e crescente problema para a evoluo organizacional etc.

A maioria dos projetos concludos possuem 60% ou menos da funcionalidade requerida

Problemas da Evoluo dos Softwares


Associada ao desenvolvimento do software devido a um conjunto de problemas que tornam esta atividade em uma atividade rdua e subjetiva. As estimativas de custo e prazo frequentemente so imprecisas; A produtividade das pessoas da rea de software no tem acompanhado a demanda por seus servios; A qualidade do software s vezes menos adequada; Falta tcnicas e metodologias de teste; A tarefa de manuteno consome a maioria dos recursos destinados ao software.

Qual a soluo para isso ?


Ter mtodos consistentes para todas fases do desenvolvimento; (O que fazer ? ) Ferramentas para automatizar os mtodos;

Implementao mais consistente e robusta;


Tcnicas para garantia da qualidade; Ter gesto e controle

Engenharia de Software
Engenharia: a atividade onde os conhecimentos cientficos, mtodos, tcnicas e a experincia prtica so usados para explorar os recursos naturais, para o projeto, construo e operao de objetos teis

Engenharia de Software
Engenharia de software: uma rea do conhecimento da cincia da computao voltada para a especificao, design, desenvolvimento e manuteno de softwares. Usando para isso tecnologias, processos, metodolodias, ferramentas e prticas de sistemas de informao, gerncia de projetos e outras reas. visando busca da organizao, produtividade e qualidade no produto final

Entendendo Melhor ...


Qual a diferena entre o desenvolvimento de um produto artesanal e o desenvolvimento seguindo os princpios de engenharia?

Em outras palavras, qual a diferena entre o trabalho de um arteso e o de um engenheiro?

Entendendo Melhor ...


Artesanato

Engenharia

Introduo Eng. de Software

Obrigado !!!
Prof. Patrick L. Souza {patricksouza.prof@gmail.com}

Você também pode gostar