 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.

Slides:



Advertisements
Similar presentations
Chapter 1: The Database Environment
Advertisements

Mobile Application Architectures
ICS 434 Advanced Database Systems
Database Architectures and the Web
Objectives In this session, you will learn to:
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Technical Architectures
1 Chapter 2 Database Environment Transparencies © Pearson Education Limited 1995, 2005.
1 SWE Introduction to Software Engineering Lecture 22 – Architectural Design (Chapter 13)
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 16 Designing.
Chapter 13 Physical Architecture Layer Design
1 Introduction The Database Environment. 2 Web Links Google General Database Search Database News Access Forums Google Database Books O’Reilly Books Oracle.
Application architectures
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
Building Enterprise Information Portal using Oracle Portal 3
Chapter 4: Database Management. Databases Before the Use of Computers Data kept in books, ledgers, card files, folders, and file cabinets Long response.
Software Architecture Patterns (2). what is architecture? (recap) o an overall blueprint/model describing the structures and properties of a "system"
Chapter 2 Database Environment Pearson Education © 2014.
Course Instructor: Aisha Azeem
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Chapter 1: The Database Environment
Lecture-8/ T. Nouf Almujally
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
The Client/Server Database Environment
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Chapter 6 – Architectural Design Lecture 2 1Chapter 6 Architectural design.
IT – DBMS Concepts Relational Database Theory.
Database Architectures and the Web
Chapter 12 Designing Distributed and Internet Systems
The Design Discipline.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Chapter 7: Architecture Design Omar Meqdadi SE 273 Lecture 7 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Peter Hinrichsen TechInsite Pty Ltd Rolling your own Object Persistence Framework (OPF) Please consider the following questions:
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Database Architectures and the Web Session 5
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 10 Architectural Design.
1 CMPT 275 High Level Design Phase Architecture. Janice Regan, Objectives of Design  The design phase takes the results of the requirements analysis.
Figure – Chapter 6. Figure 6.1 The architecture of a packing robot control system.
CS 160: Software Engineering October 8 Class Meeting
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
Chapter 6 Architectural Design.
Lecture # 3 & 4 Chapter # 2 Database System Concepts and Architecture Muhammad Emran Database Systems 1.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Jim Janson. Agenda Evolution of software architectures 3-tier User interfaces Application servers Databases.
1 CMPT 275 High Level Design Phase Modularization.
Bayu Adhi Tama, M.T.I 1 © Pearson Education Limited 1995, 2005.
Chapter 2 Database Environment.
CS223: Software Engineering Lecture 14: Architectural Patterns.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
System Architecture CS 560. Project Design The requirements describe the function of a system as seen by the client. The software team must design a system.
Business System Development
Database System Concepts and Architecture
CSC 480 Software Engineering
Database Architectures and the Web
Chapter 16 Designing Distributed and Internet Systems
Ch > 28.4.
Chapter 2 Database Environment Pearson Education © 2009.
Data, Databases, and DBMSs
Introduction to Databases Transparencies
Database Environment Transparencies
Tiers vs. Layers.
Chapter 6 – Architectural Design
Chapter 1: The Database Environment
The Database Environment
Presentation transcript:

 Chapter 6 Architecture 1

What is Architecture?  Overall Structure of system  First Stage in Design process 2

Architecture  Get it right to start  Plan driven needs architecture  Agile development needs an architectural basis  Overlap  Requirements analysis and architecture  Relates more to non-functional requirements 3

Levels  Author – Large and small  Large - Major Components  POS system  Billing system  Small – within a program  Object structure  Menu structure  Command structure 4

Importance  Architecture  Possilby difficult to change  affects critical aspects of a system  Affects  Performance  Robustness  Distributability  Maintainability 5

Importance  Performance  Hardware  Database  Communication  Concurrency  Load balancing 6

(Importance)  Robustness  GUI builder – capable for the future  3d Model – choice will limit development  Database – triggers, procedures, 7

(Importance)  Distributability  Software  Data  Maintainability  Test Harness  Expandability 8

Representation  Blocks – major components  Arrow – interaction of components 9

Uses  Documentation  Development team  maintenance team  Documentation for sales, external developers  Expandability  Interface Points  Performance 10

Case study Simple Access Database 11

Case Study Problems  Separation of code and data  Delivery of code to customer  Delivery of data to customer  Multiple databases in house  Insertion of data from external sources  Transfer of data to customer 12

(Importance)  Distributability – 2 ways  Software updates  Data updates  Web servers  Software release  Maintainability  Commonly known tools – hiring  GUI builder only – version control 13

Case Study – Evolution 1 14

Revision 1  Advantages  Program deliverable without changing data  Data deliverable without changing program  Still missing  Generic data import mechanism  Software updates – labor intensive – install per site  Data updates – labor intensive – mail or download new  Same integration repeated for each customer (county wide)  Scalability of Access Database 15

Web Based Architecture 16

Web Based Architecture  Generic Data import  Replaced manual process  Accepted multiple source types (mdb, csv, text)  Recognized standard fields  Multiple translations (city, state, zip – first, middle, last)  Server Choices  Microsoft SQL Server  Microsoft Server  Microsoft Internet Information Server  Chosen for performance/cost/dependability 17

(Web Based Architecture)  State Databases  Unified to minimize imports  Separate by state to allow distribution on servers  Customer databases  Separate to allow distribution on servers  Extractions of State databases  Separate allows for personal data, information 18

Database Architecture  Business Logic encoded in Stored Procedures  Better performance than in web server  Better security than in web server  Report Generation  Crystal Reports  Separate process (not part of web server) 19

Types of Views Krutchen  Logical View  key abstractions  Objects, classes  Process  With interactions  Development  components  Physical  Hardware and software 20

Patterns  Pattern  General description of good, accepted practice  Not an algorithm  Not a technology  Examples  Model-View-Controller  3 tier web application  Layered 21

Multi-Tier, Client- Server 22

Layered Architecture  Commonly used to describe Operating Systems  Low level kernel  Layer for device drivers  Layer for security  Layer for File systems  Layer for user access 23

Repository  Central Database  Many applications Chapter 4 Requirements engineering24

Client - Server  Web Browser – Web server  Smartphone app  Weather  Facebook  Thin client vs fat client  Thin – minimal display, interaction  Fat – Business processing at client Chapter 4 Requirements engineering25

Pipe and Filter  Unix  Cat  Grep  Sed  Awk  Sort Chapter 4 Requirements engineering26

Language Processing Systems  Early CAD systems  Mathematical formula systems  Natural Language Translation Systems  SQL  Compilers/Interpreters 27

Data Warehousing  Extraction of OLTP databases  Restructuring, simplification of databases  Simplified Analysis tools 28

Discussion  Draw an architecture diagram for a major system  Google Maps  Facebook  Weather tracking system  Multiple Listing Service  …  Also  At least 5 major components  Pros, cons  Effects on development, distribution, performance Chapter 4 Requirements engineering29