15
Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

Embed Size (px)

Citation preview

Page 1: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

Engenharia de Software e Sistemas de Informação e Gestão

Luís CorreiaDSAS

Page 2: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ENGENHARIA DE SOFTWARE

• Engenharia de software é uma área do conhecimento da computação voltada para a especificação, desenvolvimento e manutenção de sistemas de software, objectivando organização, produtividade e qualidade.

Page 3: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ENGENHARIA DE SOFTWARE(Cont.)

• A Engenharia de Software surge devido a um conjunto de problemas que tornam a criação de um software numa actividade árdua e subjectiva. Alguns problemas na criação de software são, por exemplo:

• As estimativas de custo e prazo, sendo frequentemente imprecisas;

• A produtividade das pessoas da área de software ser desigual;

• A qualidade do software desenvolvido pode não ser o mais adequado;

Page 4: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ENGENHARIA DE SOFTWARE(Cont.)

• A inexistência de tempo suficiente para recolher dados sobre o processo em desenvolvimento;

• A comunicação entre o Analista e o Cliente não ser a desejada;

• A falta ou deficiência em técnicas de teste;

• A Manutenção abranger a maioria do orçamento destinado ao Software;

Page 5: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ENGENHARIA DE SOFTWARE(Cont.)

• A Engenharia de software proporciona:

– Métodos abrangentes para todas as fases do desenvolvimento;

– Ferramentas para automatizar os métodos;

– Implementação mais consistente e robusta;

– Técnicas para garantir qualidade;

– Boa coordenação e Controle Administrativo.

Page 6: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ENGENHARIA NECESSÁRIA?!A importância da Engenharia de Software.

Page 7: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ETAPAS DA ENGENHARIA DE SOFTWARE

• A Engenharia de software tem um conjunto de etapas que envolve ferramentas, métodos, processos e tem como alicerce a tudo isto o controle da qualidade:

– Métodos: Proporcionam os detalhes de “como fazer” para construir o software.

– Ferramentas: Fornecem suporte automatizado ou semi-automatizado aos métodos.

– Processos: É a fundação da engenharia de software, provendo a sustentação e relacionamentos entre as camadas.

– Foco na qualidade: Garante toda a qualidade do software gerado.

Page 8: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

O UML

• A UML ou Unified Modeling Language (que nada tem a ver com XML, HTML, XLS, DML, DHTML) é uma linguagem de modelagem não proprietária de terceira geração. Ela foi criada para facilitar e uniformizar a forma de especificação de projectos de desenvolvimento de software.

• A UML não é um método, é uma notação. Um método normalmente é composto por uma linguagem de modelagem (notação gráfica) e por um processo (passos para elaboração do projecto). Dessa forma a UML, pode ser usada com qualquer processo já que é independente dele.

• A UML permite modelar: Elementos; Relacionamentos; Mecanismos de Extensibilidade; Diagramas.

Page 9: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

O UML(Cont.)

• Elementos:

– Estruturais – Classes, interfaces, colaborações, componentes, casos de uso, classes activas, nós;

– Comportamentais – Interacções, máquinas de estado;

– Grupos de elementos – Pacotes, subsistemas, modelos;

– Outros – Notas.

Page 10: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

O UML(Cont.)

• Relacionamentos:– Dependências;– Associações;– Generalizações;– Implementações (realização);

• Mecanismos de Extensibilidade:– Estereótipos;– Tagged value;– Regras.

Page 11: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

UML - Diagramas Estáticos

• Diagrama de pacotes• Diagrama de classes• Diagrama de objectos• Diagrama de estrutura composta• Diagrama de componentes• Diagrama de instalação

Page 12: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

UML - Diagramas Dinâmicos

• Diagrama casos de uso• Diagrama de actividades• Diagrama de máquina de estados• Diagrama de comunicação• Diagrama de sequência• Diagrama de Tempo• Diagrama de Interactividade

Page 13: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

• Engenharia de Software está intimamente ligada com Sistemas de Informação e Gestão, devido ao facto de todos os sistemas serem desenhados com base em estudos feitos previamente à estrutura destinada.

• Um sistema de informação é composto por todos os componentes que recolhem, manipulam e disseminam dados ou informação. Incluem-se tipicamente hardware, software, pessoas, sistemas de comunicação como linhas telefónicas, e os dados propriamente ditos.

• As actividades envolvidas incluem a introdução de dados, processamento dos dados em informação, armazenamento de ambos, e a produção de resultados, como relatórios de gestão.

ENGENHARIA DE SOFTWARE E SISTEMAS DE INFORMAÇÃO E GESTÃO

Page 14: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

• Desta forma a Engenharia de software tem um papel deveras activo na abordagem deste tema, isto é, os Sistemas de Informação e Gestão são sem dúvida indispensáveis para a existência de uma boa comunicação entre empresas e instituições.

• Porém é necessário existir software coerente e de fácil manipulação das tecnologias de informação, de forma a melhorar a segurança, a rapidez, e a qualidade de todos os Sistemas.

ENGENHARIA DE SOFTWARE E SISTEMAS DE INFORMAÇÃO E GESTÃO

Page 15: Engenharia de Software e Sistemas de Informação e Gestão Luís Correia DSAS

ENGENHARIA DE SOFTWARE E SISTEMAS DE INFORMAÇÃO E GESTÃO• Para tal, tem que existir uma coordenação

mútua entre toda a informação, pessoas e meios disponíveis para a criação de um software eficaz, seguro, e de características bem definidas, com base a servir “com perfeição” todo o sistema em si.