2

Documentos relacionados
Processo de Desenvolvimento de Software

Análise de Sistemas 3º Bimestre (material 1)

UTILIZAÇÃO DE TECNOLOGIAS MODERNAS PARA CADASTRAMENTO DAS FAMÍLIAS DA ATENÇÃO BÁSICA DE SAÚDE DO MUNICÍPIO DE COARI

Engenharia de Software Aula 2.1 Introdução à Engenharia de Requisitos. Prof. Bruno Moreno

Engenharia de Software.

Introdução à Análise e Projeto de Sistemas

Gerência de Projetos de Software. Prof. Dr. João Dovicchi INE / CTC / UFSC.

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

Engenharia de Requisitos

Introdução a Teste de Software

TESTES DE SOFTWARE 1. Fundamentos sobre testes de software

Organização para Realização de Teste de Software

Processo de desenvolvimento de sistema de informação - DSI

RUP RATIONAL UNIFIED PROCESS

Princípios da Engenharia de Software aula 03

3. Engenharia dos requisitos de software

PROJETO DE PROGRAMAS. Projeto de Programas PPR0001

Guia do Processo de Teste Metodologia Celepar

Componentes de SIs. Pessoas Organiz. Tecnologia

LIVRO ENGENHARIA DE SOFTWARE FUNDAMENTOS, MÉTODOS E PADRÕES

Análise de Requisitos

RUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS. Prof. Fabiano Papaiz IFRN

Aula 01 Conceito de Banco de Dados e SGBD

O Processo Unificado: Workflow de Análise. Graduação em Informática Profa. Dra. Itana Maria de Souza Gimenes 2009

- Prototipação Iterativa - Observação Direta

Fundamentos de Teste de Software

Levantamento, Análise e Gestão Requisitos. Aula 05

DICIONÁRIO DA ESTRUTURA ANALÍTICA DO PROJETO - SISCOP. Data Versão Descrição Autor

Análise e Projeto de Sistemas

AVALIAÇÃO DE INTERFACES

Análise de Sistemas AULA 05 BCC Noturno - EMA908915A

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

Ciclo de vida: fases x atividades

UML Unified Modeling Language Linguagem de Modelagem Unificada

Requisitos de Software e UML Básico. Janaína Horácio

Engenheiros de software (algumas vezes conhecidos no mundo da TI como engenheiros de sistemas ou analistas ) e outros interessados no projeto

DESENHO DE CARGOS E TAREFAS

O Fluxo de Requisitos

Requisitos de Software

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.

Padrão para Especificação de Requisitos de Produto de Multimídia

1. OBJETIVO PROJETO 2. INFORMAÇÕES GERAIS DO PROJETO. SYSLOG Sistema de Logística DECLARAÇÃO DO ESCOPO. 1.1 Objetivo geral:

Engenharia de Software II

Análise de sistemas. Engenharia de Requisitos

Engenharia de Software

Desenvolvimento de Software

Unidade 4 Projeto de Banco de Dados

Declaração de Escopo

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE

Livro texto: Capítulo 1

Documentação de Software. Simone Vasconcelos

Rational Unified Process (RUP)

Requisitos de Sistemas

Linguagens de Programação

SSC Engenharia de Software. Prof. Paulo C. Masiero

QUALIDADE DE SOFTWARE. Princípios de Engenharia de Software

Paradigmas de Software

Requisitos de sistemas

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA RATIONAL UNIFIED PROCESS - RUP

Prof. Esp. Fabiano Taguchi

Estratégias de Testes Parte I

Requisitos. Silvério Sirotheau

Engenharia de Software. Projeto de Software. Projeto: definição. Profa. Dra. Lúcia V. L. Filgueiras Profa. Dra. Selma Shin Shimizu Melnikoff

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

Estágio II. Aula 04 Testes Ágeis. Prof. MSc. Fred Viana

Adriano Maranhão PROFISSIONAIS E ATIVIDADES ENVOLVIDAS EM UM SGBD

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02

QUALIDADE DE SOFTWARE DEFINIÇÕES / RESUMO. Apostilas de NORMAS, disponíveis no site do professor. Prof. Celso Candido ADS / REDES / ENGENHARIA

Prof. Dr. Thiago Jabur Bittar

Verificação e Validação. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 22 Slide 1

Engenharia de Software

Processos de software

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE

PCS3413 Engenharia de Software e Banco de Dados

Ferramenta Web de Apoio à Elicitação de Requisitos de Software. Acadêmico: Ivan Wilhelm Orientador: Everaldo Artur Grahl

Manutenção de Software. Engenharia de Software Profa. Dra. Elisa Yumi Nakagawa 1º semestre de 2015

UML. Rodrigo Leite Durães.

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave

2.1 NesC Seguem alguns dos principais desafios impostos à linguagem NesC:

Engenharia de Software

Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo

Unidade 4 Teste na Implantação do Sistema

Modelos. Banco de dados. Professor: Jarbas Araújo CENTRO EDUCACIONAL RADIER.

1 Diretoria de Gestão de Tecnologia da Informação (DGTI) - Universidade Federal de Lavras

Modelagem de Sistemas. Análise de Requisitos. Modelagem

Análise e Projeto de Sistemas

Unidade 1 Introdução à Análise de Sistemas. Objectivos

Documento de Especificação de Sistema IngreSys

Transcrição:

ANÁLISE DE SISTEMAS (processo de desenvolvimento de sistemas) por Antônio Maurício Pitangueira 1

2

Levantamento de requisitos Análise de requisitos Projeto Implementação Testes Implantação Foco da disciplina 3

Corresponde à etapa de compreensão do problema aplicada ao desenvolvimento de software O principal objetivo do levantamento de requisitos É que usuários e desenvolvedores tenha a mesma visão do problema a ser resolvido Nessa etapa, os desenvolvedores, juntamente com os clientes, tentam levantar e definir as necessidades dos futuros usuários do sistema a ser desenvolvido. 4

Formalmente, um requisito é uma condição ou capacidade que deve ser alcançada ou possuída por um sistema ou componente deste para satisfazer um contrato, padrão, especificação ou outros documentos formalmente impostos. Durante o levantamento de requisitos, a equipe de desenvolvimento tenta entender o domínio que deve ser automatizado pelo software 5

O levantamento de requisitos compreende também um estudo exploratório das necessidades dos usuários e da situação do sistema atual(se existir) Possíveis técnicas: Leitura de obras de referência; Observação do ambiente do usuário; Realização de entrevistas com o usuário; Entrevistas com especialistas do domínio; Reutilização de análises anteriores; 6

Requisitos funcionais: definem as funcionalidades do sistema. Ex: o sistema deve permitir que cada professor realize o lançamento de notas das turmas nas quais lecionou O sistema deve permitir que um aluno realize a sua matrícula nas disciplinas oferecidas em um semestre letivo os coordenadores de escola devem poder obter o número de aprovações, reprovações e trancamentos em cada disciplina oferecida em um determinado período 7

Requisitos não-funcionais: declaram as características de qualidade que o sistema deve possuir e que estão relacionadas às suas funcionalidades. Alguns tipos: Confiabilidade: corresponde a medidas quantitativas da confiabilidade do sistema, tais como tempo médio entre falhas, recuperação de falhas ou quantidade de erros por milhares de linhas de código-fonte; Desempenho: requisitos que definem tempos de resposta esperados para as funcionalidades do sistema Portabilidade: restrições sobre as plataformas de hardware e de software nas quais o sistema será implantado e sobre o grau de facilidade para transportar o sistema para outras plataformas 8

Segurança: limitações sobre a segurança do sistema em relação acessos não-autorizados; Usabilidade: requisitos que se relacionam ou afetam a usabilidade do sistema. Exemplos incluem requisitos sobre a facilidade de uso e a necessidade ou não de treinamento dos usuários. 9

Requisitos normativos: declarações de restrições impostas sobre o desenvolvimento do sistema. Ex: restrições que definem a adequação a custos e prazos, a plataforma tecnológica, aspectos legais, componentes de hw e se a serem adquiridos,... 10

Formalmente, o termo análise corresponde a quebrar um sistema em seus componentes e estudar como tais componentes interagem com o objetivo de entender como esse sistema funciona; No nosso contexto, esta é a fase em que os analistas realizam um estudo detalhado dos requisitos levantados na atividade anterior. A partir desse estudo, são construídos modelos para representar o sistema a ser construído 11

Nessa atividade, o foco de interesse é tentar construir uma estratégia de solução sem se preocupar com a maneira como essa estratégia será realizada. Em outras palavras, é necessário saber o que o sistema proposto deve fazer para, então, definir como esse sistema irá fazê-lo. OBS: os modelos construídos na fase de análise devem ser cuidadosamente validados e verificados. 12

O objetivo da validação é assegurar que as necessidades do cliente estão sendo atendidas pelo sistema: será que o software correto está sendo construído? Quando um usuário valida um modelo, quer dizer que entendeu o modelo construído e que, segundo esse entendimento, o modelo reflete suas necessidades com relação ao sistema a ser desenvolvido. 13

Já a verificação tem o objetivo de analisar se os modelos construídos estão em conformidade com os requisitos definidos: será que o sw está sendo construído corretamente? OBS: diferentemente da validação(que é uma atividade de análise), a verificação é uma etapa típica da fase de projeto) 14

Em um processo de desenvolvimento OO, um dos resultados da análise é o modelo de objetos que representa as classes componentes do sistema.. A fase de análise pode ser subdibidia em análise do domínio (ou análise do negócio) e análise da aplicação 15

ANÁLISE DO DOMÍNIO Primeiro objetivo: identificar e modelar os objetos do mundo real que, de alguma forma, serão processados pela aplicação em desenvolvimento. Ex: um aluno é um objeto do mundo real que um sistema de controle acadêmico deve processar. assim, um aluno é um objeto do domínio. Cite outros objetos para este domínio.. Outro objetivo é identificar as regras do negócio e os processos do negócio realizados pela organização. 16

ANÁLISE DA APLICAÇÃO Tem como objetivo identificar objeto de análise que normalmente não fazem sentido para os especialistas do domínio, mas que são necessários para suprir as funcionalidades do sistema em questão. Esses objetos têm a ver com os aspectos computacionais de alto nível da aplicação. Ex:uma tela de inscrição em disciplinas.] De uma forma geral, qualquer objeto necessário para que o sistema em desenvolvimento possa se comunicar com seu ambiente é um objeto da aplicação. 17

Sendo assim, a análise de domínio identifica objetos do domínio e a análise da aplicação identifica objetos da aplicação. Por que isto? Principais ferramentas(diagramas de casos de uso e de classes) Outros também utilizados: diagrama de interação, de estados e de atividades Em suma, o foco principal da análise são os aspectos lógicos e independentes de implementação de um sistema(os requisitos) 18

Na fase de projeto, determina-se como o sistema funcionará para atender aos requisitos, de acordo com os recursos tecnológicos existentes (a fase de projeto considera os aspectos físicos e dependentes de implementação) Então, aos modelos construídos na análise são adicionadas as denominadas restrições de tecnologia. 19

Exemplos de aspectos a serem considerados na fase de projeto: arquitetura do sistema, padrão de interface gráfica, a linguagem de programação, o gerenciador de banco de dados, etc. Esta fase produz uma descrição computacional do que o software deve fazer e deve ser coerente com a descrição feita na análise. 20

A FASE DE PROJETO É DIRECIONADA PELOS MODELOS CONSTRUÍDOS NA FASE DE ANÁLISE E PELO PLANEJAMENTO DO SISTEMA. O projeto consiste em duas atividades principais: A) projeto da arquitetura B) projeto detalhado 21

Consiste em distribuir as classes de objetos relacionadas do sistema em subsistemas e seus componentes. Consiste também em distribuir esses componentes fisicamente pelos recursos de Hw disponíveis. Diagramas de implementação(uml) são comumente utilizados nesta fase 22

Aqui são modeladas as colaborações entre os objetos de cada módulo com o objetivo de realizar as funcionalidades do módulo. Também são realizados o projeto da interface com o usuário e o projeto de banco de dados. Aspectos de mapeamento dos modelos de análise para artefatos de sw são também considerados. Projeto dos algoritmos 23

ANÁLISE Enfatiza a investigação de um problema e os requisitos, ao invés da solução. Ex: Se um novo sistema é desejado, como ele será usado? Quais são suas Funcionalidades? Análise OO: Investigação de quais são os objetos do domínio. Há uma ênfase em encontrar e descrever os objetos ou conceitos do domínio do problema. 24

PROJETO Enfatiza uma solução conceitual (em software ou hardware) que satisfaz os requisitos, ao invés de sua implementação. Ênfase na definição de objetos e como eles colaboram para atender um requisito. O projeto ao final pode ser implementado. 25

Nesta fase, o sistema é codificado, ou seja, ocorre a tradução da descrição computacional obtida na fase de projeto em código executável mediante o uso de uma ou mais linguagens. A implementação pode reutilizar os componentes de software, bibliotecas de classe e frameworks no produto de software 26

Verificação do sistema construído, levandose em conta a especificação feita na fase de projeto. Produto desta fase: relatório de testes com informações sobre erros detectados no software Após a atividade de testes, os diversos módulos do sistema são integrados, resultando finalmente no produto de sw. 27

O sistema é : Empacotado Distribuído Instalado no ambiente do usuário. Manuais são escritos, arquivos são carregados e os dados são importados para o sistema. Usuários são treinados 28