An Introduction to Design Patterns
|
|
- Estella Jenkins
- 6 years ago
- Views:
Transcription
1 An Introduction to Design Patterns 1
2 Definitions A pattern is a recurring soution to a standard probem, in a context. Christopher Aexander, a professor of architecture Why woud what a prof of architecture says be reevant to software? A pattern describes a probem which occurs over and over again in our environment, and then describes the core of the soution to that probem, in such a way that you can use this soution a miion times over, without ever doing it the same way twice. Jim Copein, a software engineer: I ike to reate this definition to dress patterns What are dress patterns?... I coud te you how to make a dress by specifying the route of a scissors through a piece of coth in terms of anges and engths of cut. Or, I coud give you a pattern. Reading the specification, you woud have no idea what was being buit or if you had buit the right thing when you were finished. The pattern foreshadows the product: it is the rue for making the thing, but it is aso, in many respects, the thing itsef.
3 Patterns in engineering How do other engineers find and use patterns? Mature engineering discipines have handbooks describing successfu soutions to known probems Automobie designers don't design cars from scratch using the aws of physics Instead, they reuse standard designs with successfu track records, earning from experience Shoud software engineers make use of patterns? Why? Be sure that you make everything according to the pattern I have shown you here on the mountain. Exodus 25:40. Deveoping software from scratch is aso expensive Patterns support reuse of software architecture and design
4 The gang of four (GoF) Erich Gamma, Richard Hem, Raph Johnson & John Vissides (Addison-Wesey, 1995) Design Patterns book cataogs 23 different patterns as soutions to different casses of probems, in C++ & Smatak The probems and soutions are broady appicabe, used by many peope over many years What design pattern did we discover with the Undo probem? Why is it usefu to earn about this pattern? Patterns suggest opportunities for reuse in anaysis, design and programming GOF presents each pattern in a structured format What do you think of this format? Pros and cons?
5 Eements of Design Patterns Design patterns have 4 essentia eements: Pattern name: increases vocabuary of designers Probem: intent, context, when to appy Soution: UML-ike structure, abstract code Consequences: resuts and tradeoffs
6 Design Patterns are NOT Data structures that can be encoded in casses and reused as is (i.e., inked ists, hash tabes) Compex domain-specific designs (for an entire appication or subsystem) If they are not famiiar data structures or compex domain-specific subsystems, what are they? They are: Descriptions of communicating objects and casses that are customized to sove a genera design probem in a particuar context.
7 Three Types of Patterns Creationa patterns: Dea with initiaizing and configuring casses and objects Structura patterns: Dea with decouping interface and impementation of casses and objects Composition of casses or objects Behaviora patterns: Dea with dynamic interactions among societies of casses and objects How they distribute responsibiity
8 Creationa Patterns Abstract Factory: Factory for buiding reated objects Buider: Factory for buiding compex objects incrementay Factory Method: Method in a derived cass creates associates Prototype: Factory for coning new instances from a prototype Singeton: Factory for a singuar (soe) instance
9 Structura patterns Describe ways to assembe objects to reaize new functionaity Added fexibiity inherent in object composition due to abiity to change composition at run-time not possibe with static cass composition Exampe: Proxy Proxy: acts as convenient surrogate or pacehoder for another object. Remote Proxy: oca representative for object in a different address space Virtua Proxy: represent arge object that shoud be oaded on demand Protected Proxy: protect access to the origina object
10 Structura Patterns Adapter: Transator adapts a server interface for a cient Bridge: Abstraction for binding one of many impementations Composite: Structure for buiding recursive aggregations Decorator: Decorator extends an object transparenty Facade: Simpifies the interface for a subsystem Fyweight: Many fine-grained objects shared efficienty. Proxy: One object approximates another
11 Behaviora Patterns Chain of Responsibiity: Request deegated to the responsibe service provider Command: Request or Action is first-cass object, hence re-storabe Iterator: Aggregate and access eements sequentiay Interpreter: Language interpreter for a sma grammar Mediator: Coordinates interactions between its associates Memento: Snapshot captures and restores object states privatey Which ones do you think you have seen somewhere?
12 Behaviora Patterns (cont.) Observer: Dependents update automaticay when subject changes State: Object whose behavior depends on its state Strategy: Abstraction for seecting one of many agorithms Tempate Method: Agorithm with some steps suppied by a derived cass Visitor: Operations appied to eements of a heterogeneous object structure
13 Patterns in software ibraries AWT and Swing use Observer pattern Iterator pattern in C++ tempate ibrary & JDK Façade pattern used in many studentoriented ibraries to simpify more compicated ibraries! Bridge and other patterns recurs in middeware for distributed computing frameworks
14 More software patterns Design patterns idioms (ow eve, C++): Jim Copein, Scott Meyers I.e., when shoud you define a virtua destructor? design (micro-architectures) [Gamma-GoF] architectura (systems design): ayers, refection, broker Refection makes casses sef-aware, their structure and behavior accessibe for adaptation and change: Meta-eve provides sef-representation, base eve defines the appication ogic Java Enterprise Design Patterns (distributed transactions and databases) E.g., ACID Transaction: Atomicity (restoring an object after a faied transaction), Consistency, Isoation, and Durabiity Anaysis patterns (recurring & reusabe anaysis modes, from various domains, i.e., accounting, financia trading, heath care) Process patterns (software process & organization)
15 Benefits of Design Patterns Design patterns enabe arge-scae reuse of software architectures and aso hep document systems Patterns expicity capture expert knowedge and design tradeoffs and make it more widey avaiabe Patterns hep improve deveoper communication Pattern names form a common vocabuary
16 Singeton Synopsis or Intent: Singeton pattern is one of the simpest design patterns This type of design pattern comes under creationa pattern provides one of the best ways to create an object. Context: invoves a singe cass which is responsibe to create an object whie making sure that ony singe object gets created. This cass provides a way to access its ony object which can be accessed directy without need to instantiate the object of the cass. Impementation cass provides a static method to get its static instance to outside word
17 Singeton (exampe)
18 Prototype Synopsis or Intent: creating dupicate object whie keeping performance in mind. This type of design pattern comes under creationa pattern provides one of the best ways to create an object. Context: invoves impementing a prototype interface which tes to create a cone of the current object. This pattern is used when creation of object directy is costy. For exampe, an object is to be created after a costy database operation. We can cache the object, returns its cone on next request and update the database as and when needed thus reducing database cas. Impementation to create an abstract cass and concrete casses extending the abstract cass. A third cass is defined as a next step which stores objects in a Hashtabe and returns their cone when requested.
19 Prototype (exampe)
20 Adapter Pattern Synopsis or Intent: works as a bridge between two incompatibe interfaces comes under structura pattern combines the capabiity of two independent interfaces Context: This pattern invoves a singe cass which is responsibe to join functionaities of independent or incompatibe interfaces A rea ife exampe coud be a case of card reader which acts as an adapter between memory card and a aptop You pugin the memory card into card reader and card reader into the aptop so that memory card can be read via aptop.
21 Adapter (exampe)
22 Command Pattern Synopsis or Intent: Encapsuate a request as an object, thereby etting you parameterize cients with different requests, queue or og requests, and support undoabe operations Context: You want to mode the time evoution of a program: What needs to be done, e.g. queued requests, aarms, conditions for action What is being done, e.g. which parts of a composite or distributed action have been competed What has been done, e.g. a og of undoabe operations What are some appications that need to support undo? Editor, cacuator, database with transactions Perform an execute at one time, undo at a different time Soution: represent units of work as Command objects Interface of a Command object can be a simpe execute() method Extra methods can support undo and redo Commands can be persistent and gobay accessibe, just ike norma objects
23 Command pattern Consequences: You can undo/redo any Command Each Command stores what it needs to restore state You can store Commands in a stack or queue Command processor pattern maintains a history It is easy to add new Commands, because you do not have to change existing casses Command is an abstract cass, from which you derive new casses execute(), undo() and redo() are poymorphic functions
24 Command (exampe)
Design pa*erns. Based on slides by Glenn D. Blank
Design pa*erns Based on slides by Glenn D. Blank Defini6ons A pa#ern is a recurring solu6on to a standard problem, in a context. Christopher Alexander, a professor of architecture Why would what a prof
More informationDesign Patterns. An introduction
Design Patterns An introduction Introduction Designing object-oriented software is hard, and designing reusable object-oriented software is even harder. Your design should be specific to the problem at
More informationAs Michi Henning and Steve Vinoski showed 1, calling a remote
Reducing CORBA Ca Latency by Caching and Prefetching Bernd Brügge and Christoph Vismeier Technische Universität München Method ca atency is a major probem in approaches based on object-oriented middeware
More informationSoftware Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D.
Software Design Patterns Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University J. Maletic 1 Background 1 Search for recurring successful designs emergent designs from practice
More informationCSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Lecture 4: Threads
CSE120 Principes of Operating Systems Prof Yuanyuan (YY) Zhou Lecture 4: Threads Announcement Project 0 Due Project 1 out Homework 1 due on Thursday Submit it to Gradescope onine 2 Processes Reca that
More informationSDC Design patterns GoF
SDC Design patterns GoF Design Patterns The design pattern concept can be viewed as an abstraction of imitating useful parts of other software products. The design pattern is a description of communicating
More informationTrusted Components. Reuse, Contracts and Patterns. Prof. Dr. Bertrand Meyer Dr. Karine Arnout
1 Last update: 2 November 2004 Trusted Components Reuse, Contracts and Patterns Prof. Dr. Bertrand Meyer Dr. Karine Arnout 2 Lecture 5: Design patterns Agenda for today 3 Overview Benefits of patterns
More informationNavigating and searching theweb
Navigating and searching theweb Contents Introduction 3 1 The Word Wide Web 3 2 Navigating the web 4 3 Hyperinks 5 4 Searching the web 7 5 Improving your searches 8 6 Activities 9 6.1 Navigating the web
More informationIntroduction to USB Development
Introduction to USB Deveopment Introduction Technica Overview USB in Embedded Systems Recent Deveopments Extensions to USB USB as compared to other technoogies USB: Universa Seria Bus A seria bus standard
More informationUsing Design Patterns in Java Application Development
Using Design Patterns in Java Application Development ExxonMobil Research & Engineering Co. Clinton, New Jersey Michael P. Redlich (908) 730-3416 michael.p.redlich@exxonmobil.com About Myself Degree B.S.
More informationRDF Objects 1. Alex Barnell Information Infrastructure Laboratory HP Laboratories Bristol HPL November 27 th, 2002*
RDF Objects 1 Aex Barne Information Infrastructure Laboratory HP Laboratories Bristo HPL-2002-315 November 27 th, 2002* E-mai: Andy_Seaborne@hp.hp.com RDF, semantic web, ontoogy, object-oriented datastructures
More informationSample of a training manual for a software tool
Sampe of a training manua for a software too We use FogBugz for tracking bugs discovered in RAPPID. I wrote this manua as a training too for instructing the programmers and engineers in the use of FogBugz.
More informationfile://j:\macmillancomputerpublishing\chapters\in073.html 3/22/01
Page 1 of 15 Chapter 9 Chapter 9: Deveoping the Logica Data Mode The information requirements and business rues provide the information to produce the entities, attributes, and reationships in ogica mode.
More informationReadme ORACLE HYPERION PROFITABILITY AND COST MANAGEMENT
ORACLE HYPERION PROFITABILITY AND COST MANAGEMENT Reease 11.1.2.4.000 Readme CONTENTS IN BRIEF Purpose... 2 New Features in This Reease... 2 Instaation Information... 2 Supported Patforms... 2 Supported
More informationMobile App Recommendation: Maximize the Total App Downloads
Mobie App Recommendation: Maximize the Tota App Downoads Zhuohua Chen Schoo of Economics and Management Tsinghua University chenzhh3.12@sem.tsinghua.edu.cn Yinghui (Catherine) Yang Graduate Schoo of Management
More informationGuardian 365 Pro App Guide. For more exciting new products please visit our website: Australia: OWNER S MANUAL
Guardian 365 Pro App Guide For more exciting new products pease visit our website: Austraia: www.uniden.com.au OWNER S MANUAL Privacy Protection Notice As the device user or data controer, you might coect
More informationComputer Networks. College of Computing. Copyleft 2003~2018
Computer Networks Computer Networks Prof. Lin Weiguo Coege of Computing Copyeft 2003~2018 inwei@cuc.edu.cn http://icourse.cuc.edu.cn/computernetworks/ http://tc.cuc.edu.cn Attention The materias beow are
More informationNearest Neighbor Learning
Nearest Neighbor Learning Cassify based on oca simiarity Ranges from simpe nearest neighbor to case-based and anaogica reasoning Use oca information near the current query instance to decide the cassification
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Design Patterns part 1
Ingegneria del Software Corso di Laurea in Informatica per il Management Design Patterns part 1 Davide Rossi Dipartimento di Informatica Università di Bologna Pattern Each pattern describes a problem which
More informationindex.pdf March 17,
index.pdf March 17, 2013 1 ITI 1121. Introduction to omputing II Marce Turcotte Schoo of Eectrica Engineering and omputer Science Linked List (Part 2) Tai pointer ouby inked ist ummy node Version of March
More informationDesign Pattern. CMPSC 487 Lecture 10 Topics: Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, et al.)
Design Pattern CMPSC 487 Lecture 10 Topics: Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, et al.) A. Design Pattern Design patterns represent the best practices used by experienced
More informationNCH Software Express Delegate
NCH Software Express Deegate This user guide has been created for use with Express Deegate Version 4.xx NCH Software Technica Support If you have difficuties using Express Deegate pease read the appicabe
More informationUnixWare 7 System Administration UnixWare 7 System Configuration
UnixWare 7 System Administration - CH 3 - UnixWare 7 System Configuration Page 1 of 8 [Figures are not incuded in this sampe chapter] UnixWare 7 System Administration - 3 - UnixWare 7 System Configuration
More informationA Petrel Plugin for Surface Modeling
A Petre Pugin for Surface Modeing R. M. Hassanpour, S. H. Derakhshan and C. V. Deutsch Structure and thickness uncertainty are important components of any uncertainty study. The exact ocations of the geoogica
More informationExtracting semistructured data from the Web: An XQuery Based Approach
EurAsia-ICT 2002, Shiraz-Iran, 29-31 Oct. Extracting semistructured data from the Web: An XQuery Based Approach Gies Nachouki Université de Nantes - Facuté des Sciences, IRIN, 2, rue de a Houssinière,
More informationDevelopment of a National Portal for Tuvalu. Business Case. SPREP Pacific iclim
Deveopment of a Nationa Porta for Tuvau Business Case SPREP Pacific iclim Apri 2018 Tabe of Contents 1. Introduction... 3 1.1 Report Purpose... 3 1.2 Background & Context... 3 1.3 Other IKM Activities
More informationSection 3 : Exploring 3D shapes
Section 3 : Exporing 3D shapes Copyright 2016 The Open University Contents Section 3: Exporing 3D shapes 3 1. Using practica work 3 2. A cross-curricuar approach 4 3. Using practica work to consoidate
More informationSection 3: Exploring 3D shapes
Section 3: Exporing 3D shapes Contents Section 3: Exporing 3D shapes 3 1. Using practica work 3 2. A cross-curricuar approach 5 3. Using practica work to consoidate earning 6 Resource 1: Coecting and making
More informationDESIGN PATTERN - INTERVIEW QUESTIONS
DESIGN PATTERN - INTERVIEW QUESTIONS http://www.tutorialspoint.com/design_pattern/design_pattern_interview_questions.htm Copyright tutorialspoint.com Dear readers, these Design Pattern Interview Questions
More informationMCSE Training Guide: Windows Architecture and Memory
MCSE Training Guide: Windows 95 -- Ch 2 -- Architecture and Memory Page 1 of 13 MCSE Training Guide: Windows 95-2 - Architecture and Memory This chapter wi hep you prepare for the exam by covering the
More informationLoad Balancing by MPLS in Differentiated Services Networks
Load Baancing by MPLS in Differentiated Services Networks Riikka Susitaiva, Jorma Virtamo, and Samui Aato Networking Laboratory, Hesinki University of Technoogy P.O.Box 3000, FIN-02015 HUT, Finand {riikka.susitaiva,
More informationProduced by. Design Patterns. MSc in Communications Software. Eamonn de Leastar
Design Patterns MSc in Communications Software Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology http://www.wit.ie http://elearning.wit.ie
More informationBEA WebLogic Server. Release Notes for WebLogic Tuxedo Connector 1.0
BEA WebLogic Server Reease Notes for WebLogic Tuxedo Connector 1.0 BEA WebLogic Tuxedo Connector Reease 1.0 Document Date: June 29, 2001 Copyright Copyright 2001 BEA Systems, Inc. A Rights Reserved. Restricted
More informationA Memory Grouping Method for Sharing Memory BIST Logic
A Memory Grouping Method for Sharing Memory BIST Logic Masahide Miyazai, Tomoazu Yoneda, and Hideo Fuiwara Graduate Schoo of Information Science, Nara Institute of Science and Technoogy (NAIST), 8916-5
More informationApplying the Observer Design Pattern
Applying the Observer Design Pattern Trenton Computer Festival Professional Seminars Michael P. Redlich (908) 730-3416 michael.p.redlich@exxonmobil.com About Myself Degree B.S. in Computer Science Rutgers
More informationNeural Network Enhancement of the Los Alamos Force Deployment Estimator
Missouri University of Science and Technoogy Schoars' Mine Eectrica and Computer Engineering Facuty Research & Creative Works Eectrica and Computer Engineering 1-1-1994 Neura Network Enhancement of the
More informationDistance Weighted Discrimination and Second Order Cone Programming
Distance Weighted Discrimination and Second Order Cone Programming Hanwen Huang, Xiaosun Lu, Yufeng Liu, J. S. Marron, Perry Haaand Apri 3, 2012 1 Introduction This vignette demonstrates the utiity and
More informationA Method for Calculating Term Similarity on Large Document Collections
$ A Method for Cacuating Term Simiarity on Large Document Coections Wofgang W Bein Schoo of Computer Science University of Nevada Las Vegas, NV 915-019 bein@csunvedu Jeffrey S Coombs and Kazem Taghva Information
More informationMaru: Hardware-Assisted Secure Cloud Computing
Maru: Hardware-Assisted Secure Coud Computing Peter Pietzuch prp@imperia.ac.uk Large-Scae Distributed Systems Group Department of Computing, Imperia Coege London Peter R. Pietzuch http://sds.doc.ic.ac.uk
More informationEPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 6: Design Patterns
EPL 603 TOPICS IN SOFTWARE ENGINEERING Lab 6: Design Patterns Links to Design Pattern Material 1 http://www.oodesign.com/ http://www.vincehuston.org/dp/patterns_quiz.html Types of Design Patterns 2 Creational
More informationLecture Notes for Chapter 4 Part III. Introduction to Data Mining
Data Mining Cassification: Basic Concepts, Decision Trees, and Mode Evauation Lecture Notes for Chapter 4 Part III Introduction to Data Mining by Tan, Steinbach, Kumar Adapted by Qiang Yang (2010) Tan,Steinbach,
More informationMicrosoft Visual Studio 2005 Professional Tools. Advanced development tools designed for professional developers
Microsoft Visua Studio 2005 Professiona Toos Advanced deveopment toos designed for professiona deveopers If you re a professiona deveoper, Microsoft has two new ways to fue your deveopment efforts: Microsoft
More informationLanguage Identification for Texts Written in Transliteration
Language Identification for Texts Written in Transiteration Andrey Chepovskiy, Sergey Gusev, Margarita Kurbatova Higher Schoo of Economics, Data Anaysis and Artificia Inteigence Department, Pokrovskiy
More informationDesign Patterns. Observations. Electrical Engineering Patterns. Mechanical Engineering Patterns
Introduction o to Patterns and Design Patterns Dept. of Computer Science Baylor University Some slides adapted from slides by R. France and B. Tekinerdogan Observations Engineering=Problem Solving Many
More informationApplying Design Patterns to accelerate development of reusable, configurable and portable UVCs. Accellera Systems Initiative 1
Applying Design Patterns to accelerate development of reusable, configurable and portable UVCs. Accellera Systems Initiative 1 About the presenter Paul Kaunds Paul Kaunds is a Verification Consultant at
More informationThe Big Picture WELCOME TO ESIGNAL
2 The Big Picture HERE S SOME GOOD NEWS. You don t have to be a rocket scientist to harness the power of esigna. That s exciting because we re certain that most of you view your PC and esigna as toos for
More informationShape Analysis with Structural Invariant Checkers
Shape Anaysis with Structura Invariant Checkers Bor-Yuh Evan Chang Xavier Riva George C. Necua University of Caifornia, Berkeey SAS 2007 Exampe: Typestate with shape anaysis Concrete Exampe Abstraction
More informationSlide 1. Design Patterns. Prof. Mirco Tribastone, Ph.D
Slide 1 Design Patterns Prof. Mirco Tribastone, Ph.D. 22.11.2011 Introduction Slide 2 Basic Idea The same (well-established) schema can be reused as a solution to similar problems. Muster Abstraktion Anwendung
More informationIntroduction to Software Engineering: Object Design I Reuse & Patterns
Introduction to Software Engineering: Object Design I Reuse & Patterns John T. Bell Department of Computer Science University of Illinois, Chicago Based on materials from Bruegge & DuToit 3e, Chapter 8,
More informationAuthorization of a QoS Path based on Generic AAA. Leon Gommans, Cees de Laat, Bas van Oudenaarde, Arie Taal
Abstract Authorization of a QoS Path based on Generic Leon Gommans, Cees de Laat, Bas van Oudenaarde, Arie Taa Advanced Internet Research Group, Department of Computer Science, University of Amsterdam.
More informationWelcome - CSC 301. CSC 301- Foundations of Programming Languages
Wecome - CSC 301 CSC 301- Foundations of Programming Languages Instructor: Dr. Lutz Hame Emai: hame@cs.uri.edu Office: Tyer, Rm 251 Office Hours: TBA TA: TBA Assignments Assignment #0: Downoad & Read Syabus
More informationCS/CE 2336 Computer Science II
CS/CE 2336 Computer Science II UT D Session 20 Design Patterns An Overview 2 History Architect Christopher Alexander coined the term "pattern" circa 1977-1979 Kent Beck and Ward Cunningham, OOPSLA'87 used
More informationLecture outline Graphics and Interaction Scan Converting Polygons and Lines. Inside or outside a polygon? Scan conversion.
Lecture outine 433-324 Graphics and Interaction Scan Converting Poygons and Lines Department of Computer Science and Software Engineering The Introduction Scan conversion Scan-ine agorithm Edge coherence
More informationSpace-Time Trade-offs.
Space-Time Trade-offs. Chethan Kamath 03.07.2017 1 Motivation An important question in the study of computation is how to best use the registers in a CPU. In most cases, the amount of registers avaiabe
More informationArchive Software with value add services:
E-Mai Archive Software with vaue add services: Protect your emais from data oss through reasonabe and secure backup features. Increase the productivity of your team by using the integrated search engine
More informationDynamic Symbolic Execution of Distributed Concurrent Objects
Dynamic Symboic Execution of Distributed Concurrent Objects Andreas Griesmayer 1, Bernhard Aichernig 1,2, Einar Broch Johnsen 3, and Rudof Schatte 1,2 1 Internationa Institute for Software Technoogy, United
More informationApplying the Decorator Design Pattern
Applying the Decorator Design Pattern Trenton Computer Festival Professional Seminars Michael P. Redlich (908) 730-3416 michael.p.redlich@exxonmobil.com About Myself Degree B.S. in Computer Science Rutgers
More informationObject Oriented Methods with UML. Introduction to Design Patterns- Lecture 8
Object Oriented Methods with UML Introduction to Design Patterns- Lecture 8 Topics(03/05/16) Design Patterns Design Pattern In software engineering, a design pattern is a general repeatable solution to
More informationResponse Surface Model Updating for Nonlinear Structures
Response Surface Mode Updating for Noninear Structures Gonaz Shahidi a, Shamim Pakzad b a PhD Student, Department of Civi and Environmenta Engineering, Lehigh University, ATLSS Engineering Research Center,
More informationCSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Scheduling
CSE120 Principes of Operating Systems Prof Yuanyuan (YY) Zhou Scheduing Announcement Homework 2 due on October 25th Project 1 due on October 26th 2 CSE 120 Scheduing and Deadock Scheduing Overview In discussing
More informationA Robust Sign Language Recognition System with Sparsely Labeled Instances Using Wi-Fi Signals
A Robust Sign Language Recognition System with Sparsey Labeed Instances Using Wi-Fi Signas Jiacheng Shang, Jie Wu Center for Networked Computing Dept. of Computer and Info. Sciences Tempe University Motivation
More informationWATERMARKING GIS DATA FOR DIGITAL MAP COPYRIGHT PROTECTION
WATERMARKING GIS DATA FOR DIGITAL MAP COPYRIGHT PROTECTION Shen Tao Chinese Academy of Surveying and Mapping, Beijing 100039, China shentao@casm.ac.cn Xu Dehe Institute of resources and environment, North
More informationCSCD01 Engineering Large Software Systems. Design Patterns. Joe Bettridge. Winter With thanks to Anya Tafliovich
CSCD01 Engineering Large Software Systems Design Patterns Joe Bettridge Winter 2018 With thanks to Anya Tafliovich Design Patterns Design patterns take the problems consistently found in software, and
More informationProduct Design & Development
Product Design & Deveopment Product Architecture 1 2 1 What is Product Architecture? Product architecture is the assignment of the product's functions to physica buiding bocks or "chunks". Product modue
More informationMulti-level Shape Recognition based on Wavelet-Transform. Modulus Maxima
uti-eve Shape Recognition based on Waveet-Transform oduus axima Faouzi Aaya Cheikh, Azhar Quddus and oncef Gabbouj Tampere University of Technoogy (TUT), Signa Processing aboratory, P.O. Box 553, FIN-33101
More informationAdministration and Autonomy In A Replication-Transparent Distributed DBMS
Administration and Autonomy In A Repication-Transparent Distributed DBMS Kenneth R. Abbott, Dennis R. McCarthy Computer Corporation of America Four Cambridge Center, Cambridge, MA 02142 Abstract Administrative
More informationFurther Optimization of the Decoding Method for Shortened Binary Cyclic Fire Code
Further Optimization of the Decoding Method for Shortened Binary Cycic Fire Code Ch. Nanda Kishore Heosoft (India) Private Limited 8-2-703, Road No-12 Banjara His, Hyderabad, INDIA Phone: +91-040-3378222
More informationObject-Oriented Oriented Programming
Object-Oriented Oriented Programming Composite Pattern CSIE Department, NTUT Woei-Kae Chen Catalog of Design patterns Creational patterns Abstract Factory, Builder, Factory Method, Prototype, Singleton
More informationWindows NT, Terminal Server and Citrix MetaFrame Terminal Server Architecture
Windows NT, Termina Server and Citrix MetaFrame - CH 3 - Termina Server Architect.. Page 1 of 13 [Figures are not incuded in this sampe chapter] Windows NT, Termina Server and Citrix MetaFrame - 3 - Termina
More informationA Comparison of a Second-Order versus a Fourth- Order Laplacian Operator in the Multigrid Algorithm
A Comparison of a Second-Order versus a Fourth- Order Lapacian Operator in the Mutigrid Agorithm Kaushik Datta (kdatta@cs.berkeey.edu Math Project May 9, 003 Abstract In this paper, the mutigrid agorithm
More informationOuterjoins, Constraints, Triggers
Outerjoins, Constraints, Triggers Lecture #13 Autumn, 2001 Fa, 2001, LRX #13 Outerjoins, Constraints, Triggers HUST,Wuhan,China 358 Outerjoin R S = R S with danging tupes padded with nus and incuded in
More informationFrom i* to istar 2.0: An Evolving Social Modelling Language
From i* to istar 2.0: An Evoving Socia Modeing Language Lin Liu 1 Schoo of Software, Tsinghua University, Beijing, 100084, China iniu@tsinghua.edu.cn Abstract. Conceptua Modeing, as a thought too, heps
More informationComputing devices have become increasingly mobile at the client end, and the
Pronto: Mobie Gateway With Pubish- Subscribe Paradigm Over Wireess Network Eiko Yoneki University of Cambridge Pronto, a messaging middeware system for mobie appications, provides both centraized and decentraized
More informationAMR++: Object-Oriented Parallel Adaptive Mesh Refinement
UCRL-ID-137373 AMR++: Object-Oriented Parae Adaptive Mesh Refinement 5. Phiip, D. Quinan February 2,200O U.S. Department of Energy Approved for pubic reease; further dissemination unimited DISCLAIMER This
More informationngenius Instrumentation Overview
ngenius Instrumentation Overview NetScout Systems, Inc. 4 Technoogy Park Drive Westford, MA 01886 Teephone: 978-614-4000 Fax: 978-614-4004 Web: http://www.netscout.com NetScout is a registered trademark
More informationA Top-to-Bottom View: Energy Analysis for Mobile Application Source Code
A Top-to-Bottom View: Energy Anaysis for Mobie Appication Source Code Xueiang Li John P. Gaagher Roskide University Emai: {xueiang, jpg}@ruc.dk arxiv:1510.04165v1 [cs.oh] 14 Oct 2015 Abstract Energy efficiency
More informationInternational Laboratory Accreditation Cooperation. The ILAC Mutual Recognition Arrangement
Internationa Laboratory Accreditation Cooperation The ILAC Mutua Recognition Arrangement Enhancing the acceptance of products and services across nationa borders Removing barriers to goba trade Accreditation
More informationLink Registry Protocol Options
Link Registry Protoco Options Norman Finn, March 2017 HUAWEI TECHNOLOGIES CO., LTD. IEEE 802.1 TSN At east two obvious choices for P802.1CS Link Registration Protoco An IS-IS-ike protoco. TCP (Transmission
More informationIntroducing a Target-Based Approach to Rapid Prototyping of ECUs
Introducing a Target-Based Approach to Rapid Prototyping of ECUs FEBRUARY, 1997 Abstract This paper presents a target-based approach to Rapid Prototyping of Eectronic Contro Units (ECUs). With this approach,
More informationComputer Networks. College of Computing. Copyleft 2003~2018
Computer Networks Prof. Lin Weiguo Coege of Computing Copyeft 2003~2018 inwei@cuc.edu.cn http://icourse.cuc.edu.cn/computernetworks/ http://tc.cuc.edu.cn Internet Contro Message Protoco (ICMP), RFC 792
More informationDesign Patterns. Hausi A. Müller University of Victoria. Software Architecture Course Spring 2000
Design Patterns Hausi A. Müller University of Victoria Software Architecture Course Spring 2000 1 Motivation Vehicle for reasoning about design or architecture at a higher level of abstraction (design
More information1682 IEEE TRANSACTIONS ON FUZZY SYSTEMS, VOL. 22, NO. 6, DECEMBER Backward Fuzzy Rule Interpolation
1682 IEEE TRANSACTIONS ON FUZZY SYSTEMS, VOL. 22, NO. 6, DECEMBER 2014 Bacward Fuzzy Rue Interpoation Shangzhu Jin, Ren Diao, Chai Que, Senior Member, IEEE, and Qiang Shen Abstract Fuzzy rue interpoation
More informationQuality Assessment using Tone Mapping Algorithm
Quaity Assessment using Tone Mapping Agorithm Nandiki.pushpa atha, Kuriti.Rajendra Prasad Research Schoar, Assistant Professor, Vignan s institute of engineering for women, Visakhapatnam, Andhra Pradesh,
More informationMay 13, Mark Lutz Boulder, Colorado (303) [work] (303) [home]
"Using Python": a Book Preview May 13, 1995 Mark Lutz Bouder, Coorado utz@kapre.com (303) 546-8848 [work] (303) 684-9565 [home] Introduction. This paper is a brief overview of the upcoming Python O'Reiy
More informationIdioms and Design Patterns. Martin Skogevall IDE, Mälardalen University
Idioms and Design Patterns Martin Skogevall IDE, Mälardalen University 2005-04-07 Acronyms Object Oriented Analysis and Design (OOAD) Object Oriented Programming (OOD Software Design Patterns (SDP) Gang
More informationOutline. Introduce yourself!! What is Machine Learning? What is CAP-5610 about? Class information and logistics
Outine Introduce yoursef!! What is Machine Learning? What is CAP-5610 about? Cass information and ogistics Lecture Notes for E Apaydın 2010 Introduction to Machine Learning 2e The MIT Press (V1.0) About
More informationCSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Advanced Memory Management
CSE120 Principes of Operating Systems Prof Yuanyuan (YY) Zhou Advanced Memory Management Advanced Functionaity Now we re going to ook at some advanced functionaity that the OS can provide appications using
More informationFour Circuit 4 Wire Unit With Dante Network Audio Interface
Network Audio 4 Wire Interface Four Circuit 4 Wire Unit With Dante Network Audio Interface GS-FW012 ip 4 Wire With Dante Interface Highights Four x 4 Wire Circuits Loca Cue Input Dante Network Audio Three
More informationJoint disparity and motion eld estimation in. stereoscopic image sequences. Ioannis Patras, Nikos Alvertos and Georgios Tziritas y.
FORTH-ICS / TR-157 December 1995 Joint disparity and motion ed estimation in stereoscopic image sequences Ioannis Patras, Nikos Avertos and Georgios Tziritas y Abstract This work aims at determining four
More informationCentreVu Explorer II. User Guide. Version Comcode Issue 1.0 June 1999
1 CentreVu Exporer II Version 1.0 User Guide 585-218-200 Comcode 108456617 Issue 1.0 June 1999 Copyright 1999 Lucent Technoogies A Rights Reserved Printed in U.S.A. Notice Every effort was made to ensure
More informationOutline. Parallel Numerical Algorithms. Forward Substitution. Triangular Matrices. Solving Triangular Systems. Back Substitution. Parallel Algorithm
Outine Parae Numerica Agorithms Chapter 8 Prof. Michae T. Heath Department of Computer Science University of Iinois at Urbana-Champaign CS 554 / CSE 512 1 2 3 4 Trianguar Matrices Michae T. Heath Parae
More informationCSE120 Principles of Operating Systems. Architecture Support for OS
CSE120 Principes of Operating Systems Architecture Support for OS Why are you sti here? You shoud run away from my CSE120! 2 CSE 120 Architectura Support Announcement Have you visited the web page? http://cseweb.ucsd.edu/casses/fa18/cse120-a/
More informationXisa: Extensible Inductive Shape Analysis
Xisa: Extensibe Inductive Shape Anaysis Bor-Yuh Evan Chang U of Coorado, Bouder Xavier Riva INRIA/ENS Paris George C. Necua U of Caifornia, Berkeey Additiona Contributors: Vincent Laviron, James Hoey,
More informationKeywords: Abstract Factory, Singleton, Factory Method, Prototype, Builder, Composite, Flyweight, Decorator.
Comparative Study In Utilization Of Creational And Structural Design Patterns In Solving Design Problems K.Wseem Abrar M.Tech., Student, Dept. of CSE, Amina Institute of Technology, Shamirpet, Hyderabad
More informationSubstitute Model of Deep-groove Ball Bearings in Numeric Analysis of Complex Constructions Like Manipulators
Mechanics and Mechanica Engineering Vo. 12, No. 4 (2008) 349 356 c Technica University of Lodz Substitute Mode of Deep-groove Ba Bearings in Numeric Anaysis of Compex Constructions Like Manipuators Leszek
More informationApplication of Intelligence Based Genetic Algorithm for Job Sequencing Problem on Parallel Mixed-Model Assembly Line
American J. of Engineering and Appied Sciences 3 (): 5-24, 200 ISSN 94-7020 200 Science Pubications Appication of Inteigence Based Genetic Agorithm for Job Sequencing Probem on Parae Mixed-Mode Assemby
More informationTelephony Trainers with Discovery Software
Teephony Trainers 58 Series Teephony Trainers with Discovery Software 58-001 Teephony Training System 58-002 Digita Switching System 58-003 Digita Teephony Training System 58-004 Digita Trunk Network System
More informationDatabase Graph Views : A Practical Model to Manage Persistent Graphs1
Database Graph Views : A Practica Mode to Manage Persistent Graphs1 Aejandro Gutihez TS Phiippe Puchera? Hermaun Steffen $ Jean-Marc Thevenin?t (t) University of Versaies ($) Universidad de a Reptibica
More informationWhat is Design Patterns?
Paweł Zajączkowski What is Design Patterns? 1. Design patterns may be said as a set of probable solutions for a particular problem which is tested to work best in certain situations. 2. In other words,
More informationFormulation of Loss minimization Problem Using Genetic Algorithm and Line-Flow-based Equations
Formuation of Loss minimization Probem Using Genetic Agorithm and Line-Fow-based Equations Sharanya Jaganathan, Student Member, IEEE, Arun Sekar, Senior Member, IEEE, and Wenzhong Gao, Senior member, IEEE
More information