We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Modified over 6 years ago
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
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.
Chapter 12 12-3 © Prentice Hall, 2004
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.
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.
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
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
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
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.
Chapter 12 12-10 © Prentice Hall, 2004
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
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
Chapter 12 12-13 © Prentice Hall, 2004 Note: presentation, business logic, and or data can be spread across multiple layers, creating N-tier architectures.
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
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
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
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
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)
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
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
Chapter 12 12-21 © Prentice Hall, 2004 Comparison of OMG, Microsoft, and Sun Limitations: 1.Tightly coupled 2.Binary 3.Proprietary
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
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)
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
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
Chapter 12 12-26 © Prentice Hall, 2004
Chapter 12 12-27 © Prentice Hall, 2004
Chapter 12 12-28 © Prentice Hall, 2004 In UML, packages are represented as rectangles with tabs in the top left corner.
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.
Chapter 12 12-30 © Prentice Hall, 2004
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
Chapter 12 12-32 © Prentice Hall, 2004
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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Distributed Systems Architectures Slide 1 1 Chapter 9 Distributed Systems Architectures.
CSIS0402 System Architecture K.P. Chow University of Hong Kong.
Objectives In this session, you will learn to:
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Middleware Fatemeh Hendijanifard 1 آزمايشگاه سيستم هاي هوشمند (
Some of these slides were excerpted from: Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer.
BICS546 Client/Server Database Application Development.
Introduction to Enterprise JavaBeans. Integrating Software Development Server-side Component Model Distributed Object Architecture –CORBA –DCOM –Java.
Chapter 13 Physical Architecture Layer Design
Layers & Tiers Umair Javed Lec - 41.
12 Chapter 12 Client/Server Systems Hachim Haddouti.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
The Architecture of Transaction Processing Systems
Chapter 9: The Client/Server Database Environment
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
© 2021 SlidePlayer.com Inc. All rights reserved.