50
Greg McChesney Thesis Defense Presentation Computer Science, TTU [email protected] Service Context Management for Exertion-oriented Programming

Greg McChesney Thesis Defense Presentation Computer Science, TTU [email protected]

  • Upload
    patty

  • View
    36

  • Download
    0

Embed Size (px)

DESCRIPTION

Service Context Management for Exertion-oriented Programming. Greg McChesney Thesis Defense Presentation Computer Science, TTU [email protected]. Presentation Agenda . Problem Statement Objective Background knowledge Design Verification and Validation Implementation Demonstration - PowerPoint PPT Presentation

Citation preview

Page 1: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesneyThesis Defense PresentationComputer Science, [email protected]

Service Context Management for Exertion-oriented Programming

Page 2: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney2

Presentation Agenda

• Problem Statement• Objective• Background knowledge• Design• Verification and Validation• Implementation• Demonstration• Benefits

Beginning

Page 3: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney3

Problem Statement

Beginning

• Problemo No full life-cycle for context management

in exertion-oriented programmingo The current Cataloger service does not

sufficiently display context detailso No service UI context editor for

interactive exertion-oriented programming

o No standard service UI for all providers

Page 4: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney4

Problem Statement

Beginning

• Conclusiono A life-cycle context management is

needed.o Life-cycle must support:

• Creating Contexts• Updating Contexts• Deleting Contexts

Page 5: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney5

Thesis Objectives

• Create a life-cycle to manage contexts• Provide service UI to allow for interactive

exertion-oriented programming• Ease new provider development in SORCER• Provide a common framework for Context

modifications• Minimize the modifications required to existing

providers

Beginning

Page 6: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Overview of Contexts

• A service context is a basic data structure in SOOA

• Used for communication between provider and requestor (a data exchange contract)

• A service context depends on the provider and the method being executed

• Data specification of hierarchical attributes the method will require

• Stored in a tree like format of path/value

Greg McChesney6

Page 7: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Sample Context

Greg McChesney7 Image courtesy of Dr. Sobolewski

Page 8: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Roles In SOOA

• Two roles– Provider-provides a service to the network

• The service can be requested via an exertion• Provider expects a context from the requestor

with arguments for the method. – Requestor- is the client who connects to the

provider• Requestor creates exertion which is sent to

provider• Requestor must send context in a structure

provider will understand

Greg McChesney8

Page 9: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Need for a Life-Cycle

– Provider’s Issues• No methodology to obtain a service context

from a provider• No methodology to interactively create

network centric contexts• No method of updating or removing a context

from a provider

Greg McChesney9

Page 10: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Need for a Life-Cycle

– Requestor’s Issues• Exertion-oriented programming cannot be

network centric without context management• Two new service UIs - Context Browser in

Cataloger Service UI and in Exertion Editor will provide more accessibility

• Need service context editing operations for EO programming

Greg McChesney10

Page 11: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Proposed Life-Cycle

• Implement service context editing operations into provider classes– New operations will be remotely invokeable

• Get- Requestor• Save -Admin• Delete -Admin

• Create Context Browser to utilize the methods

• Create Exertion Editor which will allow for service context and exertion creation

Greg McChesney11

Page 12: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Life-Cycle Explained

• Context’s must be:– Stored locally by provider– Reloaded on provider restart– Saved on update/create– Return undefined service context on error

• Changes must be– Compliant with existing providers– Provide backup file in case of bad context

Greg McChesney12

Page 13: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Activity Diagram

Greg McChesney13

Page 14: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Different Components

Greg McChesney14

ProviderList InterfaceBrowser ContextEditor

ControlPanel

Page 15: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Context Browser-Use Case

Greg McChesney15

Page 16: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Exertion Editor-Use Case

Greg McChesney16

Page 17: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Context Browser- Architecture Diagram

Greg McChesney17

Page 18: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Context Browser UI- Architecture Diagram

Greg McChesney18

Page 19: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Exertion Editor UI- Architecture Diagram

Greg McChesney19

Page 20: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Context Browser Sequence- Viewer

Greg McChesney20

Page 21: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Context Browser Sequence- Admin

Greg McChesney21

Page 22: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Exertion Editor-Sequence Creator

Greg McChesney22

Page 23: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Exertion Editor- Sequence Submitter

Greg McChesney23

Page 24: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney24

Page 25: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney25

Page 26: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Sargent Circle

Greg McChesney26

GroovyShell

Implementation

Check Implementation to Models

Check Implementation to Requirements

Data Validity

UML Modeling

Check Requirements to

Models

Requirements

Page 27: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Implementation to Validate Model

• Implementation is based on SORCER– Developed by Texas Tech SORCER Lab– SORCER is based on Jini network technology– Framework constantly evolving– Interoperability with existing providers a concern

for new development

Greg McChesney27

Page 28: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Technical Architecture

Greg McChesney28

Utilities and Templates Web Exertion Based Clients

Requestor Service UIs Intraportal Extraportal

Infrastructure ProvidersJobber, Tasker, Spacer , Grider, Caller, Methoder, Cataloger, Notifier, Logger,

Reporter, Authenticator, Authorizer, Auditor, Policer, KeyStorer, Surrogater, Persister, FileStorer, SILENUS, FICUS

Persistence Provisioning and Activation

File Store Exertion Layer

J2EE, Jini, Rio, GApp

SORCER CoreServicer, ServiceProvider,

ServiceProviderBeanExertionDelegate, ServiceAccessor

Exertion Editor

Context Management

Context Browser

Page 29: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Feasibility Study

• Create the Context Browser provider to test Life-Cycle methods– Get Context– Add Context– Update Context– Delete Context

• Utilize Arithmetic provider to demonstrate the power of the Exertion Editor.

• Address new provider development with integrated user interfaces

Greg McChesney29

Page 30: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Deployment

Greg McChesney30

Page 31: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney

Demonstration

Page 32: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Demonstration

Greg McChesney32Context Browser

Page 33: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Selecting a provider

Greg McChesney33

Select Provider

Page 34: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Add New Provider

Greg McChesney34

New providers appear without disrupting the user

Page 35: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Modifying a context

Greg McChesney35

Double click a data node to edit

Page 36: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

• Supported Data Types– String– Boolean– Integer– Double– Float– Groovy Expression– URL

Greg McChesney36

Page 37: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney37

Double click a path to edit

Page 38: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

• Directions-control if the path is marked for a particular operation– Default– Input– Output– InOutput

Greg McChesney38

Page 39: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Functions Provided

Greg McChesney39

Adds a new path

Adds a new data node

Removes currently selected

item

Page 40: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Functions Provided

Greg McChesney40

Empties the Context

Gives user option to load another saved

context

Provides user a method to remove

contexts

Page 41: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Functions Provided

Greg McChesney41

Save this context

Save this context as a different name

Exert the service and output result

context

Page 42: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Result of Exerting a Service

Greg McChesney42

Output context from exertion

Page 43: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Groovy Expressions

Greg McChesney43

Enter expression in terms of arithmetic0’s value

Page 44: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Result of Groovy Expression

Greg McChesney44

Output of the math operation

Page 45: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Integrated Exertion Editor

Greg McChesney45

New provider echo has no user interface

Page 46: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Utilize Default Editors

Greg McChesney46

Exertion Editor is now available for each provider

Page 47: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Benefits

• Uniform service context tracking by providers

• Uniform method context viewer and editor for service providers

• Intuitive Service UI for Cataloger service contexts per provider/interface method

• Intuitive Service UI for task service context

Greg McChesney47

Page 48: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney

Page 49: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

References

• “Design Patterns: Model-View-Controller.” Java.sun.com. 01 Jan 2002. 20 Oct. 2008 <http://java.sun.com/blueprints/patterns/MVC.html>

• Sobolewski, Michael. “SORCER Research.” SORCER Research Lab at TTU. 20 Oct. 2008. <http://sorcer.cs.ttu.edu/fiper/fiper.html>

• Sargent, R. G. Verification, Validation, and Accreditation of Simulation Models. (J. A. Joines, R. R. Barton, K. Kang, & P. A. Fishwick, Eds.)

• Sobolewski, Michael. “Exertion Oriented Programming.” Page 19. <http://sorcer.cs.ttu.edu/publications/papers/2008/SL-TR-13.pdf>

• Soorianarayanan, Sekar and Sobolewski, Michael. SORCER Proth. Slide 6. <http://sorcer.cs.ttu.edu/publications/presentations/proth-hpcc.ppt>

Greg McChesney49

Page 50: Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu

Greg McChesney