Análise e Concepção de - Autenticação · para além da sequência de etapas e procedimentos...

25
1 Carla Ferreira Carla Ferreira [email protected] ,QWURGXomR ,QWURGXomR Análise e Concepção de Análise e Concepção de Sistemas de Informação Sistemas de Informação 08:17 ACSI/Introdução© Alberto Silva Enquadramento e Conceitos Gerais Enquadramento e Conceitos Gerais Sistemas de Informação Arquitectura de Sistemas de Informação Planeamento Estratégico de Sistemas de Informação Engenharia de Software

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?