CS 5150 1 CS 5150 Software Engineering Lecture 14 System Architecture 2.

Slides:



Advertisements
Similar presentations
E-shop Workshop Building an electronic storefront for your business.
Advertisements

ITSF STORE BUSINESS SOLUTION PRESENTATION. STORE MODULE INCLUDES: Material Management Purchasing Components Handling Shipments Receiving of parts Store.
© Tally Solutions Pvt. Ltd. All Rights Reserved 1 Shoper 7.2 Interface with Tally.ERP 9 January 2010.
09/04/2015Unit 2 (b) Back-Office processes Unit 2 Assessment Criteria (b) 10 marks.
Benefits: An Affordable Budgetary Accounting Solution for Oklahoma Cities / Towns under 5,000 in Population! Oklahoma Compliant Accounting / Audit Reporting.
Automated Payment System. Benefits There is minimal training needed No expensive equipment necessary You can maintain your existing banking relationship.
Online Banking Fraud Prevention Recommendations and Best Practices This document provides you with fraud prevention best practices that every employee.
Internet Sellouts Final Presentation Enterprise Architecture Group.
CS CS 5150 Software Engineering Lecture 14 System Architecture 2.
CS 501: Software Engineering Fall 2000 Lecture 14 System Architecture I Data Intensive Systems.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 8 Requirements II.
1 CS 501 Spring 2007 CS 501: Software Engineering Lecture 13 System Architecture and Design I.
CS 5150 Software Engineering
1 CS 501 Spring 2006 CS 501: Software Engineering Lecture 13 System Architecture and Design I.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 14 System Architecture and Design 2.
CS CS 5150 Software Engineering Lecture 14 System Architecture 2.
CS 501: Software Engineering Fall 2000 Lecture 15 System Architecture II Distributed and Real Time Systems.
1 CS 501 Spring 2005 CS 501: Software Engineering Lecture 13 System Architecture and Design I.
Chapter Lead Black Slide © 2001 Business & Information Systems 2/e.
SABAL SHRESTHA SHERIF HALAWA SHAMA KHADPEKAR JIANWEI LAI SI TRAN GROUP A Tri-Airport Shuttle System.
Lecture Note 8 Using Data Flow Diagrams
TRANSACTION PROCESSING SYSTEM Liew Woei Song Muhammad Hofiz Achoson.
What is E-Commerce? Section 8.1. What is E-commerce? E-commerce is the exchange of goods, services, information, or other businesses through electronic.
Lead Black Slide Powered by DeSiaMore1. 2 Chapter 10 Business Operations.
Requirements Walk-through
1 CS 501 Spring 2002 CS 501: Software Engineering Lecture 13 System Architecture and Design I.
MSF Requirements Envisioning Phase Planning Phase.
Transaction Processing System
Delight QuickBooks Online Banking Internal Support Training QuickBooks Windows 2009/2010 Online Banking.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 16 System Architecture and Design II.
Module 7: Fundamentals of Administering Windows Server 2008.
CS 360 Lecture 8.  The requirements describe the function of a system as seen by the client.  The software team must design a system that will meet.
Databases and Database Management Systems
 CS 5380 Software Engineering Chapter 8 Testing.
CDP Standard Grade1 Commercial Data Processing Standard Grade Computing Studies.
Characteristics of ERP Systems. There are some significant differences between ERP and non-ERP systems. These differences are:  In ERP systems, information.
Key Takeaway Points A use case is a business process; it begins with an actor, ends with the actor, and accomplishes a business task for the actor. Use.
Faculty of Computer & Information Software Engineering Third year
In-depth Integrated Settlement RA43 Breakout Session RAWG Member Name, Airline James Shannon, IATA.
1 California State University, Fullerton Chapter 10 Business Operations.
Faculty of Computer & Information
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
CS 501: Software Engineering
CS 5150 Software Engineering Lecture 13 Software Architecture 2.
1 CS 501 Spring 2008 CS 501: Software Engineering Lecture 13 System Architecture and Design I.
CHAPTER 2 TYPES OF BUSINESS INFORMATION SYSTEM. INTRODUCTION Information System support business operations by processing data related to business operation.
Copyright © 2007 Pearson Education Canada 23-1 Chapter 23: Using Advanced Skills.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 15 System Architecture and Design I.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
April 20022/CS/3XAPP 1 Database Design Anatomy of an application John Wordsworth Department of Computer Science The University of Reading
Step 1 Lead Notifications Dear Partner, New leads have been assigned to your organization based on customer preference and are available for you.
HOW TO CHOOSE A CREDIT CARD. CHARGE IT! Using credit cards to pay for goods and services is a fact of life for most consumers. Yet, many consumers do.
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.
SIMS Dinner Money.  Integrated SIMS solution  Record, monitor and share pupil meal choices  Track financial aspects automatically  Primary schools.
Use Case Diagrams A Detailed Description. Use Case Diagrams Use case diagrams describe relationships between users and use cases A use case is a (usually.
Overview of Transaction Processing and Enterprise Resource Planning Systems Chapter 2.
SYSTEM ANALYSIS & DESIGN SYED MD MARUF HASAN TP030777
Transaction processing systems
Chapter 1: Introduction
Managing the IT Function
System Architecture CS 560 Lecture 8.
Overview of Transaction Processing and Enterprise Resource Planning Systems Chapter 2.
CS 501: Software Engineering Fall 1999
Walt Scacchi Software Process ICS225 Spring 2002
Smart Business for eGeneration Companies
Review #1 Intro stuff What is a database, 4 parts, 3 users, etc.
Smart Business for eGeneration Companies
Presentation transcript:

CS CS 5150 Software Engineering Lecture 14 System Architecture 2

CS Administration Next and final presentations Sign up now Team members who were unable to come to the first presentation should attend the second Office hours No office hours tomorrow, October 18.

CS Administration Tests There are 4 tests, each with 2 questions. The final grade will be based on the best 6 questions out of 8. Uncollected answer books are at 301 College Avenue. Average grades: Test 1 Q1Test 1 Q2Test 2 Q1Test 2 Q Last time that this course was taught, poor test results were a common reason for getting a poor overall grade for the course

CS Test 2 Question 2 The Pizza Ordering System allows the user of a web browser to order pizza for home delivery. To place an order, a shopper searches to find items to purchase, adds items one at a time to a shopping cart, and possibly searches again for more items. When all items have been chosen, the shopper provides a delivery address. If not planning to pay with cash, the shopper also provides credit card information. The system has an option for shoppers to register with the pizza shop. They can then save their name and address information, so that they do not have to enter this information every time that they place an order.

CS Test 2 Question 2 (i) Develop a use case diagram, for a use case for placing an order, PlaceOrder. The use case should show a relationship to two previously specified use cases, IdentifyCustomer, which allows a user to register and log in, and PaybyCredit, which models credit card payments. Definition from Lecture 9: A use case is a a task that an actor needs to perform with the help of the system.

CS Test 2 Question 2 (i) Authenticate TakeExam > CheckGradesExamTaker Example from Lecture 9:

CS Test 2 Question 2 (i) FAQ about Use Cases See: mu.edu/course/ /umlucdfaq.html

CS Test 2 Question 2 (i) Example from Wikipedia:

CS Test 2 Question 2 (i) Shopper PlaceOrder > IdentifyCustomer PaybyCredit > Correct solution Optional link

CS Test 2 Question 2 (i) Incorrect Solution SearchMenu PaybyCredit > IdentifyCustomer > AddtoCart Pay Shopper

CS System Design: Data Intensive Systems Examples Electricity utility customer billing (e.g., NYSEG) Telephone call recording and billing (e.g., Verizon) Car rental reservations (e.g., Hertz) Stock market brokerage (e.g., Charles Schwab) E-commerce (e.g., Amazon.com) University grade registration (e.g., Cornell)

CS Example: Electricity Utility Billing Requirements analysis identifies several transaction types: Create account / close account Meter reading Payment received Other credits / debits Check cleared / check bounced Account query Correction of error etc., etc., etc., Architectural Style: Master File Update

CS Electricity Utility Billing First attempt: Data input Master file Transaction Bill Each transaction is handled as it arrives.

CS Criticisms of First Attempt Where is this first attempt weak? All activities are triggered by a transaction A bill is sent out for each transaction, even if there are several per day Bills are not sent out on a monthly cycle Awkward to answer customer queries No process for error checking and correction

CS Electricity Utility Billing Batch Processing: Edit and Validation Data input Master file Edit & validation read only errors Batches of validated transactions Batches of incoming transactions

CS UML Deployment Diagram: Validation MasterFile Check EditCheck ValidData DataInput RawData

CS Electricity Utility Billing Batch Processing: Master File Update Master file update Bills Validated transactions in batches Sort by account errors Reports Batches of input data Checkpoints and audit trail

CS Electricity Utility Billing Benefits of Batch Updating All transactions for an account are processed together at appropriate intervals Backup and recovery have fixed checkpoints Better management control of operations Efficient use of staff and hardware Error detection and correction is simplified

CS Architectural Style: Master File Update (basic) Master file update Data input and validation Mailing and reports Example: billing system for electric utility Advantages: Efficient way to process batches of transactions. Disadvantages: Information in master file is not updated immediately. No good way to answer customer inquiries. Sort

CS Online Inquiry: Use Case CustomerRep AnswerCustomer NewTransaction > A customer calls the utility and speaks to a customer service representative. The representative can read the master file, but not make changes to it. If the representative wishes to change information in the master file, a new transaction is created as input to the master file update system.

CS Online Inquiry Master file read only Customer Service Representative Customer Service department can read the master file, make annotations, and create transactions, but cannot change the master file. New transaction

CS Architectural Style: Master File Update (full) Example: billing system for electric utility Advantages: Efficient way to answer customer inquiries. Disadvantages: Information in master file is not updated immediately. Customer services Master file update Data input and validation Mailing and reports Sort

CS Data Intensive Systems with Real Time Transactions Transactions Received by mail or over telephone For immediate or later action Complex customer inquiries Highly competitive market Example: A Small-town Stockbroker

CS Real-time Transactions & Batch Processing Customer & account database Real-time transactions Data input This is a combination of the Repository style and the Master File Update style

CS Extending the Repository Architectural Style: A Small-town Stockbroker Databases Customer and account database Financial products (e.g., account types, pension plans, savings schemes) Links to external databases (e.g., stock markets, mutual funds, insurance companies)

CS Real-time Transactions Customer & account database Products & services database Real-time transactions External services

CS Real-time Transactions & Batch Processing Customer & account database Products & services database Real-time transactions Batch processing Data input External services

CS Stock Broker: Interface Diagram CustomerDB ProductDB OnLineTR BatchTR External

CS Practical considerations to include in Architecture and Specification Can real-time service during scheduled hours be combined with batch processing overnight? How will the system guarantee database consistency after any type of failure? reload from checkpoint + log detailed audit trail How will transaction errors be avoided and identified? How will transaction errors be corrected? How will staff dishonesty be controlled? These practical considerations may be major factors in the choice of architecture.

CS System Design: Non-Functional Requirements In some types of system architecture, non-functional requirements of the system may dictate the software design and development process.

CS Non-functional requirements: Continuous Operation Many systems must operate continuously Software update while operating Hardware monitoring and repair Alternative power supplies, networks, etc. Remote operation These functions must be designed into the fundamental architecture.

CS Time-Critical Systems A time-critical (real time) system is a software system whose correct functioning depends upon the results produced and the time at which they are produced. A soft real time system is degraded if the results are not produced within required time constraints e.g., a network router is permitted to time out or lose a packet A hard real time system fails if the results are not produced within required time constraints e.g., a fly-by-wire control system for an airplane, must respond within specified time limits.

CS Time Critical System: Architectural Style - Daemon Daemon Example: Web server The daemon listens at port 80 When a message arrives it: spawns a processes to handle the message returns to listening at port 80 Spawned process A daemon is used when messages might arrive at closer intervals than the the time to process them.

CS Software Considerations: Testing Example: Testing multi-threaded and parallel systems Several similar threads operating concurrently: Re-entrant code -- separation of pure code from data for each thread May be real-time (e.g., telephone switch) or non-time critical The difficult of testing real-time, multi-threaded systems may determine the entire software architecture. Division into components, each with its own acceptance test.

CS Software Considerations: Time-Critical System Developers of advanced time-critical software spend much of their effort developing the software environment: Monitoring and testing -- debuggers Crash restart -- component and system-wide Downloading and updating Hardware troubleshooting and reconfiguration etc., etc., etc.