A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Marcos Silva 1 Metamodelo de Artefatos de Software 16 de abril de 2015 Toacy Oliveira 2 Ricardo Bastos 3

Apresentações semelhantes


Apresentação em tema: "Marcos Silva 1 Metamodelo de Artefatos de Software 16 de abril de 2015 Toacy Oliveira 2 Ricardo Bastos 3"— Transcrição da apresentação:

1 Marcos Silva 1 mtsilva@inf.puc-rio.br Metamodelo de Artefatos de Software 16 de abril de 2015 Toacy Oliveira 2 toacy@acm.org Ricardo Bastos 3 bastos@pucrs.br 1 Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio) 2 School of Computer Science – University of Waterloo 3 Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)

2 Visão Geral Processo de Desenvolvimento de Software 2 Atividades Papéis Artefatos Informações Pessoas I. Sommerville, Software Engineering (7th Edition). Pearson Addison Wesley, 2004.

3 Problema 3 Artefato Quando? Onde? Quem? Como? O que? Após algum tempo, como descobrir: Mas isso é ruim? Por que?

4 Motivação Realidade: Artefatos são aglomerados de informações Objetivo: Elaborar uma representação que permita enxergar os Artefatos de Software como entidades “estruturadas”. 4 ArtefatosInformações + Dificuldades: D1: Inconsistência da Informação D2: Reutilização de Informações D3: Versionamento Metamodelo  MOF Repository + UML + SPEM

5 Solução 5 ArtifactInformation 1..** Vision Stakeholder Requirement 1..* > Vision Pay with Debit Card Print Receipt Marcos S. M2 meta-model M1 model M0 real instances Toacy O. > M3 meta meta-model Class (from MOF) Extent (from MOF) VersionedExtent (from MOF Versioning) > Image List Text > WorkProduct (from SPEM) > Definition Layer Use Layer Project Layer 2 3 1

6 D1: Inconsistência da Informação 6 /parent/children* * * WorkProductDefinition (from SPEM) ContainerDefinitionArtifactContainer_Relationship ContainerDefinition_Relationship ArtifactFragment_Relationship ContainerFragment_Relationship Fragment_Relationship WorkProductDefinitionRelationship (from SPEM) *1..* * ArtifactDefinition isExternal:Boolean Akind:ArtifactKind *1..* /fragment * * FragmentDefinition Extensão SPEM Relacionamentos....

7 D2: Reutilização de Informações Metamodelo para estruturar a informação 7 Group ComplexInformationElement SpecificInformationElement Diagram Text * internalContents Image caption: String Path: String Label:String * List isLabeled: String isOrdered: String isEnumerated:String orderByAZ() orderByZA() contents * value:String * children parent SimpleInformationElement Ponto de extensão Tipos de informação mais comuns Composição de Informações

8 Exemplo 8 D1 D2 D3 I) Vision 1. Introduction 1.1 Purpose 1.2 Scope... 4. Stakeholders 4.1 Stakeholder 1 2.2 Problema II)UC-Spec. 1.Description 2.Flow of Events... 4.Preconditions 4.1 Precondition 1... III) Glossary... 2. Terms, Abbreviations a) Conceptb) Structure > Commons Descriptors purpose scope name Text Group List Types Glossary Use-Case Definition Referenced Artifacts c) Model Vision Associations Informations Containers Artifacts >

9 D 2,5: Rastreabilidade Quem? O que? Quando? Como? Onde? 9 Atividades Papéis Artefatos Informações Pessoas D1 D2 D3 D2,5

10 D3: Versionamento 10 Project A Project B Project C Process v1.0 Process v2.0 Process v3.0 Metamodel v1.0 Metamodel v2.0 Glossary (not created) M2 meta-model M1 model M0 real instances Artifact name: String mandatory: Boolean UseCase Specification Use-Case Specification mandatory=true Glossary mandatory=false UseCase Specification Artifact name: String Glossary Use-Case Specification Glossary Revision: 0 1 st Commit Revision: 1 Modifications at M2, M1, M0 Artifact name: String mandatory: Boolean UseCase Specification Use-Case... mandatory=true Glossary mandatory=true Revision: 2 Modifications at M1 and M0 Glossary CRUD Login Logoff Terms Text value: String > Revisions Tool Vendor Process Engineer Software Engineer D1D2D3D2,5

11 Avaliação: Procedimento Method Content Library Process Structure Project FileSVN 1 – Authoring (Processo) 2 – Tailoring (Família) 3 – Enactment (Instância de Processo) Ferramenta + Method Content, Process Structure Modelagem de Artefatos RUP e Scrum

12 Avaliação: Comparações Exame analítico em relação a: –Estruturação –Organização Rastreabilidade –Reutilização –Redundância –Versionamento 12

13 Contribuição No contexto de uma solução com artefatos de software bem estruturados: Metamodelo que define como modelar Processos de Desenvolvimento de Software Eclipse plugin “apoiar a modelagem desses processos (SwAT)” 13 http://code.google.com/p/spemarti - Guia de Modelagem - Regras para Boa Estruturação e Reutilização - Metamodelo SPEM2xt - UML Profile - SwAT (Software Artifact Specification Tool) - Exemplos de Utilização

14 Conclusão O paradigma atual não se preocupa com essa situação. Entretanto, a solução obteve sucesso nos objetivos, alterando o paradigma de utilização das informações em PDSs. + avaliação (estudo de caso, experimentos) Observar Variabilidades na modelagem Processos Fazer análise comportamental dos Artefatos 14

15 Obrigado! zero.ufal@gmail.com 15

16 Marcos Silva 1 mtsilva@inf.puc-rio.br Software Artifact Metamodel 16 de abril de 2015 Toacy Oliveira 2 toacy@acm.org Ricardo Bastos 3 bastos@pucrs.br 1 Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio) 2 School of Computer Science – University of Waterloo 3 Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)


Carregar ppt "Marcos Silva 1 Metamodelo de Artefatos de Software 16 de abril de 2015 Toacy Oliveira 2 Ricardo Bastos 3"

Apresentações semelhantes


Anúncios Google