ES - ICONIX

Embed Size (px)

Citation preview

  • 7/23/2019 ES - ICONIX

    1/27

    Hertz Wilton de Castro Lins

    Metodo logia Icon ix

    UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE

    CENTRO DE TECNOLOGIA

    CURSO DE ENGENHARIA DE TELECOMUNICAES

    Disciplina: Engenharia de software

  • 7/23/2019 ES - ICONIX

    2/27

    Engenharia de software 2

    Tpicos

    Desenvolvimento gil

    Metodologia Iconix

  • 7/23/2019 ES - ICONIX

    3/27

    Engenharia de software 3

    Desenvolvimento gil

    Abordagem de desenvolvimento baseada no desenvolvimento e entrega depequenos incrementos de funcionalidades do sistema.

    Metodologia gil

    Indicada para equipes pequenas e mdias e que iro desenvolver software

    com requisitos vagos e em constante mudana.

    Adota a estratgia

    Acompanhamento constante

    Realizao de vrios ajustes durante o desenvolvimento de software.

  • 7/23/2019 ES - ICONIX

    4/27

    Engenharia de software 4

    Desenvolvimento gil

    Bem sucedido em alguns tipos de desenvolvimento de software: Desenvolvimento de produtos pequenos ou mdios.

    Sistemas personalizados em que existe o compromisso do envolvimento do

    cliente e sem muitos regulamentos externos.

  • 7/23/2019 ES - ICONIX

    5/27

    Engenharia de software 5

    Desenvolvimento gil

    Princpios Envolvimento do cliente

    Entrega incremental

    Pessoas, no processos

    Aceitar as mudanas

    Manter a simplicidade

  • 7/23/2019 ES - ICONIX

    6/27

    Engenharia de software 6

    Desenvolvimento gil

    Exemplos Programao extrema.

    Scrum.

    Feature Driven Development.

    DSDM.

    Adaptive Software Development.

    Crystal.

    Pragmatic Programming.;

    Test Driven Development.;

  • 7/23/2019 ES - ICONIX

    7/27

    Engenharia de software 7

    Iconix

    O ICONIX um processo baseado em modelagem com UML. Possui uma caracterstica exclusiva chamada Traceability of Requiriments

    (Rastreabilidade dos Requisitos), que atravs de seus mecanismos, permite

    checar em todas as fases se os requisitos esto sendo atendidos .

    Ele se destaca por ter um processo no to burocrtico como o RUP, ou seja, no

    gera tanta documentao. E apesar de ser um processo simples como o XP, no

    deixa a desejar na Anlise e Projeto (Design).

  • 7/23/2019 ES - ICONIX

    8/27

    Engenharia de software 8

    Iconix

    Consiste na produo incremental e em paralelo de um conjunto de artefatos que retratam: As vises dinmica e esttica de um sistema,

    Privilegiando a rastreabilidade e a robustez.

  • 7/23/2019 ES - ICONIX

    9/27

    Engenharia de software 9

    Iconix

    Baseada em aspectos fundamentais da O.O. O que fazem os usurios?

    Quais os objetos do mundo real?

    Quais os objetos relacionados com os casos de uso?

    Como os objetos colaboram entre si?

    Como ser construdo o software?

  • 7/23/2019 ES - ICONIX

    10/27

    Engenharia de software 10

    Metodologia Iconix

    Caractersticas O processo conduzido por casos de utilizao

    iterativo e incremental

    A abordagem ICONIX flexvel e aberta,

    Possibilidade de utilizao de mais recursos da UML para complementar os recursosusados nas fases do ICONIX

    Trabalha a partir de um Prottipo de Interfaces

  • 7/23/2019 ES - ICONIX

    11/27

    Engenharia de software 11

    Metodologia Iconix

    nfase especial ao problema da rastreabilidade (traceability) Contempla as

    seguintes tarefas (milestones)

    1. Anlise de requisitos

    2. Anlise e desenho preliminar

    3. Desenho detalhado

    4. Implementao

  • 7/23/2019 ES - ICONIX

    12/27

    Engenharia de software 12

    A metodologia

  • 7/23/2019 ES - ICONIX

    13/27

    Engenharia de software 13

    Rastreabilidade

    Rastreabilidade: Como passar dos casos de uso para os diagramas de sequncia?

  • 7/23/2019 ES - ICONIX

    14/27

    Engenharia de software 14

    Resposta

    Resposta da ICONIX: Anlise de Robustez (conceito e diagramas recuperadosda viso original de Ivar Jacobson)

    Casos de

    Uso

    Descrio

    dos Casos

    Diagramas de

    SequnciaDiagramas

    de Robustez

  • 7/23/2019 ES - ICONIX

    15/27

    Engenharia de software 15

    Etapas

    1. Anlise de requisitos

    2. Anlise e desenho preliminar

    3. Projeto detalhado

    4. Implementao

  • 7/23/2019 ES - ICONIX

    16/27

    Engenharia de software 16

    Big Picture

    Anlise d e requ isito s Anlis e e pro jeto

    Preliminar

    Pro jeto det alhado Imp lement ao

  • 7/23/2019 ES - ICONIX

    17/27

    Engenharia de software 1717

    Criando o Diagrama de Robustez

    Como? Fazer a anlise de robustez, isto , para cada caso de utilizao:

    Identificar um primeiro conjunto de objetos.

    Criar Diagramas de Robustez usando os esteretipos de classes boundary, control, e

    entity

  • 7/23/2019 ES - ICONIX

    18/27

    Engenharia de software 1818

    Elementos do Diagrama de Robustez

    Objetos de fronteira/interface (boundary)

    Permitem aos atores comunicao com o sistema (janelas, pginas Web,

    janelas de dilogo)

    Objetos de entidade (entity)

    Correspondem geralmente aos objetos identificados no modelo do domnio

    Objetos de controle (control)

    Integradores entre os objetos de fronteira e os objetos de entidade:

    Contm as regras de negcio e as polticas de funcionamento de

    modo a potenciarem a independncia das interfaces com os

    utilizadores, dos esquemas das bases de dados, etc.

  • 7/23/2019 ES - ICONIX

    19/27

    Engenharia de software 19

    Elementos do Diagrama de Robustez

    Entidade Interface Controlador

  • 7/23/2019 ES - ICONIX

    20/27

    Engenharia de software 2020

    Diagrama de Robustez: Regras

    Os atores podem comunicar-se com o

    sistema atravs de objetos de

    fronteira.

    Os objetos fronteira comunicam

    apenas com atores e objetos de

    controle.

    Os objetos de entidade comunicam

    apenas com objetos de controle.

    Os objetos de controle comunicamapenas com objetos de fronteira e de

    entidade.

  • 7/23/2019 ES - ICONIX

    21/27

    Engenharia de software 21

    Diagrama de Robustez Exemplo 1

    Registrar consulta

  • 7/23/2019 ES - ICONIX

    22/27

    Engenharia de software 22

    Criando o Diagrama ex 2

    Caso de Uso (UML) Caso de Uso: criar documento

    Fluxo Principal:

    Autor insere ttulo do documento e assunto na tela de criao.

    Sistema abre tela de edio de documentos. Fluxo Alternativo (assunto invlido) :

    Sistema retorna mensagem indicando que o assunto no est cadastrado no sistema.

  • 7/23/2019 ES - ICONIX

    23/27

    Engenharia de software 23

    Diagrama de Robustez Exemplo 2

  • 7/23/2019 ES - ICONIX

    24/27

    Engenharia de software 24

    Iconix

    Milestones 1 (Verif ic ar com preenso do s requ isit os )

    Remover tudo que est fora do escopo

    Verificar se texto dos casos de usos no est abstrato.

    Verificar se textos dos casos de uso esto refletindo as informaes dos prottipos de telas.

    Verificar se foram includos fluxos alternativos

    Fazer rastreamento dos requisitos com os casos de uso.

    Confirmar que o caso de uso descreve o que os usurios intencionam fazer.

    Revisar artefatos com clientes.

    Quando? = Anlise de requisitos

  • 7/23/2019 ES - ICONIX

    25/27

    Engenharia de software 25

    Iconix

    Milestones 2 (Anlise de robus tez)

    Verificar se o fluxo lgico do diagrama de robustez corresponde ao fluxo lgico do caso de uso.

    Verificar se o diagrama de robustez representa o nvel de detalhe adequado.

    Verificar regras de sintaxe do diagrama de robustez

    Verificar se diagrama de robustez engloba fluxos alternativos

    Verificar se cada classe de entidade pode ser alcanada a parte de uma classe de interface

    Verificar se todas as entidades presentes no diagrama de robustez tambm aparecem no modelo

    de domnio atualizado.

    Para cada caso de uso confirmar se a sua descrio textual corresponde a ao seu diagrama derobustez.

  • 7/23/2019 ES - ICONIX

    26/27

    Engenharia de software 26

    Iconix

    Milestones

    3 (Verif icar a qu alidade do p ro jeto)

    Verificar se todos os atributos possuem tipos e mtodos possuem valores de retorno.

    Verificar se todos os participantes revisaram o projeto

    Rastreie todos os requisitos em casos de uso e classes

    Verificar se todas as operaes foram alocadas para as classes corretas

    Verificar se cada diagrama de sequncia leva em considerao fluxos bsicos e

    alternativos

    Para cada diagrama de sequncia confirmar sua conformidade com a descriotextual do caso de uso.

  • 7/23/2019 ES - ICONIX

    27/27

    Engenharia de software 27

    Iconix

    Milestones

    4 (Averiguar sincronizao entre cdigo e projeto)

    Lista baseada nos casos de uso

    Reviso do cdigo

    Foco na deteco de erros