Protocolos Básicos Troca de Chaves Autenticação Autenticação e Troca de Chaves.
Análise e Concepção de - Autenticação · para além da sequência de etapas e procedimentos...
-
Upload
vuonghuong -
Category
Documents
-
view
216 -
download
0
Transcript of Análise e Concepção de - Autenticação · para além da sequência de etapas e procedimentos...
1
Carla FerreiraCarla [email protected]
,QWURGXomR,QWURGXomR
Anál ise e Conc epç ão de Anál ise e Conc epç ão de Sist em as de Inform aç ãoSist em as de Inform aç ão
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
� Sistemas de Informação� Arquitectura de Sistemas de Informação� Planeamento Estratégico de Sistemas de
Informação� Engenharia de Software
2
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
é um conjunto integrado de recursos (humanos e tecnológicos) cujo objectivo é o de satisfazer adequadamente as necessidades de informação de uma organização e dos respectivos processos de negócio.
1RWH�VH��DOJXQV�DXWRUHV�QmR�FRQVLGHUDP�D�SDUWH�GH�SURFHVVRV�PDQXDLV�FRPR�ID]HQGR�SDUWH�GR�VLVWHPD�GH�LQIRUPDomR
Sistemas de Informação
VLVWHPD�GH�LQIRUPDomR ...
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
pretende representar uma sequência de actividades, que processam vários LQSXWV e produzem vários RXWSXWV e que possuem objectivos.
– pode ser realizado por pessoas e/ou de forma automática.
– Exemplos de processos de negócio incluem • as compras de matérias-primas, • a contratação de um empregado ou • a distribuição de produtos acabados.
Sistemas de Informação
SURFHVVR�GH�QHJyFLR...
3
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisSistemas de Informação
Tipos de Sistemas segundo Kotonya e Sommerville (in 5HTXLUHPHQWV�(QJLQHHULQJ)� Sistemas de informação
– Principalmente associados a processamento de informação mantido em alguma(s) base(s) de dados.
– E.g., sistema de facturação, gestão de clientes, ... � Sistemas embebidos (HPEHGGHG V\VWHPV)
– Sistemas onde o software é usado como controlador de algum tipo de hardware geral
– E.g., s.o. para telemóvel� Sistemas de comando e controlo
– Essencialmente uma combinação de sistemas de informação e sistemas embebidos, onde computadores especializados providenciam informação, a qual é recolhida e armazenada para tomada de decisões
– E.g., controlo de tráfego aéreo
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
7LSR�GH�6LVWHPDV ([HPSORV
Operacionais Facturação, Controle de encomendas, Contabilidade geral, Controle de Stocks, Salários
Tácticos Análise de vendas, Controle orçamental, Contabilidade analitica, Gestão do inventário, Análise da qualidade
Estratégicos Previsão de vendas, Planeamento da alocação da produção, Planeamento recursos humanos, Previsão de receitas e custos, Modelização financeira
Sistemas de InformaçãoSI segundo a classificação de R. Anthony…
4
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
³FRQMXQWR�GH�UHSUHVHQWDo}HV�GHVFULWLYDV��PRGHORV��UHOHYDQWHV�SDUD�D�GHVFULomR�GH�XP�REMHFWR�GH�IRUPD�D�TXH�HVWH�SRVVD�VHU�HODERUDGR�GH�DFRUGR�FRP�RV�UHTXLVLWRV��GH�TXDOLGDGH��H�PDQWLGR�DR�ORQJR�GD�VXD�YLGD�~WLO´
Zachman, 87.Definição genérica... Mas, refere-se quer aos sistemas de informação quer à empresa, uma vez que o mesmo modelo apresenta relativamente a cada conceito a perspectiva do negócio e dos sistemas de informação.
Arquitectura de Sistemas de Informação
O )UDPHZRUN�GH�=DFKPDQ é uma estrutura lógica de classificação e apresentação dos modelos
–de uma organização relevantes para a respectiva gestão
–desenvolvimento dos seus sistemas
Arquitectura de SI (ASI) ...
08:17
�ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisArquitectura de Sistemas de Informação
5
08:17
ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisObjectivos do Desenvolvimento de Sistemas de Informação
� Reduzir custos operacionais, através da automatização e reformulação dos processos de negócio.
� Satisfazer requisitos de informação dos utilizadores.� Contribuir para a criação de novos produtos e
serviços.� Melhorar o nível de serviço prestado aos clientes
actuais e facilitar a aquisição de novos clientes.� Melhorar e automatizar a relação com os parceiros
de negócio.� Melhorar o desempenho de pessoas e máquinas
08:17
��ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisProblemas do Desenvolvimento de Sistemas de Informação
� Falta de qualidade, traduzida na satisfação incompleta dos requisitos, nos problemas que se verificam após a instalação do produto.
� Desvios dos prazos previamente estabelecidos para o desenvolvimento de software.
� Custos previamente definidos para o desenvolvimento de software largamente ultrapassados.
6
08:17
� ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisProblemas do Desenvolvimento de Sistemas de Informação
Casos Clássicos...
� Durante a guerra do Golfo, uma falha no software dos mísseis Patriot que os Estados Unidos enviaram para a zona da guerra não foi atempadamente detectada, e a correcção só chegou um dia após um ataque iraquiano com mísseis ter causado a morte a cerca de trinta soldados americanos[Mellor94].
� Devido a um erro no software de controle de um equipamento médico, pelo menos dois doentes morreram entre 1985 e 1987 em consequência de terem recebido doses exageradas de radiação [Leveson93].
� Problemas diversos no software de controle da distribuição e encaminhamento de bagagem do aeroporto de Denver, nos Estados Unidos, provocaram custos de 1 milhão USD por dia [Gibbs94].
� Estimativas não oficiais apontam para custos de cerca de 400 milhões de libras quando a bolsa de Londres decidiu abandonar o desenvolvimento dosistema de informação Tacurus, devido a vários problemas [Drummond96].
08:17
��ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
Problemas do Desenvolvimento de Sistemas de Informação
Causas para tais falhanços ...
� Falta de empenhamento dos órgãos de topo das organizações.� Falta de comprometimento e empenhamento dos utilizadores.� Incompreensão do valor dos sistemas de informação.� Falta de entendimento e de sintonia entre informáticos e clientes utilizadores
do sistema, no âmbito e requisitos do mesmo.� Deficiências várias no processo de desenvolvimento.� Falhas na coordenação do projecto, nomeadamente ao nível dos objectivos,
prioridades, estimativas.� Falta de qualidade e inadequação dos recursos envolvidos.� Mudanças frequentes dos requisitos do negócio e incapacidade de lidar com
esta situação.� Dificuldades na integração de componentes.� Qualidade e desempenho do software deficiente, muito relacionados com
problemas ao nível do controle de qualidade.� Incapacidade de identificar e controlar os riscos do projecto.
7
08:17
��ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisPlaneamento Estratégico de Sistemas de Informação
3ODQHDPHQWR�(VWUDWpJLFR�GH�6LVWHPDV�GH�,QIRUPDomR(PESI)...
processo cuja finalidade é garantir o alinhamento dos sistemas de informação com os objectivos do negócio
ou "o processo de decidir os objectivos para a organização informática e identificar as aplicações informáticas potenciais que a organização deve implementar“ [Lederer88 ]
08:17
��ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisPlaneamento Estratégico de Sistemas de Informação
0HWRGRORJLD�GR�3ODQHDPHQWR�(VWUDWpJLFR�GH�6LVWHPDV�GH�,QIRUPDomR
8
08:17
��ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos GeraisEngenharia de Software
� As actividades associadas à Engenharia de Software podem ser agrupadas em três grandes fases: concepção, implementação e manutenção (cada uma destas fases pode ainda ser dividida em outras mais elementares)
� Ao longo de cada fase existem tarefas, subprodutos a desenvolver, pontos de verificação e intervenientes.
� Existe também um conjunto de actividades de suporte contínuas: gestão de projecto, controle de qualidade, gestão da configuração, elaboração de documentação, elaboração de estimativas, gestão do risco, ...
Engenharia de Software é a aplicação de um processo sistemático, disciplinado, e quantificado ao desenvolvimento, operação e manutenção de software; ou seja, a aplicação de técnicas de engenharia ao software (IEEE, 93)
08:17
��ACSI/Introdução© Alberto Silva
Enquadramento e Conceitos GeraisEnquadramento e Conceitos Gerais
Questões para discussão...
� O que é um sistema de informação?
� Qual a importância do planeamento estratégico de SI?
9
08:17
��ACSI/Introdução© Alberto Silva
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
� Conceitos Introdutórios� Processos e Metodologias� Modelos e Modelização� Boas Práticas no Desenvolvimento de Sistemas� Fases do Processo de Desenvolvimento de Sistemas� Modelos do Processo de Desenvolvimento de Sistemas
08:17
��ACSI/Introdução© Alberto Silva
Universo do Discurso(Também designado por “6LVWHPD´��
• É o fragmento do mundo real sobre o qual a tarefa de modelização e construção do sistema de informação é focada.
• A identificação do UoD pressupõe a identificação da fronteira do sistema e das entidades do mundo real (EMR).
� Exemplos de UoD: – sistema de crédito bancário do Banco de Portugal– sistema das bibliotecas nacionais de publicações técnico-científicas
Conceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
10
08:17
���ACSI/Introdução© Alberto Silva
Estrutura de Conceitos
– É o conjunto de abstracções básicas que permitem identificar e caracterizar as EMR
– Exemplos de conceitos: � “entidade”, � “classe”, � “agregação”, � “evento”, � “relação”.
Conceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
���ACSI/Introdução© Alberto Silva
Linguagem de Modelação
• É a estruturação e especificação da estrutura de conceitos segundo uma ou mais linguagens.
• Estas podem ser formais ou informais, textuais ou gráficas. • Existe uma associação unívoca entre a estrutura de conceitos e a
linguagem de modelação respectiva. (e.g., linguagem (gráfica) domodelo de objectos do OMT).
• No caso de linguagens de modelação gráficas importa referir a QRWDomR, que consiste na apresentação visual dos diferentes elementos da estrutura de conceitos subjacente.
Conceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
11
08:17
� �ACSI/Introdução© Alberto Silva
Modelo
� É uma interpretação de um sistema segundo um determinado ponto de vista, e envolve a sua especificação a um certo nível de abstracção e de detalhe.
� Exemplos de modelos : – o modelo de objectos da linguagem UML especificado em UML – o modelo de classes, ao nível da análise– o modelo de classes, ao nível do desenho/implementação
Conceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
���ACSI/Introdução© Alberto Silva
Esquema
É a especificação de um modelo usando uma determinada linguagem, a qual pode ser formal, informal (e.g., linguagem natural); de texto, gráfica, ...
� Quando a representação do esquema é gráfica designa-se usualmente por GLDJUDPD.
� Exemplos de esquemas:– esquema relacional de um sistema de crédito– diagrama de classes do sistema de facturação– diagrama de colaboração do processo de emissão de factura
Conceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
12
08:17
��!ACSI/Introdução© Alberto Silva
UoD (Sistema) Modelo(s)Estrutura de Conceitos(Ling. de Modelação)
Esquemas/DiagramasEMR
8R'�H�(05��YV��0RGHORV�H�(VTXHPDVConceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
�#"ACSI/Introdução© Alberto Silva
Mundo Real
Estrutura de
Conceitos
Modelo
gap semântico
homem
casa
carro
dono
lar
Esquema textual
Esquema gráfico
8R'�H�(05��YV��0RGHORV�H�(VTXHPDVConceitos Introdutórios
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
13
08:17
��$ACSI/Introdução© Alberto Silva
um conjunto de actividades, normalmente agrupadas em fases e tarefas, que são executadas de forma sistemática e uniformizada, que são realizadas por intervenientes com responsabilidades bem definidas, e que a partir de um conjunto de LQSXWV produzem um conjunto de RXWSXWV.
Processos e Metodologias
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
3URFHVVR�GH�GHVHQYROYLPHQWR�GH�VRIWZDUH
08:17
��%ACSI/Introdução© Alberto Silva
TarefaB
TarefaA
TarefaC
TarefaD
TarefaE
TarefaF
fase-1 fase-2 fase-nfase-3
art-A
art-C
art-D
art-E
(art-i: Artefacto - i) (t)
art-Bart-F
Processos e Metodologias
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
14
08:17
��&ACSI/Introdução© Alberto Silva
0HWRGRORJLD...
para além da sequência de etapas e procedimentos recomendados para serem aplicados durante o processo de desenvolvimento de sistemas de informação (ou seja, uma metodologia pressupõe a existência de um processo)
acrescenta a esta definição a utilização de um conjunto de ferramentas, técnicas e notações [Booch94]
Processos e Metodologias
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
��'ACSI/Introdução© Alberto Silva
0HWRGRORJLD... inclui ainda referências a diversos princípios e regras cujo objectivo é concretizar na prática as orientações mais teóricas que são expressas no processo, e nas quais podemos incluir:
– Regras de elaboração de estimativas (custos, prazos).– Técnicas para efectuar medições e regras de elaboração de estimativas.– Procedimentos a seguir de forma a garantir a qualidade.– Programas de formação.– Referência sobre a utilização de ferramentas de apoio ao longo de todo o
processo.– Modelos da documentação a produzir, vulgarmente designados por
WHPSODWHV.– Exemplos práticos detalhados.– Técnicas para customização da metodologia, que poderão ser aplicadas
para a adaptar a realidades específicas.
Processos e Metodologias
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
15
08:17
(�)ACSI/Introdução© Alberto Silva
* Note-se, no entanto, que estes termos são actualmente utilizados indistintamente por diversos autores, com o significado que aqui se atribui ao conceito metodologia (o mais abrangente de todos).
* Exemplo: RUP e ICONIX são designados “processos” embora segundo a terminologia aqui adoptada, deveriam ser designados como “metodologias”...
Processos e Metodologias
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
+�,ACSI/Introdução© Alberto Silva
-/.0.21434576 198;:<57.>=@?�5>AB.9CED F@G 57?H=@?�5BG CJI7KJ1>:LD .M=@6 D N D O7CJ3JCM3JCP?�57CB6 D 3JCJ345QLR�SUTBVBW XLY7Z[VP\E]U^ _LYU`bacYU\edJ` ]B]UXLTB]U`bYPZcf ZUg ]U\EVEhLSU][Z7]edJ` ]Lg ]UXLTB]ETB]7Z7]UXJijYU^ ik]U`
l ]U\md<VU`Hg f a7S7^ VU`4Znf ZUg ]U\EVUZod<VU`Hg f a7S7^ VU` \E]UXJg ]EacYU\edJ^ ]cpBY7Zrq
Modelos e Modelização
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
16
08:17
+ sACSI/Introdução© Alberto Silva
t Modelação é uma técnica de engenharia bem aceite e provada (e.g., engª civil, mecânica), ...
t Permite partilhar conhecimento entre utilizadores e técnicos, e entre diferentes tipos de técnicos, ...
t Permite gerir melhor os projectos, as equipas, ...
t Permite prever custos e prazos; permite minimizar os riscos e os custos ...
A Importância da Modelização
Modelos e Modelização
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
+�(ACSI/Introdução© Alberto Silva
t Os modelos ajudam a visualizar um sistema, quer seja a sua situação no passado, no presente ou no futuro.
t Os modelos permitem especificar a estrutura ou o comportamento de um sistema
t Os modelos permitem controlar e guiar o processo de construção do sistema.
t Os modelos documentam as tomadas de decisãorealizadas.
Benefícios da Modelização
Modelos e Modelização
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
17
08:17
+�+ACSI/Introdução© Alberto Silva
P1 -$�HVFROKD�GRV�PRGHORV�D�FULDU�WHP�XPD�SURIXQGD�LQIOXrQFLD�QR�PRGR�FRPR�R�SUREOHPD�p�DWDFDGR�H�FRQVHTXHQWHPHQWH�FRPR�D�VROXomR�p�WUDWDGD
P2 -&DGD�PRGHOR�SRGH�VHU�H[SUHVVR�HP�GLIHUHQWHV�QtYHLV�GH�SUHFLVmR�DEVWUDFomR
P3 -2V�PHOKRUHV�PRGHORV�UHIOHFWHP�D�UHDOLGDGH
P4 -1HQKXP�PRGHOR�~QLFR�p�VXILFLHQWH��4XDOTXHU�VLVWHPD�QmR�WULYLDO�p�PHOKRU�UHSUHVHQWDGR�DWUDYpV�GH�SHTXHQR�Q~PHUR�GH�PRGHORV�UD]RDYHOPHQWH�LQGHSHQGHQWHV
Princípios de Modelação (Booch)Modelos e Modelização
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
+#uACSI/Introdução© Alberto Silva
* Decomposição hierárquica– (também conhecido por GLYLGH�DQG�FRQTXHU ("dividir para
conquistar"))– um problema é dividido em sub-problemas mais elementares e
assim sucessivamente até serem simples de resolver.
* Abstracção– favorece a eliminação da complexidade: já que não é possível lidar
com toda a realidade dos sistemas complexos, o ser humano opta por "esquecer" os detalhes menos importantes e focar a sua atenção nos mais relevantes, lidando com um modelo simplificado da realidade, mas considerado suficiente para entender e solucionar correctamente o problema em questão.
Boas Práticas no Desenvolvimento de Sistemas
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
18
08:17
+�vACSI/Introdução© Alberto Silva
* O desenvolvimento deve ser efectuado de forma iterativa, repetindo as mesmas actividades em momentos temporais desfasados, mas detalhando o âmbito das funcionalidades do sistema.
* Efectuar uma gestão integrada dos requisitos, permitindo a verificação da rastreabilidade dos mesmos desde a sua identificação até à implementação, e facilitando todo o processo de gestão de alterações.
* Utilizar arquitecturas baseadas em componentes reutilizáveis, como forma de diminuir o esforço de desenvolvimento e posterior manutenção.
* Modelizar o software através de diagramas gráficos, mais facilmente compreensíveis e menos sujeitos a interpretações subjectivas.
* Efectuar a verificação sistemática da qualidade, e não apenas no final do desenvolvimento.
Boas Práticas no Desenvolvimento de Sistemas
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
Outras...
08:17
+�wACSI/Introdução© Alberto Silva
* Conseguir e promover o envolvimento dos utilizadores.* Utilizar uma abordagem orientada para a resolução de
problemas.* Definir e utilizar standards para o desenvolvimento e
documentação.* Justificar o desenvolvimento de software como uma actividade
estratégica e como investimento financeiro.* Não ter receio de alterar ou mesmo cancelar o projecto ou parte
dele.* Conceber sistemas que sejam fáceis de expandir e alterar.
Boas Práticas no Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
Outras, ainda...
19
08:17
+�xACSI/Introdução© Alberto Silva
t Fases, Tarefas e Actividades...
(VWD�WHUPLQRORJLD�QmR�p�VWDQGDUG���
Estrutura do Processo de Desenvolvimento de Sistemas
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
+�yACSI/Introdução© Alberto Silva
t Principais Fases e Tarefas...– Concepção, Implementação, Manutenção
Estrutura do Processo de Desenvolvimento de Sistemas
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
20
08:17
z�{ACSI/Introdução© Alberto Silva
'R�3UREOHPD�DWp j 6ROXomR���
Estrutura do Processo de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
| (VSHFLILFDomR�GH�5HTXLVLWRV: descrição do SUREOHPDna óptica do cliente.
| $QiOLVH: descrição do SUREOHPD na óptica do engº de sistema
| 'HVHQKR: especificação da VROXomR em termos da plataforma e tecnologia computacional usada.
08:17
}r~ACSI/Introdução© Alberto Silva
Custos relativos das várias tarefas do Desenv. Software...Conforme observados no final da década de 70 [Schach99]
�o�U�U�7�E��J� �U�B� �U�E�E�B�U�U� �
�c� � �U�U�c�B�b�
Estrutura do Processo de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
21
08:17
}j�ACSI/Introdução© Alberto Silva
� Independentemente das particularidades de cada processo, pode-se distingui-los genericamente segundo duas grandes aproximações:
– aproximação em cascata– aproximação iterativa
� Note-se que esta distinção é ortogonal ao facto do processo usar uma abordagem estruturada ou baseada em objectos
Modelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
}r�ACSI/Introdução© Alberto Silva
| As actividades a executar são agrupadas em tarefas, executadas sequencialmente, de forma que uma tarefa só tem início quando a tarefa anterior tiver terminado.
$SUR[LPDomR�HP�&DVFDWDModelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
22
08:17
}rzACSI/Introdução© Alberto Silva
� Vantagens– só se avança para a tarefa seguinte quando o cliente valida e aceita os produtos
finais (documentos, modelos, programas) da tarefa actual – uma garantia “formal” para o fornecedor que fica mais “descansado”...
– pressuposto que o cliente participa activamente no projecto e que sabe muito bem o que quer
� Desvantagens– promove a compartimentação dos esforços ao longo das diferentes tarefas e
consequentemente desencoraja a comunicação e partilha de visões entre todos os intervenientes do projecto, por exemplo, entre os analistas, os responsáveis pelo desenho, os programadores, e os utilizadores.
– minimiza o impacto da compreensão adquirida no decurso de um projecto, uma vez que se um processo não pode voltar atrás de modo a alterar os modelos e as conclusões das tarefas anteriores, é normal que as novas ideias sobre o sistema não sejam aproveitadas.
$SUR[LPDomR�HP�&DVFDWDModelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
}�}ACSI/Introdução© Alberto Silva
$SUR[LPDomR�HP�&DVFDWD�5HYLVWDModelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
23
08:17
}r�ACSI/Introdução© Alberto Silva
| Vantagens– prevê a possibilidade de a partir de qualquer tarefa do ciclo se poder
regressar a uma tarefa anterior de forma a contemplar alterações funcionais e/ou técnicas que entretanto tenham surgido, em virtude de um maior conhecimento que se tenha obtido.
| Desvantagens– risco desta aproximação é que, na ausência de um processo de
gestão do projecto e de controle das alterações bem definido, podemos passar o tempo num ciclo sem fim, sem nunca se atingir o objectivo final que é disponibilizar um sistema a funcionar.
$SUR[LPDomR�HP�&DVFDWD�5HYLVWDModelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
}r�ACSI/Introdução© Alberto Silva
$SUR[LPDomR�,WHUDWLYD�H�,QFUHPHQWDO| Baseia-se no princípio que a equipa envolvida possa refinar e
alargar pouco-a-pouco a qualidade, detalhe e âmbito do sistema envolvido
| A principal consequência da aproximação iterativa é que os produtos finais de todo o processo vão sendo amadurecidos e completados ao longo do tempo, mas cada iteração produz sempre um conjunto de produtos finais
Modelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
24
08:17
}r�ACSI/Introdução© Alberto Silva
$SUR[LPDomR�,WHUDWLYD�H�,QFUHPHQWDOModelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
08:17
}r�ACSI/Introdução© Alberto Silva
$SUR[LPDomR�HP�(VSLUDOModelos de Processos de Desenvolvimento de Software
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
| Variante do modelo iterativo e incremental. | Foi proposto por Barry Boehm [Boehm88] como resposta às
criticas que os processos existentes na altura não favoreciam a utilização de prototipagem e reutilização de software.
| Para além das tarefas e actividades previstas pelos outros processos, propõe logo de seguida à tarefa de planeamento a realização de uma tarefa de prototipagem e de análise do risco, como forma de eliminar os principais problemas e identificar os requisitos do sistema
25
08:17
}r{ACSI/Introdução© Alberto Silva
Questões para discussão...
Processo de Desenvolvimento de SistemasProcesso de Desenvolvimento de Sistemas
� Quais os elementos estruturais comuns nos processos de desenvolvimento de sistemas?
� Quais os stakeholders nos processos comuns de desenvolvimento de sistemas?
� Que diferenças significativas existem entre projectos de eng.ª civil (ou mecânica) e de eng.ª informática?