SlideShare une entreprise Scribd logo
1  sur  59
Chapter 13



                    Application Architecture
                         and Modeling



McGraw-Hill/Irwin     Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved.
Objectives
       • Define an information system’s architecture in terms of the
         KNOWLEDGE, PROCESSES, and COMMUNICATION building blocks.
       • Differentiate between logical and physical data flow diagrams,
         and explain how physical data flow diagrams are used to model
         an information system’s architecture.
       • Describe centralized and distributed computing alternatives,
         including client/server and Internet-based computing options.
       • Describe database and data distribution alternatives for system
         design.
       • Describe user and system interface alternatives for system
         design.
       • Describe various software development environments for
         information system design.
       • Describe strategies for developing or determining architecture of
         an information system.
       • Draw physical data flow diagrams for an information system’s
13-2     architecture and processes.
13-3
Application Architecture
        Application architecture – a specification of
        the technologies to be used to implement
        information systems. The blueprint to
        communicate the following design decisions:
        • The degree to which the information system will be
          centralized or distributed.
        • The distribution of stored data.
        • The implementation technology for software
          developed in-house.
        • The integration of commercial off-the-shelf software.
        • The technology to be used to implement the user
          interface.
        • The technology to be used to interface with other
13-4
          systems
Physical Data Flow Diagram
       (DFD)
       Physical data flow diagram (DFDs) – a
       process model used to communicate the
       technical implementation characteristics of
       an information system.
         • Communicate technical choices and other
           design decisions to those who will actually
           construct and implement the system.
         • Recall from Chapter 9 that DFDs are a type
           of process model.
13-5
Sample Physical
       Data Flow Diagram




13-6
Physical Processes
       Physical process – either a processor, such as a
       computer or person, or a technical implementation of
       specific work to be performed, such as a computer
       program or manual process.
          • Logical processes may be assigned to physical processors
            such as PCs, servers, people, or devices in a network. A
            physical DFD would model that network structure.
          • Each logical process requires an implementation as one or
            more physical processes.
          • A logical process may be split into multiple physical
            processes:
             •   To define aspects performed by people or computers.
             •   To define aspects implemented by different technologies.
             •   To show multiple implementations of the same process.
13-7         •   To add processes for exceptions and security.
Physical Process Notation


                  ID (optional)
                  Action Verb
                       +
                 Noun or Object
                    Phrase
                 Implementation




13-8
Samples of Physical Processes




13-9
Possible Computer Process
        Implementations
        • A purchased application software package
          • Also called commercial off-the-shelf (COTS) software

        • A system or utility program
          • Such as an e-mail/message server or third-party
            framework

        • An existing application program from a program
          library
          • May require modification

        • A program to be written
13-10
Sample Physical Process
        Implementations




13-11
Physical Data Flows
        A physical data flow represents:
          • Planned implementation of an input to, or
            output from a physical process.
          • Database command or action such as create,
            read, update, or delete.
          • Import of data from, or       Implementation method:
            export of data to another         Data flow name
            information system.
                                                    OR
          • Flow of data between
            two modules or                    Data flow name
            subroutines (represented     (Implementation method)

13-12
            as physical processes).
Sample Physical Data Flows




13-13
Sample Physical Data Flows
        (continued)




13-14
Physical External Agents

        Physical external agents are carried over
        from the logical DFD models.
          • If scope changes, the logical models should
            be changed before the physical models are
            drawn.




13-15
Physical Data Stores

        A physical data store represents the
        planned implementation of one of:
          •   A database
          •   A table in a database
          •   A computer file
          •   A tape or media backup of anything important
          •   A temporary file or batch
          •   Any type of noncomputerized file

13-16
Physical Data Store Notation




13-17
Physical Data Store
        Implementations




13-18
Distributed versus Centralized
        Systems
        Distributed system – a system in which
        components are distributed across multiple
        locations and computer networks.
          • Accordingly, the processing workload is distributed
            across multiple computers on the network.

        Centralized systems – a system in which all
        components are hosted by a central, multi-user
        computer.
          • Users interact with the system via terminals (or a PC
            emulating a terminal).
          • Virtually all the actual processing and work is done
            on the host computer.
13-19
Why the Trend Toward
        Distributed Systems?
        • Modern businesses are already decentralized
          (distributed).
        • Distributed computing moves information and services
          closer to the customers and users who need them.
        • Distributed computing consolidates the power of
          personal computers across the enterprise.
        • Distributed computing solutions are in general more
          user-friendly because they use the PC as the user
          interface processor.
        • Personal computers and network servers are less
          expensive than mainframe computers
           • Though total cost of ownership is at least as expensive
13-20
Computing Layers
        • Presentation layer—the user interface

        • Presentation logic layer—processing that must be
          done to generate the presentation, such as editing input
          data or formatting output data.

        • Application logic layer—the logic and processing to
          support business rules, policies, and procedures

        • Data manipulation layer—to store and retrieve data to
          and from the database

        • Data layer—the actual business data
13-21
Types of Distributed Computing




13-22
File Server Architecture
        Local area network (LAN) – a set of client
        computers (PCs) connected over a relatively short
        distance to one or more servers.
        File server system – a LAN in which a server
        hosts the data of an information system.
          • All other layers are implemented on the client
            computers.
          • Frequently excessive network traffic to transport data
            between servers and clients.
          • Client must be fairly robust (“fat”) because it does
            most of the work.
          • Database integrity can be compromised.
13-23
File Server Architecture




13-24
Client/Server Architecture —
        Clients
        Client/server system – a distributed computing
        solution in which the presentation, presentation
        logic, application logic, data manipulation, and
        data layers are distributed between client PCs
        and one or more servers.

        Thin client – a personal    Fat client – a personal
        computer that does not      computer, notebook
        have to be very powerful    computer, or workstation
        because it only presents    that is typically powerful.
        the user interface to the
        user.
13-25
Client/Server Architecture —
        Servers
        • Database server – a server that hosts one or more
          databases and executes all data manipulation
          commands at the server.
        • Transaction server – a server that hosts services
          which ensure that all database updates for a transaction
          succeed or fail as a whole.
        • Application server – a server that hosts application
          logic and services for an information system.
        • Messaging or groupware server – a server that hosts
          services for e-mail, calendaring, and other work group
          functionality.
        • Web server – a server that hosts Internet or intranet
          websites.
13-26
Client/Server—Distributed
        Presentation
        Distributed presentation – a client/server
        system in which the presentation and
        presentation logic layers are shifted from
        the server to reside on the client.
          • The application logic, data manipulation, and
            data layers remain on the server (frequently a
            mainframe).
          • Character user interface (CUI)
          • Graphical user interface (GUI)
13-27
Building a GUI From a CUI –
        Screen Scrapers




13-28
Client/Server—Distributed
        Presentation




13-29
Client/Server—Distributed Data

        Distributed data – a client/server system in which
        the data and data manipulation layers are placed
        on the server(s), and other layers are placed on
        the clients.
          • Sometimes called two-tiered client/server computing.
          • Difference to file server systems is where the data
            manipulation commands are executed.
          • Much less network traffic than file server systems
            because only the database requests and the results
            of those requests are transported across the network.
          • Database integrity is easier to maintain.
13-30
Client/Server—Distributed Data




13-31
Client/Server—Distributed Data
        and Application
        Distributed data and application – client/server system:
           1. The data and data manipulation layers are placed on their own
              server(s),
           2. The application logic is placed on its own server,
           3. The presentation logic and presentation layers are placed on
              the clients.

           •   Also called three-tiered or n-tiered client/server computing.
           •   Requires design partitioning.


        Partitioning – the art of determining how to best distribute
           (duplicate) application components across the network.
13-32
Client/Server — Distributed
        Data and Application




13-33
Internet- and Intranet-based
        Architectures
        Network computing system – presentation and
        presentation logic layers implemented in client-
        side Web browsers using content downloaded
        from a Web server.
          • Presentation logic layer connects to application logic
            layer running on application server, which connects
            to database servers on the backside of the system.
          • The greatest potential of this approach is its
            applicability to redesign of traditional information
            systems to run on an intranet.

        Intranet – a secure network that uses Internet
        technology to integrate desktop, work group, and
13-34   enterprise computing into a cohesive framework.
Network Computing System:
        Internet/Intranet




13-35
Internet and Intranet
        Technologies
        • Java
           • Mostly for programming server-side application logic called
             “servlets”
           • Occasionally for programming client-side application logic called
             “applets”
        • HTML (HyperText Markup Language)
           • Mostly for programming the presentation layer
        • XML (Extensible Markup Language)
           • Mostly for programming data content to be transported across
             the web
        • SQL (Structured Query Language)
           • Universal standard language for database manipulation
        • Web Browsers

13-36
Data Architectures
        Relational database stores data in tabular form. Each file
        is implemented as a table. Each field is a column in the
        table. Related records between two tables are
        implemented by intentionally duplicated columns in the two
        tables.

        Distributed relational database – A database system
        that duplicates tables to multiple database servers located
        in geographically important locations.

        Distributed relational database management system –
        a software program that controls access to and
        maintenance of stored data in the relational format.
13-37
Types of Data(base)
        Distribution
        Data partitioning truly distributes rows and
        columns of tables to specific database servers
        with little or no duplication between servers.
          • Vertical partitioning assigns different columns to
            different servers.
          • Horizontal partitioning assigns different rows to
            different servers.

        Data replication duplicates some or all tables on
        more than one database server.
          • Propagates updates on one database server to any
            other database server where the data is duplicated.
13-38
Data Partitioning versus
        Data Replication




13-39
Interface Architectures – Inputs,
        Outputs, & Middleware
        • Batch inputs and outputs
        • Online inputs and outputs
        • Remote batch
        • Keyless data entry (and automatic identification)
        • Pen input
        • Electronic messaging and work group
          technology
        • Electronic Data Interchange (EDI)
        • Imaging and document interchange
        • Middleware
13-40
Batch Inputs and Outputs




13-41
On-Line Inputs and Outputs




13-42
Remote Batch




13-43
Keyless Data Entry (and
        Automatic Identification)




13-44
Pen Input




13-45
Electronic Data Interchange
        (EDI)
        Electronic Data Interchange (EDI) – the
        standardized electronic flow of business
        transactions or data between businesses.
          • Typically, many businesses must agree to a
            common data format to make EDI feasible.




13-46
Middleware

        Middleware – utility software that enables
        communication between different
        processors in a system.
          • It may be built into the respective operating
            systems or added through purchased
            middleware products.
          • Presentation middleware
          • Application middleware
          • Database middleware
13-47
Process Architectures
        Software development environment (SDE) – a
        language and tool kit for developing applications.
          •   SDEs exist for centralized computing
          •   SDEs exist for distributed presentation
          •   SDEs exist for two-tiered client/server
          •   SDEs exist for multi-tiered client/server
          •   SDEs exist for Internet and intranet client/server

        Clean layering – a design strategy that requires
        that presentation, application, and data layers of
        an application be physically separated.
          • Allows components of each layer to be revised or
13-48
            enhanced without affecting the other layers.
Application Architecture
        Strategies for System Design
        • The Enterprise Application Architecture Strategy
          • Enterprise-wide information technology architecture
            to be followed in all development projects.
             • Approved network, data, interface, and processing
               technologies and development tools.
             • Strategy for integrating legacy systems and technologies.
             • On-going process for continuously reviewing application
               architecture.
             • On-going process for researching emerging technologies
             • Process for analyzing requests for variances from the
               above.
        • The Tactical Application Architecture Strategy
          • Defines architecture for each new system on an
            application-by-application basis as needed.
13-49
          • Requires feasibility analysis for each application.
Drawing Physical DFDs for
        Network Architecture
        • Develop a physical data flow diagram (DFD) for
          the network architecture.
          • Each process symbol represents a server or class of
            clients.

        • For each processor, develop a physical DFD to
          show the event processes (from Chapter 9) that
          are assigned to that processor.
        • All but simple processes should be factored into
          design units and modeled as a more detailed
13-50
          physical DFDs.
Design Units

        Design unit – a self-contained collection of
        processes, data stores, and data flows that
        share similar design characteristics.
          • A design unit serves as a subset of the total
            system whose inputs, outputs, files and
            databases, and programs can be designed,
            constructed, and tested as a self-contained
            unit.
          • Ultimately, design units must be integrated
            into a whole system.
13-51
The Network Architecture DFD

        Network architecture – a physical DFD
        that allocates processors (clients and
        servers) and devices (machines and
        robots) to a network and establishes:
          • the connectivity between clients and servers
          • where users will interface with the
            processors



13-52
Network Architecture DFD




13-53
Data Distribution Options

        • Store all data on a single server.
        • Store specific tables on different servers.
        • Store subsets of specific tables on
          different servers.
        • Replicate (duplicate) specific tables or
          subsets on different servers.



13-54
Data Distribution and
        Technology Assignments DFD




13-55
Process Distribution and
        Technology Assignments
        • For two-tiered client/server systems, all logical
          even diagrams are assigned to the client.
        • For three-tiered client/server and network
          computing systems, must closely examine each
          event’s primitive (detailed) DFD.
          • Determine which primitive processes should be
            assigned to the client and which should be assigned
            to an application server.
          • Generally data capture and editing are assigned to
            servers
          • If different aspects of a single DFD are partitioned to
            different clients and servers, draw separate physical
            DFD for each.
13-56
Physical DFD for an Event




                               See Figure 13-13
                               in text for a more
13-57                          readable version
The Person/Machine Boundary




                              See Figure 13-14
                              in text for a more
13-58                         readable version
A Manual Design Unit




13-59

Contenu connexe

Tendances

SELECTION OF HARDWARE AND SOFTWARE IN MIS
SELECTION OF HARDWARE AND SOFTWARE IN MISSELECTION OF HARDWARE AND SOFTWARE IN MIS
SELECTION OF HARDWARE AND SOFTWARE IN MISbit allahabad
 
System Analysis And Design
System Analysis And DesignSystem Analysis And Design
System Analysis And DesignLijo Stalin
 
Transition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems DesignsTransition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems DesignsAnalene de Guzman
 
Structured System Analysis and Design-1
Structured System Analysis and Design-1Structured System Analysis and Design-1
Structured System Analysis and Design-1Shylesh Prabhu
 
CH005
CH005CH005
CH005JUC
 
Views on building blocks
Views on building blocksViews on building blocks
Views on building blocksRitesh Khanna
 

Tendances (13)

Chap09
Chap09Chap09
Chap09
 
SELECTION OF HARDWARE AND SOFTWARE IN MIS
SELECTION OF HARDWARE AND SOFTWARE IN MISSELECTION OF HARDWARE AND SOFTWARE IN MIS
SELECTION OF HARDWARE AND SOFTWARE IN MIS
 
Transition to System Design
Transition to System DesignTransition to System Design
Transition to System Design
 
Case mis ch05
Case mis ch05Case mis ch05
Case mis ch05
 
System Analysis And Design
System Analysis And DesignSystem Analysis And Design
System Analysis And Design
 
Transition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems DesignsTransition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems Designs
 
Chap03
Chap03Chap03
Chap03
 
Chap07
Chap07Chap07
Chap07
 
Structured System Analysis and Design-1
Structured System Analysis and Design-1Structured System Analysis and Design-1
Structured System Analysis and Design-1
 
CH005
CH005CH005
CH005
 
SAD Introduction
SAD IntroductionSAD Introduction
SAD Introduction
 
System design
System designSystem design
System design
 
Views on building blocks
Views on building blocksViews on building blocks
Views on building blocks
 

Similaire à Chap13

Elements of Systems Design.ppt
Elements of Systems Design.pptElements of Systems Design.ppt
Elements of Systems Design.pptKRISHNARAJ207
 
OIT552 Cloud Computing Material
OIT552 Cloud Computing MaterialOIT552 Cloud Computing Material
OIT552 Cloud Computing Materialpkaviya
 
A Case Study On Implementation Of Grid Computing To Academic Institution
A Case Study On Implementation Of Grid Computing To Academic InstitutionA Case Study On Implementation Of Grid Computing To Academic Institution
A Case Study On Implementation Of Grid Computing To Academic InstitutionArlene Smith
 
00 - BigData-Chapter_01-PDC.pdf
00 - BigData-Chapter_01-PDC.pdf00 - BigData-Chapter_01-PDC.pdf
00 - BigData-Chapter_01-PDC.pdfaminnezarat
 
_Cloud_Computing_Overview.pdf
_Cloud_Computing_Overview.pdf_Cloud_Computing_Overview.pdf
_Cloud_Computing_Overview.pdfTyStrk
 
Week 1 Lecture_1-5 CC_watermark.pdf
Week 1 Lecture_1-5 CC_watermark.pdfWeek 1 Lecture_1-5 CC_watermark.pdf
Week 1 Lecture_1-5 CC_watermark.pdfJohn422973
 
Unit-I Introduction to Cloud Computing.pptx
Unit-I Introduction to Cloud Computing.pptxUnit-I Introduction to Cloud Computing.pptx
Unit-I Introduction to Cloud Computing.pptxgarkhot123
 
Week 1 lecture material cc
Week 1 lecture material ccWeek 1 lecture material cc
Week 1 lecture material ccAnkit Gupta
 
Elements of systems design
Elements of systems designElements of systems design
Elements of systems designChandan Arora
 
ERP Implementation Services UK
ERP Implementation Services UKERP Implementation Services UK
ERP Implementation Services UKArcus Universe Ltd
 
introduction to cloud computing for college.pdf
introduction to cloud computing for college.pdfintroduction to cloud computing for college.pdf
introduction to cloud computing for college.pdfsnehan789
 
vssutcloud computing.pptx
vssutcloud computing.pptxvssutcloud computing.pptx
vssutcloud computing.pptxMunmunSaha7
 
Aud5_Chapter-26.pptx
Aud5_Chapter-26.pptxAud5_Chapter-26.pptx
Aud5_Chapter-26.pptxJayLloyd8
 
CLOUD ENABLING TECHNOLOGIES.pptx
 CLOUD ENABLING TECHNOLOGIES.pptx CLOUD ENABLING TECHNOLOGIES.pptx
CLOUD ENABLING TECHNOLOGIES.pptxDr Geetha Mohan
 
UnitOnePresentationSlides.pptx
UnitOnePresentationSlides.pptxUnitOnePresentationSlides.pptx
UnitOnePresentationSlides.pptxBLACKSPAROW
 

Similaire à Chap13 (20)

Elements of Systems Design.ppt
Elements of Systems Design.pptElements of Systems Design.ppt
Elements of Systems Design.ppt
 
OIT552 Cloud Computing Material
OIT552 Cloud Computing MaterialOIT552 Cloud Computing Material
OIT552 Cloud Computing Material
 
Distributed dbms (ddbms)
Distributed dbms (ddbms)Distributed dbms (ddbms)
Distributed dbms (ddbms)
 
A Case Study On Implementation Of Grid Computing To Academic Institution
A Case Study On Implementation Of Grid Computing To Academic InstitutionA Case Study On Implementation Of Grid Computing To Academic Institution
A Case Study On Implementation Of Grid Computing To Academic Institution
 
00 - BigData-Chapter_01-PDC.pdf
00 - BigData-Chapter_01-PDC.pdf00 - BigData-Chapter_01-PDC.pdf
00 - BigData-Chapter_01-PDC.pdf
 
_Cloud_Computing_Overview.pdf
_Cloud_Computing_Overview.pdf_Cloud_Computing_Overview.pdf
_Cloud_Computing_Overview.pdf
 
Week 1 Lecture_1-5 CC_watermark.pdf
Week 1 Lecture_1-5 CC_watermark.pdfWeek 1 Lecture_1-5 CC_watermark.pdf
Week 1 Lecture_1-5 CC_watermark.pdf
 
Unit-I Introduction to Cloud Computing.pptx
Unit-I Introduction to Cloud Computing.pptxUnit-I Introduction to Cloud Computing.pptx
Unit-I Introduction to Cloud Computing.pptx
 
Week 1 lecture material cc
Week 1 lecture material ccWeek 1 lecture material cc
Week 1 lecture material cc
 
Elements of systems design
Elements of systems designElements of systems design
Elements of systems design
 
Cloud & Data Center Networking
Cloud & Data Center NetworkingCloud & Data Center Networking
Cloud & Data Center Networking
 
ERP Implementation Services UK
ERP Implementation Services UKERP Implementation Services UK
ERP Implementation Services UK
 
introduction to cloud computing for college.pdf
introduction to cloud computing for college.pdfintroduction to cloud computing for college.pdf
introduction to cloud computing for college.pdf
 
vssutcloud computing.pptx
vssutcloud computing.pptxvssutcloud computing.pptx
vssutcloud computing.pptx
 
Software defined networking
Software defined networkingSoftware defined networking
Software defined networking
 
lecture5_4.pptx
lecture5_4.pptxlecture5_4.pptx
lecture5_4.pptx
 
Aud5_Chapter-26.pptx
Aud5_Chapter-26.pptxAud5_Chapter-26.pptx
Aud5_Chapter-26.pptx
 
CLOUD ENABLING TECHNOLOGIES.pptx
 CLOUD ENABLING TECHNOLOGIES.pptx CLOUD ENABLING TECHNOLOGIES.pptx
CLOUD ENABLING TECHNOLOGIES.pptx
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
UnitOnePresentationSlides.pptx
UnitOnePresentationSlides.pptxUnitOnePresentationSlides.pptx
UnitOnePresentationSlides.pptx
 

Dernier

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 

Dernier (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

Chap13

  • 1. Chapter 13 Application Architecture and Modeling McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved.
  • 2. Objectives • Define an information system’s architecture in terms of the KNOWLEDGE, PROCESSES, and COMMUNICATION building blocks. • Differentiate between logical and physical data flow diagrams, and explain how physical data flow diagrams are used to model an information system’s architecture. • Describe centralized and distributed computing alternatives, including client/server and Internet-based computing options. • Describe database and data distribution alternatives for system design. • Describe user and system interface alternatives for system design. • Describe various software development environments for information system design. • Describe strategies for developing or determining architecture of an information system. • Draw physical data flow diagrams for an information system’s 13-2 architecture and processes.
  • 4. Application Architecture Application architecture – a specification of the technologies to be used to implement information systems. The blueprint to communicate the following design decisions: • The degree to which the information system will be centralized or distributed. • The distribution of stored data. • The implementation technology for software developed in-house. • The integration of commercial off-the-shelf software. • The technology to be used to implement the user interface. • The technology to be used to interface with other 13-4 systems
  • 5. Physical Data Flow Diagram (DFD) Physical data flow diagram (DFDs) – a process model used to communicate the technical implementation characteristics of an information system. • Communicate technical choices and other design decisions to those who will actually construct and implement the system. • Recall from Chapter 9 that DFDs are a type of process model. 13-5
  • 6. Sample Physical Data Flow Diagram 13-6
  • 7. Physical Processes Physical process – either a processor, such as a computer or person, or a technical implementation of specific work to be performed, such as a computer program or manual process. • Logical processes may be assigned to physical processors such as PCs, servers, people, or devices in a network. A physical DFD would model that network structure. • Each logical process requires an implementation as one or more physical processes. • A logical process may be split into multiple physical processes: • To define aspects performed by people or computers. • To define aspects implemented by different technologies. • To show multiple implementations of the same process. 13-7 • To add processes for exceptions and security.
  • 8. Physical Process Notation ID (optional) Action Verb + Noun or Object Phrase Implementation 13-8
  • 9. Samples of Physical Processes 13-9
  • 10. Possible Computer Process Implementations • A purchased application software package • Also called commercial off-the-shelf (COTS) software • A system or utility program • Such as an e-mail/message server or third-party framework • An existing application program from a program library • May require modification • A program to be written 13-10
  • 11. Sample Physical Process Implementations 13-11
  • 12. Physical Data Flows A physical data flow represents: • Planned implementation of an input to, or output from a physical process. • Database command or action such as create, read, update, or delete. • Import of data from, or Implementation method: export of data to another Data flow name information system. OR • Flow of data between two modules or Data flow name subroutines (represented (Implementation method) 13-12 as physical processes).
  • 13. Sample Physical Data Flows 13-13
  • 14. Sample Physical Data Flows (continued) 13-14
  • 15. Physical External Agents Physical external agents are carried over from the logical DFD models. • If scope changes, the logical models should be changed before the physical models are drawn. 13-15
  • 16. Physical Data Stores A physical data store represents the planned implementation of one of: • A database • A table in a database • A computer file • A tape or media backup of anything important • A temporary file or batch • Any type of noncomputerized file 13-16
  • 17. Physical Data Store Notation 13-17
  • 18. Physical Data Store Implementations 13-18
  • 19. Distributed versus Centralized Systems Distributed system – a system in which components are distributed across multiple locations and computer networks. • Accordingly, the processing workload is distributed across multiple computers on the network. Centralized systems – a system in which all components are hosted by a central, multi-user computer. • Users interact with the system via terminals (or a PC emulating a terminal). • Virtually all the actual processing and work is done on the host computer. 13-19
  • 20. Why the Trend Toward Distributed Systems? • Modern businesses are already decentralized (distributed). • Distributed computing moves information and services closer to the customers and users who need them. • Distributed computing consolidates the power of personal computers across the enterprise. • Distributed computing solutions are in general more user-friendly because they use the PC as the user interface processor. • Personal computers and network servers are less expensive than mainframe computers • Though total cost of ownership is at least as expensive 13-20
  • 21. Computing Layers • Presentation layer—the user interface • Presentation logic layer—processing that must be done to generate the presentation, such as editing input data or formatting output data. • Application logic layer—the logic and processing to support business rules, policies, and procedures • Data manipulation layer—to store and retrieve data to and from the database • Data layer—the actual business data 13-21
  • 22. Types of Distributed Computing 13-22
  • 23. File Server Architecture Local area network (LAN) – a set of client computers (PCs) connected over a relatively short distance to one or more servers. File server system – a LAN in which a server hosts the data of an information system. • All other layers are implemented on the client computers. • Frequently excessive network traffic to transport data between servers and clients. • Client must be fairly robust (“fat”) because it does most of the work. • Database integrity can be compromised. 13-23
  • 25. Client/Server Architecture — Clients Client/server system – a distributed computing solution in which the presentation, presentation logic, application logic, data manipulation, and data layers are distributed between client PCs and one or more servers. Thin client – a personal Fat client – a personal computer that does not computer, notebook have to be very powerful computer, or workstation because it only presents that is typically powerful. the user interface to the user. 13-25
  • 26. Client/Server Architecture — Servers • Database server – a server that hosts one or more databases and executes all data manipulation commands at the server. • Transaction server – a server that hosts services which ensure that all database updates for a transaction succeed or fail as a whole. • Application server – a server that hosts application logic and services for an information system. • Messaging or groupware server – a server that hosts services for e-mail, calendaring, and other work group functionality. • Web server – a server that hosts Internet or intranet websites. 13-26
  • 27. Client/Server—Distributed Presentation Distributed presentation – a client/server system in which the presentation and presentation logic layers are shifted from the server to reside on the client. • The application logic, data manipulation, and data layers remain on the server (frequently a mainframe). • Character user interface (CUI) • Graphical user interface (GUI) 13-27
  • 28. Building a GUI From a CUI – Screen Scrapers 13-28
  • 29. Client/Server—Distributed Presentation 13-29
  • 30. Client/Server—Distributed Data Distributed data – a client/server system in which the data and data manipulation layers are placed on the server(s), and other layers are placed on the clients. • Sometimes called two-tiered client/server computing. • Difference to file server systems is where the data manipulation commands are executed. • Much less network traffic than file server systems because only the database requests and the results of those requests are transported across the network. • Database integrity is easier to maintain. 13-30
  • 32. Client/Server—Distributed Data and Application Distributed data and application – client/server system: 1. The data and data manipulation layers are placed on their own server(s), 2. The application logic is placed on its own server, 3. The presentation logic and presentation layers are placed on the clients. • Also called three-tiered or n-tiered client/server computing. • Requires design partitioning. Partitioning – the art of determining how to best distribute (duplicate) application components across the network. 13-32
  • 33. Client/Server — Distributed Data and Application 13-33
  • 34. Internet- and Intranet-based Architectures Network computing system – presentation and presentation logic layers implemented in client- side Web browsers using content downloaded from a Web server. • Presentation logic layer connects to application logic layer running on application server, which connects to database servers on the backside of the system. • The greatest potential of this approach is its applicability to redesign of traditional information systems to run on an intranet. Intranet – a secure network that uses Internet technology to integrate desktop, work group, and 13-34 enterprise computing into a cohesive framework.
  • 35. Network Computing System: Internet/Intranet 13-35
  • 36. Internet and Intranet Technologies • Java • Mostly for programming server-side application logic called “servlets” • Occasionally for programming client-side application logic called “applets” • HTML (HyperText Markup Language) • Mostly for programming the presentation layer • XML (Extensible Markup Language) • Mostly for programming data content to be transported across the web • SQL (Structured Query Language) • Universal standard language for database manipulation • Web Browsers 13-36
  • 37. Data Architectures Relational database stores data in tabular form. Each file is implemented as a table. Each field is a column in the table. Related records between two tables are implemented by intentionally duplicated columns in the two tables. Distributed relational database – A database system that duplicates tables to multiple database servers located in geographically important locations. Distributed relational database management system – a software program that controls access to and maintenance of stored data in the relational format. 13-37
  • 38. Types of Data(base) Distribution Data partitioning truly distributes rows and columns of tables to specific database servers with little or no duplication between servers. • Vertical partitioning assigns different columns to different servers. • Horizontal partitioning assigns different rows to different servers. Data replication duplicates some or all tables on more than one database server. • Propagates updates on one database server to any other database server where the data is duplicated. 13-38
  • 39. Data Partitioning versus Data Replication 13-39
  • 40. Interface Architectures – Inputs, Outputs, & Middleware • Batch inputs and outputs • Online inputs and outputs • Remote batch • Keyless data entry (and automatic identification) • Pen input • Electronic messaging and work group technology • Electronic Data Interchange (EDI) • Imaging and document interchange • Middleware 13-40
  • 41. Batch Inputs and Outputs 13-41
  • 42. On-Line Inputs and Outputs 13-42
  • 44. Keyless Data Entry (and Automatic Identification) 13-44
  • 46. Electronic Data Interchange (EDI) Electronic Data Interchange (EDI) – the standardized electronic flow of business transactions or data between businesses. • Typically, many businesses must agree to a common data format to make EDI feasible. 13-46
  • 47. Middleware Middleware – utility software that enables communication between different processors in a system. • It may be built into the respective operating systems or added through purchased middleware products. • Presentation middleware • Application middleware • Database middleware 13-47
  • 48. Process Architectures Software development environment (SDE) – a language and tool kit for developing applications. • SDEs exist for centralized computing • SDEs exist for distributed presentation • SDEs exist for two-tiered client/server • SDEs exist for multi-tiered client/server • SDEs exist for Internet and intranet client/server Clean layering – a design strategy that requires that presentation, application, and data layers of an application be physically separated. • Allows components of each layer to be revised or 13-48 enhanced without affecting the other layers.
  • 49. Application Architecture Strategies for System Design • The Enterprise Application Architecture Strategy • Enterprise-wide information technology architecture to be followed in all development projects. • Approved network, data, interface, and processing technologies and development tools. • Strategy for integrating legacy systems and technologies. • On-going process for continuously reviewing application architecture. • On-going process for researching emerging technologies • Process for analyzing requests for variances from the above. • The Tactical Application Architecture Strategy • Defines architecture for each new system on an application-by-application basis as needed. 13-49 • Requires feasibility analysis for each application.
  • 50. Drawing Physical DFDs for Network Architecture • Develop a physical data flow diagram (DFD) for the network architecture. • Each process symbol represents a server or class of clients. • For each processor, develop a physical DFD to show the event processes (from Chapter 9) that are assigned to that processor. • All but simple processes should be factored into design units and modeled as a more detailed 13-50 physical DFDs.
  • 51. Design Units Design unit – a self-contained collection of processes, data stores, and data flows that share similar design characteristics. • A design unit serves as a subset of the total system whose inputs, outputs, files and databases, and programs can be designed, constructed, and tested as a self-contained unit. • Ultimately, design units must be integrated into a whole system. 13-51
  • 52. The Network Architecture DFD Network architecture – a physical DFD that allocates processors (clients and servers) and devices (machines and robots) to a network and establishes: • the connectivity between clients and servers • where users will interface with the processors 13-52
  • 54. Data Distribution Options • Store all data on a single server. • Store specific tables on different servers. • Store subsets of specific tables on different servers. • Replicate (duplicate) specific tables or subsets on different servers. 13-54
  • 55. Data Distribution and Technology Assignments DFD 13-55
  • 56. Process Distribution and Technology Assignments • For two-tiered client/server systems, all logical even diagrams are assigned to the client. • For three-tiered client/server and network computing systems, must closely examine each event’s primitive (detailed) DFD. • Determine which primitive processes should be assigned to the client and which should be assigned to an application server. • Generally data capture and editing are assigned to servers • If different aspects of a single DFD are partitioned to different clients and servers, draw separate physical DFD for each. 13-56
  • 57. Physical DFD for an Event See Figure 13-13 in text for a more 13-57 readable version
  • 58. The Person/Machine Boundary See Figure 13-14 in text for a more 13-58 readable version
  • 59. A Manual Design Unit 13-59

Notes de l'éditeur

  1. This repository of slides is intended to support the named chapter. The slide repository should be used as follows: Copy the file to a unique name for your course and unit. Edit the file by deleting those slides you don’t want to cover, editing other slides as appropriate to your course, and adding slides as desired. Print the slides to produce transparency masters or print directly to film or present the slides using a computer image projector. Each slide includes instructor notes. To view those notes in PowerPoint, click-left on the View Menu; then click left on Notes View sub-menu. You may need to scroll down to see the instructor notes. The instructor notes are also available in hardcopy as the Instructor Guide to Accompany Systems Analysis and Design Methods, 6/ed.
  2. No additional notes.
  3. Teaching Notes This slide shows the how this chapter's content fits with the building blocks framework used throughout the textbook. The emphasis of this chapter is with the physical design phase. It spans the communication focus, knowledge focus, and process focus. It involves system designers, system users, and systems analysts working with the organization's strategic enterprise information technology architecture.
  4. Teaching Notes We like to compare an application architecture to a set of construction blueprints that a building contractor might require for different building aspects such as framing, electrical, plumbing, ventilation, etc.
  5. Teaching Notes Physical DFDs are part of structured analysis and design. For some students, a review of Chapter 9 should precede this lesson. It may be useful to quickly review the slides from Chapter 9 that differentiated between logical and physical modeling.
  6. Teaching Notes We have found it useful to walk through this first DFD. Don’t be alarmed if students take exception to some of the oversimplification of the illustrated problem —it can actually contribute to the learning experience.
  7. Teaching Notes Some students have difficulty understanding why we might split a logical process into multiple physical processes. It may be useful to walk through this list and give them examples from your own experience or reading.
  8. Conversion Notes This is the Gane and Sarson notation. The DeMarco and Yourdon notation does not provide for a separate symbolic differentiation between logical and physical processes. Depending on your choice of CASE or automated modeling tool, you may need to specify slightly different notations for your students.
  9. Teaching Notes This slide does not illustrate the splitting of a logical process into four physical processes This slide illustrates four possible implementations of the same logical process
  10. No additional notes.
  11. No additional notes.
  12. Teaching Notes The last bulleted item may not be as clear to all students. Many have never used a DFD to factor a program into modules. But most students do appreciate the need to pass parameters, variables, and arguments between modules of a program. Reminding them of this is the first step towards appreciating DFDs as a programming tool.
  13. Teaching Notes It may be useful to walk through this table to help students appreciate that there are always alternative physical implementations for any logical data flow.
  14. No additional notes.
  15. No additional notes.
  16. No additional notes.
  17. No additional notes.
  18. Teaching Notes Again, a walk through of these implementation alternatives can be useful.
  19. No additional notes.
  20. Teaching Notes The last bullet is controversial. Some experts sincerely believe that distributed computing is more costly to maintain. But this belief has not deterred the proliferation of distributed solutions.
  21. Conversion Notes In some books, the presentation and presentation logic layers are combined.
  22. Teaching Notes Note the five layers Note the three basic types of distributes systems architecture (with sub-types): File server Client/server Internet-based You might want to use this slide twice: first to provide the overview and then later as a review AFTER showing all of the physical DFDs we present for the different flavors.
  23. No additional notes.
  24. Teaching Notes We are constantly amazed at the number of students who think Access applications that store their data on a file server are truly client/server applications (and many books proliferate the misconception). This slide, when contrasted with the client/server equivalent slides, is intended to dispel that myth. Because the client executes any CREATE, READ, UPDATE, and DELETE commands for a file-server database (such as Access ), the entire table must be transported to the client to execute the command. The result is increased data traffic on the network and slow performance.
  25. Teaching Notes Emphasize that we are not using “fat client” in a negative sense. For the time being, most knowledge workers will require fat clients for their personal productivity applications (e.g., word processing and spreadsheets), but they may use thin client architecture on those fat clients (e.g., a Web browser or terminal emulator) to run or access remote applications (such as those provided by the information systems unit of the company).
  26. Teaching Notes The sub-point on database server is to emphasize that we are not talking about a Microsoft Access file server. Only a client/server database management system, such as Oracle, SQL Server, DB2, etc. acts as a database server. Emphasize that these server categories are not mutually exclusive. For example, many database server and transaction server functions may be integrated on a single physical server. Also, web and messaging server functions are being integrated with each new release of some products.
  27. Teaching Notes This is sometimes called “the poor man’s client/server.” In reality, the underlying technology allows organizations with constrained resources to give mainframe systems a client/server facelift that extends their useful lifetime until they can be redesigned to more contemporary architectures.
  28. No additional notes.
  29. No additional notes.
  30. Teaching Notes Tell students that this architecture characterizes most Visual Basic and Powerbuilder applications in existence today.
  31. No additional notes.
  32. No additional notes.
  33. No additional notes.
  34. Teaching Notes Inform students that this is the architecture that is driving e-commerce and e-business. We expect this architecture to eventually replace most two- and three-tier solutions.
  35. No additional notes.
  36. No additional notes.
  37. No additional notes.
  38. No additional notes.
  39. No additional notes.
  40. No additional notes.
  41. No additional notes.
  42. No additional notes.
  43. No additional notes.
  44. No additional notes.
  45. No additional notes.
  46. No additional notes.
  47. Teaching Notes Some students have probably used database middleware products such as ODBC or JDBC that allow a single application to access and use different vendors’ database engines without having to write a different version of the program for each database engine.
  48. Teaching Notes Most students have used an SDE without realizing it, Visual Studio for instance. Similarly, Micro Focus COBOL is an SDE for COBOL , and Visual Café’ and J Builder are SDEs for Java .
  49. Teaching Notes Feasibility analysis was covered in Chapter 11.
  50. Conversion Notes Adapted from the former STRADIS and AD/Method methodologies.
  51. No additional notes.
  52. No additional notes.
  53. No additional notes.
  54. No additional notes
  55. No additional notes.
  56. No additional notes.
  57. No additional notes.
  58. No additional notes.
  59. No additional notes.