Metadata Driven Aspect Specification Ricardo Ferreira, Ricardo Raminhos Uninova, Portugal Ana Moreira Universidade Nova de Lisboa, Portugal 7th International.

Slides:



Advertisements
Similar presentations
VARTAN – Validation Reporting Templates Jürgen Teutsch, NLR CAATS Workshop, 16-Feb-2006, Lanzarote.
Advertisements

Database System Concepts and Architecture
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 2.
Object-Oriented Analysis and Design
TC3 Meeting in Montreal (Montreal/Secretariat)6 page 1 of 10 Structure and purpose of IEC ISO - IEC Specifications for Document Management.
XML for Information Management – Day 2 Airi Salminen University of Erlangen-Nuremberg Computational Linguistics Instructor: Professor Airi Salminen
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Integrating data sources on the World-Wide Web Ramon Lawrence and Ken Barker U. of Manitoba, U. of Calgary
DATA WAREHOUSING.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Automatic Data Ramon Lawrence University of Manitoba
Requirements Gathering : Determining the scope of the system 1. Elicitiation – fact finding 2. Specification 3. Validation.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
What is Business Analysis Planning & Monitoring?
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
WP.5 - DDI-SDMX Integration
WP.5 - DDI-SDMX Integration E.S.S. cross-cutting project on Information Models and Standards Marco Pellegrino, Denis Grofils Eurostat METIS Work Session6-8.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Calculation BIM Curriculum 07. Topics  Calculation with BIM  List Types  Output.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
Business Analysis and Essential Competencies
José Paulo Leal | Ricardo Queirós CRACS & INESC-Porto LA Faculdade de Ciências, Universidade do Porto Rua do Campo Alegre, Porto PORTUGAL.
Introduction to MDA (Model Driven Architecture) CYT.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Chapter 7 Applying UML and Patterns Craig Larman
Chapter 7 System models.
System models l Abstract descriptions of systems whose requirements are being analysed.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
1 CMPT 275 High Level Design Phase Modularization.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Software Architectural Views By the end of this lecture, you will be able to: list and describe the views in the 4+1 view model of software architecture.
Metadata By N.Gopinath AP/CSE Metadata and it’s role in the lifecycle. The collection, maintenance, and deployment of metadata Metadata and tool integration.
1 Software Design Lecture What’s Design It’s a representation of something that is to be built. i.e. design  implementation.
SWE 513: Software Engineering
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Statistical process model Workshop in Ukraine October 2015 Karin Blix Quality coordinator
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Databases (CS507) CHAPTER 2.
Databases and DBMSs Todd S. Bacastow January 2005.
Elaboration popo.
Introduction To DBMS.
Object oriented system development life cycle
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Abstract descriptions of systems whose requirements are being analysed
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Chapter 2: Database System Concepts and Architecture
The Re3gistry software and the INSPIRE Registry
Data, Databases, and DBMSs
2. An overview of SDMX (What is SDMX? Part I)
Analysis models and design models
Database Systems Instructor Name: Lecture-3.
Database System Concepts and Architecture
NIEM Tool Strategy Next Steps for Movement
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
Presentation transcript:

Metadata Driven Aspect Specification Ricardo Ferreira, Ricardo Raminhos Uninova, Portugal Ana Moreira Universidade Nova de Lisboa, Portugal 7th International Workshop on Aspect-Oriented Modeling

Metadata Repository Metadata offers the basis to describe the content, quality and structure of data The repository stores information needed to support navigation over stored data for reuse, versioning control and traceability, through meta-relations Proposal:  Structuring Information (templates)  Representation with XML Schema  Metadata Repository structure  Client Applications

Our vision Normalize the representation of concerns Enable the reuse of system components Develop a multi-user open platform that enables consult, addition and refinement of systems Intuitive navigation between concerns in a system and concerns in different systems, from different development activities Propose a set of applications for automatic documentation and validation of systems

Making “vision” come true Suggest generic templates to represent systems & concerns Concretise the template through an open format (non proprietary) that can be handled by external applications Develop an architecture based in metadata that enables the support (e.g. storage, querying and management) of information previously formatted Develop a set of client applications that make use of metadata, offering functionalities for editing, visualization and validation.

Early Aspects versus Implementation Aspects What approach should be followed?  Early Aspects? Identified in the early (requirements) phase of software lifecycle Offers a set of candidate concerns to aspects Can be further refined by implementation aspects or architectural aspects in later phases  Implementation Aspects? Aspects are only considered in the implementation phase Their identification happens during the implementation process, requiring code refactoring Followed “Early Aspects” approach as it offers a more generic solution and because it also gathers “Implementation Aspects”

Two main structures needed A template for systems and another for concerns  offer a clear presentation for the system in terms of the context in which it is applicable and,  define the consequences resulting from its usage

System Template Field Name#Description Name1System’s name AliasNAdditional names that also identify the system VersionNChronological register of all previous versions of the system Context1Description of the environment in which the problem and solution occur and for which the solution is desirable MotivationsNDescription of problematic situations intended to motivate the use of the system ConcernsNList of concerns involved in the problem modelling Similar Systems NOther systems similar to the current one Known Uses NDescribes known occurrences and application of the system

Concern Template (1) Field Name#Description Concern Name1Concern name SourceNInformation source (e.g. Domain, stakeholders, business process, documents and catalogues) StakeholdersNUsers that need the concern in order to accomplish their job Description1Short description of the intended behaviour of the concern ResponsibilitiesNList of what the concern must perform; knowledge of properties the concern must offer ContributionsNList of concerns that contribute or affect this concern. Contribution can be positive or negative Stakeholder Priorities NExpresses the importance of the concern for a given stakeholder.

Concern Template (2) Field Name#Description Priority1Expresses the importance of the concern within the system Required Concerns NList of other concerns needed or requested by the concern being described Outcome1The outcome result for this concern at implementation level Similar Concerns NOther concerns similar to this one Refinement Concerns NImplementation or architectural concerns that can be used to refine the current concern Extensions0...NAdditional extensions to the definition of the concern

How to represent the information? Templates  Documental information  Structured XML  Widely used standard (W3C)  Enables the representation of any type of data XML Schema  Widely used standard (W3C)  Enables the definition of a structure for a XML document  Enables the validation of structure and data types Proposal  Use XML Schema for the definition of generic structure (Templates)  Use XML for each of the system and concern instances

XML Schemas

System Complex Type (1)

System Complex Type (2)

Concern ComplexType (1)

Concern ComplexType (2)

Metadata Repository (1) Implements an architecture for storage, access and management of system and concern instances compliant with the proposed templates All instances are XML files, validated by XML Schemas previously defined Support of concepts (Stakeholders, Concerns, ImplementationAspects, ArchitecturalAspects, Systems) and relations between them A database (relational or XML native) will support the infrastructure Offers a set of services to external clients for metadata handling

Metadata Repository (2)

Future Applications (1) Editor  Management of information stored in the repository: systems, concerns, stakeholders, refinement aspects and versioning  Works as a specialized editor of XML instances  Hides from the user the way how data is stored (XML)

Future Applications (2) Visualizer:  Complete system visualization and respective concerns  Navigation: Between systems and concerns Traceability for the decisions made along the software lifecycle (from requirements to implementation)  Offers a set of visualizations (outputs) necessary for documentation and validation purposes

Future Applications (3) (Visualizer) VisualizationDescription UML Use CasesUse cases diagram where the concerns and stakeholders are mapped to use cases and actors respectively Match Points Table Identifies a set of Match Points resulting from the composition of concerns Match Points vs. Stakeholders Table Identifies which are the stakeholders involved in the Match Points for the resolution of possible conflicts Composition Rules Set of rules (one per Match Point) that define a sequential composition of required concerns.

Future Applications (4) Validator:  Using the visualization offered by the Visualizer, this application enables an interactive process (requires user feedback) of validation  If a violation is detected, it shall be possible to automatically execute the Editor to solve the conflicting information

Thank you