Baixe o app para aproveitar ainda mais
Prévia do material em texto
NP1 – ANALISE DE SISTEMAS O.O PROF CAMILA • Compreender a importância da análise e projeto de sistemas • Definir um processo de software genérico • Conhecer os principais modelos de ciclos de vida de software ANÁLISE E PROJETOS DE SISTEMAS = ENG DE SOFTWARE O que é Engenharia de Software -> “Estudo ou aplicação de abordagens sistemáticas para o desenvolvimento, operação e manutenção de software de qualidade.” Por exemplo, engenheiros civis fazem plantas antes de produzirem prédios. Alguns objetivos da Engenharia de Software são: qualidade de software, produtividade no desenvolvimento, operação e manutenção de software, qualidade x produtividade e permitir que profissionais tenham controle sobre o desenvolvimento de software dentro de custos, prazos e níveis de qualidade desejados. Existem duas possíveis causas para a crise de software: Essenciais -> Complexidade dos sistemas e dificuldade de formalização. Acidentais -> Má qualidade dos métodos, linguagens, ferramentas, processos e modelo de ciclo de vida e falta de qualificação técnica. ELEMENTOS E ATIVIDADES DA ENG DE SOFTWARE ELEMENTOS Atividades Modelos de ciclo de vida de software Modelagem do negócio Linguagens Identificação de requisitos Métodos Análise e Projeto Ferramentas Implementação Processos Testes Distribuição Planejamento Gerenciamento Gerência de Configuração e Mudanças Manutenção Um processo define quem está fazendo ‘o quê’, ‘quando’ e ‘como’ para atingir determinado objetivo. Não é uma prescrição rígida de como desenvolver softwares, é uma abordagem adaptável a equipe de software. Uma metodologia de processo genérica para desenvolvimento de software compreende cinco atividades: Comunicação, Planejamento, Modelagem, Construção e Emprego. Estas cinco atividades podem ser utilizadas para o desenvolvimento de programas pequenos e simples, até grandes aplicações para Internet e engenharia de sistemas baseados em computador. Os processos podem ser definidos por modelos de ciclo de vida de software. Os principais modelos são: Cascata, Incremental, Espiral e Força bruta. DIAGRAMA DE CASOS DE USO Conteúdo: Casos de uso, Atores, Relacionamentos, Dependência, Generalização e Associação. Seus usos comuns são para fazer modelagem do contexto de um sistema e fazer modelagem de um requisito do sistema. Podem ser aplicados para captar o comportamento pretendido do sistema. Representam uma “macro-atividade” que deverá ser desempenhada pelo sistema, estão associados aos requisitos funcionais do sistema. Eles representam o comportamento do sistema do ponto de vista dos usuários. Atores -> Representam um conjunto de papeis coerentes que os usuários de casos de uso desempenham quando interagem com ele. Residem fora do sistema. Podem ser: Humanos, Dispositivos, Sistemas. Representação: Exemplo: Fronteira Assunto Cenário Casos de Uso Associação Ator Relacionamentos -> · Entre Atores e Casos de Uso, indica a comunicação (associação) entre o caso de uso e o ator: · Entre Atores. Generalização: Representa “herança”. “É do tipo de...”: · Entre Casos de Uso. Generalização: Representa “herança”. “É do tipo de...”: · Entre Casos de Uso. Dependência: Indica que um caso de uso depende da conclusão de outra para sua operacionalização: · Entre Casos de Uso. Inclusão: Indica que um caso de uso utiliza um caso de uso ou parte dele em sua operacionalização. Inclui de forma incondicional: · Entre Casos de Uso. Extensão: Indica que um caso de uso “amplia” o significado de outro. Comportamento opcional: · Exemplos de Relacionamentos: Um Diagrama de caso de Uso bem-estruturado tem como foco comunicar um aspecto da visão estática de caso de uso do sistema, contém somente os casos de uso e atores essenciais à compreensão desse aspecto. Não é tão minimalista, que informe mal o leitor sobre a semântica que é importante. Ao definir um diagrama de caso de uso: Use nomes únicos e identificáveis. Distribua os elementos para minimizar o cruzamento de linhas. Organize os elementos espacialmente. Use notas e cores como indicações visuais e para chamar atenção para características importantes do diagrama. Tente não mostrar muitos tipos de relacionamentos, em geral, se você tiver relacionamentos de inclusão e extensão complicados, coloque esses elementos em outro diagrama. DIAGRAMA DE ATIVIDADES DA UML É um diagrama da UML que permite modelar o comportamento de funcionalidades na perspectiva do fluxo(passos) de atividades. Sua função é ajudar o desenvolvedor a entender quais são as atividades e os atores envolvidos nas principais funcionalidades do software. A partir dessas informações, o desenvolvedor pode efetuar uma captura de requisitos mais eficaz. Em vez de apresentar um algoritmo através de uma descrição textual, é possível apresenta-lo através de um diagrama de atividades para melhor conhecer o funcionamento de um requisito ou funcionalidade. Divergência: (fork) Ponto no qual duas ou mais tarefas podem se iniciar em paralelo Convergência: (join) Ponto no qual duas ou mais tarefas paralelas se unem para dar inicio a uma nova tarefa única. Exemplo: Observação: · Só pode haver um nó inicial · Pode haver mais que um nó final · Cada atividade só pode ter um único fluxo de entrada e um único fluxo de saída TRABALHO AVALIATIVO 1 CÓDIGO DE OPERADORES EM JAVA:
Compartilhar