Skip to content

Wessbas/wessbas.dslModelGenerator

Repository files navigation

INTRODUCTION
------------

This project contains the source code for the WESSBAS DSL Model Generator, which
builds models that comply to the WESSBAS DSL, based on CSV-formatted
user behavior information (probabilities and think times). Each resulting model
represents a WESSBAS workload model, including workload intensity,
Application Layer, Behavior Models and Behavior Mix.

Input: Behavior Models, Workload Intensity and Behavior Mix
 (Output of wessbas.behaviormodelextractor), Configuration files

Output: WESSBAS DSL instance


SYSTEM REQUIREMENTS
-------------------

The project has been developed with the use of the following tools:

  - JDK 1.7
  - Xtext 2.5.4
  - Eclipse Modeling Tools

ACADEMIC LITERATURE
------------------  
  
Automatic extraction of probabilistic workload specifications for 
load testing session-based application systems  (Hoorn, V\"ogele, Schulz, Hasselbring, Krcmar)


PROJECT CONTENT
---------------

Additionally to the standard structure of an Eclipse project, the following
folders are included:

  - folder "configuration" contains the properties files, that are required for
    running the generator. In particular, these files demonstrate how to
    define workload intensity and Behavior Models respectively. 

  - folder "examples" contains some example input user behavior
    information, as well as several models. 

  - folder "output" contains the output files of a test run, which generally
    include a workload model (.XMI) and a graph visualization file (.DOT).


USAGE
-----

Class "net.sf.markov4jmeter.m4jdslmodelgenerator.M4jdslModelGenerator" provides
the main() method, which requires a certain set of parameters, to be passed via
command-line in a specific order. The following parameters need to be provided:

  <workloadIntensity.properties> -- path to the properties file with workload
                                    intensity definitions.

  <behaviorModels.properties>    -- path to the properties file with Behavior
                                    Models definitions.

  <xmiOutputFile>                -- path to the XMI output file.

  <graphOutputFile>              -- path to the graph output file.

An example parameter sequence (to be used in the Eclipse run configuration)
might look as follows (in one row):

-w "./examples/specj/input/workloadIntensity.properties" 
-b "./examples/specj/input/behaviorMix.txt" 
-o "./examples/specj/output/workloadmodel.xmi" 
-q false 
-s "./examples/specj/input/sessions.dat" 
-t "./examples/specj/input/synoptic.properties"

Starting the application with these parameters will produce corresponding output
in the "output" folder.

DEVELOPMENT NOTES
-----------------

The source code is comprehensively commented, and most of it should be
self-explaining; all required libraries are included. 

An executable JAR archive can be easily generated by using the File->Export
option in Eclipse. Note that the configuration files have to be provided
separately with each of such JAR files.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages