You are on page 1of 18

Parte 1

O que um Projeto de
Software?
Prof. David Zanetti
Material baseado em diversas referncias, em destaque material de
Eduardo Bezerra
Um modelo uma simplificao da realidade
que nos ajuda a entender um problema
grande e complexo que no pode ser
compreendido como um todo.
Phillipe Krutchen, 2000
O que Projeto de Software?
2
A necessidade a me das invenes
Crescimento da importncia da informao
Necessidade de gerenciar informaes de uma
forma adequada e eficiente
Sistemas de informaes.
Sistemas de Informao
SI = combinao de pessoas, dados, processos,
interfaces, redes de comunicao e tecnologia que
interagem com o objetivo de dar suporte e
melhorar o processo de negcio de uma
organizao com relao s informaes.
Objetivo: adio de valor ao negcio!
Sistemas de Informao
4
Um dos componentes de um SI denominado
sistema de software.
Compreende os mdulos funcionais
computadorizados que interagem entre si para
proporcionar a automatizao de diversas tarefas.
Caracterstica intrnseca do desenvolvimento de
sistemas de software: complexidade.
Sistemas de Software
5
Na construo de sistemas de software, assim
como na construo de sistemas habitacionais,
tambm h uma gradao de complexidade.
A construo desses sistemas
necessita de um planejamento
inicial.
Complexidade do Software
7
Modelo = representao idealizada de um sistema
a ser construdo.
Maquetes de edifcios e de avies e plantas de
circuitos eletrnicos so apenas alguns exemplos
de modelos.
Modelos
8
Razes para construo de modelos
Gerenciamento da complexidade inerente ao
desenvolvimento de software.
Comunicao entre as pessoas envolvidas.
Reduo dos custos no desenvolvimento.
Predio do comportamento futuro do sistema.
Modelos
9
Diagramas:
Desenhos grficos que seguem algum padro
lgico.
Apresentao de uma coleo de elementos
grficos que possuem um significado predefinido.
Modelos
10
Diagramas fornecem uma representao concisa do sistema. uma figura
vale por mil palavras.
No entanto, modelos tambm so compostos de informaes textuais.
Dado um modelo de uma das perspectivas de um sistema, diz-se que o
seu diagrama, juntamente com a informao textual associada, formam a
documentao deste modelo.
Modelos
11
A modelagem de sistemas de software consiste na
utilizao de notaes grficas e textuais com o
objetivo de construir modelos que representam as
partes essenciais de um sistema, considerando-se
diversas perspectivas diferentes e complementares.
Modelagem de Software
12
Foco do curso
Processo de desenvolvimento
Levantamento de requisitos
Anlise
Projeto
Implementao
Testes
Implantao
Modelos (e o problema) so particionados, de maneira que
revele os detalhes em forma de camadas (ou
hierarquicamente) (para reduzir a complexidade)
Processo de anlise consistem em mover-se da
informao essencial para os detalhes de implementao
Princpios da Anlise e Projeto
13
Anlise X Projeto de Sistemas
As atividades de anlise concentram-se na identificao,
especificao e descrio dos requisitos do sistema de software
nfase no problema a ser solucionado
As atividades de Projeto concentram-se na identificao de uma
soluo para o problema apresentado.
nfase na definio dos objetos e como esses objetos colaboram
para satisfazer os requisitos.
Princpios da Anlise e Projeto
15
Divididos em 2 classes:
Modelo de Anlise
Modelo de Projeto
Modelos em Engenharia de Software
16
I. O domnio da informao de um problema precisa ser representado e entendido
II. As funes a serem desenvolvidas pelo software devem ser definidas
III. O comportamento do software precisa ser representado
IV. Os modelos que mostram informao, funo e comportamento devem ser
particionados de um modo que revele detalhes em forma de camadas (ou
hierarquia)
V. A tarefa de anlise deve ir da informao essencial at os detalhes de
implementao
Modelagem de Anlise: princpios
17
I. O projeto deve estar relacionado ao modelo de anlise
II. Sempre considere a arquitetura do sistema a ser construdo
III. O projeto dos dados to importante quanto o projeto de funes
IV. As interfaces internas e externas precisam ser projetadas com
cuidado.
V. O projeto de interface do usurio deve estar sintonizado com as
necessidades do usurio, sempre enfatizando a facilidade de uso.
Modelagem de Projeto: princpios
18
VI. O projeto em nvel de componente deve ser funcionalmente
independente
VII. Os componentes devem ser fracamente acoplados uns aos outros e ao
ambiente externo
VIII. Representaes de projeto devem ser facilmente compreensveis
IX. O projeto deve ser desenvolvido iterativamente. A cada iterao o
projetista deve lutar por maior simplicidade.
Modelagem de Projeto: princpios