UNIVERSIDADE DO ESTADO DO RIO GRANDE DO NORTE
DEPARTAMENTO TECNOLÓGICO DE NOVA CRUZ
DISCIPLINA INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO
PROFESSORA LYRENE
ENGENHARIA DE SOFTWARE
ALESSANDRA FERNANDA
ANNY CAROLINE FREIRE
KATYANE BRAZ
O que é um Software
Programa de computador + documentação
associada
 Software podem ser desenvolvidos para
clientes particulares ou mercado geral
 Eles podem ser:
- Genéricos
- Personalizados ou Específicos

O QUE É ENGENHARIA DE
SOFTWARE??
É uma disciplina de
engenharia que está
preocupada com todos os
aspectos da produção de
software.
CICLO DE VIDA DO SOFTWARE
Fases:
 Análise
 Projeto
 Implementação
 Teste
BASES DAS TENDÊNCIAS MODERNAS
DO SOFTWARE
Modelo Cachoeira
 Modelo Incremental
- Prototipação
- Evolucionária
- Descartável
- Modelo Espiral
- Planejamento
- Análise dos riscos
- Engenharia
- Avaliação do Cliente

Modelo Incremental
DESENVOLVIMENTO OU
FERRAMENTA “CASE”

O que é um ‘CASE’? Software que procura
fornecer suporte automatizado para atividades de
processo de software.
DESENVOLVIMENTO CASE
 Planejamento
de Projeto
 Ferramentas de Gerencia de Projeto
 Ferramentas de Documentação
 Ferramentas de Prototipação e Simulação
 Ferramentas de Projeto de Interfaces
 Ferramentas de Programação
MODULARIDADE
O
que é?
 Para
quê serve?
Diagramação
 De
classes
 Estrutural
Aclopamento
 Aclopamento
de Dados
 Aclopamento
de Controle
Coesão
 Designar
o grau de relacionamento entre
as partes internas de um módulo.
 Divididas em:
- COESÃO DE LÓGICA
- COESÃO FUNCIONAL
Metodologias de Projeto


O desenvolvimento de metodologias para
projetar sistemas de software é uma
investigação fundamental na engenharia do
software.
CIMA-BAIXO versus BAIXO-CIMA
– PADRÕES DE PROJETO
– DESENVOLVIMENTO CÓDIGO
ABERTO
PADRÃO EDITOR - ASSINANTE
FERRAMENTAS DE OFÍCIO

Sistema notacional para auxiliar na análise e
projetos de sistemas.
- DIAGRAMA DE FLUXO DE DADOS
- DICIONÁRIO DE DADOS
- DIAGRAMA DE ENTIDADE E
RELACIONAMENTOS
DIAGRAMA DE FLUXO DE DADOS
DIAGRAMA DE ENTIDADE E
RELACIONAMENTO
TESTE DE SOFTWARE
É
uma das fases do processo da
engenharia de software que visa atingir
um nível de qualidade de produto
superior. O objetivo, por paradoxal que
seja, é o mesmo de encontrar defeitos no
produto, para que estes possam ser
corrigidos pela equipe de programadores,
antes da entrega final.
TÉCNICAS DE TESTES

Tem por objetivo principal encontrar falhas no
software. Possui três técnicas mais conhecidas:
a. CAIXA BRANCA
b. CAIXA PRETA
c. CAIXA CINZA
TESTES

ALPHA

BETA

GAMA
DOCUMENTAÇÃO
 Mostra
uma parte importante do
software. Um sistema de software tem
pouca utilidade,a menos que as pessoas
possam entendê-lo e mantê-lo. Dividida
em:
- DOCUMENTAÇÃO DE USUÁRIO
- DOCUMENTAÇÃO DE SISTEMA
ITENS DA RESPONSABILIDADE
PROFISSIONAL
 CONFIABILIDADE
 COMPETÊNCIA
 DIREITOS
DE PROPRIEDADE
INTELECTUAL
 “ABUSO”
DO COMPUTADOR
ACM/IEEE CÓDIGO DE ÉTICA

O maior competidor da ACM é o IEEE É
difícil generalizar corretamente sobre a
diferença entre ambas, mas ACM foca-se em
teoria da ciência da computação e em
aplicações para usuários finais enquanto o
IEEE foca-se mais em hardware e questões de
padronização.
CONSIDERAÇÕES FINAIS

A Engenharia de Software (ES) surgiu em meados dos
anos 1970 numa tentativa de contornar a crise do
software e dar um tratamento de engenharia (mais
sistemático e controlado) ao desenvolvimento de
sistemas de software complexos. Um sistema de
software complexo se caracteriza por um conjunto de
componentes abstratos de software (estruturas de
dados e algoritmos) encapsulados na forma de
procedimentos, funções, módulos, objetos ou agentes
interconectados entre si, compondo a arquitetura do
software, que deverão ser executados em sistemas
computacionais.
BIBLIOGRAFIA
–
–
–
–
–
–
–
–
–
–
–
–
–
http://pt.wikipedia.org/wiki/Association_for_Computing_Machinery
http://pt.wikipedia.org/wiki/Teste_de_software
http://www.novateceditora.com.br/livros/uml/
http://pt.wikipedia.org/wiki/Engenharia_de_software
http://www-di.inf.puc-rio.br/~julio//engsof.htm
http://www.sbc.org.br/
http://www.dimap.ufrn.br/~jair/ES/index.html
http://www.siemens.com.br/templates/coluna1.aspx?channel=3511
http://www.wppf.uaivip.com.br/praxis/conteudo.htm
http://www.mundooo.com.br/php/modules.php?name=MOOArtigos&pa
=showpage&pid=20
http://www.lia.ufc.br/~windson/engsoft.html
FEDELI, Ricardo Daniel. PERES, Fernando Eduardo. POLLONI, Eurico
Giulio. Introdução à Ciência da Computação. – São Paulo : Pioneira
Thomson Learning, 2003.
BROOKSHEAR, J. Glenn. Ciência da Computação: uma visão
abrangente. – Porto Alegre : Bookman, 2005.
Download

ENGENHARIA DE SOFTWARE