10/6/2015 ©2007 Scott Miller, University of Victoria 1 2a) Systems Introduction to Systems Introduction to Software Systems Rev. 2.0.

Slides:



Advertisements
Similar presentations
DT228/3 Web Development WWW and Client server model.
Advertisements

IIS Technologies.
8.
Building Applications using ASP.NET and C# / Session 1 / 1 of 21 Session 1.
© 2010, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet 1.
Introduction to ASP.NET. 2 © UW Business School, University of Washington 2004 Outline Static vs. Dynamic Web Pages.NET Framework Installing ASP.NET First.
The Internet Useful Definitions and Concepts About the Internet.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic Server Side Web Technologies: Part 2.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Live the dream… Technologies of e-Commerce Unit 8 – e-Commerce LO1 : Know the technologies required for e-commerce.
© 2004, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet.
July 16 th, 2005 Software Architecture in Practice RiSE’s Seminars Bass’s at all Book :: Chapters 13 Fred Durão.
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
Chapter ONE Introduction to HTML.
The PHP Story. PHP Story PHP is a programming language. Incorporate(join) sophisticated business logic. Widely used general purpose scripting language.
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
IT 210 The Internet & World Wide Web introduction.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
CSS/417 Introduction to Database Management Systems Workshop 5.
2013Dr. Ali Rodan 1 Handout 1 Fundamentals of the Internet.
Chapter 6 The World Wide Web. Web Pages Each page is an interactive multimedia publication It can include: text, graphics, music and videos Pages are.
Introduction to Internet Programming (Web Based Application)
Internet, intranet, and multimedia database processing l Database processing across local and wide area networks l Alternative architectures for distributing.
CS117 Introduction to Computer Science II Lecture 1 Introduction to WWW and HTML Instructor: Li Ma Office: NBC 126 Phone: (713)
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
10/13/2015 ©2006 Scott Miller, University of Victoria 1 Content Serving Static vs. Dynamic Content Web Servers Server Flow Control Rev. 2.0.
HTML ~ Web Design.
WEB SCIENCE. What is the difference between the Internet and the World Wide Web? Internet is the entire network of connected computers and routers used.
1 Welcome to CSC 301 Web Programming Charles Frank.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
WEB DEVELOPMENT WITH PHP/MYSQL. WEB DEVELOPMENT COURSE HAS DIFFERENT NAME IN DIFFERENT INSITUTES, THIS IS A CORE COURSE FOR BS/MS STUDENTS. THIS IS ALSO.
Schedule Introduction to Web & Database Integration Tools and Resources HTML and Styles Forms and Client-Side Scripts DB Engines Forms Processing and Server-Side.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Web Systems & Technologies Lecture 1
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Introduction to the World Wide Web & Internet CIS 101.
Electronic Commerce Semester 1 Term 1 Lecture 7. Introduction to the Web The Internet supports a variety of important tools, such as file transfer, electronic.
Web Design Terminology Unit 2 STEM. 1. Accessibility – a web page or site that address the users limitations or disabilities 2. Active server page (ASP)
Website Design and Construction Services and Standards.
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.
HTML PROJECT #1 Project 1 Introduction to HTML. HTML Project 1: Introduction to HTML 2 Project Objectives 1.Describe the Internet and its associated key.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Advanced Higher Computing Science
Distributed OS.
4.01 How Web Pages Work.
CX Introduction to Web Programming
Understanding Web Server Programming
4.01 How Web Pages Work.
WWW and HTTP King Fahd University of Petroleum & Minerals
Chapter 27 WWW and HTTP.
Introduction to Servlets
Chapter 3 Hardware and software 1.
Chapter 3 Hardware and software 1.
4.01 How Web Pages Work.
Web Application Development Using PHP
Presentation transcript:

10/6/2015 ©2007 Scott Miller, University of Victoria 1 2a) Systems Introduction to Systems Introduction to Software Systems Rev. 2.0

10/6/2015 ©2007 Scott Miller, University of Victoria 2 What is a System? Collection of 2 or more interrelated elements that work towards common purpose –Natural; e.g. weather system –Mixed Discipline; e.g. hardware, software form PC –Software; e.g. OOP Complex collaboration of components –Usually can be broken down into subsystems

10/6/2015 ©2007 Scott Miller, University of Victoria 3 What is a System? Relationship between elements only exists if one or both elements influence the other A B Input X Input Y C D Output X Output Y E

10/6/2015 ©2007 Scott Miller, University of Victoria 4 Software Systems Classes are elements within a single OOP Relationship between classes in OOP –Inheritance (class A inherits all attributes of class B) –Method calls (method from class A modifies behavior/data from class B) –Composition (class A contains class B) Processes are elements between running programs Relationship between executed programs –Pipelines, threads –Entry points (DLL)

10/6/2015 ©2007 Scott Miller, University of Victoria 5 Software Systems Fundamental Ideas of Systems 1.A set of elements 2.Relationships 3.Boundaries Examples of Systems in Software –Operating Systems –File Systems –Databases; RDBMS

10/6/2015 ©2007 Scott Miller, University of Victoria 6 Software Systems Inputs Outputs

10/6/2015 ©2007 Scott Miller, University of Victoria 7 State of a System The state of a system considers the current values of certain (or all) elements in a system. –e.g. the values of variables in the system. A binary value of certain bits in a register Current number on a counter Contents of a variable in a C++ program –State is described by the State Vector

10/6/2015 ©2007 Scott Miller, University of Victoria 8 State of a System Change in state over time is the state trajectory Set of all possible states that the trajectory can follow is the state space –e.g. 4 bit binary state

10/6/2015 ©2008 Scott Miller, University of Victoria 9 State Space and Trajectory … t 1 2 3

10/6/2015 ©2007 Scott Miller, University of Victoria 10 Key Ideas Homeostasis: dynamic equilibrium (changing in a predictable manner) –Variables remain within acceptable limits –States remain in allowed state space Systemic/holistic failures: Failures foreseen in the system by knowing all the relationships Piecemeal failures: Failures due to a lack of understanding of interactions between components

10/6/2015 ©2007 Scott Miller, University of Victoria 11 Key Ideas Emergent Behaviour: behaviours that develop due to the system; not behaviors predicted from elements Synergy: emergence of unexpected and interesting behaviour Complexity: number of interrelated parts make system difficult to understand –Related to interest; when not interested abstract details away

10/6/2015 ©2007 Scott Miller, University of Victoria 12 Complexity Consider a system comprised of Boolean elements # elements 12345N # possible relations N(N-1) 2 # possible states N2N

10/6/2015 ©2007 Scott Miller, University of Victoria 13 Object-Oriented Programming Each complete program is a system in OOP Each program is comprised of sub- systems: packages, routines, objects Elements consist of libraries, classes, objects, packages, etc. Software Engineers work on individual modules to complete big picture

10/6/2015 ©2007 Scott Miller, University of Victoria 14 2b) The Web as a System Introduction to the Web The Web as a Software System Introduction to Web Applications

10/6/2015 ©2007 Scott Miller, University of Victoria 15 WWW vs. Internet World Wide Web ≠ Internet Internet is a large scale network comprised of hundreds of millions of individual nodes (PCs) Web is a collection of millions of hyperlinked documents delivered over the internet Web is one of many applications of the internet; e.g. FTP, WWW, VoIP, IRC, etc.

10/6/2015 ©2007 Scott Miller, University of Victoria 16 Origins of the Web Tim Berners-Lee, 1989 Hyperlinked information Guides to FTP, replace GOPHER Removed “centralized” bulletin board components

10/6/2015 ©2007 Scott Miller, University of Victoria 17 Web as a System System comprised of many sub-systems –HTML, XML, CSS files –CGI, SSI, scripting –RDBMS –Protocol stack –Networking –Browser (Interpreter) INTERFACES

10/6/2015 ©2007 Scott Miller, University of Victoria 18 *Goal For Course Be able to understand this diagram: Internet ClientWeb Application Web Server (Static Web Pages) App. Server File RDBMS CGI ODBC HTTP TCP IP

10/6/2015 ©2007 Scott Miller, University of Victoria 19 Web App. Design Challenges We are not building a plain website. How do we: –Deliver dynamic content? Not static HTML pages Database searches (e.g. E-commerce) Custom HTML based on user requests –Manage the state of the session? Remembering user name Support secure creation of username/password Customized portal sites (e.g. Rogers, Yahoo) –HTML was not designed with these in mind

10/6/2015 ©2007 Scott Miller, University of Victoria 20 Evolution of the Web Web pages: HTML – static content - hypertext Web Sites: Hierarchy of web pages with Coherent navigation, look and content Web Applications: client/server applications where the client is a web browser; interactively delivers dynamic content over the internet Content (DB, script) Dynamically created pages

10/6/2015 ©2007 Scott Miller, University of Victoria 21 Easy Marks!!! Web page Web Site Web Application ? ? ? HTML: Pleasing, aesthetic design. Static. HTML, XML, CSS: Coherent collection of web pages. Static. Hierarchical. SSI, CGI, JSP: Interactive, dynamic content.

10/6/2015 ©2007 Scott Miller, University of Victoria 22 Criteria for Good Design Page Site App. Time Money

10/6/2015 ©2007 Scott Miller, University of Victoria 23 Application Considerations HTTP was not designed with state, applications or dynamic content in mind –Need workarounds, plug-ins, additions to base HTTP Version compatibility/bottlenecks Security Scalability

10/6/2015 ©2007 Scott Miller, University of Victoria 24 Scalability Scalable: Able to stay responsive as user base grows. Processor Speed # Concurrent Users

10/6/2015 ©2007 Scott Miller, University of Victoria 25 Reading for Next Class Get ready to use UNIX (go to ELW- B215 and log in. Practice opening NetBeans and get used to the interface) NEXT CLASS : OOP and Lab 1 Preparation