Introduction to OOAD and the UML.ppt
《Introduction to OOAD and the UML.ppt》由会员分享,可在线阅读,更多相关《Introduction to OOAD and the UML.ppt(83页珍藏版)》请在麦多课文档分享上搜索。
1、Introduction to OOAD and the UML,Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU,OUTLINE,The development processReviewing Object Oriented Analysis and DesignVisual modeling and the Unified Modeling Language UML,OUTLINE,The development process Phases of system
2、development The Unified Process Object Oriented Analysis and DesignVisual Modeling and the Unified Modeling Language UML,The Development Process,Requirements: Develop the Requirements Model,Analysis: Develop the Logical Model,Design: Develop the Architecture Model,Implementation,Testing,Phases of Sy
3、stem Development,Requirements Engineering,Engineering Design,The IEEE 12207 Development Process,7,The Unified Process (The Rational Unified Process (RUP), adopted by IBM for system development),Supports System Development Using the Unified Model Language (UML) Evolutionary process where the system i
4、s built iteratively and incrementally in several builds starting from the requirements phase Architecture-centric,The Unified Process,Inception: Define the scope of the system (identify all external entities with which the system will interact and define the nature of the interactions)Elaboration: S
5、pecify features and develop the architectureConstruction: Build the systemTransition: Transition Product to its users,The Unified Process,The Unified Process,The UP develops the architecture iteratively in successive Refinements during the Elaboration phase,OUTLINE,The development process Reviewing
6、Object Oriented Analysis and Design Object-Oriented Analysis OOA Object-Oriented Design OODVisual Modeling and the Unified Modeling Language UML,Object Oriented Analysis and Design (OOAD),Review of OOAD Basic Concepts,Develops a system model using a set of interacting objects A Class: A class is a d
7、escription used to instantiate objects An Object: Is an instance of a class, it has a name, attributes and their values, and methods An object models an idea found in reality, (tangible or abstract),Basic Concepts (contd),Attributes of a class Methods of a class (Services, Actions, Messages) Informa
8、tion hiding and Encapsulation: A technique in which an object reveals as little as possible about its inner workings (Private and Public methods or attributes). Inheritance defines a class hierarchy based on abstraction,OUTLINE,The development process Reviewing Object Oriented Analysis and Design Ob
9、ject-Oriented Analysis OOA Object-Oriented Design OODVisual Modeling and the Unified Modeling Language UML,Object Oriented Analysis OOA,OOA Develops a Logical Model of the system as a set of interacting domain objectsThe model consists of two viewsThe static view: defines the classes and their depen
10、denciesThe dynamic view: models the scenarios of interactions between objects,Class A,Class B,Requires Service From Class B,Example: The Static Analysis Model Class diagram,The dynamicModel: A Scenario Of Interactions,OOA (cont.),OOA (cont.),OOA starts by identifying domain objects from the requirem
11、ents model (Use-Case Models) 1. Discovering Objects The Data Perspective In the problem space or external systems Physical devices (sensors, actuators) Events that need to be recorded (ex. Measurements) Physical or geographical locations,OOA (contd),The Functional Perspective What responsibilities d
12、oes the object have? Ex. An event handler, a controller, monitors, sensors, etc. The Behavioral Perspective Who does the object interact with? How? Use a State Transition Diagrams to describe the object behavior,OOA (contd): Identifying Domain Objects from the requirements model,In the statements of
13、 the requirements: An object may appear as a noun (ex. Measurement) or disguised in a verb (to measure) A method might appear as a verb (ex. Investigate) or disguised in a noun (investigation) Attributes describe some kind of characteristics for the object (adjectives). Attributes can be simple or c
14、omplex. Complex attributes may lead to forming new objects. Attributes can also be nouns.,OOA (contd): Object Types,External Entities and their interfaces: Sensors, actuators, control panel, devices, operators, pilots Information Items : Displays, Commands, Requests, etc. Entities which establishes
15、the context of the problem : Controller, monitors, schedulers,OOA (contd),2. Define Class Hierarchies GeneralizationDisplay Login Display Specialization ( IS_A)Temperature_Sensor - Sensor,Sensor,Brake Sensor,Engine Sensor,OOA (contd),3. Class Relationships Types Association General form of dependenc
16、y Aggregation An object may consist of other objectsInheritance Cardinality ( Multiplicity) ( Binary, Many, ),OOA (contd),Example of identifying Class diagrams with Relationships, Multiplicities, Attributes, and operations (E-Commerce),OOA (contd),4. Object Attributes Discovering attributes of class
17、es Attribute types Naming : Ex. SensorID, Account Descriptive Ex. Card expiration date Referential Ex. Referring to other objects,OOA (contd),5. The Dynamic View: Object Behavior Discovering states, transitions between states, and conditions and actions Building the state diagrams of objects,OOA (co
18、ntd),6. Object Services Implicit Services ( create, modify, search, delete , etc. ) ex. constructors Services associated with messages Services associated with object relationships Services associated with attributes (accessor methods ex. get, set . ),OUTLINE,The development process Reviewing Object
19、 Oriented Analysis and Design Object-Oriented Analysis OOA Object-Oriented Design OODVisual Modeling and the Unified Modeling Language UML,Object Oriented Design OOD,1. Architecture Design The static view: structural description (defining the components and subsystems) The Dynamic view (defining the
20、 interactions between components and subsystems ) 2. Detailed Design: Define detailed Class and object description Visibility (Private, protected, ) Containment (ex. Packages or Components) Concurrency,OOD: Architecture Design,Define the subsystems/components and their dependenciesInteractions betwe
21、en components are defined in design sequence diagrams,OOD: Detailed Design,Define the detailed design of each subsystem/component,OOD: The Dynamic View,Define design sequence diagrams for scenarios defined in the requirements model,3. Design Refinement: Enhance Design Goodness Criteria (e.g., using
22、design patterns) Coupling: The manner and degree of interdependence between classes (objects) Cohesion: The degree and manner to which the services or tasks performed by a component or an object are related to each other. Modularity Understandability Decomposability Clarity Simple classes, messages,
23、 methods,OOD (Contd),Summary of the Object-Oriented Analysis and Design (OOA) Methodology,Based on describing the logical model of the system and the environment as a set of interacting objects Defines the external objects (actors) interacting with the system as well as the internal objects that the
24、 system must contain Defines the static architecture of objects and the dynamic behavioral interactions between them Defines the internal dynamic behavior of objects,OUTLINE,The development processReviewing Object Oriented Analysis and DesignIntroducing visual modeling and the Unified Modeling Langu
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- INTRODUCTIONTOOOADANDTHEUMLPPT
