Yaniv Mordecai & Dov Dori

Slides:



Advertisements
Similar presentations
Database Systems: Design, Implementation, and Management Tenth Edition
Advertisements

The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
CIT731: Database Development Object Oriented Modeling (OOM)
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
Overview of OASIS SOA Reference Architecture Foundation (SOA-RAF)
Realizing OPM Philosophy in the Context of Full Life- Cycle Support Avi Soffer Technion, Israel Institute of Technology Thesis Advisor: Prof. Dov Dori.
Introduction To System Analysis and Design
Introduction to System Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
Software Requirements
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
Information Modeling: The process and the required competencies of its participants Paul Frederiks Theo van der Weide.
Itntroduction to UML, page 1 Introduction to UML.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
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.
Course Instructor: Aisha Azeem
Meaningful Modeling: What’s the Semantics of “Semantics”? David Harel, Weizmann Institute of Science Bernhard Rumpe, Technische Universität Braunschweig.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
The design process z Software engineering and the design process for interactive systems z Standards and guidelines as design rules z Usability engineering.
Introduction To System Analysis and design
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Free Mini Course: Applying SysML with MagicDraw
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Essence Duality Awareness in Information System Interaction with Physical and Cyber Environments Yaniv Mordecai, Technion, Haifa, Israel Prof. Dov Dori,
Object Process Methodology OPM ד " ר אבי סופר. ניתוח מערכות מידע 2 OPM Basic Concepts Emphasis Equally balancing static (structure) and dynamic (behavior)
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
1 Workshop on Business-Driven Enterprise Application Design & Implementation Cristal City, Washington D.C., USA, July 21, 2008 How to Describe Workflow.
1 Introduction to Software Engineering Lecture 1.
Chapter 5 Models and UML Notation for The Object-Oriented Approach.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Modeling system requirements. Purpose of Models Models help an analyst clarify and refine a design. Models help simplify the complexity of information.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
 What is Modeling What is Modeling  Why do we Model Why do we Model  Models in OMT Models in OMT  Principles of Modeling Principles of Modeling 
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.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
A Mediated Approach towards Web Service Choreography Michael Stollberg, Dumitru Roman, Juan Miguel Gomez DERI – Digital Enterprise Research Institute
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Requirements Analysis
UML - Development Process 1 Software Development Process Using UML.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Session 1 What Is the UML? Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 5, 2011 Presented by Kang-Pyo Lee.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
5. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Describe the activities of the requirements discipline  Describe the difference.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
The Challenge of Auto and Aero Electronic System of Systems Engineering (ESoSE) Prof C.E. Dickerson Chair INCOSE Architecture Working Group International.
OPCAT: Object-Process CASE Tool
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Object-Oriented Software Engineering Using UML, Patterns, and Java,
SysML v2 Formalism: Requirements & Benefits
Unified Modeling Language
Yaniv Mordecai & Dov Dori
Object oriented analysis and design
UML profiles.
Presentation transcript:

Yaniv Mordecai & Dov Dori 097230 Methodologies in Information Systems Development Model-Based Protocol Engineering: Specifying Kerberos with Object-Process Methodology My name is Yaniv Mordecai, I am a Ph.D. Candidate at the Technion – Israel Institute of Technology. This talk presents theoretical and methodological foundations which are part of my Ph.D. research on model-based risk-oriented systems engineering. My supervisor is Prof. Dov Dori from the Technion, at the moment a visiting Professor at MIT, and I would like to thank Prof Olivier de-Weck from MIT Engineering Systems Division for inviting me to MIT. Yaniv Mordecai & Dov Dori Technion – Israel Institute of Technology, Haifa, Israel November 3, 2015

Multiple engineering professionals talk different languages Mechanical Engineers Civil Engineers Electronics Engineers Software Engineers Model-Based Protocol Engineering November 2015

What is a Model? A physical, mathematical, or otherwise logical representation of a system, entity, phenomenon, or process (DoD 1998). A representation of one or more concepts that may be realized in the physical world (Friedenthal, Moore, and Steiner 2009). A simplified representation of a system at some particular point in time or space intended to promote understanding of the real system (Bellinger 2004). An abstraction of a system, aimed at understanding, communicating, explaining, or designing aspects of interest of that system (Dori 2002). A selective representation of some system whose form and content are chosen based on a specific set of concerns (Object Management Group 2010). Source: http://www.sebokwiki.org/wiki/What_is_a_Model%3F Model-Based Protocol Engineering November 2015

Systems Engineering Languages Systems Modeling Language – SysML OMG Standard since 2007 Object-Process Methodology – OPM OPM book published in 2002 ISO Standard 19450 as of Aug. 2014 (formally: 19450 Publically Available Specification) OPM software: OPCAT, freely downloadable from http://esml.iem.technion.ac.il/ Along with papers and other resources Model-Based Protocol Engineering November 2015

The idea behind conceptual modeling conceived reality modeled reality Object Vehicle is a Aircraft Is modeled by is a affects Bus Is modeled by Energy Replenishing Gas Filling is Is modeled by affects Car Process Using graphical symbols, the model expresses physical things – objects and processes – and relations among them. Model-Based Protocol Engineering November 2015

OPM Entities – the bricks: Things and States Object: A thing that exists or might exist physically or informatically. Objects are stateful: Objects can have states At each point in time a stateful object is at one of its states - static, or in transition between two states – undergoing change Process: A thing that transforms an object. Transforming an object is: creating it, consuming it, or changing its state. Object State 1 State 2 Processing Model-Based Protocol Engineering November 2015

Compact Ontology: A Minimum Length OPM alphabet OPM unifies the system’s structure and behavior throughout the analysis and design of the system within one frame of reference using a small alphabet: Two types of things: (1) stateful objects (2) processes Two families of links: (1) structural links: connect objects with objects (2) procedural links: connect processes with objects Model-Based Protocol Engineering November 2015

Hierarchical Decomposition Illustration Model-Based Protocol Engineering November 2015

ISO Standardization OPM is now approved ISO standard 19450. ISO 19450 is meant to provide a basis for a new generation of model-based standards. Official standards need formal semantics to ensure the standard’s consistency and integrity. Several standards we’ve tested were found to include contradictions and ambiguities that could be avoided, had a model-based approach been used to author and specify the standard. Model-Based Protocol Engineering November 2015

Unblocking the Paradigm Shift “Standards/protocols are not systems” But they are processes, procedures, or sets of definitions, eventually pertaining to a system at some level. “Standards should be solution-independent” But their underlying semantics must be well defined. You don’t have to design the system that implements the standard with OPM, but you know that it is well-defined thanks to OPM. “Standards should be defined in natural language text rather than conceptual modeling languages” But we want to make sure that the text is valid and verified. OPM lets you generate semi-natural language text based on the model. “You can’t capture everything in the standard with a model” Right! Focus the model on the core procedural, functional, and/or structural aspects being standardized. Model-Based Protocol Engineering November 2015

Kerberos Common, widely-accepted protocol for computer user and device authentication across insecure computer networks. Based on trusted 3-rd party authentication service. Invented and developed at MIT with the support of Microsoft, Google, Apple, Oracle, and others. MIT Kerberos Consortium has not provided a well-formed model-based protocol representation. Model-Based Protocol Engineering November 2015

Why Kerberos It’s simple It’s standardized It’s well known to domain professionals It consists of several components, services, information objects, and processes. Model-Based Protocol Engineering November 2015

Kerberos Procedure Model-Based Protocol Engineering November 2015

UML Sequence Diagram of Kerberos Model-Based Protocol Engineering November 2015

UML Sequence Diagram of Kerberos Model-Based Protocol Engineering November 2015

UML Sequence Diagram of Kerberos Model-Based Protocol Engineering November 2015

Problems with the UML Sequence Diagram Notation problems. Mixture sequence diagram, activity diagram, and some informal diagram semantics. Confusing use of rectangular blocks for different types of entities (processes and objects). Extensive use of in-diagram free text. Lack of capability to execute the visualized model. The diagram does not show branches of the process, i.e., what happens when one of the subsequences fails. The diagram captures only the first two levels of the internal processes conducted by each participant. Model-Based Protocol Engineering November 2015

Why Did Those Problems Occur? UML has 13 different diagrams to capture various aspects, each highlighting a different aspect. Each diagram has different notation for similar concepts (e.g. Use Case, Activity, Method, Process) UML does not generate a formal textual specification. Eventually, the analyst works for the model more than the model works for the analyst! Model-Based Protocol Engineering November 2015

Kerberos in OPM Model-Based Protocol Engineering November 2015

Summary Model-based approach to standard authoring. Object-Process Methodology (ISO 19450) as a conceptual modeling framework for protocol specification. OPM-based specification and simulation of Kerberos, a well-known protocol. Model-Based Protocol Engineering November 2015

Protocol Modeling Assignment Model a formal procedure (a standard or a protocol) with Object-Process Methodology (OPM) – ISO 19450 for complex system and process modeling and simulation. Model-Based Protocol Engineering November 2015

Important Dates Preliminary submission Dec. 19, 2015, Sat, 23:59. Preliminary version of report Introduction and literature review. Description of the protocol. A preliminary high-level OPM model of your protocol. Preliminary version of the model Presentation Jan. 12, 2016, Tue, 10:30. Final submission Feb. 27, 2016, Sat, 23:59. Model-Based Protocol Engineering November 2015

Assignment Grading MODULE TASK WEIGHT Assignment (77%) Preliminary report 10% Preliminary version of OPM model Presentation 12% Final report 15% Final version of OPM model 30% Coursework (23%) Attendance 13% Participation, involvement, and consultation   TOTAL 100% Model-Based Protocol Engineering November 2015

Submission Guidelines All submissions are to be made through Moodle. Submit your report in the form of an IEEE Conference Paper (up to 8 pages). Submit your model file separately. The report should contain at most 3-4 OPDs for introductory and impression purposes. In the text, refer to model views and diagrams in the file. Focus on the most relevant and applicable parts of the protocol or standard that you’re modeling. Model-Based Protocol Engineering November 2015

Modeling Guidelines Build the OPM model iteratively, using the detail decomposition approach. Keep your model executable – this is a mandatory and significant! Make assumptions and abstractions, employ modeling patterns and techniques as you see fit. Record your decisions and references. Find issues in the technical specification (two contradicting sequences of the stages of the procedure; mismatch between the total time required for the protocol to end, and the sum of minimal durations of the individual steps, unclear or ambiguous specification…). Use the model and reasonable assumptions to resolve them. Your OPM model should eventually contain 20-30 processes and subprocesses across at least four levels (0..3). All processes must be connected to objects, states, or other processes. All objects must be connected to processes (directly or through a state) or other objects. Model-Based Protocol Engineering November 2015

Further Reading Alex Blekhman and Dov Dori, Model-Based Requirements Authoring. INCOSE 2011 – the 6th International conference on System Engineering. March, 2011. Alex Blekhman and Dov Dori, Tesperanto – A Model-Based System Specification Methodology and Language. Proc. 23rd Annual INCOSE International Symposium, Philadelphia, PA, USA, June 24-27, 2013 Yaniv Mordecai and Dov Dori, Conceptual Modeling of System-Based Decision-Making. Proc. 24th Annual INCOSE International Symposium, Las Vegas, NV, USA, June 30 – July 3, 2014. Juan Wachs, Boaz Frenkel, and Dov Dori, Operation room tool handling and miscommunication scenarios: An Object-Process Methodology conceptual model. Artificial Intelligence in Medicine, Nov. 2014. Yaniv Mordecai and Dov Dori, Model-Based Protocol Engineering: Specifying Kerberos with Object-Process Methodology. IEEE 28th Convention of Electrical and Electronics Engineers in Israel, Eilat, Israel, Dec. 2014. ISO/PDPAS 19450 - Automation systems and integration — Object-Process Methodology Model-Based Protocol Engineering November 2015

Yaniv Mordecai, yanivmor@technion.ac.il Questions: Yaniv Mordecai, yanivmor@technion.ac.il