350 likes | 457 Views
Service Context Management for Exertion-oriented Programming. Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu. Overall Presentation Goal or Primary Purpose. Create a life-cycle for context management in Exertion-Oriented Programming. Beginning.
E N D
Service Context Management for Exertion-oriented Programming Greg McChesney Thesis Defense Presentation Computer Science, TTU greg.mcchesney@ttu.edu
Overall Presentation Goal or Primary Purpose • Create a life-cycle for context management in Exertion-Oriented Programming Greg McChesney Beginning
Thesis Objectives • As a result of this presentation, you will be able to: • Understand the purpose of service contexts • Understand why a life-cycle is required • Utilize the life-cycle for your SORCER projects • Create a context in SORCER • Modify a context in SORCER • Execute an exertion in SORCER • View a returned exertion context from the federation Greg McChesney Beginning
Speaker’s Qualifications • Greg McChesney is a graduate student at TTU • Greg McChesney is planning to graduate in May of 2009 with a Master’s in Computer Science • Completed a related project as a feasibility study in Communication Networks Greg McChesney Beginning
Did you know? There is no network-centric methodology for creating service contexts in the SORCER environment. Greg McChesney Beginning
Presentation Agenda • Background knowledge • What is a service context? • Discuss why a life-cycle is required • Overview of life-cycle • Discuss Context Creation Panel • Feasibility Study • Schedule Greg McChesney Beginning
Background Knowledge • Many different Exertion-Oriented (EO) Systems • Implementation based on SORCER • Developed by Texas Tech SORCER Lab • Based on Jini network technology • Framework constantly evolving • Interoperability with existing providers a concern for new development Greg McChesney
All About 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 McChesney
Sample Context Image courtesy of Dr. Sobolewski Greg McChesney
Need for a Life-Cycle • Two roles • Provider-some introduction • Request-some introduction Greg McChesney
Need for a Life-Cycle • Two roles • Provider • 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 McChesney
Need for a Life-Cycle • Requestor • 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 McChesney
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 Greg McChesney
Life-Cycle Explained • Context 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 McChesney
Activity Diagram Greg McChesney
Different Components Need to Update Greg McChesney
Use Case Diagram Context Browser Greg McChesney
Component Diagram Context Browser Greg McChesney
Context Browser UI Component Diagram Greg McChesney
Context Browser Sequence- Viewer Greg McChesney
Context Browser Sequence- Admin Greg McChesney
Context Browser-Class Diagram Greg McChesney
Need for a Exertion Editor • No network-centric method for creating context for exertions • No network-centric method for reusing a context for exertions • No common interactive method of creating exertions with context directly from providers in SORCER • Each provider must have own GUI interface • Users must learn each providers interface • Provide easier network-centric development of new services Greg McChesney Middle
Edit the Context? • Why would we want to edit a service context before we launch the exertion? • The service context can often describe input variables that are not static, editing it allows us to change them. • Example: The AccountTester would be useless if you could not specify how much you were depositing or withdrawing. Greg McChesney
Exertion Editor-Use Case Greg McChesney
Exertion Editor-Component Diagram Greg McChesney
Exertion Editor UI-Component Diagram Greg McChesney
Exertion Editor-Sequence Creator Greg McChesney
Exertion Editor- Sequence Submitter Greg McChesney
Exertion Editor-Class Diagram Greg McChesney
Sargent Circle GroovyShell Greg McChesney
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. Greg McChesney
Summary • Benefits of Exertion Editor • Simplified user interface • Less work for new provider creators • In combination with a new Context Editor will provide: • Complete Context Management • Exertion initiation • Ability to use network determine a context Greg McChesney End