Stakeholder

Embed Size (px)

Citation preview

  • Stakeholders e Escolha de Views Disciplina: Arquitetura de SoftwareAlunas: Lcia Spnola Simone Amorim

  • AgendaArquitetura de Software breve reviso

    Stakeholders

    Arquitetura e atributos de qualidade

    Stakeholders e atributos de qualidade

    Tipos de Stakeholders, seus interesses e tipos de viso associados

    Exemplo de conflitos de interesses SASF

    Concluses

  • Reviso O que arquitetura de software?

    ... the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.

    ANSI/IEEE Std 1471-2000Recommended Practice for Architectural Description of Software-Intensive

  • RevisoDocumentao da Arquitetura de Software (CLEMENS et al ,2001)

    Um meio para apresentar o sistema s pessoas;um veculo de comunicao entre os interessados no sistema;a base para a anlise do sistema.

    Lucia - Idealmente, esta representao fornece um guia de entendimento intelectual do sistema como um todo, permitindo aos projetistas raciocinar sobre a possibilidade do sistema satisfazer a determinadas exigncias, e sugere um blueprint para a construo do sistema e a sua composio

  • MissionSystemArchitectureStakeholderEnvironment Architecture DescriptionConcernViewpointViewRationaleInfluenciaInseridoTem umaDescrita porModelo IEEE - 1471-2000

  • Tipo de Vises e estilos

    DecomposioGeneralizao Module ViewtypeUsoCamadasPipe and FilterShared-dataClient-ServerPublish-SubscribeC&C ViewtypePeer-to-PeerCommunicating ProcessesPipe and FilterShared-DataDeploymentAllocation ViewtypeImplementationWork assignmentInterfacesVariability guidesOutrosContest diagramsAnalysis resultsMapping between viewsRationales and constraints

  • Quantas vises so necessrias?O quanto de detalhes devem conter?

    Outras perguntas:

    Qual o perfil das pessoas envolvidas?Qual o oramento?Qual o tempo disponvel?Quem so os stakeholders?

    Lucia - Estas perguntas (as primeiras) s sero respondidas diante do real contexto do projeto se estas outras perguntas forem respondidas

    Fazer um tradeoff - qual o onus de ongo prazo em funo de se deixar de investir no curto prazo.

  • Stakeholders - definio Um stakeholder em uma arquitetura de software uma pessoa, grupo ou entidade com um interesse ou preocupaes sobre a realizao da arquitetura. (ROZANSKI; WOODS, 2005 apud GERMOGLIO, 2009)

    Lucia - Enterder quem so os Stake e suas necessidades de informao fundamental para a escolha das visesLucia - O sucesso ou fracasso de uma arquitetura depende do conhecimento que se tem dos SK e como seu interesses podem ser atendido.

  • Stakeholders - preocupaes

    financiamentoprojetodesenvolvimentotesteusomanuteno

  • Stakeholders e Arquitetura A elaborao da arquitetura tem como objetivos facilitar o cumprimento das responsabilidades e atender s necessidades dos stakeholders.

    Lucia - A arquitetura do software desempenha tipicamente um papel chave como uma ponte entre requisitos e cdigo.

  • Stakeholders - necessidadesdesempenho segurana usabilidade viabilidade econmica

    REQUISITOS DE SOFTWARE

  • Aquitetura e atributos de qualidade

    Requisitos ATRIBUTOS DE QUALIDADE

    A arquitetura descreve como alcanar os atributos de qualidade - voltados para os requisitos no funcionais - atravs das diversas decises arquiteturais. Obs: os atributos de qualidade, no entanto, envolvem aspectos arquiteturais e no arquiteturais

  • Atributos de QualidadeCustoReusabilidadeTestabilidadeManutenibilidadeLegibilidadeDesempenhoEscalabilidadeSeguranaConfiabilidade

  • Stakeholders e Atributos de QualidadeStakeholders influenciam na arquitetura de acordo com diferentes necessidades e responsabilidadesAcontecem conflitos de interessesArquiteto - resolver conflitosTodos devem ser informados das restries de interesses em relao aos outros.

  • STAKEHOLDERSREQUISITOSATRIBUTOS DE QUALIDADEARQUITETURAproporcionaestabelecematendem

  • Tipos de Stakeholders e seus interessesGerente de projetocronograma / custosalocao de recursos / terceirizao planos de contingncias -> funcionalpropsitos e restries gerais do sistemaaquisio de software / reuso interaes com outros sistemasaquisio de hardware

    Vises / estilos

    Diagrama de contexto de alto nvelUses (mdulo) ou Layer (mdulo)Decomposition (mdulo) ou Work Assignment (allocation)Deployment (allocation)Rationale e restries

  • Desenvolvedoridia geral do sistemaqual a sua parte no desenvolvimento e uma viso detalhada desta parteas interfaces cdigos disponveis para reusorestries (atributos de qualidade, sistemas legados, oramento, prazo etc)Tipos de Stakeholders e seus interessesVises / estilos

    Generalization Diagrama ContextoLayer Rational / RestriesC&CMapping between viewsInterfacesImplementation

  • Testadores e integradoresespecificao de comportamento do elemento a ser testadodocumentao das interface do elemento guias de uso do elementoviso de uso do elemento para permitir um trabalho incrementalambiente adequado para testeTipos de Stakeholders e seus interessesVises / estilos

    Vises / estilos

    Generalization Diagrama contextoLayer Mapping between viewsUsesC&CInterfacesImplementation

  • Projetistas de outros sistemas

    conjunto de operaes a serem providas e requeridas (interfaces)protocolos para as operaes de interfaces

    Tipos de Stakeholders e seus interessesVises / estilos

    Diagrama de contexto de alto nvelInterfaces

  • Mantenedoresmesmas informaes que o desenvolvedorviso que permita rastrear os elementos a serem alteradosviso que permita fazer uma anlise de impacto da alterao viso das decises de desenvolvimentoTipos de Stakeholders e seus interessesVises / estilos

    Generalization Diagrama ContextoLayer InterfacesUses Rational /restriesDecompositionC&CMapping between views

  • 1Product line application builder

    guia de variabilidade do vrios elementosas mesmas informaes que o integrador1 aplicaes por linha de produto: um conjunto softwares compartilhando um conjunto de caractersticas que satisfazem as necessidades de um determinado segmento de mercadoTipos de Stakeholders e seus interessesVises / estilos

    UsesLayer Diagrama ContextoC&C Mapping between viewsVariability GuidesInterfaces

  • O clientecronogramacustoscapacidade do sistema em atingir os atributos de qualidade e requerimentos funcionaisconhecimento do ambiente em que o sistema vai rodar, pois tem a responsabilidade de supri-lo interoperabilidade do sistema com os outros sistemas j existente no seu ambiente

    Tipos de Stakeholders e seus interessesDeploymentWork AssignmentAnalysis resultsVises / estilos

  • Usurios Finais podem ter insights teis ao analisar a arquitetura no que se refere:

    como as entradas do sistema so transformadas em sadascomo as funcionalidades esto alocadas s plataformas as quais os usurios vo manipularresultado de desempenho e anlises que lidam com confiabilidadeTipos de Stakeholders e seus interessesVises / estilos

    C&C Pipe and FilterDeploymentAnalysis results

  • Analista (arquiteto / projetista)

    avalio dos atributos de qualidade em relao s expectativas dos stakeholder:

    Performance: Viso de Implantao, Especificao de Comportamento e Viso C&C que ajudam a controlar a execuo.

    Exatido: Viso C&C mostra o fluxo de transformao dos dados e ajuda a identificar locais onde o calculo pode comprometer a preciso.

    Modificabilidade: Viso de Decomposio ajuda na anlise de impacto. Viso de Usurio mostra as dependncias. Viso C&C e de Processos certificam que a mudana no trar um impasse

    Tipos de Stakeholders e seus interesses

  • Analista (arquiteto / projetista)

    avalio dos atributos de qualidade em relao s expectativas dos stakeholder:

    Comportamento Correto: Analisa as especificaes de comportamento.

    Segurana: Viso de Implantao mostra as conexes externas. Viso C&C mostra o fluxo de dados que controla por onde a informao passa. Viso de decomposio mostra onde autenticao e integridade so tratadas. Viso de Usurio mostra como os privilgios so transferidos.

    Tipos de Stakeholders e seus interesses

  • Analista (arquiteto / projetista)

    avalio dos atributos de qualidade em relao s expectativas dos stakeholder:

    Disponibilidade: A viso C&C ajuda na anlise de Deadlock, sincronizao de dados e problemas de consistncia. A viso de Implantao usada para mostrar pontos de quebra.

    Usabilidade: Viso de Decomposio permite anlise da informao. Ajuda na reutilizao de dados, atribuio de responsabilidades e operaes relacionadas com a usabilidade. Viso C&C permitir a anlise das possibilidades de cancelamento, de recuperao de falha, etc.

    Tipos de Stakeholders e seus interesses

  • Analista (arquiteto / projetista)

    efetuar o ATAM (Architecture Tradeoff Analysis Method) - negociar os conflitos de interesses entre os stakeholders

    Tipos de Stakeholders e seus interesses

  • Sistema de Streaming de FilmesSimplificao do SASF.Realiza apenas a transmisso de filmes.Requisitos:Transmitir filmes somente a pessoas autorizadas.Impedir redistribuio de filmes pelos usurios.

  • Sistema de Streaming de FilmesUtiliza a Gesto de Direitos Digitais (GDD).Define o servidor de stream, o aplicativo cliente e o reprodutor de filmes para decodificar o video.Descartando o stakeholder Distribuidor de Filmes e a GDD:No precisa mais implementar reprodutor de filmes prprio.Melhora usabilidade (utilizao de qualquer reprodutor)

  • ConflitoPela GDD a autenticao do usurio dificulta assistir o filme. Ento temos Segurana X Usabilidade.

    Pela GDD a decodificao do arquivo encriptado causa perda de desempenho. Ento temos Segurana X Desempenho

  • ConflitosDesempenho X Custo: usurios querem desempenho e gerentes menor custo.Desempenho X Escalabilidade: Demanda crescente de usurios causa perda de desempenho.Segurana X Usabilidade: Autenticao, Confidencialidade e auditabilidade geram mais passos para executar as mesmas aes.

  • Atendimento de RequisitosArquitetura deve atender requisitos impostos pelo sistema.No caso de aparelhos de software embarcados o requisito ter um bom desempenho.Desempenho e economia mais crtico que extensibilidade.O arquiteto no deve se deixar levar por modas de padres ou frameworks.

  • ConclusesConceito de stakeholders.Influncia desses stakeholders;Relao dos stakeholders e dos atributos de qualidade esperados pelo software.Relacionameto dos stakeholders entre si. Entender quem so os Stakeholders e suas neces-sidades de informao fundamental para a escolha das vises.

  • Referncias CLEMENTS, P. et al. Documenting Software Architectures, 2002.

    GERMOGLIO, G. Arquitetura de Software, 2009.

    Recommended Practice for Architectural Description of Software Intensive Systems, IEEE Std. 1471-2000