In order to satisfy the need for sophisticated experiment and simulation management solutions for the scientific user community, various frameworks must be provided. Such frameworks include APIs, services, templates, patterns, GUIs, command line tools, and workflow systems that are specifically addressed towards the goal of assisting in the complex process of experiment and simulation management. Workflow by itself is just one of the ingredients to a successful experiment and simulation management tool. The Java CoG Kit provides an extensive framework that helps in the creation of process management frameworks for Grid and non Grid resource environments. Hence, process management in the Java CoG Kit can be defined using a Java API providing task sets, queues, and Direct Acyclic Graphs (DAGs). An alternate solution is provided in a parallel extensible scripting language with an XML syntax (a native syntax is also simultaneously supported). Visualization and monitoring interfaces are provided for both solutions, with plans for developing more sophisticated but simple to use editors. However, in this chapter we will mostly focus on our workflow solutions. The Java CoG Kit workflow solutions are developed around an abstract, high level, asynchronous task library which integrates the common Grid tasks: job submission, file transfer, and file operations. The chapter is structured as follows. First, we provide an overview of the Java CoG Kit and its evolution that led to an integrated approach to Grid Computing. We present the task abstractions library which is necessary for a flexible Grid workflow system. Next, we provide an overview of the different workflow solutions that are supported by the Java CoG Kit. Our main section focuses on only one of these solutions, in the form of a parallel scripting language which supports an XML syntax for easy integration with other tools, as well as a native, more human-oriented syntax. Additionally, a workflow repository of components is also presented, which allows sharing of workflows between multiple participants, and dynamic modification of workflows. We exemplify the use of the workflow system with a simple, conceptual application. We conclude the chapter with ongoing research activities.
更多