Understanding Networked Applications: A First Course Midterm two review by David G. Messerschmitt.

Slides:



Advertisements
Similar presentations
Distributed Data Processing
Advertisements

Security Protocols Sathish Vadhiyar Sources / Credits: Kerberos web pages and documents contained / pointed.
Research Development for Android Coopman Tom. What is Android?  Smartphone operating system  Google  Popular  ‘Easy to develop’  Open-Source  Linux.
Chapter 10 Site Architecture McGraw-Hill/Irwin Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved.
8.
Understanding Networked Applications: A First Course Introduction to course by David G. Messerschmitt.
Understanding Networked Applications: A First Course Chapter 6 by David G. Messerschmitt.
Understanding Networked Applications: A First Course Midterm one review by David G. Messerschmitt.
Computer Engineering 294 IP R.Smith 5/ Intellectual Property What is it? Why is it important? – What is it designed to do? What are its basic forms?
SWE Introduction to Software Engineering
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
Future Research Directions Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Understanding Networked Applications: A First Course Chapter 4 by David G. Messerschmitt.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
5th Edition, Irv Englander
Key Issues in Licensing Software and Associated Intellectual Property: Matching Licensing Models to Business Strategies Steve Mutkoski Regional Director,
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Microsoft Services Provider Agreement. I want to provide my customers with software services that include Microsoft licensed products. Microsoft Services.
You’ve Built The Pieces, Now Integrate Your Enterprise! Mid-Atlantic Regional Conference January 17, 2003 Patty Gertz, Princeton University
Understanding Active Directory
A centralized system.  Active Directory is Microsoft's trademarked directory service, an integral part of the Windows architecture. Like other directory.
Computer Security Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
For more notes and topics visit:
Competitive Differentiation: Using Technology to Deliver on Staples EASY Brand Promise Scott Floeck, Sr. Vice President, Staples, Inc.
April 2006Peter Henderson, University of Southampton1 The Architecture of Open Systems Peter Henderson Dependable Systems and Software Engineering and.
WEB ENGINEERING LECTURE 4 BY Kiramat Rahman. outline  In this Lecture you will learn about:  Term “Software” and its relationship with “Hardware” 
Reuse Standards Dr. Carma McClure Extended Intelligence, Inc. Copyright (c) 1998 by Extended Intelligence, Inc.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Quality Attributes of Web Software Applications – Jeff Offutt By Julia Erdman SE 510 October 8, 2003.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
Version 4.0. Objectives Describe how networks impact our daily lives. Describe the role of data networking in the human network. Identify the key components.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
An Introduction to Software Architecture
Computing on the Cloud Jason Detchevery March 4 th 2009.
IT Infrastructure Chap 1: Definition
CS 474 Database Design and Application Terminology Jan 11, 2000.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Customer Interface for wuw.com 1.Context. Customer Interface for wuw.com 2. Content Our web-site can be classified as an service-dominant website. 3.
1 Ethics of Computing MONT 113G, Spring 2012 Session 32 Software as Intellectual Property.
Understanding Networked Applications: A First Course Ideas and examples (Chapter 6) by David G. Messerschmitt.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
CSC480 Software Engineering Lecture 10 September 25, 2002.
1 Recommendations Now that 40 GbE has been adopted as part of the 802.3ba Task Force, there is a need to consider inter-switch links applications at 40.
Copyright and Intellectual Property Right 1. 2 Use and Protection of Intellectual Property in Online Business Intellectual property (general term) includes:
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 6 Essentials of Design.
Fundamentals of Intellectual Property
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
Protecting your Managed Services Practice: Are you at Risk?
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 6 - Essentials of Design an the Design Activities.
Building Preservation Environments with Data Grid Technology Reagan W. Moore Presenter: Praveen Namburi.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
6/28/ A global mesh of interconnected networks (internetworks) meets these human communication needs. Some of these interconnected networks are.
5th Edition, Irv Englander
Intro to Intellectual Property 3.0
CS 325: Software Engineering
SuperComputing 2003 “The Great Academia / Industry Grid Debate” ?
KrypC Technologies Accelerated Blockchain Adoption.
Key Issues in Licensing Software and Associated Intellectual Property: Matching Licensing Models to Business Strategies Steve Mutkoski Regional Director,
CSC 480 Software Engineering
Systems Analysis and Design With UML 2
Physical Architecture Layer Design
#01 Client/Server Computing
Advanced Operating Systems
Microsoft Services Provider License Agreement Program reference card
An Introduction to Software Architecture
Introduction to Computing
#01 Client/Server Computing
EDI Systems What They Are and Why They Matter
Presentation transcript:

Understanding Networked Applications: A First Course Midterm two review by David G. Messerschmitt

Understanding Networked Applications A First Course 2 Copyright notice ©Copyright David G. Messerschmitt, This material may be used, copied, and distributed freely for educational purposes as long as this copyright notice remains attached. It cannot be used for any commercial purpose without the written permission of the author.

Understanding Networked Applications A First Course 3 Major topics Architecture –decomposition and modularity –granularity and hierarchy –interfaces and data types Layering –network, operating system, middleware, application

Understanding Networked Applications A First Course 4 Major topics Architecture –decomposition and modularity –granularity and hierarchy –interfaces and data types Layering –network, operating system, middleware, application

Understanding Networked Applications A First Course 5 Major topics Interface vs decomposition Protocol and user interface Challenges for selling information –Intellectual property –Copy protection –Policy issues

Understanding Networked Applications A First Course 6 Major topics Economics of networked computing –Lock-in –Network effects

Understanding Networked Applications A First Course 7 Major topics Applications and organizations –rationale for networked applications –acquiring applications –application lifecycle

Understanding Networked Applications A First Course 8 Modularity A system is modular when it is divided into subsystems (called modules) with “good” properties –Modules embody distinct functional groupings –Hierarchy supports views at different granularity and scale –Separation of concerns among modules –Reusability

Understanding Networked Applications A First Course 9 Software: Allows a system to be understood at different granularity Hierarchy Organization: Allows a manager to focus on high-level objectives, delegating low-level detail

Understanding Networked Applications A First Course 10 Interfaces Focus of module interaction and interoperability Two purposes: –informs other modules how to interact –informs implementer as to what has been promised to other modules

Understanding Networked Applications A First Course 11 Example: automobile internal architecture Steering wheel AcceleratorBrake Power steering Engine Power brakes Front wheelsRear wheels

Understanding Networked Applications A First Course 12 Module interaction through interfaces Client Server action, parameters returns Both subsystems are affected by the interaction Data customizing an action and disclosing its results

Understanding Networked Applications A First Course 13 Layering Existing layers Elaboration or specialization   Layering builds capability incrementally by adding to what exists

Understanding Networked Applications A First Course 14 CommunicationsStorage Network equipmentStorage peripherals Network softwareFile system Distributed object management Database management Application Middleware Operating system Equipment Simplified infrastructure layering

Understanding Networked Applications A First Course 15 Applications Integrative services Generic services Common representations ProcessingStorageConnectivity Application components

Understanding Networked Applications A First Course 16 The basic idea Diversity of applications Diversity of processing, storage, and connectivity technologies Common services and representations and structures for information

Understanding Networked Applications A First Course 17 Layer above is a client of the layer below Layer below as as a server to the layer above ….by utilizing the services of the layer below and adding capability Each layer provides services to the layer above…. Interaction of layers

Understanding Networked Applications A First Course 18 Web browser File system Operating system File Network Message Collection of packets FragmentationAssembly Message HTML Screen Application Web server Example

Understanding Networked Applications A First Course 19 Standardization De facto standard De jure standard Industry standard

Understanding Networked Applications A First Course 20 Industry structure Architecture and industrial organization Stovepipes vs layers and implications

Understanding Networked Applications A First Course 21 Selling information Information is the commodity of networked applications (and information technology more generally) Information has very different properties from other economic goods What are the implications to how information is bought and sold?

Understanding Networked Applications A First Course 22 Some economic properties Extreme supply economies of scale –high creation cost, low replication cost –new models of payment (like free trials, advertising, and versioning) –unlike other goods, pricing cannot be based on marginal cost Non-rival: –unlike physical goods, you can give away or sell and still retain

Understanding Networked Applications A First Course 23 Intellectual property Trademark Trade secret Patent Copyright

Understanding Networked Applications A First Course 24 Limitations to copyright Fair use: –quote or review –make limited copies for purposes such as teaching a class or using different players for the same licensee Second-use: –right to convey rights to a third party Limited to expression of facts or ideas –does not prevent others from creating independent works based on the same facts or ideas Does extend to “derivative” works

Understanding Networked Applications A First Course 25 Complementary measures Technology Licensing and enforcement Casual copier Hobbyist Cracker Small-scale pirate Large-scale pirate

Understanding Networked Applications A First Course 26 Lock-in Often there are switching costs associated with moving from one supplier or application to another (beyond just the direct price charged for the new solution) What are some examples of these costs?

Understanding Networked Applications A First Course 27 Takeaway sound bite When the new supplier offers a direct substitute product and has identical costs… The asset value of a locked-in customer is equal to that customer’s switching cost Lesson for suppliers: encourage switching cost for your customers Lesson for customers: beware of switching costs

Understanding Networked Applications A First Course 28 Wish list As an information technology supplier, you want: 1.Lots of complementary products (to increase the value of your product) 2.Lots of competitors for each complementary product (grab more of the value for yourself) 3.No direct competition for your product, or… 4.High switching costs for your product (which may mean for complementary products, which runs counter to 2.)

Understanding Networked Applications A First Course 29 Types of network effects No network: independence Direct: complementary Indirect : mutual dependence on some complementary commodity

Understanding Networked Applications A First Course 30 Copy protection satellite (encrypted) Digital Transmission Copy Protection (DTCP) satellite receiver High-bandwidth Digital Copy Protection (HDCP) (DVI) (IEEE 1394)

Understanding Networked Applications A First Course 31 Reasons to distribute Performance –interactivity –scalability Specialization –simplify administration Compartmentalization –data in the organization that administers it

Understanding Networked Applications A First Course 32 Reasons to distribute (con’t) Locality –data near source, presentation near user Sharing –maintain in one place, access from many Security –access control, selective sharing Availability –redundancy

Understanding Networked Applications A First Course 33 Acquisition options To operate it yourself –License “as is” –Outsource its development and license –Develop it internally Outsource deployment and operations –ASP: subscribe to the application over the network

Understanding Networked Applications A First Course 34 Waterfall model: lifecycle of an application Conceptualization Analysis Architecture Development Integration and testing Deployment Operations, maintenance and upgrade