Presentation is loading. Please wait.

Presentation is loading. Please wait.

Unit 1 Object-Oriented Design Concepts. Key Concepts Development methodologies Classes and objects Attributes and methods Inheritance and polymorphism.

Similar presentations


Presentation on theme: "Unit 1 Object-Oriented Design Concepts. Key Concepts Development methodologies Classes and objects Attributes and methods Inheritance and polymorphism."— Presentation transcript:

1 Unit 1 Object-Oriented Design Concepts

2 Key Concepts Development methodologies Classes and objects Attributes and methods Inheritance and polymorphism Decomposition, modularity, coupling, and cohesion Characteristics of a system Types of information systems Modeling UML diagrams Class diagrams Associations

3 Systems Analysis and Design? Main goal Improve organizational systems via software to help accomplish business tasks efficiently and easily Requires knowledge of: Organization’s objectives, structure, processes How to exploit information technology for advantage

4 1-4

5 1-5

6 1-6 What Is a System? A group of interrelated procedures used for a business function, with an identifiable boundary, working together for some purpose.

7 1-7

8 Characteristics of Systems CharacteristicDefinition ComponentsIrreducible or aggregate parts of a system (also called subsystems) InterrelationshipsAssociations and dependencies between components of a system BoundaryDivides system from environment PurposeGoal or function of a system Interfacespoints of contact between system and environment InputsData from environment to system OutputData from system to environment ConstraintsLimit to what the system can accomplish

9 Important System Concepts Decomposition – breaking down a system into smaller constituents Modularity – the result of decomposition; parts of a system Coupling – extent of dependencies between subsystems Cohesion – extent to which a subsystem performs a single function

10

11 Transaction Processing System (TPS) Automate the handling of data for business activities or transactions Goal: improve transaction processing by increasing speed, enhancing productivity, improving efficiency and accuracy

12 Management Information System (MIS) Use raw data from TPS systems, and converts them into meaningful aggregate form, resulting in summary reports Goal: provide the information that helps managers in their jobs

13 Decision Support System (DSS) Combine databases, mathematical or graphical models, and interactive user interfaces or dialogues allowing users to manipulate data and models Include what-if analyses, executive information systems, data warehouses, knowledge management systems Goal: support decision-making with unstructured and unpredictable problems

14 Evolution of System Development Methodologies SDLC Systems Development Life Cycle Structured Analysis and Design Use of Data Flow Diagrams Data-Oriented Methodology Use of Entity Relation Diagrams Object-Oriented Methodology Use of Unified Modeling Language (UML) Diagrams Agile Methodologies Adaptive, people-oriented approach

15

16 Systems Planning and Selection Analyze and arrange organization’s information needs, identify and describe potential project, determine system scope, and provide a business case for continuing with the project Feasibility analysis: determine economic and organizational impact of the system

17 Systems Analysis Thorough study of organization’s current system and processes, determination of system requirements, structuring requirements, generate alternative design strategies. Use of UML for system modeling Goal: describe what needs to be done

18 Systems Design Translating alternative solution generated by analysis phase into detailed logical and physical system specifications. Logical design: not tied to any hardware or software platform Physical design: specific programming languages, databases, architectures Goal: identify how the task will be accomplished

19 System Implementation and Operation Information system is coded, tested, and installed, and undergoes periodic corrections and enhancements Goal: provide a fully operational system

20 Iterative and Incremental Development Project is divided into phases A phase can have multiple workflows Each phase has a milestone at its end A phase can be divided into iterations Most critical or most risky pieces are developed first Rational Unified Process (RUP) defines four phases: Inception Elaboration Construction Transition

21

22 Construction is the hardest part

23 Key Differences Between Structured and Object- Oriented Analysis and Design StructuredObject-Oriented MethodologySDLCIterative/Incremental FocusProcesssObjects RiskHighLow ReuseLowHigh MaturityMature and widespreadEmerging Suitable forWell-defined projects with stable user requirements Risky large projects with changing user requirements

24 Unified Modeling Language (UML) A standard notation for representing object-oriented systems Boxes represent classes, components, packages, objects Containing attributes and operations Provide interfaces to external entities Lines represent generalization and other relationships

25 Sample UML Diagram

26 What Is an Object? An entity that encapsulates data and behavior Objects are categorized into classes Each individual object is an instance of a class

27 What Is a Class? A category of objects that share the same attributes, operations, relationships, and semantics All objects are instances of classes Name Attributes Operations

28 What Is an Attribute? Attribute- a named property of a class that describes a range of values that instances of the attribute might hold Attributes are the way classes encapsulate data

29 Attributes are properties containing values Minus sign indicates these are private (hidden)

30 What Is Encapsulation? The characteristic of object-orientation in which data and behavior are bundled into a class and hidden from the outside world Access to the data and behavior is provided and controlled through an object’s interface

31 What Is an Operation? A behavior of an object A method is the implementation of an operation Methods are identified and invoked by their signatures, including name, parameters, and return type

32 Signature has name, parameters, return type Method implements the behavior

33 Plus sign indicates these are public (accessible)

34 What Is Generalization? A relationship between a more general (or parent) class and a more specific (or child) class The more specific class has additional attributes and operations

35 What Is Inheritance? The mechanism by which the more specific class in a generalization relationship includes the attributes and operations of the more general class

36 Generalization represented by arrows from subclass to superclass Subclasses inherit all attributes and operations of superclasses

37 What Is Polymorphism? The ability for different classes of objects to respond to identical messages in different ways Polymorphism = “having many forms” Different behaviors for the same message

38 Here, each type of vehicle has its own version of calcPrice()

39 Polymorphism Example Dim myControl As Control For Each myControl In Me.Controls myControl.ForeColor = Color.Red Next

40 What Is a Component? A replaceable part of a system providing a clearly defined function through a set of interfaces Group of classes working together toward a common end; a subsystem

41 What Is an Interface? The mechanism by which users of a component invoke its behaviors and manipulate its properties The interface is implemented by method signatures

42 Interfaces are represented as small rectangles

43 What Is a Package? A logical grouping of related analysis or design elements Group of classes sharing similar characteristics or purposes

44 Package is to component as folder is to file

45 What Is an Association? A relationship or link between instances of (or objects) of classes Three types: Simple associations: no ownership Aggregations: part-whole relationships where the part can exist independently of the whole, but the whole is meaningless without the parts Compositions: part-whole relationships where the part and the whole are fully dependent on each other

46 Diagramming Associations This is a binary association, showing roles and multiplicities roles multiplicities

47 Systems Modeling Systems modeling – creating an abstraction of a system Abstraction – focusing on the relevant aspects and ignoring other details UML is a modeling approach, involving these diagrams: Use-case, sequence, communication, class, object, activity, state, composite structure, package, component, deployment

48 UML Diagrams DiagramDefinition Use-case diagramshows use cases, actors, and relationships describing user interactions with system Sequence diagram shows interactions of objects via message-passing in time-ordered manner Communication diagram similar to sequence diagram, but without the time-ordering Class diagramshows set of classes and relationships (generalizations and associations) Object diagramshows specific instances of a class diagram Activity diagramdata from environment to system

49 UML Diagrams DiagramDescription State diagramshows transitioning of an object from state to state in response to events Composite structure diagram shows how a component whole is made up of its parts Package diagramshows logical grouping of analysis or design elements Component diagram shows software components or modules and their relationships Deployment diagram shows configuration of runtime processing nodes and their components


Download ppt "Unit 1 Object-Oriented Design Concepts. Key Concepts Development methodologies Classes and objects Attributes and methods Inheritance and polymorphism."

Similar presentations


Ads by Google