פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

Object Oriented 33 MCSD DORON AMIR
ממיבחניםC שאלות ++.
בתרגול הקודם הורשה: –ניתן להרחיב רק מחלקה אחת –כל מה שלא private – עובר בהורשה –המילה השמורה super –יצירת היררכיה –Object היא שורש ההיררכיה –דריסה אופרטור.
Adjectives - Comparisons
©Silberschatz, Korth and Sudarshan4.1Database System Concepts סכימה לדוגמא.
UML Class Diagram. UML Class Diagrams2 Agenda What is a Class Diagram? Essential Elements of a UML Class Diagram Tips.
UML Class Diagram. UML Class Diagrams2 Agenda What is a Class Diagram? Essential Elements of a UML Class Diagram Tips.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב'
מתמטיקה בדידה תרגול 3.
UML – Class Diagrams.
אביב תשס " ה JCT תיכון תוכנה ד " ר ר ' גלנט / י ' לויאןכל הזכויות שמורות 1 פרק 10 Packages.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
The Solar Wind And its consequences. dx dA משוואות בסיסיות בהידרו דינמיקה הכח הפועל כתוצאה מגרדיאנט בלחץ על אלמנט מסה - dm.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
Chapter 14 (Web): Object-Oriented Data Modeling
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353)
אלכסנדר ברנגולץ דואר אלקטרוני: אלכסנדר ברנגולץ דואר אלקטרוני: פעולות מורפולוגיות.
מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;
עקרון ההכלה וההדחה.
יחס סדר חלקי.
7M822 UML Class Diagrams advanced concepts 15 September 2008.
תכנות מונחה עצמים Object Oriented Programming (OOP) אתגר מחזור ב' Templates תבניות.
Last time on Clang משתנה: "פתק" המשמש את המחשב לשמירת מידע. לכל משתנה יש שם וטיפוס כללים לשמות משתנים –חייבים להכיל רק אותיות, מספרים ו '_' –חייבים להתחיל.
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
UML an overview Compiled by:Dr. Avi Rosenfeld Based on:
7M822 UML Class Diagrams advanced concepts 14 October 2010.
Safari On-line books. מה זה ספארי ספארי זו ספריה וירטואלית בנושא מחשבים היא כוללת יותר מ כותרים כל הספרים הם בטקסט מלא ניתן לחפש ספר בנושא מסוים.
תרשים המחלקות ותרשים העצמים 1. חלק שלישי: ניתוח ועיצוב מערכות מידע באמצעות שימוש ב-UML ומתודולוגיית ה-Unified Process (UP) E1 3 E2 2.
Chapter 14: Object-Oriented Data Modeling
Chapter 41 Enhanced Entity-Relationship and Object Modeling.
Database Management System Prepared by Dr. Ahmed El-Ragal Reviewed & Presented By Mr. Mahmoud Rafeek Alfarra College Of Science & Technology Khan younis.
1 © Prentice Hall, 2002 Chapter 14: Object-Oriented Data Modeling Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R.
© 2011 Pearson Education 1 Chapter 13 (Online): Object-Oriented Databases Modern Database Management 10 th Edition, International Edition Jeffrey A. Hoffer,
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
Databases : Data Modeling 2007, Fall Pusan National University Ki-Joune Li.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
UML Class Diagram Trisha Cummings. What we will be covering What is a Class Diagram? Essential Elements of a UML Class Diagram UML Packages Logical Distribution.
תכנות אסינכרוני, תקשורת ופיתוח אפליקציות ל- Windows 8.1 ואפליקציות ל- Windows Phone 8 Control (Part II)
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Object-Oriented Data Modeling
1 תרגול 11: Design Patterns ומחלקות פנימיות 1 תוכנה 1.
1 המרכז להוראת המדעים © האוניברסיטה העברית בירושלים פולימורפיזם מתקדם ממשקים בג ' אווה 1.
CIS 210 Systems Analysis and Development Week 6 Part I Structuring Systems Data Requirements,
CS212: Object Oriented Analysis and Design Lecture 33: Class and Sequence Diagram.
Class diagrams Terézia Mézešová.
 Class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association), and the operations and.
CLASS DIAGRAMS A classy approach to objects. The Basic Class Diagram  Class Name  Attributes (- indicates private each would have properties or accessor/mutator.
1 תרגול 11: Design Patterns ומחלקות פנימיות אסף זריצקי ומתי שמרת 1 תוכנה 1.
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site:
עקרונות תכנות מונחה עצמים תרגול 11: OOP in C++. Outline  Where do the objects live ?  Inheritance  Slicing  Overriding vs Shadowing.
Java Reflection הוכן על-ידי אחמד ג'בארה
האוניברסיטה העברית בירושלים
Object-Oriented Modeling
Object Oriented Programming
Object Oriented Programming
Formal Specifications for Complex Systems (236368) Tutorial #1
Object Oriented Programming
SQL בסיסי – הגדרה אינדוקטיבית
Object Oriented Analysis and Design
פרוקטוז, C6H12O6 , חד-סוכר מיוחד
ממשקים - interfaces איך לאפשר "הורשה מרובה".
תיאוריית תכנון סכמות למסדי נתונים יחסיים חלק 4
Lec 3: Object-Oriented Data Modeling
ניתוח מערכות מידע תכנות ב C#
UML Class Diagram.
למה רמת פרמי צריכה להיות קבועה בחומר שנמצא בשווי משקל?
פולימורפיזם מתקדם ממשקים בC# עריכה ועיצוב: קרן הרדי
Presentation transcript:

פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization

Stereotypes מנגנון שמופעל על מחלקות, קשרים וסוגי תלות בין מחלקות כדי לציין את הקטגוריה המתאימה. > > >

Class types Iconic /non-iconic representation of 3 class stereotypes: control, boundary and entity. Example: agreementUI – interacts directly with actors agreementControl- interacts with elements inside system agreementEntity- passive class manipulated by system elements. Entity = business class

Association אסוציאציה, מציין קשרים בין מופעים של מחלקות, בכל קצה של קשר ניתן לציין מספר מופעים מאותה מחלקה שיכולים להיות למופע אחד מהמחלקה השנייה לכל מופע של A מקושרים אחד או יותר מופעים של B אבל לכל מופע של B מקושר מופע של A אחד ויחיד לכל קצה של קשר ניתן לתת שם, וגם לקשר עצמו ניתן לתת שם

Multiplicity and Cardinality of associations ניתן לציין רק את מידת הריבוי של הקשר עדיף לציין גם את קרדינליות הקשר ניתן לא לרשום מידת הריבוי והקרדינליות כאשר סוג הקשר מובן מאליו או המידע אינו חשוב בשלב מסוים של בנית המודל

Composition המחלקה מצד שמאל היא חלק (part of) מהמחלקה בצד ימין,כלומר למחלקה מצד ימין יש "בעלות" על המחלקה מצד שמאל Composition הוא סוג של Association גם כאן ניתן לציין בקצות הקשר את מספר המופעים האפשריים

דוגמה ל- COMPOSITION מסמך שמורכב מהקדמה, פרקים,סיכום ואינדקס יופיע כשלם שמורכב מחלקים שאין להם זכות קיום אם הם לא חלק מאותו מסמך. אם מסמך מבוטל, אז כל המרכיבים שלו יבוטלו.

Aggregation קשר פחות חזק מ-Composition סוג קשר שנועד רק לייצג את היחס "חלק מ “- Assembly-Component: Component is part of an assembly and Assembly consists of components

Generalization המחלקה מצד שמאל מכלילה את המחלקה מצד ימין, כלומר המחלקה מצד ימין יורשת מהמחלקה מצד שמאל

Generalization One class is a kind of another class Generalization - Specialization Superclass - Subclass Supertype - Subtype Generalization allows inheritance of attributes and operations of a superclass by its subclasses

סוגי הגדרת Generalization Bottom-up generalization במהלך הגדרת מחלקות מתברר שלמספר מחלקות יש תכונות והתנהגות משותפות ולכן מגדירים superclass והמחלקות בעלות תכונות משותפות הופכות ל- subclasses Top-down generalization במהלך פיתוח המודל, מתברר שיש יותר ממחלקה אחת מאותו סוג ולכן יש להגדיר מספר subclasses והמחלקה המקורית הופכת ל- superclass

Abstract superclasses למחלקה מופשטת אין מופעים ישרים.

דוגמה ב-Generalization לקוח, בעל חשבון, מבצע טרנזקציה מסוג הפקדה או משיכה.

Visibility of attributes and operations Visibility = availability to other classes Private – :available only within the class Public + :available to any class associated with the class that owns the feature Protected #: available only within that class and any subtype of that class Attributes are normally private Operations are mostly public Private operations = internal responsibilities

Constraints for generalization {complete} –all subclasses defined within class model {incomplete} – not all subclasses specified {disjoint} – one instance of a subclass cannot be an instance of another subclass. {overlapping}- opposite of disjoint generalization. An instance may be an instance of more than one subclass

סוגי קשרים מורכבים-Association class קשר האסוציאציה שמקשר בין מופעים של עצמים לקשר זה יכולות להיות תכונות מסוימות ואז מדובר Association class

Dependency Dependency: one element requires the presence of another element in order to function. If the element upon which the dependency is specified is changed, then the dependent element may also need to be changed תלות בין שני אלמנטים/שתי מחלקות, בצורה ששינוי של אלמנט אחד עלול לגרור שינוי באלמנט השני.

עוד על קשרים... Visibility (prefix to role name on association end) private/public visibility of an attribute of a class as viewed from different classes associated with that class Changeability constraints (omission= no changeability constraint) {frozen}, {addOnly} Ordering constraints {ordered}, {unordered}, {sorted} Navigability ( omission = bi-directional navigability) – shows that it’s not necessary to implement navigability from x to y