上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)05 ClassDiagrams

Shanghai Jiao Tong University 上海交通大学 Object Oriented Analysis and Design Class Diagrams 上海交通大学软件工程中心
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Class Diagrams

Outline ★◆Class diagrams Class relationships -Association Aggregation ■6 Generalization Object Oriented Analysis and Design 2
Object Oriented Analysis and Design 2 Outline Class diagrams Class relationships ▪ Association ▪ Aggregation ▪ Generalization

What Is a Class Diagram? ◆ Static view of a system CloseRegistrationForm Schedule CloseRegistrationController semester is registration open?() +open() commit() close registration() close registration() select alternate() remove offering() Professor level() name Student cancel() get cost() employeelD Uniqueld delete() hireDate get tuition() submit() status add schedule() save() -discipline get schedule() any conflicts?() maxLoad delete schedule() create with offerings() has pre-requisites() update with new selections() submitFinalGrade() acceptCourseOffering() setMaxLoad() takeSabbatical() Object Oriented Analysis and Design 3
Object Oriented Analysis and Design 3 What Is a Class Diagram? Static view of a system CloseRegistrationForm + open() + close registration() Student + get tuition() + add schedule() + get schedule() + delete schedule() + has pre-requisites() Schedule - semester + commit() + select alternate() + remove offering() + level() + cancel() + get cost() + delete() + submit() + save() + any conflicts?() + create with offerings() + update with new selections() Professor - name - employeeID : UniqueId - hireDate - status - discipline - maxLoad + submitFinalGrade() + acceptCourseOffering() + setMaxLoad() + takeSabbatical() CloseRegistrationController + is registration open?() + close registration()

Class Diagram Usage When modeling the static view of a system, class diagrams are typically used in one of three ways,to model: The vocabulary of a system ■ Collaborations A logical database schema Object Oriented Analysis and Design 4
Object Oriented Analysis and Design 4 Class Diagram Usage When modeling the static view of a system, class diagrams are typically used in one of three ways, to model: ▪ The vocabulary of a system ▪ Collaborations ▪ A logical database schema

Example:Class Diagram Is there a better way to organize class diagrams? LoginForm RegistrationController RegisterForCoursesForm Schedule CloseRegistrationForm CloseRegistrationController Professor Student Course CourseOffering CourseCatalogSystem BillingSystem Object Oriented Analysis and Design 5
Object Oriented Analysis and Design 5 Example: Class Diagram Is there a better way to organize class diagrams? CloseRegistrationForm LoginForm Professor BillingSystem CloseRegistrationController RegisterForCoursesForm Course CourseCatalogSystem Student RegistrationController CourseOffering Schedule

Input Artifacts You will use input artifacts,including the interaction diagrams,to develop and refine the class diagram. Trom GU hterfac时 Supplementary Specifications PlamnerProfle PersanaPlannerConfroller BuyerRecard omPlannerArtfacts) Trom BCRea确Senvices) PlannerArtfactsi Class Diagram Design Interaction Diagrams Guidelines Object Oriented Analysis and Design 6
Object Oriented Analysis and Design 6 Input Artifacts You will use input artifacts, including the interaction diagrams, to develop and refine the class diagram. Supplementary Specifications Design Interaction Diagrams Guidelines Class Diagram

Class Diagram Modeling Class diagrams show the static view of the system and are modeled in the Logical View under the appropriate use-case realization. 08_HomeRealtySystem_ClassDiagrams 中-Use Case View 白-ogical View 田-Analysis Model 由-C☐Business Object Model 白-Design Model 由-C☐>Business0 bjects 中-C☐>BusinessServices 中-C☐Process View 白-C☐Use-Case Realizations 白C□Apply For Loan ▣Realize Dependency 曰-Apply For Loan Apply For Loan-VOPC Apply For Loan-Basic F [☒Apply For Loan·Basic F theApply For Loan (App. 由-三Associations Maintain Personal Planner +-C☐SearchForAHome 三 Associations 由-C☐>User Interface Architecture Overview-Package ar Object Oriented Analysis and Design
Object Oriented Analysis and Design 7 Class Diagram Modeling Class diagrams show the static view of the system and are modeled in the Logical View under the appropriate use-case realization

VOPC Class Diagrams A VOPC class diagram shows a use-case realization's participating classes and the relationships among those classes. ◆ It shows all classes whose instances collaborate to perform the use case and their relationships. It ensures consistency in use-case implementation across subsystem boundaries. Object Oriented Analysis and Design 8
Object Oriented Analysis and Design 8 VOPC Class Diagrams A VOPC class diagram shows a use-case realization’s participating classes and the relationships among those classes. It shows all classes whose instances collaborate to perform the use case and their relationships. It ensures consistency in use-case implementation across subsystem boundaries

Review:What Is a Package? A general purpose mechanism for organizing elements into groups. A model element that can contain other model elements. University Artifacts ◆A package can be used: To organize the model under development As a unit of configuration management Object Oriented Analysis and Design 9
Object Oriented Analysis and Design 9 A general purpose mechanism for organizing elements into groups. A model element that can contain other model elements. A package can be used: ▪ To organize the model under development ▪ As a unit of configuration management Review: What Is a Package? University Artifacts

Example:Registration Package Registration CloseRegistrationForm CloseRegistrationController RegisterForCoursesForm RegistrationController Object Oriented Analysis and Design 10
Object Oriented Analysis and Design 10 Example: Registration Package Registration CloseRegistrationForm CloseRegistrationController RegisterForCoursesForm RegistrationController
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)04 Interaction Diagrams.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)02 Introduction to Visual Modeling.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)01 Introduction to Object Technology.ppt
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)chapter 4 test case generation 1.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)Chapter 2 fundamentals of software test.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)chapter 3 Test environment and tools.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)教学大纲(高级软件测试).doc
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)chapter 1 Introduction of software testing.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)Chapter 2 fundamentals of software test.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)第4章 Fundamental theory and methods of software test.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)第2章 Prerequisites Mathematics knowledge of software test.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)第3章 Test environment and tools.pdf
- 上海交通大学:《软件测试与质量控制》课程教学资源(课件讲稿)第1章 Introduction of software testing.pdf
- 《软件工程概论》课程教学资源(参考资料)软件工程知识体系指南(2004版).pdf
- 《软件工程概论》课程教学资源(参考资料)Guide to the Software Engineering Body of Knowledge(SWEBOK)Version 3.0.pdf
- 中华人民共和国国家标准(GB/T8567一2006 代替GB/T8567-1988)计算机软件文档编制规范 Specification for computer software documentation.pdf
- 上海交通大学:《理论力学》课程教学资源(PPT讲稿)平面矢量.ppt
- 上海交通大学:《计算机硬件技术》课程PPT教学课件(计算机概论,孙德文).ppt
- 上海交通大学:《程序设计基础》课程教学资源(PPT课件讲稿)第9章 数据封装——结构体.ppt
- 上海交通大学:《程序设计基础》课程教学资源(PPT课件讲稿)第8章 间接访问——指针.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)06 Other UML Diagrams.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)07 Design Pattern.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)08 Requirements Overview.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)09 Analysis and Design Overview.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)10 Architectural Analysis.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)11 Use-Case Analysis.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)12 Architecture Design.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)13 Use-Case Design.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)14 Subsystem Design.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)16 Database Design.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)17 Model Driven Development.ppt
- 上海交通大学:《面向对象分析与设计 Object Oriented Analysis and Design》课程教学资源(PPT课件讲稿)19 Aspect-Oriented Software Development(AOSD).ppt
- 上海交通大学:《微型计算机技术及在材料加工中的应用》教学资源_微型计算机概述.pdf
- 上海交通大学:《微型计算机技术及在材料加工中的应用》教学资源_第三章作业.pdf
- 上海交通大学:《微型计算机技术及在材料加工中的应用》教学资源_第二章 微处理器.pdf
- 上海交通大学:《数据库(A类)》教学资源_参考资料_MFC ODBC编程.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源_C 12.28上机测试题_C++ 上机测试题.pdf
- 《程序设计思想与方法》课程教学资源(书籍文献)Python Programming:An Introduction to Computer Science.pdf
- 《程序设计思想与方法》课程教学资源(书籍文献)Python Programming:An Introduction to Computer Science.pdf
- 《程序设计思想与方法》课程教学资源(书籍文献)简明Python教程.pdf