1 Copyright © 2014 Atego. Patterns INCOSE MBSE WG – 2014-02-27Simon A. Perry - Atego.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 32 Slide 1 Aspect-oriented Software Development.
Advertisements

Design Patterns Examples of smart use of inheritance and polymorphism: Composite Pattern State Pattern FEN 2014UCN Teknologi/act2learn1.
Object-Oriented Design Patterns Composite Singleton State Observer … Autumn 2012UCN Technology: IT/Computer Science1.
CSE Software Engineering: Analysis and Design, 2005Lecture 8A.1 Software Engineering: Analysis and Design - CSE3308 Design and Analysis Patterns.
Fundamentals of Software Development 1Slide 1 Gang of Four The beginnings… The original “patterns” idea was from architecture – there are repeatable patterns.
Design and Programming Patterns Associated with Java Networking by Margaret Toews cs843, Spring 2003.
Design Patterns Daniel McClain. Background What are they?  Way of recording solutions to recurring design problems History  “A Pattern Language: Towns,
Introduction to Design Patterns (1). “ In software engineering, a design pattern is a general reusable solution to a commonly occurring problem in software.
Ralph Johnson - University of Illinois1 Patterns: What They Are, and How to Write Them Ralph Johnson University of Illinois at Urbana-Champaign
OOHDM Hypermedia Research Work Designing Web-based applications with Object Oriented Hypermedia Design Method OOHDM.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Design Patterns and Responsibility Assignment CMPT 371 Fall 2004 J.W. Benham.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
PRESENTED BY SANGEETA MEHTA EECS810 UNIVERSITY OF KANSAS OCTOBER 2008 Design Patterns.
Foundations This chapter lays down the fundamental ideas and choices on which our approach is based. First, it identifies the needs of architects in the.
Şabloane de Proiectare Daniel POP, Ph.D. 2 The Plan Introducing fundamental patterns (today) 18 design patterns will be covered based on the case study.
Introduction to software design patterns For CSE 3902 By: Matt Boggus.
Design Patterns Trends and Case Study John Hurst June 2005.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
Chapter 7 GRASP patterns Dr Seham Mostefai CAP 252.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Session 05: C# Patterns Algorithm Patterns: Sweep Search FEN AK IT: Softwarekonstruktion.
THE PROTOTYPING MODEL The prototyping model begins with requirements gathering. Developer and customer meet and define the overall objectives for the software.
Introduction to Design Patterns (1). Definition: “ In software engineering, a design pattern is a general reusable solution to a commonly occurring problem.
Chapter Five An Introduction to Design Patterns Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
Copyright © 2002, Systems and Computer Engineering, Carleton University Patterns.ppt * Object-Oriented Software Development Part 11.
BTS430 Systems Analysis and Design using UML Design Patterns.
Sept Ron McFadyen1 UML & Design Patterns Course outlineoutline /3 Advanced Systems Design.
January 12, Introduction to Design Patterns Tim Burke References: –Gamma, Erich, et. al. (AKA, The Gang of Four). Design Patterns: Elements of Reusable.
Creational Patterns CSE301 University of Sunderland Harry R Erwin, PhD.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 27. Review UML dynamic view – State Diagrams.
CS 325: Software Engineering February 12, 2015 Applying Responsibility-Assignment Patterns Design Patterns Situation-Specific Patterns Responsibility-Assignment.
A Reference Model for Event Patterns Christian Silberbauer
Patterns of agents Massimo Cossentino Massimo Cossentino, Luca Sabatucci ICAR/CNR High performance computing and networks institute Italian National Research.
The 5 Principles of MBSE 1 The 5 Principles of Model Based Systems Engineering James Towers Object Flow Ltd Chair INCOSE UK MBSE Working Group.
Real Time Auction System Metex Systems Inc.. Inside the UML The Problem Auctioning in real time over the Web requires that many people connect and participate.
Design Patterns Introduction What is a Design Pattern? Why were they developed? Why should we use them? How important are they?
03/12/2001 © Bennett, McRobb and Farmer 2005 Refining the Requirements Model Based on Chapter 8 of Bennett, McRobb and Farmer: Object Oriented Systems.
Software Design Patterns (1) Introduction. patterns do … & do not … Patterns do... provide common vocabulary provide “shorthand” for effectively communicating.
Design Patterns Introduction General and reusable solutions to common problems in software design SoftUni Team Software University
Design Principle & Patterns by A.Surasit Samaisut Copyrights : All Rights Reserved.
Advanced Object-Oriented Design Patterns and Architectures Part One COEN396A John Xiao
Session 07: C# Design Patterns
Patterns Composite Pattern. Patterns All designers use patterns. Patterns in solutions come from patterns in problems. "A pattern is a solution to a problem.
MedBiquitous XML Design Patterns Rachel Ellaway 1, Valerie Smothers 2, Joel Farrell 3, Daniel Rehak 1 Northern Ontario School of Medicine, 2 MedBiquitous,
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
Sakai UI Design Patterns Design Patterns WG 12-Jun-2007, 14:05 Marc Brierley.
Viewpoint Modeling and Model-Based Media Generation for Systems Engineers Automatic View and Document Generation for Scalable Model- Based Engineering.
Systems Engineering Concept Model (SECM) Status 03/17/2016 John Watson.
International Workshop 28 Jan – 2 Feb 2011 Phoenix, AZ, USA Modeling Standards Activity Team Model-based Systems Engineering (MBSE) Initiative Roger Burkhart.
Requirement Engineering Management Amna Shifia Nisafani Feby Artwodini M. Department of Information Systems Subject : Requirement Engineering.
Uwe Kaufmann SysML adoption issues OMG SysML Roadmap WG
Model Based Engineering Environment Christopher Delp NASA/Caltech Jet Propulsion Laboratory.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Design Patterns: MORE Examples
Integrating MBSE into a Multi-Disciplinary Engineering Environment A Software Engineering Perspective Mark Hoffman 20 June 2011 Copyright © 2011 by Lockheed.
The Object-Oriented Thought Process Chapter 15
ISO/IEC JTC 1/SC 7 Working Group 42 - Architecture Johan Bendz
Design Patterns Introduction
Component Based Software Engineering
Web Programming Language
Patterns.
Pattern-Oriented Cluster: Comp 630/650/655
Pattern-Oriented Cluster: Comp 630/650/655
DESIGNING YOUR SYSTEM.
Professor Peter Campbell
DESIGN PATTERNS : Introduction
Pattern-Oriented Cluster: Comp 630/650/655
Introduction to Design Patterns
Design Patterns Imran Rashid CTO at ManiWeber Technologies.
Presentation transcript:

1 Copyright © 2014 Atego. Patterns INCOSE MBSE WG – Simon A. Perry - Atego

2 Copyright © 2014 Atego. 1. Overview 1.What are patterns? 2.An approach to documenting patterns 3.Candidate patterns 4.Summary 5.References 6.Questions

3 Copyright © 2014 Atego. 1. What are patterns?  “A pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice". -Christopher Alexander, ‘A Pattern Language’, 1977  Original ideas from (building) architecture but adopted by software engineering OO community -Made more widely known through “Gang of Four Book” (1995)  Ideas spread to analysis and data modelling through books by Fowler (1997) and Day (1996)  Now being adopted in the wider systems engineering community

4 Copyright © 2014 Atego. Architectural vs. Enabling Patterns  On the COMPASS project ( we use the terms architectural pattern and enabling pattern  Architectural patterns -Describe specific system architectures, in terms of both structure and behaviour, which address particular needs of the system  Enabling patterns -Specific constructs of modelling elements whose combination and subsequent use enables a number of systems engineering applications -E.g. one used for the definition of interfaces or one used to ensure traceability throughout a model of a system  See COMPASS Deliverable D22.3 ‘Report on Modelling Patterns for SoS Architectures’ -Available from

5 Copyright © 2014 Atego. 2. An approach to documenting patterns  When defining patterns it is important to use a consistent model-based approach  One such approach is based on around the ideas of ontology, viewpoints and framework  Ontology -Define concepts and relationships between them  Viewpoints and Framework -Define viewpoints organised into a framework -Viewpoints can only use concepts from the ontology  Originally developed by Brownsword, Holt and Perry (2011) -Further refined by Holt & Perry (2013) (the Framework for Architectural Frameworks – FAF) -Adopted in the COMPASS project (FAF adopted into COMPASS as the CAFF)

6 Copyright © 2014 Atego. The COMPASS Architectural Framework Framework (CAFF)  The CAFF was initially developed to improve the definition of Architectural Frameworks (AFs) -Applicable to the definition of patterns  Consists of: -An ontology -Six viewpoints -Supporting processes  Described in COMPASS Deliverable D21.2 ‘Initial Report on Guidelines for Architectural Level SoS Modelling’ -Available from

7 Copyright © 2014 Atego. The CAFF Ontology

8 Copyright © 2014 Atego. The CAFF Viewpoints  AF Context Viewpoint (AFCV) -Defines the context for the AF -Represents the AF concerns in context, establishing why the AF is needed  Ontology Definition Viewpoint (ODV) -Defines the ontology for the AF -Derived from the AF Context Viewpoint & and defines concepts that can appear on a Viewpoint  Viewpoint Relationships Viewpoint (VRV) -Shows the relationships between the Viewpoints that make up an AF -Groups them into perspectives. It is derived from the Ontology Definition Viewpoint

9 Copyright © 2014 Atego. The CAFF Viewpoints continued  Viewpoint Context Viewpoint (VCV) -Defines the context for a particular Viewpoint -Represents the Viewpoint concerns in context for a particular Viewpoint, establishing why the Viewpoint is needed. It is derived from the AF Context Viewpoint  Viewpoint Definition Viewpoint (VDV) -Defines a particular Viewpoint -Shows the Viewpoint Elements (and hence the Ontology Elements) that appear on the Viewpoint  Rules Definition Viewpoint (RDV) -Defines the various rules that constrain the AF

10 Copyright © 2014 Atego. The CAFF Viewpoints

11 Copyright © 2014 Atego. The CAFF Viewpoints – an example of use for the Traceability Pattern

12 Copyright © 2014 Atego. The CAFF Viewpoints – an example of use for the Traceability Pattern

13 Copyright © 2014 Atego. The CAFF Viewpoints – an example of use for the Traceability Pattern

14 Copyright © 2014 Atego. The CAFF Viewpoints – an example of use for the Traceability Pattern

15 Copyright © 2014 Atego. The CAFF Viewpoints – an example of use for the Traceability Pattern

16 Copyright © 2014 Atego. The CAFF Viewpoints – an example of use for the Traceability Pattern

17 Copyright © 2014 Atego. 3. Candidate patterns  Defined by Atego -Interface Definition -Traceability -Testing -Life Cycle -Epoch  In development by Atego -Connection -Context -Description  What others are of interest? -Patterns workshop next session

18 Copyright © 2014 Atego. 4. Summary  Patterns are now seen as a useful and powerful tool in model-based systems engineering  Patterns (and their extensions, Architectural Frameworks) need to be described in a consistent fashion  Work has been undertaken (and is continuing) on the COMPASS project in the collection and definition of appropriate architectural and enabling patterns  The COMPASS Architectural Framework Framework, though initially developed to help in the consistent definition of AFs can also be used in the definition of patterns

19 Copyright © 2014 Atego. 5. References  Alexander, C.S., Ishikawa, M., Silverstein, M., Jacobson, M., Fiksdahl- Ling, I. & Angel, S. ‘A Pattern Language’. New York: Oxford University Press; 1977  Gamma, E., Helm, R., Johnson, R. & Vlissides, J. ‘Design Patterns – Elements of Reusable Object Oriented Software.’ Boston, MA: Addison- Wesley; 1995  Hay, D. ‘Data Model Patterns: Conventions of Thought’. New York: Dorset House; 1996  Fowler, M. ‘Analysis Patterns: Reusable Object Models’. Boston, MA: Addison-Wesley; 1997

20 Copyright © 2014 Atego. References continued  COMPASS. ‘D22.3 – Report on Modelling Patterns for SoS Architectures’; COMPASS Project; 2013  COMPASS. ‘D21.2 – Initial Report on Guidelines for Architectural Level SoS Modelling’. COMPASS Project; 2013  Holt, J, Perry, S & Brownsword, M. ‘Model-Based Requirements Engineering’. IET Publishing, 2011  Holt, J & Perry, S. ‘SysML for Systems Engineering; 2 nd Edition: A model- based approach’. London: IET Publishing; 2013

21 Copyright © 2014 Atego. 6. Questions