UML 101 – An Introduction Julie Daniels Staff Software Engineering Specialist IBM Rational Software UML 101 – An Introduction Julie Daniels Staff Software.

Slides:



Advertisements
Similar presentations
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 1: Best Practices of Software Engineering.
Advertisements

Mastering Object-Oriented Analysis and Design with UML Module 1: Best Practices of Software Engineering Mastering Object-Oriented Analysis and Design with.
Informática II Prof. Dr. Gustavo Patiño MJ
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
19 1 Continuing Best Practices ► Slide information taken in large part from former Rational Corporation slides and the RUP textbook - considerably modified.
UML Unified Modeling Language Basic Concepts. UML What is the UML*? UML stands for Unified Modeling Language The UML combines the best of the best from:
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
UML Overview Unified Modeling Language Basic Concepts.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Uml and Use Cases CS 414, Software Engineering I Mark Ardis Rose-Hulman Institute January 9, 2003.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process.
Unified Modeling (Part I) Overview of UML & Modeling
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1 Interaction Diagrams.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
Fundamentals of Visual Modeling with UML Module 2: Principles of Visual Modeling.
Object-Oriented Analysis and Design Using the UML Module 1: Best Practices of Software Engineering.
Object Oriented Analysis and Design Using the UML
Principles of Object Technology Module 1: Principles of Modeling.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Introduction to Object Technology.
Information Systems Development Slovak University of Technology Faculty of Material Science and Technology in Trnava.
Systems Analysis and Design in a Changing World, Fifth Edition
Modeling software behavior UML
Rational Unified Process Fundamentals Module 4: Disciplines II.
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.
Unified Modeling Language, Version 2.0
3rd Country Training, K.Subieta: System Engineering and Databases. Lecture 3, Slide 1 February 20, 2004 Lecture 3: Introduction to Software Analysis and.
Systems Design Approaches The Waterfall vs. Iterative Methodologies.
Requirements Artifacts Precursor to A & D. Objectives: Requirements Overview  Understand the basic Requirements concepts and how they affect Analysis.
Systems Analysis and Design in a Changing World, 3rd Edition
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process Adapted by Dr. Spiegel.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Requirements Overview.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
ARTIFACT UML Actor A Use Case 1 Use Case 2 Actor B Document FileManager GraphicFile File Repository DocumentList FileList Customer name addr withdraw()
CSC 131 Fall 2006 Lecture # 5 UML Use Cases. UML The UML is a graphical language for  specifying  visualizing  constructing  documenting the artifacts.
Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 Chapter 2 Text Introduction to Rational Unified Process.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 9: Describe the Run-time Architecture.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 01. Concepts.
1 IBM Software Group ® Essentials of Visual Modeling with UML 2.0 Principles of Visual Modeling.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Introduction to Rational Unified Process
1 Unified Modeling Language, Version 2.0 Chapter 2.
Essentials of Visual Modeling w/ UML Instructor Notes
Object Oriented Analysis and Design using the UML Use-Case Analysis Adapted by Dr. Spiegel from Slides Provided by Rational Software.
UML Activity Diagrams.
1 IBM Software Group ® Essentials of Visual Modeling with UML 2.0 Module 3: Concepts of Object Orientation.
1 Continuing Best Practices ► Slide information taken in large part from former Rational Corporation slides and the RUP textbook - considerably modified.
Unified Software Practices v5.5 Copyright © Rational Software, all rights reserved 1 Module 1: The Six Best Practices of Modern Software Engineering.
Fundamentals of Visual Modeling with UML Module 1: Introduction to Object Technology.
Rational Unified Process Fundamentals Module 1: Best Practices of Software Engineering Rational Unified Process Fundamentals Module 1: Best Practices of.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Concepts of Object Orientation lecture 1 –b. Objectives: Concepts of Object Orientation OOAD 2  Explain the basic principles of object orientation 
Basic Characteristics of Object-Oriented Systems
Modeling Your Application, Data or Service Creating Your UML Model.
Course Number: 1080 Session Length:60 Minutes Target Audience:caDSR Users and Metadata Consumers Trainer: Jennifer Brush NCICB Liaison.
SWE 214 (071) Introduction to UML Slide 1 Introduction to UML.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 An Overview of UML. 2 The Unified Modeling Language UML is a graphical language used by software engineers to model software systems during development.
UML Basics Process Model Deployment Model Design Model
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
GOVT. ENGINEERING COLLEGE, AJMER. A SEMINAR PRESENTATION ON UNIFIED MODELING LANGUAGE(UML) SUBMITTED TO:-PRESENTED BY:- Dr. REENA DADHICHPALLAVI VASHISTHA.
Introduction to Rational Unified Process
Concepts of Object Orientation
UML Basics Process Model Deployment Model Design Model
UML Activity Diagrams.
Object Oriented Analysis and Design Using the UML
Practice 2: Manage Requirements
Presentation transcript:

UML 101 – An Introduction Julie Daniels Staff Software Engineering Specialist IBM Rational Software UML 101 – An Introduction Julie Daniels Staff Software Engineering Specialist IBM Rational Software

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved “26% of software projects succeed.” Standish Group, CHAOS Report, 2000 “26% of software projects succeed.” Standish Group, CHAOS Report, 2000 The Good News…

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved That means 74% failed! Standish Group, CHAOS Report, 2000 That means 74% failed! Standish Group, CHAOS Report, 2000 The Bad News…

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 4 How do we resolve these problems? Requirements Not Managed Ambiguous Communication Brittle Architectures Overwhelming Complexity Undetected Inconsistencies Insufficient Testing Uncontrolled Change Propagation

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 5 Use Component Architectures Industry Best Practices Address Problems Develop Iteratively Manage Requirements Continuously Verify Quality Control Change Best Practices Best Practices Model Visually

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 6 Use Component Architectures Implementing Industry Best Practices Model Visually Object Technology UML

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 7 Agenda  Object Technology  Introduction  Four Principles  Visual Modeling with UML  Importance of Modeling  Introducing UML  Two Key Elements  Eight Diagrams  UML in Action  UML Tool Marketplace  IBM Rational XDE

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 8 What Is Object Technology?  A set of principles (abstraction, encapsulation, modularity, hierarchy) guiding software construction, together with languages, databases, and other tools that support those principles. (Object Technology - A Manager’s Guide, Taylor, 1997.)

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 9 The Strengths of Object Technology  Reflects a single paradigm  Facilitates architectural and code reuse  Reflects real world models more closely  Encourages stability  Is adaptive to change

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 10  Major object technology milestones Simula 1967 C ++ Late 1980s Smalltalk 1972 Java 1991 The UML 1996 ??? The History of Object Technology

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 11 Where Is Object Technology Used?  Client/Server Systems and Web Development  Encapsulates business information in objects  Real-time systems  Software, like hardware, is built from components

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 12 Basic Principles of Object Technology Object Technology EncapsulationAbstraction Hierarchy Modularity

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 13 Principle 1: Abstraction StudentProfessor Course Offering (9:00 a.m., Monday-Wednesday-Friday) Course (e.g. Algebra)

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 14 Principle 2: Encapsulation Improves Resiliency  Hides implementation from clients.  Clients depend on interface.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 15 Principle 2: Encapsulation with Polymorphism Manufacturer A Manufacturer B Manufacturer C OO Principle: Encapsulation  The ability to hide many different implementations behind a single interface

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 16 Principle 3: Modularity  Breaks up something complex into manageable pieces.  Helps people understand complex systems.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 17 Principle 4: Hierarchy Decreasing abstraction Increasing abstraction Asset RealEstate Savings BankAccount Checking Stock Security Bond Elements at the same level of the hierarchy should be at the same level of abstraction.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 18 Where Are We?  Object Technology  Introduction  Four Principles  Visual Modeling with UML  Importance of Modeling  Introducing UML  Two Key Elements  Eight Diagrams  UML in Action  UML Tool Marketplace  IBM Rational XDE

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 19 What Is a Model?  A model is a simplification of reality. Why do we model?

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 20 Why Do We Model?  Modeling achieves four aims:  Visualize a system  Specify the structure or behavior of a system  Have a template to guide construction  Document our decisions  We build models of complex systems because we cannot comprehend such a system in its entirety.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 21 The Importance of Modeling Paper Airplane Fighter Jet Less ImportantMore Important

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 22 Software Teams Often Do Not Model  Many software teams build applications like building paper airplanes  Start coding from project requirements  Work longer hours and create more code  Lack any planned architecture  Doomed to failure  Modeling is a common thread to successful projects.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 23 No Single Model Is Sufficient  Non-trivial systems best approached through a small set of nearly independent models.  Create models that can be built and studied separately, but are still interrelated. Process ViewDeployment View Logical View Use-Case View Implementation View End-user Functionality Programmers Software management Performance scalability throughput System integrators System topology delivery, installation communication System engineering Analysts/Designers Structure Where have you seen many models of a single entity?

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 24 Where Are We?  Object Technology  Introduction  Four Principles  Visual Modeling with UML  Importance of Modeling  Introducing UML  Two Key Elements  Eight Diagrams  UML in Action  UML Tool Marketplace  IBM Rational XDE

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 25 What Is the UML?  A language for modeling object-oriented software  Used for Visualizing Specifying Constructing Documenting

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 26 Visualizing, Specifying, Constructing, Documenting Forward Engineering (Code Generation) and Reverse Engineering Domain Expert User Interface Definition Use Case Diagram Actor A Use Case 1 Use Case 2 Use Case 3 Actor B Activity Diagram [yes] Actor A Actor B Class Diagram GrpFile read( ) open( ) create( ) fillFile( ) rep Repository name : char * = 0 readDoc( ) readFile( ) (from Persistence) FileMgr fetchDoc( ) sortByName( ) DocumentList add( ) delete( ) Document name : int docid : int numField : int get( ) open( ) close( ) read( ) sortFileList( ) create( ) fillDocument( ) fList 1 FileList add( ) delete( ) 1 File read( ) read() fill the code.. State Transition Diagram Openning Writing Reading Closing add file [ numberOffile==MAX ] / flag OFF add file close file Component Diagram Document Repository FileList FileManager GraphicFile File Collaboration Diagram user : »ç¿ëÀÚ mainWnd : MainWnd fileMgr : FileMgr repository : Repository document : Document gFile : GrpFile 9: sortByName ( ) L 1: Doc view request ( ) 2: fetchDoc( ) 5: readDoc ( ) 7: readFile ( ) 3: create ( ) 6: fillDocument ( ) 4: create ( ) 8: fillFile ( ) Sequence Diagram user mainWndfileMgr : FileMgr repositorydocument : Document gFile 1: Doc view request ( ) 2: fetchDoc( ) 3: create ( ) 4: create ( ) 5: readDoc ( ) 6: fillDocument ( ) 7: readFile ( ) 8: fillFile ( ) 9: sortByName ( ) ƯÁ¤¹®¼­¿¡ ´ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù. È­ÀÏ°ü¸®ÀÚ´Â Àоî¿Â ¹®¼­ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼­ °´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù. È­¸é °´Ã¼´Â ÀоîµéÀÎ °´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î Á¤·ÄÀ» ½ÃÄÑ È­¸é¿¡ º¸¿©ÁØ´Ù. Model space Executable System Deployment Diagram Window95 ¹®¼­°ü¸® Ŭ¶óÀ̾ðÆ®.EXE Windows NT ¹®¼­°ü¸® ¿£Áø.EXE Windows NT Windows95 Solaris ÀÀ¿ë¼­¹ö.EXE Alpha UNIX IBM Mainframe µ¥ÀÌŸº£À̽º¼­¹ö Windows95 ¹®¼­°ü¸® ¾ÖÇø´ ºÐ»ê ȯ°æÀÇ Çϵå¿þ¾î¹× ³×Æ®¿÷À¸·ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ðµ¨ - À©µµ¿ì 95 : Ŭ¶óÀ̾ðÆ® - À©µµ¿ì NT: ÀÀ¿ë¼­¹ö - À¯´Ð½º ¸Ó½Å: ÀÀ¿ë ¼­¹ö ¹× µ¥ÀÌŸ ¼­¹ö, Åë½Å ¼­¹ö - IBM ¸ÞÀÎÇÁ·¹ÀÓ: µ¥ÀÌŸ ¼­¹ö, Åë½Å ¼­¹ö Forward Engineering (Code Generation) and Reverse Engineering Source Code edit, compile, debug, link 19

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 27 History of the UML

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 28 Inputs to the UML Fusion Operation descriptions, message numbering Fusion Operation descriptions, Meyer Before and after conditions Meyer Harel State charts Harel State charts Wirfs-Brock Responsibilities Wirfs-Brock Responsibilities Embley Singleton classes, high-level view Embley Singleton classes, -level view Odell Classification Odell Classification Shlaer-Mellor Object lifecycles Shlaer-Mellor Gamma, et.al Frameworks, patterns, notes Gamma, et.al Frameworks, patterns, notes Booch Rumbaugh Jacobson

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 29 Where Are We?  Two key UML elements  Object  Class

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 30 Truck Chemical Process Linked List What Is an Object?  An entity, either physical, conceptual, or software.  Physical entity  Conceptual entity  Software entity  Like a “part”

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 31 Representing Objects in the UML  An object is represented as a rectangle with an underlined name. Named Object Anonymous Object Professor J Clark

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 32 What Is a Class?  A class is a description of a set of objects that share the same attributes, operations, relationships, and semantics.  A class is an abstraction of an object  An object is an instance of a class  A class is an abstraction in that it  Emphasizes relevant characteristics  Suppresses other characteristics

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 33 Representing Classes in the UML  A class is represented using a rectangle with compartments. Professor J Clark

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 34 Where Are We?  Object Technology  Introduction  Four Principles  Visual Modeling with UML  Importance of Modeling  Introducing UML  Two Key Elements  Eight Diagrams  UML in Action  UML Tool Marketplace  IBM Rational XDE

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 35 Seven UML Diagrams 1.Use-Case Diagram 2.Activity Diagram 3.Class Diagram 4.Sequence Diagram 5.Collaboration Diagram 6.Statechart 7.Deployment Diagram 8.Component Diagram

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Use-Case Diagram  Models system requirements  Shows interaction between the system and its environment Student View Report Card Register for Courses Login

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 37 UML Use-Case Diagram Course Catalog View Report Card Register for Courses Submit Grades Select Courses to Teach Student Professor Billing System Maintain Student Information Maintain Professor Information Login Close Registration Registrar

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Activity Diagram Activity State Synchronization Bar (Fork) Guard Condition Synchronization Bar (Join) Decision Concurrent threads Transition Select Course Check Schedule Check Pre-requisites Assign to course Resolve conflicts Update schedule [ student added to the course ] [ add course ] Delete Course [ delete course ] [ checks completed ] [ checks failed ]  Supplements the use-case diagram

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 39 3 – UML Class Diagram  Static view of a system RegisterForCoursesForm > CourseOffering > Schedule > 0..* * 0..4 Student > 0..* 1 1 RegistrationController >

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 40 UML Interaction Diagrams  Models the dynamics of a system  Shows messaging between objects Sequence Diagrams Collaboration Diagrams

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Sequence Diagram : Student : :RegisterForCoursesForm : :RegistrationController : Course Catalog : :CourseCatalogSystem 1: create schedule( ) 5: display course offerings( ) 2: get course offerings( ) 3: get course offerings(forSemester) 6: display blank schedule( ) 4: get course offerings( )

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Collaboration Diagram : Student : RegisterForCoursesForm : RegistrationController : CourseCatalogSystem 5: display course offerings( ) 6: display blank schedule( ) : Course Catalog 1: create schedule( ) 2: get course offerings( ) 3: get course offerings(forSemester) 4: get course offerings( )

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Statechart Enrolled Freshman Sophmore Junior Senior H First year Second year Third year Fourth year Graduated [ credits >= 112 ] Applied [ rejected ] [ accepted ] H [ credits >= 28 ] [ credits >= 56 ] [ credits >= 84 ] Hiatus return leave  Specifies the sequence of states that an object can take on.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Deployment Diagram Desktop PC Registration Server Course Catalog > Billing System > Shows the configuration of processing nodes at run-time

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved UML Component Diagram Billing System Course Registration System IBillingSystem  Shows modular, deployable, and replaceable parts of a system  Each component encapsulates implementation and exposes a set of interfaces.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 46 Summary  Using component architectures and visually modeling software help increase software development success rates  Object technology is used to develop software using components  Modeling is common thread to successful applications  UML is used to visually model software  The two key elements in UML are objects and classes  No single model is sufficient for a non-trivial system  UML provides eight diagrams that can be built and studied separately, yet are interrelated.

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 47 Where Are We?  Object Technology  Introduction  Four Principles  Visual Modeling with UML  Importance of Modeling  Introducing UML  Two Key Elements  Eight Diagrams  UML in Action  UML Tool Marketplace  IBM Rational XDE

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 48 Main Players in UML Tool Marketplace .NET Players  Borland (TogetherSoft) ControlCenter/JBuilder $5995  Microsoft Visio in Visual Studio Enterprise Architect edition $2500 Included with Visual Studio Enterprise Architect  IBM Rational XDE.NET $1595 Modeler Edition, $2995 Developer Edition  Java Players  Borland (TogetherSoft) Control Center 5.5/JBuilder $5995  Embarcadero Describe $995/Developer Edition, $2995 Enterprise Edition  IBM Rational XDE Java $1595 Modeler Edition, $2995 Developer Edition

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 49 Modeling for Business, Application and Data Modelers  One notation: UML  One tool: IBM Rational XDE Application Modeling Data Modeling Business Modeling

Fundamentals of Visual Modeling with UML Copyright © 2001 Rational Software, all rights reserved 50 Roundtrip Engineering in Rational XDE The Model Has Been Updated … … And The Code Has Been Updated … And Synchronize To Update The Code AND The Model