Architecture for View Modeling in SysML Auto-View Generation Working Group Lead: Christopher Delp NASA JPL.

Slides:



Advertisements
Similar presentations
Fraunhofer FOKUS Competence Center MOTION FOKUS VIEW ON MODEL-BASED TEST DESCRIPTION LANGUAGES (TDLS) Alain-G. Vouffo Feudjio.
Advertisements

Programming Paradigms and languages
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel.
Architecture Representation
Using the Crosscutting Concepts As conceptual tools when meeting an unfamiliar problem or phenomenon.
OASIS Reference Model for Service Oriented Architecture 1.0
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
Liang,Introduction to Java Programming,revised by Dai-kaiyu 1 Chapter 10 Object-Oriented Modeling.
1 © Wolfgang Pelz UML3 UML 3 Notations describe how to use reusable software. Package Component Deployment Node.
Design Patterns CS is not simply about programming
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Java Collections. Lecture Objectives To understand the concepts of Java collections To be able to implement Java programs based on Collections.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
UML Notations Activity diagrams State diagrams Class diagrams Use-case diagrams.
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
UML Class Diagrams: Basic Concepts. Objects –The purpose of class modeling is to describe objects. –An object is a concept, abstraction or thing that.
Abstract data types What does ‘ abstract ’ mean? From Latin: to ‘ pull out ’— the essentials –To defer or hide the details –Abstraction emphasizes essentials.
BACS 287 Basics of Object-Oriented Programming 1.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
SEG4110 – Advanced Software Design and Reengineering
Design Patterns.
1 Data Modeling : ER Model Lecture Why We Model  We build models of complex systems because we cannot comprehend any such system in its entirety.
An Introduction to Software Architecture
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 18. Review User interface Design principles Design Guidelines.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
1 Java Inheritance. 2 Inheritance On the surface, inheritance is a code re-use issue. –we can extend code that is already written in a manageable manner.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
95-843: Service Oriented Architecture 1 Master of Information System Management Service Oriented Architecture Lecture 3: SOA Reference Model OASIS 2006.
CHAPTER 6 - MODELING ANH AU. BACKGROUND Architectural model – an artifact that captures some or all of the design decisions that comprise a system’s architecture.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Unified Modeling Language © 2002 by Dietrich and Urban1 ADVANCED DATABASE CONCEPTS Unified Modeling Language Susan D. Urban and Suzanne W. Dietrich Department.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Object Oriented Analysis: Associations. 2 Object Oriented Modeling BUAD/American University Class Relationships u Classes have relationships between each.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Ch- 8. Class Diagrams Class diagrams are the most common diagram found in modeling object- oriented systems. Class diagrams are important not only for.
MDD approach for the Design of Context-Aware Applications.
Software Engineering Lecture 11: System Analysis.
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 11 Object-Oriented.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
ITEC0724 Modern Related Technology on Mobile Devices Lecture Notes #2 1.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 2, Modeling with UML: UML 2 Metamodel Note to Instructor: The material in this.
Chapter 6: The Analysis Workflow Chapter 7: Classes and Objects Chapter 8: Finding Analysis Classes [Arlow and Neustadt, 2005] CS 426 Senior Projects in.
1 SOA Seminar Seminar on Service Oriented Architecture SOA Reference Model OASIS 2006.
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
® IBM Software Group © 2009 IBM Corporation Viewpoints and Views in SysML Dr Graham Bleakley
Model Based Engineering Environment Christopher Delp NASA/Caltech Jet Propulsion Laboratory.
Chapter 9 Architectural Design. Why Architecture? The architecture is not the operational software. Rather, it is a representation that enables a software.
Interface Concepts Modeling Core Team
SysML 2.0 Requirements for Visualization
SysML v2 Formalism: Requirements & Benefits
Systems Analysis and Design With UML 2
Chapter 11 Object-Oriented Design
Where does one end and the other start?
Model-Driven Analysis Frameworks for Embedded Systems
UML Class Diagrams: Basic Concepts
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Chapter 20 Object-Oriented Analysis and Design
Chapter 9 Architectural Design.
Visual Modeling Using Rational Rose
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
Software Architecture & Design
Presentation transcript:

Architecture for View Modeling in SysML Auto-View Generation Working Group Lead: Christopher Delp NASA JPL

Outline Concept of Views and Viewpoints What’s in SysML today What is the proposed change Questions about views Questions about expose Questions about instances

Engineer “The glass is twice as big as it needs to be”

What’s in SysML now?

What is the proposed SysML pattern?

Constraints The Viewpoint::method is defined as the method of the constructor of the base class The method of the constructor of the base class must have access to the viewpoint stereotype properties The View constructor may provide filtering View base class is a subclass of viewpoint base class  Conform would extend Generalization  Supplier of the conform is the Viewpoint

> MyViewpoint {abstract} ___________________ > MyView() myModelElemen t myGeneratedDoc.doc x > MyView _____________________ > Constraints: The Viewpoint::method is defined as the method of the constructor of the base class The method of the constructor of the base class must have access to the viewpoint stereotype properties The View constructor may provide filtering View base class is a subclass of viewpoint base class  Conform would extend Generalization  Supplier of the conform is the Viewpoint > /method presentation

Trivial Example Car Model

View Hierarchies and Trees How do I make an outline of views? o Using associations between views accomplishes this. How do I name an included view according to the context I have used it in? o The property/association end accommodates this. How do I order the views in the outline? o The includedView calculates the associated views and allows the model developer to order these views according to the desired read order. What is the difference between a view generated by a method and the inclusion of another view that has its own method? o The key difference is centered on re-use. If a view is already developed, this view can simply be referenced. It is also possible to reuse the method in the viewpoint that the view conforms to. What do Associations vs. composite/shared associations mean? o This depends on how the view tree is interpreted into a document or other artifact. Given the wide range of artifacts and transformations that could produce artifacts from view trees, we focus on using the well defined SysML associations to provide the foundation for how these transformations might be implemented.

View Tree

Viewpoints

Exposing the Model How do I relate the view and the model? o The Expose relationship allows the view to be related to the parts of the model that represent the access points for what will be represented in the view. How do the view and the expose relationships relate to the viewpoint method as an argument? o The view and the model elements specified by the expose relationship are arguments to the viewpoint method. What compliments expose in terms of exclusions? o This is currently not addressed.

View Expose

View2View

View Product What are the instances of View? o The instances of views are the artifacts that are generated as the result of processing the view model into something like a document or other concrete product that allows the stakeholder to consume the information. Artifacts are not currently tied to any semantic such as UML artifact. How flexible is the presentation property in viewpoint? o Just like the current viewpoint and view pattern, we have not entered into specifying the execution semantics. The URIs are optional given that different organizations may choose different languages to implement their viewpoint methods. Depending on if the language of the viewpoint can work with URIs and if the organization has these URI mechanisms set up then they would be able to use this common web technology. If not then they can write their own specification as a simple string describing these style properties. I think it is profoundly reasonable to expect any contemporary language to be able to deal with URIs. Adding this option opens the door for a powerful future-state capability.

Migration How do I migrate behavior from current method string? o Just move the text into and opaque behavior or other behavior class and add the behavior to the method of the operation