Uml conceitos
Processo de desenvolvimento de software: é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto de software. Um processo de Engenharia de Software:é formado por um conjunto de passos de processo parcialmente ordenados, relacionados com artefatos, pessoas, recursos, estruturas organizacionais e restrições, tendo como objetivo produzir e manter os produtos de software finais requeridos. Os processos são divididos em “atividades” ou “tarefas”.
Uma atividade: é um passo de processo que produz mudanças de estado no produto de software. Uma atividade aloca recursos (computadores, impressoras e aterial de expedien desenvolvedores (ag e org executá-la. O agente pode ser u (quando a atividade to view nut*ge orada e atribuída a r ferramentas para menta automatizada Um artefato: é um produto criado ou modi icado durante um processo. A realização do processo é afetada pelas restriçóes… Modelo de Processo de Software:É uma representação abstrata de um processo.
Componentes do ciclo de vida do software ou Processo de software: Métodos, ferramentas e procedmentos; Levantamento de Requisitos: tem por objetivo propiciar que usuários e desenvolvedores tenham a mesma compreensão do roblema a ser resolvido. Análise: tem por objetivo construir modelos que determina qual é o problema para o qual estamos tentando conceber uma solução de software. Projeto: estágio no qual o modelo de análise terá de ser adaptado de tal modo que possa servir como base para i implementação no ambiente alvo.
Codificação (implementação): a codificação do sistema é efetivamente executada. Teste: consiste na verificação do software. Implantação: entrada em produção do sistema. Modelos genéricos: Modelo Cascata (ou Modelo Sequencial Linear ou top-down) – Etapas distintas para especificação e esenvolvimento, modelo mais antigo e o mais amplamente usado da engenharia de software, modelado em função do ciclo da engenharia convencional, requer uma abordagem sistemática, sequencial ao desenvolvimento de software.
Prototipagem; A idela básica deste modelo é que ao invés de manter inalterados os requisitos durante o projeto e codificação, um protótipo é desenvolvido para ajudar no entendimento dos requisitos. Modelo RAD; visa comprimir o passo a passo do ciclo tradicional em um processo interativo, buscando aperfeiçoar e desenvolver os modelos de dados e processos em protótipos. Estes são testados pelos usuários. Identificados os novos requisitos, dão inicio ao ciclo novamente até que chegam ao fim..
Auxilia o engenheiro de software e o cliente a entenderem melhor o que deve ser construído quando os requisitos estão confusos. O protótipo serve como um mecanismo para a identificação dos requisitos de software. Espiral; É um processo de desenvolvimento de software que combina elementos de projeto prototipação-em-etapas, em um esforço para combinar as vantagens dos conceitos de top- down e bottom-up, acrescentando um novo elemento, a análise e riscos que falta a esses paradigmas.
Planejamento: determinação dos objetivos, alternativas e restrições Análise de Risco: análise d s e identif PAGO IV q determinação dos objetivos, alternativas e restrições Análise de Risco: análise das alternativas e identificação / resolução dos riscos Construção: desenvolvimento do produto no nível seguinte Avaliação do Cliente: avaliação do produto e planejamento das novas fases Desenvolvimento formal de sistemas – Modelo matemático orienta a implementação; Desenvolvimento orientado a reuso: – Construído a partir de omponentes existentes; Processos baseados em Iteração: – Incremental; – Espiral; Ciclo de vida, devemos analisar: 1 -Natureza do projeto e da aplicação; 2- Métodos e ferramentas a serem usadas; 3- Controles e produtos que precisam ser entregues. Modelo Funcional: — que apresenta uma visão estruturada das funções ou dos processos que compõe a organização. O modelo funcional especifica os resultados de um processamento sem especificar como ou quando eles serão processados. Ele especifica o significado das operações do modelo de objetos e as ações do modelo dinâmico. Este modelo descreve como os dados são transformados, mas não quem ou quando isto ocorrerá. O modelo funcional é composto por múltiplos DFD’s (Diagramas de Fluxo de Dados), que especificam o significado das operações e restrições.
Modelo de dados: – apresenta uma visão dos dados que serão armazenados para serem usados pela organização. Modelagem de Dados representa um conjunto de requerimentos de informações de negócio. É uma parte importante do desenho de um sistema de informação. A abordagem normalmente atende a três perspectivas: Modelagem Conceitual, Modelagem Lógica e Modelagem Fisica. A primeira é usada como representação de alto nível e considera exclusivamente o p PAGF3rl(Fq primeira é usada como representação de alto nível e considera exclusivamente o ponto de vista do usuário criador do dado, a segunda já agrega alguns detalhes de implementação e a terceira demonstra como os dados são fisicamente armazenados. ?? – representa as transformações e controle e Modelo de controle. uma visão do comportamento da organização em relação a diferentes estados válidos. Utilidades de um modelo: Estabelecer uma visão comum do ambiente antes da automação; Servir como suporte para egociação e especificação de requisitos e possibilidade futura; Representar, avaliar e refinar conceitos do projeto; Escalonar a informatização em fases, com produtos bem-definidos e dependência minima de entre as fases; Tratar a complexidade do problema por níveis de abstração, começando pela abstração; Promover indicações quantitativas do escopo, Promover facilidades para geração de testes de aceitação.
Modelagem: A abstração do sistema de software através de modelos que o descrevem é um poderoso instrumento para o entendimento e comunicação do produto final que será esenvolvido. A maior dificuldade nesta atividade está no equilíbrio (tradeoff) entre simplicidade (favorecendo a comunicação) e a complexidade (favorecendo a precisão) do modelo. para a modelagem podemos citar três métodos: Análise estruturada; Análise Essencial e UML que é hoje, o método mais comum. Analise estruturada: É uma atividade de construção de modelos; Modelo ambiental: descreve o ambiente no qual o sistema se insere, ou seja, descreve o contexto do sistema, que deve ter 3 componentes: 1 – Definição de objetivos Finalidade de sistema; 2- Lista de eventos Os acontecimentos q
Definição de objetivos Finalidade de sistema; 2- Lista de eventos — Os acontecimentos que ocorrem no exterior e que interagem com o sistema; 3- Diagrama de contexto Representa o sistema como um único processo e as suas interacções com o meio ambiente. Modelo comportamental: descreve as ações que o sistema deve realizar para responder da melhor forma aos eventos definidos no modelo ambiental. Técnicas utilizadas: Diagrama de fluxos de dados (DFD); Dicionário de dados (DD); Diagrama de entidades e associações [MER]); Especificação de processos (EP) (DESENHO); Diagrama de transição de estados (DTE). O diagrama de fluxos de dados: (DFD) é uma ferramenta para a modelagem de sistemas. Ela fornece apenas uma visão do sistema, a visão estruturada das funções, ou seja, o fluxo dos dados.
Se estivermos desenvolvendo um sistema no qual os relacionamentos entre os dados sejam mais importantes que as funções, podemos dar menos importância ao DFD e dedicar-nos aos diagramas de entidade-relacionamento (DER); Um DFD é uma ferramenta de modelagem que nos permite imaginar um sistema como uma rede de processos funcionais, interligados por “dutos” e “tanques de armazenamento de dados”. Componentes de um DFD: 1 – DFD Entidades Externas 2- DFD processos Fluxo de dados 3- Depósito de dados; DER: Diagrama entidade relacionamento é um modelo diagramático que descreve o modelo de dados de um sistema com alto nível de abstração. Ele é a principal representação gráfica do Modelo de Entidades e Relacionamentos. É usado para representar o modelo conceitual do negócio. MER: Conjunto de conceitos e elementos de modelagem que o projetista de banco de dados precisa conh M ER: Conjunto de conceitos e elementos de modelagem que o projetista de banco de dados precisa conhecer. O Modelo é de Alto Nível.
DER: Resultado do processo de modelagem executado pelo projetista de dados que conhece o MER. Modelo Entidade- Relacionamento. Definição: Modelo baseado na percepção do mundo real, que consiste em um conjunto de objetos básicos chamados entidades e nos relacionamentos entre esses objetos Objetivo : facilitar o projeto de banco de dados, possibilitando a especificação da estrutura lógica geral do banco de dados; Paradigma estruturado: Procedimentos compostos de instruções executadas em uma sequência lógica. Procedimentos são deswnculados dos dados, atuando sobre estes. Paradigma 00: Objetos colaboram com outros objetos através de mensagens que desencadeiam operações. Procedimentos e dados compõem os objetos. 0: Abstração, Encapsulamento, Herança, Polimorfismo; Objeto: Representa qualquer coisa existente no mundo real. Classe: Conceito no qual o objeto se baseia. O objeto é a “materialização” do conceito Atributo: Informação acerca de um objeto Método: Operação que o objeto pode realizar Abstração: “É o processo de filtragem de detalhes sem importância do objeto, para que apenas as características apropriadas que o descrevem permaneçam” Encapsulamento: Ocultação de detalhes dos objetos, que só devem ser acessados através de seus métodos. Herança: Passagem de características da classe (superclasse) para subclasses, permitindo o reuso de atributos e métodos.
Polimorfismo: Ocorrência de particularidades da subclasse, onde métodos herdados da superclasse podem apresentar um comportamento diferente do ori PAGFsrl(Fq subclasse, onde métodos herdados da superclasse podem apresentar um comportamento diferente do original. Principios 00: Qualquer coisa é um objeto. Objetos realizam tarefas por meio da requisição de serviços a outros objetos. Cada objeto pertence a uma determinada classe. Uma classe agrupa objetos similares. A classe é um repositório para comportamento associado ao objeto. Classes são organizadas em hierarquias. UML Modelo: Um modelo é uma simplificação da realidade. Construímos modelos para compreender melhor o sistema que estamos desenvolvendo.
Modelagem – objetivos: Os modelos ajudam a visualizar o sistema como ele é ou como desejamos que seja. Os modelos permitem especificar a estrutura ou o comportamento de um sistema. Os modelos proporcionam um guia para a construção do sistema. Os modelos documentam as decisões tomadas. Modelagem – Vantagens: Prover a estrutura para a solução de problemas. Experimentação de múltiplas soluções. Produzir abstrações para tratar complexidade. Reduzir o tempo do projeto. Diminuir custos de desenvolvimento. Controlar riscos de erros. Modelagem – princípios: Escolha o modelo mals adequado. Use níveis diferentes de precisão. Procure conectar o modelo ? realidade. Nenhum modelo único é suficiente. É uma linguagem padrão para a elaboração da UML – conceito: estrutura de projetos de software. Ela poderá ser empregada para “a visualização”, “a especificação”, “a construção” e “a ocumentação” de artefatos que façam uso de sistemas complexos de software. ” Modelagem e a UML: Combina conceitos de várias metodologias. Abrangente: Modelagem de negócios, Requisitos, Análise, projeto, Implementação, Testes, Impla PAGFarl(Fq Abrangente: Modelagem de negócios, Requisitos, Análise, Projeto, Implementação, Testes, Implantação. Aplicável a qualquer domínio. Independente de linguagem, plataforma ou processo. Suportada por várias ferramentas.
Etapas do processo: 1- (Definição de requisitos, Análise de requisitos, Concepção e Extração de requisitos); – (Projetos de sistemas, Especificação de requisitos, Elaboração); 3 – (Implementação, Código, Construção); Diagramas utilizados: Diagrama de Classes, Diagrama de Atividades, Diagrama de Casos de Uso, Diagrama de Sequência, Diagrama de Componentes e Diagrama de Implantação; Artefatos produzidos: Representação das funcionalidades externamente observáveis do sistema e dos elementos externos ao sistema que interagem com ele. Composto de casos de uso, de atores e de relacionamentos entre esses. Caso de uso: Representa quem faz o que com o sistema, sem considerar o comportamento interno do sistema; Diagrama de caso de uso: Tem um papel central para a modelagem do comportamento de um sistema, de um subsistema ou de uma classe. Mostra um conjunto de casos de uso, atores e seus relacionamentos. Ator: Representa um papel que outro sistema, um ser humano ou um dispositivo de hardware desempenha com o sistema. Representam aquilo que interage com o sistema. Aquilo que existe fora do sistema. Possuem objetivos bem definidos.
Um usuário pode ter vários atores; Diretrizes para elaborar um caso de uso: Identificar o Caso de Uso a partir da lista dos requisitos; todos os requisitos funcionais evem ser atendidos pelos Casos de Uso; um único requisito funcional pode precisar de mais de um Caso de Uso para ser atendido PAGF8rl(Fq um único requisito funcional pode precisar de mais de um Caso de Uso para ser atendido; um Caso de Uso pode atender a mais de um requisito; podem existir casos de uso de apoio, ou seja, aqueles que não estão diretamente ligados a algum requisito funcional. Diretrizes para definição dos nomes do caso de uso: O nome do caso de uso deve ser único e intuitivo. 2. O nome do caso de uso deve identificar com clareza o resultado de valor que ele produz ara algum ator do sistema. 3. O nome do caso de uso deve iniciar com: VERBO no infinitivo + SUBSTANTIVO, usando maiúscula na primeira letra de cada palavra do nome. Relacionamento: É um relacionamento que informa a que caso de uso o ator está associado. Significa que o ator interage (troca informações) com o sistema por meio daquele caso de uso. COMUNICAÇÃO: representa a informação de quais atores estão associados a que casos de uso.
Include: um relacionamento entre casos de uso em que o caso de uso base incorpora explicitamente o comportamento de outro aso de uso. Extend: Relacionamento usado para modelar situações em que diferentes sequências de interações podem ser inseridas em um mesmo caso de uso. Cada uma dessas diferentes sequências representa um comportamento eventual, ou seja, só ocorre sob certas condições, ou cuja realização depende da escolha do ator. Generalização: É um relacionamento que pode existir entre casos de uso e entre atores. Permite que um caso de uso (ou um ator) herde características de um caso de uso (ator) mais genérico, normalmente chamado de caso de uso (ator) base. PAGFgrl(Fq