Presentation is loading. Please wait.

Presentation is loading. Please wait.

12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.

Similar presentations


Presentation on theme: "12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey."— Presentation transcript:

1 12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer

2 Chapter 12 12-2 © Prentice Hall, 2004 Chapter Objectives Af ter studying this chapter you should be able to: – Understand the different design architecture configurations. – Understand the use of components in systems design. – Understand the different component standards. – Map an analysis class diagram into a design class diagram.

3 Chapter 12 12-3 © Prentice Hall, 2004

4 Chapter 12 12-4 © Prentice Hall, 2004 What Is a Design Element? Either a design class or a component: Design Class – an enhanced version of an analysis class that includes details regarding attributes and methods, including visibility, arguments, and data types. Component – a replaceable part of a system that provides a clearly defined function through a set of interfaces.

5 Chapter 12 12-5 © Prentice Hall, 2004 What Is a Design Architecture? An overall blueprint of the design of a system. Goal of design architecture – ability to scale and evolve over time. Enterprise Application Design (EAD) – the process of designing applications that embrace change.

6 Chapter 12 12-6 © Prentice Hall, 2004 What Is a Tiered (or Layered) Architecture? The partitioning of a system into layers such that each layer performs a specific type of functionality and communicates with the layers that adjoin it. Options – Single-tier – Two-tier – Three-tier – N-tier

7 Chapter 12 12-7 © Prentice Hall, 2004 Single-Tier Architectures One computer performing all tasks Either a standalone PC, or a mainframe servicing many dumb terminals Rare for new systems, not very scalable

8 Chapter 12 12-8 © Prentice Hall, 2004 Two-Tier Architectures Client-Server architecture Client – Application layer (front-end), performs business rules and user interface Server – Database layer (back end), provides data access Middleware – the communication interface between client and server

9 Chapter 12 12-9 © Prentice Hall, 2004 What Is Middleware? Software that provides one set of interfaces for connection to a client and another set of interfaces for connection to a server, thereby providing the possibility of connections between one of several clients with one of several servers.

10 Chapter 12 12-10 © Prentice Hall, 2004

11 Chapter 12 12-11 © Prentice Hall, 2004 Limitations of Client-Server Architectures Thick clients – heavy burden placed on each client machine Application changes need to be distributed to many clients Typically use proprietary technologies, hindering application integration

12 Chapter 12 12-12 © Prentice Hall, 2004 Three-Tier Architectures Three layers are: – Presentation – front tier, providing user interface, perhaps with formatting and constraint-checking rules – Business rules – middle tier, addressing logic and decisions for the system, sometimes called application layer – Data – back tier, addressing data storage and access, with some rules regarding data integrity

13 Chapter 12 12-13 © Prentice Hall, 2004 Note: presentation, business logic, and or data can be spread across multiple layers, creating N-tier architectures.

14 Chapter 12 12-14 © Prentice Hall, 2004 Mapping from Analysis to Design Classes 1 Analysis Class  1 Design Class 1 Analysis Class  n Design Classes n Analysis Classes  1 Design Class n Analysis Classes  1 Package n Analysis Classes  1 Component

15 Chapter 12 12-15 © Prentice Hall, 2004 Characteristics of Components – Used for specific commonly used purpose – Collection of classes and interfaces – Hidden implementation details – Plug-and-play capability – Third-party developed, typically in binary form – Reusable in many applications – Well-tested and relatively error-free

16 Chapter 12 12-16 © Prentice Hall, 2004 What Is a Component Standard? An agreed-upon format for defining interfaces and implementations of components Examples: – Microsoft COM+ – OMG’s CORBA – Sun Microsystem’s Enterprise Java Beans (EJB) – Database Middleware Standards (ODBC, ADO, JDBC) – XML/SOAP

17 Chapter 12 12-17 © Prentice Hall, 2004 COM+ Component Object Model (COM) from Microsoft Run-time environment for middle-tier components Supports transactions, identity, and security services, and allows components to call each other locally or remotely through a messaging service

18 Chapter 12 12-18 © Prentice Hall, 2004 CORBA – Common Object Request Broker Architecture – Published by Object Management Group (OMG) – Component standard for distributed and heterogeneous network – Objects written in different languages communicate through Interface Definition Language – Interface is managed by Object Request Brokers (ORBs)

19 Chapter 12 12-19 © Prentice Hall, 2004 EJB Enterprise Java Beans Component-based distributed computing architecture EJB is a server-side component model for managing objects in a distributed environment EJB requires CORBA for communications

20 Chapter 12 12-20 © Prentice Hall, 2004 Database Middleware Standards Microsoft’s ODBC – Open Database Connectivity Microsoft’s ADO – ActiveX Data Objects Sun’s JDBC – Java Database Connectivity

21 Chapter 12 12-21 © Prentice Hall, 2004 Comparison of OMG, Microsoft, and Sun Limitations: 1.Tightly coupled 2.Binary 3.Proprietary

22 Chapter 12 12-22 © Prentice Hall, 2004 XML and SOAP Text-based, loosely coupled, non-proprietary internet-oriented standard for inter-layer communication eXtensible Markup Language (XML) – method for putting structured data into text format, similar to HTML Simple Object Access Protocol (SOAP) – XML- based protocol for exchanging messages between applications operating in different layers

23 Chapter 12 12-23 © Prentice Hall, 2004 What Is a Framework? A collection of components, consisting of code and interfaces written in a specific language, that solves or helps build applications. Two main competitors: Microsoft.NET Sun Java 2 Enterprise Editiion (J2EE)

24 Chapter 12 12-24 © Prentice Hall, 2004 Microsoft.NET Development framework that integrates COM+ and Active Server Pages (ASP) technologies for B2C applications, with support for XML/SOAP Web services for B2B applications ActiveX – OLE/COM based component ADO, ADO.NET – database middleware ASP, ASP.NET – dynamic HTML generation

25 Chapter 12 12-25 © Prentice Hall, 2004 Sun J2EE Java 2 Enterprise Edition Development framework that provides a specification of architectural components designed to work together to define a complete enterprise architecture, with support for XML/SOAP and Web services EJB – Java-based component standard JDBC – database middleware Java Server Pages, Servlets – dynamic HTML generation

26 Chapter 12 12-26 © Prentice Hall, 2004

27 Chapter 12 12-27 © Prentice Hall, 2004

28 Chapter 12 12-28 © Prentice Hall, 2004 In UML, packages are represented as rectangles with tabs in the top left corner.

29 Chapter 12 12-29 © Prentice Hall, 2004 What Is a Design Class Diagram? A design class diagram shows the data types of the attributes, the return types and arguments of the operations, and the visibility specifications for all attributes and operations. Signature – the return type, name, and argument list of a method Interfaces to classes are based on signatures.

30 Chapter 12 12-30 © Prentice Hall, 2004

31 Chapter 12 12-31 © Prentice Hall, 2004 Guidelines for Allocating Responsibilities Information access done by information expert Object creation done by aggregating class Aim for loose coupling Aim for high cohesion

32 Chapter 12 12-32 © Prentice Hall, 2004

33 Chapter 12 12-33 © Prentice Hall, 2004 Recap After studying this chapter we learned to: – Understand the different design architecture configurations. – Understand the use of components in systems design. – Understand the different component standards. – Map an analysis class diagram into a design class diagram.


Download ppt "12-1 © Prentice Hall, 2004 Chapter 12: Design Elements Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey."

Similar presentations


Ads by Google