Architectural Patterns. Layers: Pattern. Architectural Pattern Examples. Layer 3. Component 3.1. Layer 2. Component 2.1 Component 2.2.
|
|
- Patricia Rodgers
- 8 years ago
- Views:
Transcription
1 Architectural Patterns Architectural Patterns Dr. James A. Bednar Dr. David Robertson The fundamental problem to be solved with a large system is how to break it into chunks manageable for human programmers to understand, implement, and maintain. Large-scale patterns for this purpose are called architectural patterns. Architectural patterns are related to design patterns, but higher level and larger scale. See Buschmann et al. (1996), chapter 2 for more details. SAPM Spring 2006: Architecture 1 SAPM Spring 2006: Architecture 2 Architectural Pattern Examples High level decompositions: Layers Pipes and filters Blackboard Distributed systems: Broker Interactive systems: Model-view-controller Presentation-abstraction-control Adaptable/reusable systems: Microkernel Scripted components Layers: Pattern Layer 3 Component 3.1 Layer 2 Component 2.1 Component 2.2 Layer 1 Component 1.1 Component 1.2 SAPM Spring 2006: Architecture 3 SAPM Spring 2006: Architecture 4
2 Layers: Problem System has different levels of abstraction Typical: Requests go down, notification goes back up It is possible to define stable interfaces between layers Want to be able to change or add layers over time Layers: Solution Start with the lowest level Build higher layers on top Same level of abstraction within a layer No component spreads over two layers Try to keep lower layers leaner Specify interfaces for each layer Try to handle errors at lowest layer possible SAPM Spring 2006: Architecture 5 SAPM Spring 2006: Architecture 6 Layers: Example (TCP/IP) Layers: Advantages FTP TCP IP Ethernet FTP TCP IP Ethernet Reuse of layers Standardization of tasks and interfaces Only local dependencies between layers Programmers and users can ignore other layers Different programming teams can handle each layer physical connection SAPM Spring 2006: Architecture 7 SAPM Spring 2006: Architecture 8
3 Layers: Liabilities Pipes and Filters: Pattern Cascades of changing behavior Lower efficiency of data transfer Difficult to choose granularity of layers Difficult to understand entire system When processing a stream of data, each processing step is done by a filter and the filters are connected by pipes carrying data. Connecting filters in different combinations gives different ways of processing the data streams. SAPM Spring 2006: Architecture 9 SAPM Spring 2006: Architecture 10 Pipes and Filters: Problem Data stream processing which naturally subdivides into stages May want to recombine stages Non-adjacent stages don t share information May desire different stages to be on different processors Helpful: Standardized data structure between stages Pipes and Filters: Solution Filter may consume/deliver data incrementally Filters may be parameterisable (e.g. UNIX filters) Input from data source (e.g. a fil e) Output to a data sink Sequence of filters from source to sink gives a processing pipeline SAPM Spring 2006: Architecture 11 SAPM Spring 2006: Architecture 12
4 Pipes and Filters: Example Lexical analysis Pipes and Filters: Advantages Pipes remove need for intermediate files Symbol table Syntax analysis Semantics analysis Intermediate code generation Can replace filters easily Can achieve different effects by recombination (increases long-term usefulness) If data stream has a standard format, filters can be developed independently Incremental filters allow parallelization SAPM Spring 2006: Architecture 13 SAPM Spring 2006: Architecture 14 Pipes and Filters: Liabilities Difficult to share global data Parallelization is less useful than may seem Expensive if there are many small filters and a high data transfer cost Difficult to know what to do with errors (especially if filters are incremental) Blackboard: Pattern A central, blackboard data store is used to describe a partial solution to a problem. A variety of knowledge sources are available to work on parts of the problem and these may communicate only with the blackboard, reading the current partial solution or suggesting modifications to it via a control component. SAPM Spring 2006: Architecture 15 SAPM Spring 2006: Architecture 16
5 Blackboard: Problem Immature or poorly specified domain No deterministic or optimal solution known for problem Solutions to different parts of problem may require different representational paradigms May be no fix ed strategy for combining contributions of different problem solvers May need to work with uncertain knowledge Blackboard: Solution Problem solvers work independently (and opportunistically) on parts of the problem Share a common data structure (the blackboard) A central controller manages access to the blackboard The blackboard may be structured (e.g. into levels of abstraction) so problem solvers may work at different levels Blackboard contains original input and/or partial solutions SAPM Spring 2006: Architecture 17 SAPM Spring 2006: Architecture 18 Blackboard: Example Blackboard: Advantages Phrase creation Word creation Segmentation Allows problem solvers to be developed independently Controller Phrase1...Phrase2... Blackboard Word1...Word2...Word3...Word4... S1...S2...S3...S4...S5...S6...S7...S8...S9... Easy (within limits) to experiment with different problem solvers and control heuristics System may (within limits) be tolerant to broken problem solvers, which result in incorrect partial solutions SAPM Spring 2006: Architecture 19 SAPM Spring 2006: Architecture 20
6 Blackboard: Liabilities Difficult to test Difficult to guarantee an optimum solution Control strategy often heuristic May be computationally expensive Broker: Pattern Decoupled components interact through remote service invocations. Communication is coordinated by a broker component which does things like forwarding requests and relaying results. Parallelism possible but in practice we need much synchronization SAPM Spring 2006: Architecture 21 SAPM Spring 2006: Architecture 22 Broker: Problem Large scale system where scaling to many components is an issue Components must be decoupled and distributed Services required for adding, removing, activating, locating components at run time Designers of individual components should not need to know about the others Broker: Solution Use brokers to mediate between clients and servers Clients send requests to a broker Brokers locate appropriate servers; forward requests; and relay results back to clients May have client-side and/or server-side proxies SAPM Spring 2006: Architecture 23 SAPM Spring 2006: Architecture 24
7 Broker: Example CORBA: Common Object Request Broker Architecture (e.g. JADE) OLE/DCOM/Active X Multi-agent systems are often coordinated through brokers such as JADE that provide a standard mechanism for relaying messages, based on a high-level communication protocol. Broker: Advantages Components can be developed independently Location transparency Components easily adapted Broker easily adapted Individual agents may be implemented in any language as long as they can input/output according to the protocol. SAPM Spring 2006: Architecture 25 SAPM Spring 2006: Architecture 26 Broker: Liabilities Low fault tolerance Limited efficiency (high communications cost) Difficult to test Model-View-Controller: Pattern Interactive system arranged around a model of the core functionality and data. View components present views of the model to the user. Controller components accept user input events and translate these to appropriate requests to views and/or model. A change propagation mechanism takes care of propagation of changes to the model. SAPM Spring 2006: Architecture 27 SAPM Spring 2006: Architecture 28
8 M-V-C: Problem User interfaces attract many change requests over time Different users ask for different changes User interface technologies change rapidly You may want to support different look and feel standards Important core code can be separated from the interfaces M-V-C: Solution Develop a core model which is independent of style of input/output Define different views needed for parts/whole model Each view component retrieves data from the model and displays it Each view component has an associated controller component to handle events from users The model component notifie s all appropriate view components whenever its data changes SAPM Spring 2006: Architecture 29 SAPM Spring 2006: Architecture 30 M-V-C: Example M-V-C: Advantages Spreadsheet Labour: 60% Tory: 30% Lib.Dem: 10% Controller Model Multiple views of the same model View synchronization View components can be plugged in Changes to interfaces without touching the model Pie chart Bar chart Views SAPM Spring 2006: Architecture 31 SAPM Spring 2006: Architecture 32
9 M-V-C: Liabilities Too complex for simple interface problems Frequent events may strain simple change propagation mechanisms Views and controllers aren t modular in practice Changing the model is expensive if there are many views Presentation-Abstraction-Control: Pattern A system implemented as a hierarchy of cooperating agents. Each agent is responsible for a specific aspect of functionality, and consists of: A presentation component responsible for its visible behaviour An abstraction component which maintains the data model for the agent A control component which determines the dynamics of agent operation and communication SAPM Spring 2006: Architecture 33 SAPM Spring 2006: Architecture 34 P-A-C: Problem Interactive system viewed as a set of cooperating agents, often developed independently Some agents specialize in HCI; others maintain data; others deal with error handling, etc. Some notion of levels of responsibility in the system Changes to individual agents should not affect the whole system P-A-C: Solution Define top-level agent with core functionality and data model, to coordinate the other agents and (possibly) also coordinate user interaction Define bottom-level agents for specific, primitive semantic concepts and/or services in the application domain Connect top and bottom levels via intermediate agents which supply data to groups of lower level agents For each agent separate core functionality from HCI SAPM Spring 2006: Architecture 35 SAPM Spring 2006: Architecture 36
10 P-A-C: Example Information system for political elections, with: Spreadsheet for entering data Various tables and charts for presenting current standings Users interact through graphical interface but different versions exist for different user needs Top-level agent holds data repository Different bottom-level agents for different types of charting, analysis and error handling Intermediate agent to coordinate views of system P-A-C: Advantages Separation of different concepts as individual agents that can be maintained separately Changes to presentation or abstraction in an agent doesn t affect other agents Easy to integrate/replace agents Suits multi-tasking Suits multi-user applications SAPM Spring 2006: Architecture 37 SAPM Spring 2006: Architecture 38 P-A-C: Liabilities Can have too many, too simple bottom-level agents Can be difficult to get control right while maintaining independence of agents Long chains of communication may be inefficient Microkernel: Pattern For systems which must be easily adaptable to changing requirements, separate minimal functional core from extended functionality and customer-specific parts. Provide sockets in the microkernel for plugging in these extensions and coordinating them. SAPM Spring 2006: Architecture 39 SAPM Spring 2006: Architecture 40
11 Microkernel: Problem Software systems with long life spans must evolve as their environment evolves Such systems must be adaptable to changes in existing platforms and must be portable to new platforms There may be a large number of different but similar platforms To conform with standards on different platforms it may be necessary to build emulators on top of the core functionality Thus the core should be small Microkernel: Solution Build a microkernel component which encapsulates all the fundamental services of your application The microkernel: Maintains system-wide resources (e.g. files) Enables other components to communicate Allows other components to access its functionality External servers implement their own view of the microkernel, using the mechanisms available from the microkernel Clients communicate with external servers using the communication facilities of the microkernel SAPM Spring 2006: Architecture 41 SAPM Spring 2006: Architecture 42 Microkernel: Example Microkernel: Advantages Operating system for desktop computers: Must be portable to relevant hardware platforms and adapt as these evolve. Must be able to run applications developed for other established operating systems e.g., users could choose which OS from a menu. Each of these OSs is built as an external server on top of the microkernel. Porting to a new environment normally doesn t need changes to external servers or clients Thus external servers or clients can be maintained independently of kernel Can extend by adding new external servers Can distribute the microkernel to several machines, increasing availability and fault tolerance SAPM Spring 2006: Architecture 43 SAPM Spring 2006: Architecture 44
12 Microkernel: Liabilities Summary Performance overhead in having multiple views of system May be difficult to predict which basic mechanisms should be in the microkernel Architectural patterns allow systems to be broken into chunks that can be developed (to some degree) and maintained independently These patterns support large-scale, long-term development and maintenance Not a recipe, just an approach Next lecture: Scripted components architectural pattern SAPM Spring 2006: Architecture 45 SAPM Spring 2006: Architecture 46 References Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., & Stal, M. (1996). Pattern-Oriented Software Architecture: A System of Patterns. Hoboken, NJ: Wiley. SAPM Spring 2006: Architecture 46
Patterns in Software Engineering
Patterns in Software Engineering Lecturer: Raman Ramsin Lecture 7 GoV Patterns Architectural Part 1 1 GoV Patterns for Software Architecture According to Buschmann et al.: A pattern for software architecture
More informationArchitectural Patterns: From Mud to Structure
DCC / ICEx / UFMG Architectural Patterns: From Mud to Structure Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo From Mud to Structure Layered Architecture It helps to structure applications that
More informationArchitecture Design & Sequence Diagram. Week 7
Architecture Design & Sequence Diagram Week 7 Announcement Reminder Midterm I: 1:00 1:50 pm Wednesday 23 rd March Ch. 1, 2, 3 and 26.5 Hour 1, 6, 7 and 19 (pp.331 335) Multiple choice Agenda (Lecture)
More informationPattern. seconda parte. Types of patterns. ...other good guidance... some GRASP. design patterns (software design) Types of software patterns
rel. 1.7 Università di Padova Facoltà di Scienze MM.FF.NN Informatica - anno 2008-09 Corso di Ingegneria del Software Pattern seconda parte Renato Conte - Pattern II- 1/48 - Types of software patterns
More informationArchitectural patterns
Open Learning Universiteit Unit 3 Learning Unit 3 Architectural patterns Contents Introduction............................................... 35 3.1 Patterns..............................................
More informationThe Software Container pattern
The Software Container pattern Madiha H. Syed and Eduardo B. Fernandez Dept. of Computer and Elect. Eng. and Computer Science Florida Atlantic University, Boca Raton, FL 33431, USA msyed2014@fau.edu, ed@cse.fau.edu
More informationA Review of an MVC Framework based Software Development
, pp. 213-220 http://dx.doi.org/10.14257/ijseia.2014.8.10.19 A Review of an MVC Framework based Software Development Ronnie D. Caytiles and Sunguk Lee * Department of Multimedia Engineering, Hannam University
More informationChapter 2: Remote Procedure Call (RPC)
Chapter 2: Remote Procedure Call (RPC) Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ Contents - Chapter 2 - RPC
More informationLiterature Review Service Frameworks and Architectural Design Patterns in Web Development
Literature Review Service Frameworks and Architectural Design Patterns in Web Development Connor Patrick ptrcon001@myuct.ac.za Computer Science Honours University of Cape Town 15 May 2014 Abstract Organizing
More informationInformation Systems Analysis and Design CSC340. 2004 John Mylopoulos. Software Architectures -- 1. Information Systems Analysis and Design CSC340
XIX. Software Architectures Software Architectures UML Packages Client- vs Peer-to-Peer Horizontal Layers and Vertical Partitions 3-Tier and 4-Tier Architectures The Model-View-Controller Architecture
More informationImplementação. Interfaces Pessoa Máquina 2010/11. 2009-11 Salvador Abreu baseado em material Alan Dix. Thursday, June 2, 2011
Implementação Interfaces Pessoa Máquina 2010/11 2009-11 baseado em material Alan Dix 1 Windowing systems Architecture Layers Higher level Tool UI Toolkit (Widgets) Window System OS Application Hardware
More informationThe EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.
The EMSX Platform A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks A White Paper November 2002 Abstract: The EMSX Platform is a set of components that together provide
More informationData Communication Networks and Converged Networks
Data Communication Networks and Converged Networks The OSI Model and Encapsulation Layer traversal through networks Protocol Stacks Converged Data/Telecommunication Networks From Telecom to Datacom, Asynchronous
More informationTools Page 1 of 13 ON PROGRAM TRANSLATION. A priori, we have two translation mechanisms available:
Tools Page 1 of 13 ON PROGRAM TRANSLATION A priori, we have two translation mechanisms available: Interpretation Compilation On interpretation: Statements are translated one at a time and executed immediately.
More informationConnecting with Computer Science, 2e. Chapter 5 The Internet
Connecting with Computer Science, 2e Chapter 5 The Internet Objectives In this chapter you will: Learn what the Internet really is Become familiar with the architecture of the Internet Become familiar
More informationReport of the case study in Sistemi Distribuiti A simple Java RMI application
Report of the case study in Sistemi Distribuiti A simple Java RMI application Academic year 2012/13 Vessio Gennaro Marzulli Giovanni Abstract In the ambit of distributed systems a key-role is played by
More informationA Comparison of Distributed Systems: ChorusOS and Amoeba
A Comparison of Distributed Systems: ChorusOS and Amoeba Angelo Bertolli Prepared for MSIT 610 on October 27, 2004 University of Maryland University College Adelphi, Maryland United States of America Abstract.
More informationCHAPTER 15: Operating Systems: An Overview
CHAPTER 15: Operating Systems: An Overview The Architecture of Computer Hardware, Systems Software & Networking: An Information Technology Approach 4th Edition, Irv Englander John Wiley and Sons 2010 PowerPoint
More informationBasic Trends of Modern Software Development
DITF LDI Lietišķo datorsistēmu programmatūras profesora grupa e-business Solutions Basic Trends of Modern Software Development 2 3 Software Engineering FAQ What is software engineering? An engineering
More informationCOMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters
COMP5426 Parallel and Distributed Computing Distributed Systems: Client/Server and Clusters Client/Server Computing Client Client machines are generally single-user workstations providing a user-friendly
More informationSoftware Engineering
Software Engineering Lecture 06: Design an Overview Peter Thiemann University of Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Software Engineering SWT 1 / 35 The Design Phase Programming in
More informationPrinciples and characteristics of distributed systems and environments
Principles and characteristics of distributed systems and environments Definition of a distributed system Distributed system is a collection of independent computers that appears to its users as a single
More informationChapter 9 Firewalls and Intrusion Prevention Systems
Chapter 9 Firewalls and Intrusion Prevention Systems connectivity is essential However it creates a threat Effective means of protecting LANs Inserted between the premises network and the to establish
More informationTelecommunications Systems 2
Telecommunications Systems 2 Telecommunications Management Network Sistemas de Telecomunicações II - 4.1 Telecommunications Management Network ITU-T M.3000 M.3599 Sistemas de Telecomunicações II - 4.2
More informationHadoop and Map-Reduce. Swati Gore
Hadoop and Map-Reduce Swati Gore Contents Why Hadoop? Hadoop Overview Hadoop Architecture Working Description Fault Tolerance Limitations Why Map-Reduce not MPI Distributed sort Why Hadoop? Existing Data
More informationDeployment Pattern. Youngsu Son 1,JiwonKim 2, DongukKim 3, Jinho Jang 4
Deployment Pattern Youngsu Son 1,JiwonKim 2, DongukKim 3, Jinho Jang 4 Samsung Electronics 1,2,3, Hanyang University 4 alroad.son 1, jiwon.ss.kim 2, dude.kim 3 @samsung.net, undersense3538@gmail.com 4
More informationArchitecture. Reda Bendraou reda.bendraou{{@}}lip6.fr http://pagesperso-systeme.lip6.fr/reda.bendraou/
Architecture Reda Bendraou reda.bendraou{{@}}lip6.fr http://pagesperso-systeme.lip6.fr/reda.bendraou/ Some slides were adapted from L. Osterweil, B. Meyer, and P. Müller material Reda Bendraou LI386-S1
More informationOverview - Using ADAMS With a Firewall
Page 1 of 6 Overview - Using ADAMS With a Firewall Internet security is becoming increasingly important as public and private entities connect their internal networks to the Internet. One of the most popular
More informationOverview of Computer Networks
Overview of Computer Networks Client-Server Transaction Client process 4. Client processes response 1. Client sends request 3. Server sends response Server process 2. Server processes request Resource
More informationOverview - Using ADAMS With a Firewall
Page 1 of 9 Overview - Using ADAMS With a Firewall Internet security is becoming increasingly important as public and private entities connect their internal networks to the Internet. One of the most popular
More informationSoftware Life-Cycle Management
Ingo Arnold Department Computer Science University of Basel Theory Software Life-Cycle Management Architecture Styles Overview An Architecture Style expresses a fundamental structural organization schema
More informationRobust Communication for Jungle Computing
Robust Communication for Jungle Computing Jason Maassen Computer Systems Group Department of Computer Science VU University, Amsterdam, The Netherlands Requirements (revisited) Resource independence Transparent
More informationBandwidth Aggregation, Teaming and Bonding
Bandwidth Aggregation, Teaming and Bonding The increased use of Internet sharing combined with graphically rich web sites and multimedia applications have created a virtually insatiable demand for Internet
More informationSoftware Development around a Millisecond
Introduction Software Development around a Millisecond Geoffrey Fox In this column we consider software development methodologies with some emphasis on those relevant for large scale scientific computing.
More informationDevice Log Export ENGLISH
Figure 14: Topic Selection Page Device Log Export This option allows you to export device logs in three ways: by E-Mail, FTP, or HTTP. Each method is described in the following sections. NOTE: If the E-Mail,
More informationTimePictra Release 10.0
DATA SHEET Release 100 Next Generation Synchronization System Key Features Web-based multi-tier software architecture Comprehensive FCAPS management functions Software options for advanced FCAPS features
More informationhttp://alice.teaparty.wonderland.com:23054/dormouse/bio.htm
Client/Server paradigm As we know, the World Wide Web is accessed thru the use of a Web Browser, more technically known as a Web Client. 1 A Web Client makes requests of a Web Server 2, which is software
More informationEvent-based middleware services
3 Event-based middleware services The term event service has different definitions. In general, an event service connects producers of information and interested consumers. The service acquires events
More informationImplementation of Model-View-Controller Architecture Pattern for Business Intelligence Architecture
Implementation of -- Architecture Pattern for Business Intelligence Architecture Medha Kalelkar Vidyalankar Institute of Technology, University of Mumbai, Mumbai, India Prathamesh Churi Lecturer, Department
More informationNetwork Attached Storage. Jinfeng Yang Oct/19/2015
Network Attached Storage Jinfeng Yang Oct/19/2015 Outline Part A 1. What is the Network Attached Storage (NAS)? 2. What are the applications of NAS? 3. The benefits of NAS. 4. NAS s performance (Reliability
More informationNetwork Programming TDC 561
Network Programming TDC 561 Lecture # 1 Dr. Ehab S. Al-Shaer School of Computer Science & Telecommunication DePaul University Chicago, IL 1 Network Programming Goals of this Course: Studying, evaluating
More informationArchitecture for a Massively Multiplayer Online Role Playing Game Engine
Architecture for a Massively Multiplayer Online Role Playing Game Engine Sergio Caltagirone scaltagi@up.edu Bryan Schlief bschlief@up.edu Matthew Keys mkeys@up.edu Mary Jane Willshire, PhD willshir@up.edu
More informationMiddleware Lou Somers
Middleware Lou Somers April 18, 2002 1 Contents Overview Definition, goals, requirements Four categories of middleware Transactional, message oriented, procedural, object Middleware examples XML-RPC, SOAP,
More informationProgrammable Networking with Open vswitch
Programmable Networking with Open vswitch Jesse Gross LinuxCon September, 2013 2009 VMware Inc. All rights reserved Background: The Evolution of Data Centers Virtualization has created data center workloads
More informationEngineering Process Software Qualities Software Architectural Design
Engineering Process We need to understand the steps that take us from an idea to a product. What do we do? In what order do we do it? How do we know when we re finished each step? Production process Typical
More informationIntegrated and reliable the heart of your iseries system. i5/os the next generation iseries operating system
Integrated and reliable the heart of your iseries system i5/os the next generation iseries operating system Highlights Enables the legendary levels of reliability and simplicity for which iseries systems
More informationA Brief Analysis of Web Design Patterns
A Brief Analysis of Web Design Patterns Ginny Sharma M.Tech Student, Dept. of CSE, MRIU Faridabad, Haryana, India Abstract Design patterns document good design solutions to a recurring problem in a particular
More informationOKLAHOMA SUBJECT AREA TESTS (OSAT )
CERTIFICATION EXAMINATIONS FOR OKLAHOMA EDUCATORS (CEOE ) OKLAHOMA SUBJECT AREA TESTS (OSAT ) FIELD 081: COMPUTER SCIENCE September 2008 Subarea Range of Competencies I. Computer Use in Educational Environments
More informationArchitecture of a Distributed Object Firewall Proxy. Abstract
NAI Labs #0768 Architecture of a Distributed Object Firewall Proxy July 16, 2000 Gary Lamperillo Gary_Lamperillo@NAI.com NAI Labs - The Security Research Division Network Associates 3415 S. Sepulveda Blvd.
More informationChap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
More informationChapter 1 - Web Server Management and Cluster Topology
Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management
More informationHow To Make A Distributed System Transparent
Operating Systems Interface between the hardware and the rest: editors, compilers, database systems, application programs, your programs, etc. Allows portability, enables easier programming, The manager
More informationIn: Proceedings of RECPAD 2002-12th Portuguese Conference on Pattern Recognition June 27th- 28th, 2002 Aveiro, Portugal
Paper Title: Generic Framework for Video Analysis Authors: Luís Filipe Tavares INESC Porto lft@inescporto.pt Luís Teixeira INESC Porto, Universidade Católica Portuguesa lmt@inescporto.pt Luís Corte-Real
More informationCS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun
CS550 Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun Email: sun@iit.edu, Phone: (312) 567-5260 Office hours: 2:10pm-3:10pm Tuesday, 3:30pm-4:30pm Thursday at SB229C,
More informationOperating System Components
Lecture Overview Operating system software introduction OS components OS services OS structure Operating Systems - April 24, 2001 Operating System Components Process management Memory management Secondary
More informationComputer Science. Master of Science
Computer Science Master of Science The Master of Science in Computer Science program at UALR reflects current trends in the computer science discipline and provides students with a solid theoretical and
More informationCPS221 Lecture: Operating System Structure; Virtual Machines
Objectives CPS221 Lecture: Operating System Structure; Virtual Machines 1. To discuss various ways of structuring the operating system proper 2. To discuss virtual machines Materials: 1. Projectable of
More informationDivision of Mathematical Sciences
Division of Mathematical Sciences Chair: Mohammad Ladan, Ph.D. The Division of Mathematical Sciences at Haigazian University includes Computer Science and Mathematics. The Bachelor of Science (B.S.) degree
More informationObjectives of Lecture. Network Architecture. Protocols. Contents
Objectives of Lecture Network Architecture Show how network architecture can be understood using a layered approach. Introduce the OSI seven layer reference model. Introduce the concepts of internetworking
More informationProtocols and Architecture. Protocol Architecture.
Protocols and Architecture Protocol Architecture. Layered structure of hardware and software to support exchange of data between systems/distributed applications Set of rules for transmission of data between
More informationScenario-based Evaluation of Software Architecture Styles from the Security Viewpoint
International Journal of Computer Sciences and Engineering Open Access Research Paper Volume-4, Issue-04 E-ISSN: 347-693 Scenario-based Evaluation of Software Architecture Styles from the Security Viewpoint
More informationHow To Understand The Concept Of A Distributed System
Distributed Operating Systems Introduction Ewa Niewiadomska-Szynkiewicz and Adam Kozakiewicz ens@ia.pw.edu.pl, akozakie@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of
More informationStateful Inspection Technology
Stateful Inspection Technology Security Requirements TECH NOTE In order to provide robust security, a firewall must track and control the flow of communication passing through it. To reach control decisions
More informationWe mean.network File System
We mean.network File System Introduction: Remote File-systems When networking became widely available users wanting to share files had to log in across the net to a central machine This central machine
More informationReview from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture
Review from last time CS 537 Lecture 3 OS Structure What HW structures are used by the OS? What is a system call? Michael Swift Remzi Arpaci-Dussea, Michael Swift 1 Remzi Arpaci-Dussea, Michael Swift 2
More informationGénie Logiciel et Gestion de Projets. Patterns
Génie Logiciel et Gestion de Projets Patterns 1 Alexander s patterns Christoffer Alexander The Timeless Way of Building, Christoffer Alexander, Oxford University Press, 1979, ISBN 0195024028 Each pattern
More informationBasic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet
Basic Networking Concepts 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet 1 1. Introduction -A network can be defined as a group of computers and other devices connected
More informationFile Sharing. Peter Lo. CP582 Peter Lo 2003 1
File Sharing Peter Lo CP582 Peter Lo 2003 1 File Sharing What is it? How is it different from File Transfer How it it done? CP582 Peter Lo 2003 2 This lecture we move away from the topic of transferring
More informationAn Introduction to Software Architecture
An Introduction to Software Architecture David Garlan and Mary Shaw January 1994 CMU-CS-94-166 School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213-3890 Also published as An Introduction
More informationWe will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall
Chapter 10 Firewall Firewalls are devices used to protect a local network from network based security threats while at the same time affording access to the wide area network and the internet. Basically,
More informationDistributed Objects and Components
Distributed Objects and Components Introduction This essay will identify the differences between objects and components and what it means for a component to be distributed. It will also examine the Java
More informationA Generic Virtual Reality Interaction System and its Extensions Using the Common Object Request Broker Architecture (CORBA)
A Generic Virtual Reality Interaction System and its Extensions Using the Common Object Request Broker Architecture (CORBA) ABSTRACT The paper describes the design and implementation of an immersive Virtual
More informationSyncLockStatus Evaluator s Guide
SyncLockStatus Evaluator s Guide 2011 Table of Contents Introduction... 2 System Requirements... 2 Required Microsoft Components... 2 Contact Information... 3 SyncLockStatus Architecture... 3 SyncLockStatus
More informationHigh Performance Cluster Support for NLB on Window
High Performance Cluster Support for NLB on Window [1]Arvind Rathi, [2] Kirti, [3] Neelam [1]M.Tech Student, Department of CSE, GITM, Gurgaon Haryana (India) arvindrathi88@gmail.com [2]Asst. Professor,
More informationNetwork File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr
Network File System (NFS) Pradipta De pradipta.de@sunykorea.ac.kr Today s Topic Network File System Type of Distributed file system NFS protocol NFS cache consistency issue CSE506: Ext Filesystem 2 NFS
More informationBasic Internet programming Formalities. Hands-on tools for internet programming
Welcome Basic Internet programming Formalities Hands-on tools for internet programming DD1335 (gruint10) Serafim Dahl serafim@nada.kth.se DD1335 (Lecture 1) Basic Internet Programming Spring 2010 1 / 23
More informationSOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems
SOFT 437 Software Performance Analysis Ch 5:Web Applications and Other Distributed Systems Outline Overview of Web applications, distributed object technologies, and the important considerations for SPE
More informationImplementing the Application Control Engine Service Module
Course: Implementing the Application Control Engine Service Module Duration: 4 Day Hands-On Lab & Lecture Course Price: $ 2,995.00 Learning Credits: 30 Hitachi HiPass: 4 Description: Implementing the Application
More informationAgenda. Distributed System Structures. Why Distributed Systems? Motivation
Agenda Distributed System Structures CSCI 444/544 Operating Systems Fall 2008 Motivation Network structure Fundamental network services Sockets and ports Client/server model Remote Procedure Call (RPC)
More informationHow do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself
How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,
More informationObjectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.
Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures
More informationOverview. Stakes. Context. Model-Based Development of Safety-Critical Systems
1 2 Model-Based Development of -Critical Systems Miguel A. de Miguel 5/6,, 2006 modeling Stakes 3 Context 4 To increase the industrial competitiveness in the domain of software systems To face the growing
More informationVirtual machine interface. Operating system. Physical machine interface
Software Concepts User applications Operating system Hardware Virtual machine interface Physical machine interface Operating system: Interface between users and hardware Implements a virtual machine that
More informationArchitecture Example Point-to-point wire
Class Announcements TIM 50 - Business Information Systems Lecture 10 Midterm Tuesday 5/5 Study guide posted Instructor: John Musacchio UC Santa Cruz Feb. 5, 2015 Time sharing Architecture Example Point-to-point
More informationAdvanced Analysis and Design
Advanced Analysis and Design Architectural Styles Professor David S. Rosenblum Department of Computer Science http://www.cs.ucl.ac.uk/staff/d.rosenblum/ Architectural Styles A set of design rules that
More informationFunctions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server
Functions of NOS Overview of NOS Characteristics Differences Between PC and a NOS Multiuser, Multitasking, and Multiprocessor Systems NOS Server Hardware Windows Windows NT 4.0 Linux Server Software and
More informationComputer Network. Interconnected collection of autonomous computers that are able to exchange information
Introduction Computer Network. Interconnected collection of autonomous computers that are able to exchange information No master/slave relationship between the computers in the network Data Communications.
More informationINTERNET SECURITY: THE ROLE OF FIREWALL SYSTEM
INTERNET SECURITY: THE ROLE OF FIREWALL SYSTEM Okumoku-Evroro Oniovosa Lecturer, Department of Computer Science Delta State University, Abraka, Nigeria Email: victorkleo@live.com ABSTRACT Internet security
More informationBetter management through process automation.
Process management with IBM Rational ClearQuest software White paper Better management through process automation. David Lawrence, technical marketing specialist May 2006 Page 2 Contents 2 Introduction
More informationAgent Languages. Overview. Requirements. Java. Tcl/Tk. Telescript. Evaluation. Artificial Intelligence Intelligent Agents
Agent Languages Requirements Overview Java Tcl/Tk Telescript Evaluation Franz J. Kurfess, Cal Poly SLO 211 Requirements for agent Languages distributed programming large-scale (tens of thousands of computers)
More informationIntroduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture
Introduction to CORBA 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture 1. Introduction CORBA is defined by the OMG The OMG: -Founded in 1989 by eight companies as a non-profit
More informationCSE 3461 / 5461: Computer Networking & Internet Technologies
Autumn Semester 2014 CSE 3461 / 5461: Computer Networking & Internet Technologies Instructor: Prof. Kannan Srinivasan 08/28/2014 Announcement Drop before Friday evening! k. srinivasan Presentation A 2
More informationNovel Systems. Extensible Networks
Novel Systems Active Networks Denali Extensible Networks Observations Creating/disseminating standards hard Prototyping/research Incremental deployment Computation may be cheap compared to communication
More informationCSC 2405: Computer Systems II
CSC 2405: Computer Systems II Spring 2013 (TR 8:30-9:45 in G86) Mirela Damian http://www.csc.villanova.edu/~mdamian/csc2405/ Introductions Mirela Damian Room 167A in the Mendel Science Building mirela.damian@villanova.edu
More informationMid-Term #1 Solutions
Mid-Term #1 Solutions Chapter #1: Computers: Tools for an Information Age 1. Computers introduce the element into the modern economy. A. labor B. information C. capital D. land 2. Pie charts are an example
More informationLecture 2: Protocols and Layering. CSE 123: Computer Networks Stefan Savage
Lecture 2: Protocols and Layering CSE 123: Computer Networks Stefan Savage Last time Bandwidth, latency, overhead, message size, error rate Bandwidth-delay product Delay Bandwidth High-level run through
More informationSCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1
SCADE System 17.0 SCADE System is the product line of the ANSYS Embedded software family of products and solutions that empowers users with a systems design environment for use on systems with high dependability
More informationThe Service Revolution software engineering without programming languages
The Service Revolution software engineering without programming languages Gustavo Alonso Institute for Pervasive Computing Department of Computer Science Swiss Federal Institute of Technology (ETH Zurich)
More informationCloud Networking Disruption with Software Defined Network Virtualization. Ali Khayam
Cloud Networking Disruption with Software Defined Network Virtualization Ali Khayam In the next one hour Let s discuss two disruptive new paradigms in the world of networking: Network Virtualization Software
More informationSoftware: Systems and Application Software
Software: Systems and Application Software Computer Software Operating System Popular Operating Systems Language Translators Utility Programs Applications Programs Types of Application Software Personal
More information