Android Services. Lecture 4. Operating Systems Practical. 26 October 2016

Size: px
Start display at page:

Download "Android Services. Lecture 4. Operating Systems Practical. 26 October 2016"

Transcription

1 Android Services Lecture 4 Operating Systems Practical 26 October 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit OSP Android Services, Lecture 4 1/55

2 Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 2/55

3 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 3/55

4 Android Service Application component without a user interface Designed for long-running operations in the background Can run even if the user is not in the hosting application OSP Android Services, Lecture 4 4/55

5 Android Service Can be accessed by external applications directly If exported by the hosting application By default, runs in the main UI thread of the hosting application CPU intensive and blocking operations - create another thread A service can be configured to run in a separate process OSP Android Services, Lecture 4 5/55

6 Declaring a Service in Manifest <service> tag under the <application> tag android:name - The class implementing the service android:enabled - Set as true or false if the system can / cannot instantiate the service Default value is true OSP Android Services, Lecture 4 6/55

7 Declaring a Service in Manifest android:exported - Whether or not other applications can access the service Without intent filter - default is false With intent filter - default is true android:process - Create a new process to run the service E.g. android:process=":fgservice" android:permission - Permission that must be given to a component to access the service OSP Android Services, Lecture 4 7/55

8 Types of Services Started Service Performs a single operation Does not return the result to the caller directly Launched by an application component that calls Context.startService() Once started, it can run indefinitely, even if the caller has terminated Not killed when they finish their job OSP Android Services, Lecture 4 8/55

9 Types of Services Bound Service Can perform multiple operations Offers a client-server interface, allowing interactions with it (send requests, obtain results) Communication can be across processes (IPC) Launched by an application component that calls Context.bindService() Remains active as long as there is at least one component is still bound to it Killed when the last component calls Context.unbindService() OSP Android Services, Lecture 4 9/55

10 Service Life Cycle Source: OSP Android Services, Lecture 4 10/55

11 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 11/55

12 Started Services Launched by calling Context.startService(Intent) Intent - specify the task given to the Service In extras or action Read information in onstartcommand() Not terminated after the task is completed Stopped in two ways: Another application component - Context.stopService(Intent) Stop itself - Service.stopSelf() OSP Android Services, Lecture 4 12/55

13 Implementing a Started Service Extending the base Service class Implement the onstartcommand(intent, flags, startid) method Separate thread for CPU intensive / blocking operations START STICKY - restart faster START NOT STICKY - killed faster onbind() is mandatory - return null OSP Android Services, Lecture 4 13/55

14 Service Example p u b l i c c l a s s H e l l o S e r v i c e extends S e r v i c e O v e r r i d e p u b l i c i n t onstartcommand ( I n t e n t i n t e n t, i n t f l a g s, i n t s t a r t I d ) { Toast. maketext ( t h i s, s e r v i c e s t a r t i n g, Toast. LENGTH SHORT ). show ( ) ; r e t u r n START STICKY O v e r r i d e p u b l i c I B i n d e r onbind ( I n t e n t i n t e n t ) { r e t u r n n u l l O v e r r i d e p u b l i c v o i d ondestroy ( ) { Toast. maketext ( t h i s, s e r v i c e done, Toast. LENGTH SHORT ). show ( ) ; OSP Android Services, Lecture 4 14/55

15 Implementing a Started Service Extending the IntentService class Uses a worker thread to handle start requests, one at a time Multiple requests, not handled simultaneously Only onhandleintent(intent) is mandatory OSP Android Services, Lecture 4 15/55

16 IntentService Creates a worker thread that will treat all Intents received by onstartcommand() Creates a work queue that delivers one Intent at a time to onhandleintent() Stops service after handling all requests Includes onbind() that returns null Includes onstartcommand() that sends Intents to the work queue and then to onhandleintent() OSP Android Services, Lecture 4 16/55

17 IntentService Example p u b l i c c l a s s H e l l o I n t e n t S e r v i c e extends I n t e n t S e r v i c e { p u b l i c H e l l o I n t e n t S e r v i c e ( ) { s u p e r ( H e l l o I n t e n t S e r v i c e ) O v e r r i d e p r o t e c t e d v o i d o n H a n d l e I n t e n t ( I n t e n t i n t e n t ) { // Normally we would do some work here, l i k e download a f i l e. Constructor and implementation for onhandleintent() When overriding other callback methods - call super OSP Android Services, Lecture 4 17/55

18 Starting a Service Pass an Intent to startservice() The system calls the service s oncreate(), then onstartcommand() If the service is running, it calls only onstartcommand() I n t e n t i n t e n t = new I n t e n t ( t h i s, H e l l o S e r v i c e. c l a s s ) ; s t a r t S e r v i c e ( i n t e n t ) ; OSP Android Services, Lecture 4 18/55

19 Stopping a Started Service Manage its own lifecycle Destroyed by the system only in low memory situations Call stopself() from the service Call stopservice() from other component Should not kill the service while processing requests stopself() using startid OSP Android Services, Lecture 4 19/55

20 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 20/55

21 Bound Services Launched by calling Context.bindService(Intent) If another component calls bindservice() after the service has been launched, the same service instance is given Client-server paradigm The server is the running service The client is the application component (e.g. the Activity) bound to the service The communication interface is specified by an IBinder Can receive requests from external processes / applications OSP Android Services, Lecture 4 21/55

22 Implementing a Bound Service Extend the Service class Implement the onbind() method onbind() returns an IBinder object Called only for the first component binding to the service Subsequent components that bind to the service will receive the same IBinder object OSP Android Services, Lecture 4 22/55

23 Communicating with a Bound Service If the client is running in the same process Extend the Binder class and return an instance For communicating with external processes you can: Use a Messenger (that serializes incoming requests) and call Messenger.getBinder() Use AIDL (especially when you need to handle multiple requests simultaneously) OSP Android Services, Lecture 4 23/55

24 Client Side - Connecting to a Bound Service Implement the ServiceConnection interface onserviceconnected() callback gives the IBinder used to call remote methods onservicedisconnected() callback gets called when the connection to the service has died OSP Android Services, Lecture 4 24/55

25 Client Side - Connecting to a Bound Service Call bindservice() and give it an instance of your ServiceConnection implementation bindservice() returns immediately The framework will call onserviceconnected() when connection to the service has been established OSP Android Services, Lecture 4 25/55

26 Client Side - Disconnecting from a Bound Service Call unbindservice() to end service connection If the current component unbinding is the only one who had been still bound, the service should be destroyed The service is kept alive only if it is also a Started Service (another component has called startservice() on it) OSP Android Services, Lecture 4 26/55

27 Extending the Binder class Client and service in the same process In the Service class, create a member variable of a class extending Binder From the Service s onbind() return the member variable OSP Android Services, Lecture 4 27/55

28 Extending the Binder class 3 options for exporting services: The Binder instance has public methods that can be called from the outside It can return a reference to the Service class, which itself has public methods It can return a reference to another class, hosted within the service, which has public methods OSP Android Services, Lecture 4 28/55

29 Using a reference to the Service p u b l i c c l a s s L o c a l S e r v i c e extends S e r v i c e { private f i n a l IBinder mbinder = new LocalBinder ( ) ; private f i n a l Random mgenerator = new Random ( ) ; public c l a s s L o c a l B i n d e r extends B i n d e r { L o c a l S e r v i c e g e t S e r v i c e ( ) { r e t u r n L o c a l S e r v i c e. t h i s O v e r r i d e p u b l i c I B i n d e r onbind ( I n t e n t i n t e n t ) { r e t u r n mbinder ; public i n t getrandomnumber ( ) { r e t u r n mgenerator. n e x t I n t ( ) ; OSP Android Services, Lecture 4 29/55

30 Using a reference to the Service p u b l i c c l a s s B i n d i n g A c t i v i t y extends A c t i v i t y { L o c a l S e r v i c e m S e r v i c e ; boolean mbound = f a l s e O v e r r i d e p r o t e c t e d v o i d onstart ( ) { s u p e r. o n S t a r t ( ) ; I n t e n t i n t e n t = new I n t e n t ( t h i s, L o c a l S e r v i c e. c l a s s ) ; bindservice ( intent, mconnection, Context. BIND AUTO CREATE ) O v e r r i d e p r o t e c t e d v o i d onstop ( ) { s u p e r. onstop ( ) ; i f ( mbound ) { u n b i n d S e r v i c e ( mconnection ) ; mbound = f a l s e ; p r i v a t e S e r v i c e C o n n e c t i o n mconnection = new S e r v i c e C o n n e c t i o n ( ) O v e r r i d e p u b l i c v o i d onserviceconnected ( ComponentName classname, IBinder s e r v i c e ) { L o c a l B i n d e r b i n d e r = ( L o c a l B i n d e r ) s e r v i c e ; m S e r v i c e = b i n d e r. g e t S e r v i c e ( ) ; mbound = true O v e r r i d e p u b l i c v o i d onservicedisconnected ( ComponentName arg0 ) { mbound = f a l s e ; ; OSP Android Services, Lecture 4 30/55

31 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 31/55

32 Communicating through a Messenger Communication between bound service and external application Through a Messenger IPC Serialize multiple incoming connections OSP Android Services, Lecture 4 32/55

33 Communicating through a Messenger In the Service class, create a member variable of a class extending Handler Implement the handlemessage(message) method Communication with the service is done by how different Message types are handled Create a Messenger member variable passing to its constructor an instance of your Handler class In the onbind() method return Messenger.getBinder() OSP Android Services, Lecture 4 33/55

34 Messenger Example p u b l i c c l a s s M e s s e n g e r S e r v i c e extends S e r v i c e { s t a t i c f i n a l i n t MSG SAY HELLO = 1 ; c l a s s I n c o m i n g H a n d l e r extends H a n d l e r O v e r r i d e p u b l i c v o i d handlemessage ( Message msg ) { s w i t c h ( msg. what ) { case MSG SAY HELLO : Toast. maketext ( g e t A p p l i c a t i o n C o n t e x t ( ), h e l l o!, Toast. LENGTH SHORT ). show ( ) ; break ; default : s u p e r. handlemessage ( msg ) ; f i n a l Messenger mmessenger = new Messenger (new IncomingHandler ( ) ) O v e r r i d e p u b l i c I B i n d e r onbind ( I n t e n t i n t e n t ) { r e t u r n mmessenger. g e t B i n d e r ( ) ; OSP Android Services, Lecture 4 34/55

35 Communicating through a Messenger Client side In onserviceconnected() receive IBinder object Create Messenger object based on IBinder object Create and send messages through the Messenger OSP Android Services, Lecture 4 35/55

36 Messenger Example p u b l i c c l a s s A c t i v i t y M e s s e n g e r extends A c t i v i t y { Messenger m S e r v i c e = n u l l ; boolean mbound ; p r i v a t e S e r v i c e C o n n e c t i o n mconnection = new S e r v i c e C o n n e c t i o n ( ) { p u b l i c v o i d onserviceconnected ( ComponentName classname, IBinder s e r v i c e ) { m S e r v i c e = new Messenger ( s e r v i c e ) ; mbound = true ; ; p u b l i c v o i d onservicedisconnected ( ComponentName classname ) { m S e r v i c e = n u l l ; mbound = f a l s e ; p u b l i c v o i d sayhello ( View v ) { i f (! mbound ) r e t u r n ; Message msg = Message. obtain ( null, MessengerService. MSG SAY HELLO, 0, 0 ) ; t r y { m S e r v i c e. send ( msg ) ; catch ( RemoteException e ) { e. p r i n t S t a c k T r a c e ( ) ; OSP Android Services, Lecture 4 36/55

37 Communicating through a Messenger The handlemessage() method returns void The service has no readily-available means to respond to the client To have two-way communication you need to implement a similar Messenger mechanism in the client Set the client s Messenger as the replyto parameter of the Message The service receives a reference to the client s Messenger that can be used to send it s responses OSP Android Services, Lecture 4 37/55

38 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 38/55

39 Interface Definition Languages Communication between components written in different languages Specification language Describe a software component s interface Remote Procedure Calls (RPC) OSP Android Services, Lecture 4 39/55

40 Interface Definition Languages Examples of IDLs include: AIDL - Android IDL OMG IDL (Object Management Group IDL) - implemented in CORBA for RPC services Protocol Buffers - Google s method of serializing structured data WSDL - Web Services Description Language OSP Android Services, Lecture 4 40/55

41 The Need for AIDL Android provides security through sandboxing An app s process cannot normally access the memory of another app s process Communication between two processes Send messages, perform RPC Decompose objects into primitives that can be marshalled across the system The Binder system handles these operations Expose Binder functionality to applications Using AIDL System marshalls / unmarshalls objects and calls the Binder services OSP Android Services, Lecture 4 41/55

42 Creating an AIDL File.aidl file in src/ Declare a single interface containing only method signatures AIDL allows using the data types: Primitive Java types (int, float, boolean, etc.) String CharSequence List (the system will use ArrayList) Map (the system will use HashMap) Collections include elements with permitted data types OSP Android Services, Lecture 4 42/55

43 Implementing the AIDL interface Service side YourInterface.aidl in /src Build application => generates YourInterface.java in gen/ Includes YourInterface.Stub subclass with all methods declared in the.aidl file In Service, instantiate the YourInterface.Stub and implement its methods Return Stub instance from the Service s onbind() method OSP Android Services, Lecture 4 43/55

44 AIDL Example - Service Side p u b l i c c l a s s R e m o t e S e r v i c e extends S e r v i c e O v e r r i d e p u b l i c v o i d oncreate ( ) { s u p e r. o n C r e a t e ( ) O v e r r i d e p u b l i c I B i n d e r onbind ( I n t e n t i n t e n t ) { r e t u r n mbinder ; private f i n a l IRemoteService. Stub mbinder = new IRemoteService. Stub ( ) { p u b l i c i n t g e t P i d (){ r e t u r n P r o c e s s. mypid ( ) ; public void b a s i c T y p e s ( i n t a n I n t, long along, boolean aboolean, f l o a t afloat, double adouble, S t r i n g a S t r i n g ) { ; OSP Android Services, Lecture 4 44/55

45 Connecting to a Service using AIDL Client side Copy of YourInterface.aidl in src/ Create a ServiceConnection instance Within the onserviceconnected() method Use IBinder parameter Obtain reference to AIDL interface YourInterface.Stub.asInterface(IBinder) Guard calls to service methods in a try{... catch block DeadObjectException - broken connection OSP Android Services, Lecture 4 45/55

46 AIDL Example - Client Side IRemoteService miremoteservice ; p r i v a t e S e r v i c e C o n n e c t i o n mconnection = new S e r v i c e C o n n e c t i o n ( ) { p u b l i c v o i d onserviceconnected ( ComponentName classname, IBinder s e r v i c e ) { miremoteservice = I R e m o t e S e r v i c e. Stub. a s I n t e r f a c e ( s e r v i c e ) ; ; p u b l i c v o i d onservicedisconnected ( ComponentName classname ) { miremoteservice = n u l l ; OSP Android Services, Lecture 4 46/55

47 Sending Custom Objects over IPC Custom classes - implement the Parcelable interface Implement writetoparcel() Include public static final Parcelable.Creator<YourClass> CREATOR member variable Implement createfromparcel() and newarray() interface methods Create a YourClass.aidl file in which you declare the class as parcelable parcelable YourClass; OSP Android Services, Lecture 4 47/55

48 Example public c l a s s MyParcelable implements Pa rce lab le { private i n t mdata ; p u b l i c v o i d w r i t e T o P a r c e l ( P a r c e l out, i n t f l a g s ) { out. w r i t e I n t ( mdata ) ; p u b l i c s t a t i c f i n a l P a r c e l a b l e. C r e a t o r<myparcelable> CREATOR = new Pa rce lab le. Creator<MyParcelable >() { p u b l i c M y P a r c e l a b l e c r e a t e F r o m P a r c e l ( P a r c e l i n ) { r e t u r n new MyParcelable ( in ) ; ; p u b l i c M y P a r c e l a b l e [ ] newarray ( i n t s i z e ) { r e t u r n new M y P a r c e l a b l e [ s i z e ] ; p r i v a t e MyParcelable ( Parcel in ) { mdata = i n. r e a d I n t ( ) ; OSP Android Services, Lecture 4 48/55

49 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 49/55

50 Foreground Services The user is aware of this service E.g. a music player Considered important to the user Not easily killed in low-memory situations An on-going notification while running OSP Android Services, Lecture 4 50/55

51 Foreground Services Started by calling startforeground(notificationid, Notification) Called from within the Service itself Specify the Activity to be started when selecting the Notification Stopped by calling stopforeground() OSP Android Services, Lecture 4 51/55

52 Foreground Service Example N o t i f i c a t i o n n o t i f i c a t i o n = new N o t i f i c a t i o n (R. d r a w a b l e. icon, g ettext (R. s t r i n g. t i c k e r t e x t ), System. c u r r e n t T i m e M i l l i s ( ) ) ; I n t e n t n o t i f i c a t i o n I n t e n t = new I n t e n t ( t h i s, E x a m p l e A c t i v i t y. c l a s s ) ; P e n d i n g I n t e n t p e n d i n g I n t e n t = P e n d i n g I n t e n t. g e t A c t i v i t y ( t h i s, 0, n o t i f i c a t i o n I n t e n t, 0 ) ; n o t i f i c a t i o n. s e t L a t e s t E v e n t I n f o ( t h i s, g ettext (R. s t r i n g. n o t i f i c a t i o n t i t l e ), g ettext (R. s t r i n g. n o t i f i c a t i o n m e s s a g e ), p e n d i n g I n t e n t ) ; s t a r t F o r e g r o u n d ( ONGOING NOTIFICATION ID, n o t i f i c a t i o n ) ; OSP Android Services, Lecture 4 52/55

53 Outline Overview Started Services Bound Services Messenger AIDL Foreground Services Bibliography OSP Android Services, Lecture 4 53/55

54 Bibliography http: //developer.android.com/reference/android/app/intentservice.html ServiceConnection.html OSP Android Services, Lecture 4 54/55

55 Keywords Android Services Started Services Foreground Services IntentService Bound Services IBinder ServiceConnection Handler Messenger Message AIDL Parcelable OSP Android Services, Lecture 4 55/55

SDS developer guide. Develop distributed and parallel applications in Java. Nathanaël Cottin. version

SDS developer guide. Develop distributed and parallel applications in Java. Nathanaël Cottin. version SDS developer guide Develop distributed and parallel applications in Java Nathanaël Cottin sds@ncottin.net http://sds.ncottin.net version 0.0.3 Copyright 2007 - Nathanaël Cottin Permission is granted to

More information

Android Security Mechanisms

Android Security Mechanisms Android Security Mechanisms Lecture 8 Operating Systems Practical 7 December 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license,

More information

Mobile and Wireless Systems Programming

Mobile and Wireless Systems Programming Application Fundamentals Java programming language Android package :.apk Dalvik VM executes files in the Dalvik Executable (.dex) format 1.apk = 1 application 1 application = 1 Linux process 1 application

More information

Android Security Mechanisms

Android Security Mechanisms Android Security Mechanisms Lecture 9 Android and Low-level Optimizations Summer School 1 August 2015 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy

More information

Activities, Services, Intents...

Activities, Services, Intents... ,,... Mobile App Development Przemyslaw Pawluk 1 2 3 4 1 2 3 4 Basic components Activity functionality with UI Service long-running task without UI Content Provider abstracts data and enables interprocess

More information

Android Security Mechanisms (2)

Android Security Mechanisms (2) Android Security Mechanisms (2) Lecture 9 Operating Systems Practical 14 December 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license,

More information

Introduction to ArcGIS Server Development

Introduction to ArcGIS Server Development Introduction to ArcGIS Server Development Kevin Deege,, Rob Burke, Kelly Hutchins, and Sathya Prasad ESRI Developer Summit 2008 1 Schedule Introduction to ArcGIS Server Rob and Kevin Questions Break 2:15

More information

Extensibility Patterns: Extension Access

Extensibility Patterns: Extension Access Design Patterns and Frameworks Dipl.-Medieninf. Christian Piechnick INF 2080 christian.piechnick@tu-dresden.de Exercise Sheet No. 5 Software Technology Group Institute for SMT Department of Computer Science

More information

Computer Science Introductory Course MSc - Introduction to Java

Computer Science Introductory Course MSc - Introduction to Java Computer Science Introductory Course MSc - Introduction to Java Lecture 3:,, Pablo Oliveira ENST Outline 1 2 3 Definition An exception is an event that indicates an abnormal condition

More information

Activities, Fragments and Intents

Activities, Fragments and Intents Mobile App Development 1 2 Design Principles 3 1 2 Design Principles 3 Manifest file Outline AndroidManifest.xml XML file Contains name of the application and a default package, Sets up the various permissions

More information

Outline. PeerSim: Informal introduction. Resources. What is PeerSim? Alberto Montresor Gianluca Ciccarelli

Outline. PeerSim: Informal introduction. Resources. What is PeerSim? Alberto Montresor Gianluca Ciccarelli Outline PeerSim: Informal introduction Alberto Montresor Gianluca Ciccarelli Networking group - University of Trento April 3, 2009 1 2 files structure 3 1 / 45 2 / 45 Resources What is PeerSim? These slides

More information

13 Concurrent Programming using Tasks and Services

13 Concurrent Programming using Tasks and Services 60 Advanced Java for Bioinformatics, WS 17/18, D. Huson, January 18, 2018 13 Concurrent Programming using Tasks and Services Any programs that you write will be multi-threaded. Modern computers have multiple

More information

Outline F eria AADL behavior 1/ 78

Outline F eria AADL behavior 1/ 78 Outline AADL behavior Annex Jean-Paul Bodeveix 2 Pierre Dissaux 3 Mamoun Filali 2 Pierre Gaufillet 1 François Vernadat 2 1 AIRBUS-FRANCE 2 FéRIA 3 ELLIDIS SAE AS2C Detroit Michigan April 2006 FéRIA AADL

More information

Report of Dragable Notebook

Report of Dragable Notebook Report of Dragable Notebook Lu Guandong, Qi Zhenlin, Mao Yong, Han Bing May 18, 2017 Abstract This report shows you why we develop the app, the function of the app and the features of the app. We include

More information

ITI Introduction to Computing II

ITI Introduction to Computing II (with contributions from R. Holte) School of Electrical Engineering and Computer Science University of Ottawa Version of January 11, 2015 Please don t print these lecture notes unless you really need to!

More information

Instance Methods and Inheritance (1/2)

Instance Methods and Inheritance (1/2) Instance Methods and Inheritance (1/2) 1 class Professor { 2 p u b l i c void say_hello ( ) { 3 System. out. p r i n t l n ( " Hello! " ) ; 4 } 5 } 6 class CSIEProfessor extends Professor { 7 p u b l i

More information

Account Setup. STEP 1: Create Enhanced View Account

Account Setup. STEP 1: Create Enhanced View Account SpyMeSatGov Access Guide - Android DigitalGlobe Imagery Enhanced View How to setup, search and download imagery from DigitalGlobe utilizing NGA s Enhanced View license Account Setup SpyMeSatGov uses a

More information

Inter-Reactive Kotlin Applications

Inter-Reactive Kotlin Applications Inter-Reactive Kotlin Applications Julien Viet @julienviet Julien Viet Open source developer for 15+ years Current @vertx_project lead Principal software engineer at Marseille Java User Group Leader https://www.julienviet.com/

More information

Lab Course: distributed data analytics

Lab Course: distributed data analytics Lab Course: distributed data analytics 01. Threading and Parallelism Nghia Duong-Trung, Mohsan Jameel Information Systems and Machine Learning Lab (ISMLL) University of Hildesheim, Germany International

More information

Trivadis Integration Blueprint V0.1

Trivadis Integration Blueprint V0.1 Spring Integration Peter Welkenbach Principal Consultant peter.welkenbach@trivadis.com Agenda Integration Blueprint Enterprise Integration Patterns Spring Integration Goals Main Components Architectures

More information

Usability Extensions for the Worklet Service

Usability Extensions for the Worklet Service Usability Extensions for the Worklet Service Michael Adams Queensland University of Technology, Brisbane, Australia. mj.adams@qut.edu.au Abstract. The YAWL Worklet Service is an effective approach to facilitating

More information

High-performance processing and development with Madagascar. July 24, 2010 Madagascar development team

High-performance processing and development with Madagascar. July 24, 2010 Madagascar development team High-performance processing and development with Madagascar July 24, 2010 Madagascar development team Outline 1 HPC terminology and frameworks 2 Utilizing data parallelism 3 HPC development with Madagascar

More information

FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING OBJECT ORIENTED PROGRAMMING DATE 07/2014 SESSION 8:00-10:00

FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING OBJECT ORIENTED PROGRAMMING DATE 07/2014 SESSION 8:00-10:00 FACULTY OF SCIENCE ACADEMY OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING MODULE CAMPUS CSC2A10 OBJECT ORIENTED PROGRAMMING AUCKLAND PARK CAMPUS (APK) EXAM JULY 2014 DATE 07/2014 SESSION 8:00-10:00 ASSESOR(S)

More information

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing Alexandre Dulaunoy Andras Iklody TLP:WHITE June 16, 2016 Why we want to go more modular... Ways to extend

More information

Basic Java OOP 10/12/2015. Department of Computer Science & Information Engineering. National Taiwan University

Basic Java OOP 10/12/2015. Department of Computer Science & Information Engineering. National Taiwan University Basic Java OOP 10/12/2015 Hsuan-Tien Lin ( 林軒田 ) htlin@csie.ntu.edu.tw Department of Computer Science & Information Engineering National Taiwan University ( 國立台灣大學資訊工程系 ) Hsuan-Tien Lin (NTU CSIE) Basic

More information

Comp 11 Lectures. Mike Shah. July 12, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 12, / 33

Comp 11 Lectures. Mike Shah. July 12, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 12, / 33 Comp 11 Lectures Mike Shah Tufts University July 12, 2017 Mike Shah (Tufts University) Comp 11 Lectures July 12, 2017 1 / 33 Please do not distribute or host these slides without prior permission. Mike

More information

Planning Softproviding Meat User Documentation

Planning Softproviding Meat User Documentation Great ideas are always simple Softproviding simply makes them happen. Planning Softproviding Meat User Documentation Version: 1.00 Date: 24 August 2017 Release: v5.50 Softproviding AG Riehenring 175 CH-4058

More information

Troubleshooting Replication and Geodata Service Issues

Troubleshooting Replication and Geodata Service Issues Troubleshooting Replication and Geodata Service Issues Ken Galliher & Ben Lin Esri UC 2014 Demo Theater Tech Session Overview What is Geodatabase Replication Replication types Geodata service replication

More information

SpyMeSat Mobile App. Imaging Satellite Awareness & Access

SpyMeSat Mobile App. Imaging Satellite Awareness & Access SpyMeSat Mobile App Imaging Satellite Awareness & Access Imaging & Geospatical Technology Forum ASPRS Annual Conference March 12-16, 2017 Baltimore, MD Ella C. Herz 1 Orbit Logic specializes in software

More information

CS Java. Introduction to Java. Andy Mroczkowski Department of Computer Science Drexel University

CS Java. Introduction to Java. Andy Mroczkowski Department of Computer Science Drexel University CS 190 - Java Introduction to Java Andy Mroczkowski uamroczk@cs.drexel.edu Department of Computer Science Drexel University February 18, 2008 / Lecture 5 Outline Course Status Course Information & Schedule

More information

AperTO - Archivio Istituzionale Open Access dell'università di Torino

AperTO - Archivio Istituzionale Open Access dell'università di Torino AperTO - Archivio Istituzionale Open Access dell'università di Torino Android applications are inspired by Multi-Agent Systems This is the author's manuscript Original Citation: Android applications are

More information

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application Administrivia 1. markem/cs333/ 2. Staff 3. Prerequisites 4. Grading Course Objectives 1. Theory and application 2. Benefits 3. Labs TAs Overview 1. What is a computer system? CPU PC ALU System bus Memory

More information

Blocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012)

Blocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012) 1 Streams Blocking Synchronization: Streams Vijay Saraswat (Dec 10, 2012) Streams provide a very simple abstraction for determinate parallel computation. The intuition for streams is already present in

More information

Distributed Algorithms Time, clocks and the ordering of events

Distributed Algorithms Time, clocks and the ordering of events Distributed Algorithms Time, clocks and the ordering of events Alberto Montresor University of Trento, Italy 2016/04/26 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International

More information

MURA Office hours Thurs at 12-1pm in CIT 546 Contact for more info.

MURA Office hours Thurs at 12-1pm in CIT 546 Contact for more info. Course Announcements Lecture capture has begun, available from Lectures page. First two and a half weeks are packed. Testing lab done, HTML started, and Stars due next Friday. Department has a lot of student

More information

ITI Introduction to Computing II

ITI Introduction to Computing II (with contributions from R. Holte) School of Electrical Engineering and Computer Science University of Ottawa Version of January 9, 2019 Please don t print these lecture notes unless you really need to!

More information

Socket Programming. Daniel Zappala. CS 360 Internet Programming Brigham Young University

Socket Programming. Daniel Zappala. CS 360 Internet Programming Brigham Young University Socket Programming Daniel Zappala CS 360 Internet Programming Brigham Young University Sockets, Addresses, Ports Clients and Servers 3/33 clients request a service from a server using a protocol need an

More information

Visualizing Big Data on Maps: Emerging Tools and Techniques. Ilir Bejleri, Sanjay Ranka

Visualizing Big Data on Maps: Emerging Tools and Techniques. Ilir Bejleri, Sanjay Ranka Visualizing Big Data on Maps: Emerging Tools and Techniques Ilir Bejleri, Sanjay Ranka Topics Web GIS Visualization Big Data GIS Performance Maps in Data Visualization Platforms Next: Web GIS Visualization

More information

From BASIS DD to Barista Application in Five Easy Steps

From BASIS DD to Barista Application in Five Easy Steps Y The steps are: From BASIS DD to Barista Application in Five Easy Steps By Jim Douglas our current BASIS Data Dictionary is perfect raw material for your first Barista-brewed application. Barista facilitates

More information

Enabling ENVI. ArcGIS for Server

Enabling ENVI. ArcGIS for Server Enabling ENVI throughh ArcGIS for Server 1 Imagery: A Unique and Valuable Source of Data Imagery is not just a base map, but a layer of rich information that can address problems faced by GIS users. >

More information

COMP9334: Capacity Planning of Computer Systems and Networks

COMP9334: Capacity Planning of Computer Systems and Networks COMP9334: Capacity Planning of Computer Systems and Networks Week 2: Operational analysis Lecturer: Prof. Sanjay Jha NETWORKS RESEARCH GROUP, CSE, UNSW Operational analysis Operational: Collect performance

More information

Introduction to Portal for ArcGIS. Hao LEE November 12, 2015

Introduction to Portal for ArcGIS. Hao LEE November 12, 2015 Introduction to Portal for ArcGIS Hao LEE November 12, 2015 Agenda Web GIS pattern Product overview Installation and deployment Security and groups Configuration options Portal for ArcGIS + ArcGIS for

More information

Introduction to functions

Introduction to functions Introduction to functions Comp Sci 1570 Introduction to C++ Outline 1 2 Functions A function is a reusable sequence of s designed to do a particular job. In C++, a function is a group of s that is given

More information

From BASIS DD to Barista Application in Five Easy Steps

From BASIS DD to Barista Application in Five Easy Steps Y The steps are: From BASIS DD to Barista Application in Five Easy Steps By Jim Douglas our current BASIS Data Dictionary is perfect raw material for your first Barista-brewed application. Barista facilitates

More information

Concurrent HTTP Proxy Server. CS425 - Computer Networks Vaibhav Nagar(14785)

Concurrent HTTP Proxy Server. CS425 - Computer Networks Vaibhav Nagar(14785) Concurrent HTTP Proxy Server CS425 - Computer Networks Vaibhav Nagar(14785) Email: vaibhavn@iitk.ac.in August 31, 2016 Elementary features of Proxy Server Proxy server supports the GET method to serve

More information

Geoprovisioning delivers geodata and its analysis for specific areas on request.

Geoprovisioning delivers geodata and its analysis for specific areas on request. DRAFT 27 February 2009 Geoprovisioning Geoprovisioning delivers geodata and its analysis for specific areas on request. What are the components of a geoprovisioning service? The sample web site geoprovisioning.com

More information

Introduction to Portal for ArcGIS

Introduction to Portal for ArcGIS Introduction to Portal for ArcGIS Derek Law Product Management March 10 th, 2015 Esri Developer Summit 2015 Agenda Web GIS pattern Product overview Installation and deployment Security and groups Configuration

More information

INF Models of concurrency

INF Models of concurrency INF4140 - Models of concurrency RPC and Rendezvous INF4140 Lecture 15. Nov. 2017 RPC and Rendezvous Outline More on asynchronous message passing interacting processes with different patterns of communication

More information

Web GIS Deployment for Administrators. Vanessa Ramirez Solution Engineer, Natural Resources, Esri

Web GIS Deployment for Administrators. Vanessa Ramirez Solution Engineer, Natural Resources, Esri Web GIS Deployment for Administrators Vanessa Ramirez Solution Engineer, Natural Resources, Esri Agenda Web GIS Concepts Web GIS Deployment Patterns Components of an On-Premises Web GIS Federation of Server

More information

Semantic Web SPARQL. Gerd Gröner, Matthias Thimm. July 16,

Semantic Web SPARQL. Gerd Gröner, Matthias Thimm. July 16, Semantic Web SPARQL Gerd Gröner, Matthias Thimm {groener,thimm}@uni-koblenz.de Institute for Web Science and Technologies (WeST) University of Koblenz-Landau July 16, 2013 Gerd Gröner, Matthias Thimm Semantic

More information

Portal for ArcGIS: An Introduction

Portal for ArcGIS: An Introduction Portal for ArcGIS: An Introduction Derek Law Esri Product Management Esri UC 2014 Technical Workshop Agenda Web GIS pattern Product overview Installation and deployment Security and groups Configuration

More information

Part I. System call overview. Secure Operating System Design and Implementation System Calls. Overview. Abstraction. Jon A. Solworth.

Part I. System call overview. Secure Operating System Design and Implementation System Calls. Overview. Abstraction. Jon A. Solworth. Secure Operating System Design and Implementation System Calls Jon A. Solworth Part I System call overview Dept. of Computer Science University of Illinois at Chicago February 1, 2011 Overview Abstraction

More information

Sharing Objects. Pieter van den Hombergh. Fontys Hogeschool voor Techniek en Logistiek. February 15, 2017

Sharing Objects. Pieter van den Hombergh. Fontys Hogeschool voor Techniek en Logistiek. February 15, 2017 Pieter van den Hombergh Fontys Hogeschool voor Techniek en Logistiek February 15, 2017 and /FHTenL February 15, 2017 is safe Idioms 1/34 and and is safe Idioms /FHTenL February 15, 2017 2/34 visibility

More information

Design Patterns and Refactoring

Design Patterns and Refactoring Singleton Oliver Haase HTWG Konstanz 1 / 19 Description I Classification: object based creational pattern Puropse: ensure that a class can be instantiated exactly once provide global access point to single

More information

Announcements. John Jannotti (cs32) Design Patterns Feb 13, / 1

Announcements. John Jannotti (cs32) Design Patterns Feb 13, / 1 Announcements We ll code review Stars on Thursday. Volunteer your code by emailing me. Lab this week covers Ajax/Javascript. Interactive UIs. No lab (or lab hours) next week. Submit a group project idea

More information

Comp 11 Lectures. Mike Shah. July 26, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 26, / 40

Comp 11 Lectures. Mike Shah. July 26, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 26, / 40 Comp 11 Lectures Mike Shah Tufts University July 26, 2017 Mike Shah (Tufts University) Comp 11 Lectures July 26, 2017 1 / 40 Please do not distribute or host these slides without prior permission. Mike

More information

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing

Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing Extending MISP with Python modules MISP - Malware Information Sharing Platform & Threat Sharing MISP Project @MISPProject TLP:WHITE MISP Training - @SWITCH - 20161206 Why we want to go more modular...

More information

ON SITE SYSTEMS Chemical Safety Assistant

ON SITE SYSTEMS Chemical Safety Assistant ON SITE SYSTEMS Chemical Safety Assistant CS ASSISTANT WEB USERS MANUAL On Site Systems 23 N. Gore Ave. Suite 200 St. Louis, MO 63119 Phone 314-963-9934 Fax 314-963-9281 Table of Contents INTRODUCTION

More information

IO-Link Data Reference Guide: K50 Pro Touch Button with IO-Link

IO-Link Data Reference Guide: K50 Pro Touch Button with IO-Link IO-Link Data Reference Guide: K50 Pro Touch Button with IO-Link IO-Link Data Map This document refers to the following IODD file: Banner_Engineering-K50PTKQ-20180829-IODD1.1.xml. The IODD file and support

More information

ST-Links. SpatialKit. Version 3.0.x. For ArcMap. ArcMap Extension for Directly Connecting to Spatial Databases. ST-Links Corporation.

ST-Links. SpatialKit. Version 3.0.x. For ArcMap. ArcMap Extension for Directly Connecting to Spatial Databases. ST-Links Corporation. ST-Links SpatialKit For ArcMap Version 3.0.x ArcMap Extension for Directly Connecting to Spatial Databases ST-Links Corporation www.st-links.com 2012 Contents Introduction... 3 Installation... 3 Database

More information

Actors for Reactive Programming. Actors Origins

Actors for Reactive Programming. Actors Origins Actors Origins Hewitt, early 1970s (1973 paper) Around the same time as Smalltalk Concurrency plus Scheme Agha, early 1980s (1986 book) Erlang (Ericsson), 1990s Akka, 2010s Munindar P. Singh (NCSU) Service-Oriented

More information

Leveraging Web GIS: An Introduction to the ArcGIS portal

Leveraging Web GIS: An Introduction to the ArcGIS portal Leveraging Web GIS: An Introduction to the ArcGIS portal Derek Law Product Management DLaw@esri.com Agenda Web GIS pattern Product overview Installation and deployment Configuration options Security options

More information

Chem Compute Science Gateway for Undergraduates. Mark J. Perri, M.S. Reeves, R.M. Whitnell

Chem Compute Science Gateway for Undergraduates. Mark J. Perri, M.S. Reeves, R.M. Whitnell Chem Compute Science Gateway for Undergraduates Mark J. Perri, M.S. Reeves, R.M. Whitnell Chemcompute.org Computational Chemistry GAMESS (Quantum) TINKER (MD) About Sonoma State University One of 23 California

More information

Geodatabase Best Practices. Dave Crawford Erik Hoel

Geodatabase Best Practices. Dave Crawford Erik Hoel Geodatabase Best Practices Dave Crawford Erik Hoel Geodatabase best practices - outline Geodatabase creation Data ownership Data model Data configuration Geodatabase behaviors Data integrity and validation

More information

Data Aggregation with InfraWorks and ArcGIS for Visualization, Analysis, and Planning

Data Aggregation with InfraWorks and ArcGIS for Visualization, Analysis, and Planning CI125230 Data Aggregation with InfraWorks and ArcGIS for Visualization, Analysis, and Planning Stephen Brockwell Brockwell IT Consulting Inc. Sean Kinahan Brockwell IT Consulting Inc. Learning Objectives

More information

WEB-BASED SPATIAL DECISION SUPPORT: TECHNICAL FOUNDATIONS AND APPLICATIONS

WEB-BASED SPATIAL DECISION SUPPORT: TECHNICAL FOUNDATIONS AND APPLICATIONS WEB-BASED SPATIAL DECISION SUPPORT: TECHNICAL FOUNDATIONS AND APPLICATIONS Claus Rinner University of Muenster, Germany Piotr Jankowski San Diego State University, USA Keywords: geographic information

More information

Operational Laws Raj Jain

Operational Laws Raj Jain Operational Laws 33-1 Overview What is an Operational Law? 1. Utilization Law 2. Forced Flow Law 3. Little s Law 4. General Response Time Law 5. Interactive Response Time Law 6. Bottleneck Analysis 33-2

More information

Maps performance tips On server: Maintain DB connections, prepared statements (per thread/request!)

Maps performance tips On server: Maintain DB connections, prepared statements (per thread/request!) Announcements Maps performance tips On server: Maintain DB connections, prepared statements (per thread/request!) Use Spark.before, Spark.after to open and close. Use ThreadLocal, or pass the connection

More information

Analysis of Software Artifacts

Analysis of Software Artifacts Analysis of Software Artifacts System Performance I Shu-Ngai Yeung (with edits by Jeannette Wing) Department of Statistics Carnegie Mellon University Pittsburgh, PA 15213 2001 by Carnegie Mellon University

More information

Real Time Operating Systems

Real Time Operating Systems Real Time Operating ystems Luca Abeni luca.abeni@unitn.it Interacting Tasks Until now, only independent tasks... A job never blocks or suspends A task only blocks on job termination In real world, jobs

More information

University of Colorado Denver Anschutz Medical Campus Online Chemical Inventory System User s Manual

University of Colorado Denver Anschutz Medical Campus Online Chemical Inventory System User s Manual University of Colorado Denver Anschutz Medical Campus Online Chemical Inventory System User s Manual Hazardous Materials Division 303-724-0345 chemical.inventory@ucdenver.edu May, 2017 Table of Contents

More information

Reaxys Pipeline Pilot Components Installation and User Guide

Reaxys Pipeline Pilot Components Installation and User Guide 1 1 Reaxys Pipeline Pilot components for Pipeline Pilot 9.5 Reaxys Pipeline Pilot Components Installation and User Guide Version 1.0 2 Introduction The Reaxys and Reaxys Medicinal Chemistry Application

More information

Leveraging the GIS Capability within FlexiCadastre

Leveraging the GIS Capability within FlexiCadastre Managing Local Land Concerns, Maintaining Corporate Governance Leveraging the GIS Capability within FlexiCadastre Regional User Conference, North America May 6 th May 9 th, 2013 Cameron McKellar, Technical

More information

Black-Box Testing Techniques III

Black-Box Testing Techniques III Black-Box Testing Techniques III Software Testing and Verification Lecture 6 Prepared by Stephen M. Thebaut, Ph.D. University of Florida Another Cause-Effect Example: Symbol Table Storage Specification

More information

Abstract Specification of Crypto- Protocols and their Attack Models in MSR

Abstract Specification of Crypto- Protocols and their Attack Models in MSR Abstract Specification of Crypto- Protocols and their Attack Models in MSR Iliano Cervesato iliano@itd.nrl.navy.mil ITT Industries, Inc @ NRL Washington DC http://www.cs.stanford.edu/~iliano/ Software

More information

Go Tutorial. Ian Lance Taylor. Introduction. Why? Language. Go Tutorial. Ian Lance Taylor. GCC Summit, October 27, 2010

Go Tutorial. Ian Lance Taylor. Introduction. Why? Language. Go Tutorial. Ian Lance Taylor. GCC Summit, October 27, 2010 GCC Summit, October 27, 2010 Go Go is a new experimental general purpose programming language. Main developers are: Russ Cox Robert Griesemer Rob Pike Ken Thompson It was released as free software in November

More information

Computer Science Introductory Course MSc - Introduction to Java

Computer Science Introductory Course MSc - Introduction to Java Computer Science Introductory Course MSc - Introduction to Java Lecture 1: Diving into java Pablo Oliveira ENST Outline 1 Introduction 2 Primitive types 3 Operators 4 5 Control Flow

More information

Spatial Data Infrastructure Concepts and Components. Douglas Nebert U.S. Federal Geographic Data Committee Secretariat

Spatial Data Infrastructure Concepts and Components. Douglas Nebert U.S. Federal Geographic Data Committee Secretariat Spatial Data Infrastructure Concepts and Components Douglas Nebert U.S. Federal Geographic Data Committee Secretariat August 2009 What is a Spatial Data Infrastructure (SDI)? The SDI provides a basis for

More information

gvsig a real tool for GIS technicians

gvsig a real tool for GIS technicians gvsig a real tool for GIS technicians Jorge Gaspar Sanz Salinas jsanz@prodevelop.es International Geodetic Students Meeting 05/05/08 Valencia Agenda of the project OK, but what can gvsig do for me now?

More information

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D ArcGIS Earth is ArcGIS Earth is a lightweight globe desktop application that helps you explore any part of the world and investigate

More information

Making interoperability persistent: A 3D geo database based on CityGML

Making interoperability persistent: A 3D geo database based on CityGML Making interoperability persistent: A 3D geo database based on CityGML Alexandra Stadler, Claus Nagel, Gerhard König, Thomas H. Kolbe Technische Universität Berlin Chair of Geoinformation Science Motivation

More information

Reasoning about Trace Properties of Higher-order Programs

Reasoning about Trace Properties of Higher-order Programs Reasoning about Trace Properties of Higher-order Programs Limin Jia Joint work with Deepak Garg and Anupam Datta CyLab University Goal: Compositional security S 1 ψ 1 + ϕ S 2 ψ 2! Do S 1 + S 2 satisfy

More information

TECDIS and TELchart ECS Weather Overlay Guide

TECDIS and TELchart ECS Weather Overlay Guide 1 of 24 TECDIS and TELchart ECS provides a very advanced weather overlay feature, using top quality commercial maritime weather forecast data available as a subscription service from Jeppesen Marine. The

More information

Typed MSR: Syntax and Examples

Typed MSR: Syntax and Examples Typed MSR: Syntax and Examples Iliano Cervesato iliano@itd.nrl.navy.mil ITT Industries, Inc @ NRL Washington DC http://www.cs.stanford.edu/~iliano/ MMM 01 St. Petersburg, Russia May 22 nd, 2001 Outline

More information

Distributed Architectures

Distributed Architectures Distributed Architectures Software Architecture VO/KU (707023/707024) Roman Kern KTI, TU Graz 2015-01-21 Roman Kern (KTI, TU Graz) Distributed Architectures 2015-01-21 1 / 64 Outline 1 Introduction 2 Independent

More information

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic

CSE 311: Foundations of Computing. Lecture 10: Set Operations & Representation, Modular Arithmetic CSE 311: Foundations of Computing Lecture 10: Set Operations & Representation, Modular Arithmetic Definitions A and B are equal if they have the same elements A = B x (x A x B) A is a subset of B if every

More information

Urban Planning Internet Geographic Information Systems Fall 2010

Urban Planning Internet Geographic Information Systems Fall 2010 Urban Planning - 794 Internet Geographic Information Systems Fall 2010 Instructor: Professor Huxhold (hux@uwm.edu) Lecturer: Melissa Mann (mmann@uwm.edu) Manager: Kurt Meingast (kurtm@uwm.edu) Schedule:

More information

Working with OGC WCS Services - WCS in ArcGIS. Zikang Zhou

Working with OGC WCS Services - WCS in ArcGIS. Zikang Zhou Working with OGC WCS Services - WCS in ArcGIS Zikang Zhou zzhou@esri.com OGC WCS introduction The Open Geospatial Consortium, Inc. (OGC) Web Coverage Service (WCS) provides an open specification for sharing

More information

ArcGIS Pro Q&A Session. NWGIS Conference, October 11, 2017 With John Sharrard, Esri GIS Solutions Engineer

ArcGIS Pro Q&A Session. NWGIS Conference, October 11, 2017 With John Sharrard, Esri GIS Solutions Engineer ArcGIS Pro Q&A Session NWGIS Conference, October 11, 2017 With John Sharrard, Esri GIS Solutions Engineer jsharrard@esri.com ArcGIS Desktop The applications ArcGIS Pro ArcMap ArcCatalog ArcScene ArcGlobe

More information

Changes in Esri GIS, practical ways to be ready for the future

Changes in Esri GIS, practical ways to be ready for the future Changes in Esri GIS, practical ways to be ready for the future John Sharrard, Esri April 16, 2015 The only thing that is constant is change. Heraclitus, ca. 500 B.C. My story (of experiencing change) Changes

More information

Lecture 11. Data Standards and Quality & New Developments in GIS

Lecture 11. Data Standards and Quality & New Developments in GIS Lecture 11 Data Standards and Quality & New Developments in GIS Lecture 11: Outline I. Data Standards and Quality 1. Types of Spatial Data Standards 2. Data Accuracy II. New Developments/The Future of

More information

SFWR ENG 3S03: Software Testing

SFWR ENG 3S03: Software Testing (Slide 1 of 69) Dr. Ridha Khedri Writing in Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on [HT03] Unit Testing in Java with

More information

Chain of Responsibility

Chain of Responsibility Department of Computer Science University of Pretoria 29 and 30 September 2014 Overview Identification 1 Identification 2 3 4 5 6 Name and Classification: Chain of Responsibility Intent: Avoid coupling

More information

Operating Systems. VII. Synchronization

Operating Systems. VII. Synchronization Operating Systems VII. Synchronization Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ @OS Eurecom Outline Synchronization issues 2/22 Fall 2017 Institut

More information

Queuing Networks. - Outline of queuing networks. - Mean Value Analisys (MVA) for open and closed queuing networks

Queuing Networks. - Outline of queuing networks. - Mean Value Analisys (MVA) for open and closed queuing networks Queuing Networks - Outline of queuing networks - Mean Value Analisys (MVA) for open and closed queuing networks 1 incoming requests Open queuing networks DISK CPU CD outgoing requests Closed queuing networks

More information

*** SAMPLE ONLY! The actual NASUNI-FILER-MIB file can be accessed through the Filer address>/site_media/snmp/nasuni-filer-mib ***

*** SAMPLE ONLY! The actual NASUNI-FILER-MIB file can be accessed through the   Filer address>/site_media/snmp/nasuni-filer-mib *** *** SAMPLE ONLY! The actual NASUNI-FILER-MIB file can be accessed through the https:///site_media/snmp/nasuni-filer-mib *** NASUNI-FILER-MIB DEFINITIONS ::= BEGIN -- Nasuni Filer

More information

Evaluating Physical, Chemical, and Biological Impacts from the Savannah Harbor Expansion Project Cooperative Agreement Number W912HZ

Evaluating Physical, Chemical, and Biological Impacts from the Savannah Harbor Expansion Project Cooperative Agreement Number W912HZ Evaluating Physical, Chemical, and Biological Impacts from the Savannah Harbor Expansion Project Cooperative Agreement Number W912HZ-13-2-0013 Annual Report FY 2018 Submitted by Sergio Bernardes and Marguerite

More information

Network Analysis with ArcGIS Online. Deelesh Mandloi Dmitry Kudinov

Network Analysis with ArcGIS Online. Deelesh Mandloi Dmitry Kudinov Deelesh Mandloi Dmitry Kudinov Introductions Who are we? - Network Analyst Product Engineers Who are you? - Network Analyst users? - ArcGIS Online users? - Trying to figure out what is ArcGIS Online? Slides

More information

Inverse Orchestra: An approach to find faster solution of matrix inversion through Cramer s rule

Inverse Orchestra: An approach to find faster solution of matrix inversion through Cramer s rule Inverse Orchestra: An approach to find faster solution of matrix inversion through Cramer s rule Shweta Agrawal, Rajkamal School of Computer Science & Information Technology, DAVV, Indore (M.P.), India

More information

Using OGC standards to improve the common

Using OGC standards to improve the common Using OGC standards to improve the common operational picture Abstract A "Common Operational Picture", or a, is a single identical display of relevant operational information shared by many users. The

More information