Showing posts with label research. Show all posts
Showing posts with label research. Show all posts

Thursday, February 13, 2014

Categorisation of different Process models

There are various process modelling techniques, explained in research literatures. But here are three of the process models that my research is based upon at the moment.
  1. Artifact based (or State based) models
  2. Activity based (or Flow based) models
  3. Rule based models
Artifact based (or State based) models
Two examples for artifact based modelling techniques are state machines and state charts. This modelling technique, take an artifact (eg.,- a Google Doc, Software Bug or AWS virtual machine) and specify the states of that artifact go through (eg.,- For a Software Bug, it can haves states like "created", "assigned", "resolved" and "tested"). 
Advantages of Artifact based models are declarative and specification oriented language can be used to describe a process. This modelling technique enables the user to describe a high level description of the process rather specifying nitty-gritty details on how the artifact go through. 

Activity based (or Flow based) models
Two examples for activity based modelling techniques are BPMN and BPEL. This model is consisted of a set of activities and the activities are associated with other activities to generate a flow (eg - Bank loan approval process can have a set of activities like "Open up a loan request form based on client request", "get the approval from manager" and "send the response of approval back to the client"). This technique provides a procedural language to specify what the execution runtime of the model should do. So each activity represent some task and tasks are linked together, to represent the execution order among such tasks. 

Rule based models
Two examples for rule based modelling techniques are event-condition-action rules and javascript. This technique models a process via a set of rules (eg.,- For a AWS-EC2 VM, there can be a process with a set of ECA rules like "if VM utilisation > 95%, then increase CPU power of that VM"). Typically activity based models and rule based models can be interchanged. That means, a process escribed in a activity based model also can be described using a rule based model as both techniques provide a procedural language to specify what the execution runtime of the model should do. The main difference between the activity based models and rule based models is, rule based models don't describe links among each rules. But the activity based models explicitly describe the links among each activities. So the execution engine of the rule based model has to infer (or generate) the links between rules before executing the process. One advantage of rule based modelling techniques is that it is easy to model a process. But it has consistency issues as some execution semantics (like execution order or rules) are not explicitly specified.

Saturday, August 10, 2013

Defining Traditional Software Configuration Management (SCM)

Almost all the research on software configuration management has its own definition of the subject. All of those definitions highlights the idea of "dealing with the evolution". That means managing changes to the software during its life cycle. Much older studies on software configuration management processes more focus on controlling or limiting the changes happen to the software. But the studies that take agile process development in to the picture more focus on how to adapt to the changes to the software.  Here I have listed out few definitions of traditional software configuration management.

IEEE - "Configuration Management is the process of identifying and defining the items in the system, controlling the change of these items throughout their lifecycle, recording and reporting the status of items and change requests, and verifying the completeness and correctness of items." [1]

Tichy - "Software configuration management (SCM) is the discipline of managing the evolution of large and complex software systems."[2]

CMM - "Software Configuration Management involves identifying the configuration of the software (i.e., selected software work products and their descriptions) at given points in time, systematically controlling changes to the configuration, and maintaining the integrity and traceability of the configuration throughout the software life cycle. The work products placed under software configuration management include the software products that are delivered to the customer (e.g., the software requirements document and the code) and the items that are identified with or required to create these software products (e.g., the compiler)".[3]

RUP - "The task of defining and maintaining configurations and versions of artefacts. This includes baselining, version control, status control, and storage control of the artefacts." [4]

A common list of processes that usually are included in the definition of software configuration management:
  • Identify configuration items
  • Version control of configuration items
  • Release management
  • Build management
  • Controlling/Adapting to changes
  • Tracking status
  • Auditing

[1] IEEE-Standard-729-1983, Standard Glossary for Software Engineering, ANSI/IEEE.
[2] Tools for software configuration management. In Proceedings of the International Workshop on Software Version and Configuration Control (Grassau, Germany), J. F. H. Winkler, Ed., Teubner Verlag, 1–20, 1988.
[3] Carnegie Mellon Univ. Software Engineering Inst.The Capability Maturity Model: Guidelines for Improving the Software Process, Addison Wesley, 1995.
[4] Philippe Kruchten, The Rational Unified Process: An Introduction, Addison Wesley, 2003.
    

Monday, November 12, 2012

Dynamic Performance Management in Multi-tenanted Business Process Servers Using Nonlinear Control

This conference paper "Dynamic Performance Management in Multi-tenanted Business Process Servers Using Nonlinear Control" is our latest publication which discusses the detail on our work on performance isolation aspect in a multi-tenanted business process execution runtime. It was recently published in 10th International Conference on Service Oriented Computing (ICSOC 2012), pp. 206-221. Authors of this paper are Tharindu Patikirikorala, Indika Kumara, Alan Colman, Jun Han, Liuping Wang, Denis Weerasiri and Waruna Ranasinghe.

Abstract of the paper is
The methodologies to develop multi-tenanted architectures have been investigated in the recent literature due to the popularity of cloud computing. A number of challenges need to be overcome if multi-tenanted architectures are to be effective and efficient. Among the challenges is the management of performance properties while effectively sharing the limited resources between the tenants. This work presents an approach to design such a management system for a multi-tenanted business process server. This approach not only enables performance to be maintained at different levels for different tenants depending on their priorities, but also autonomously detects the overloads of aggressive tenants and dynamically changes the control objectives to safeguard the business operations of other tenants. The novelty of the proposed approach is the use of the nonlinear feedback control. The experiment results indicate that the proposed nonlinear control approach achieves the objectives much better compared to the existing fixed and linear control techniques.

This paper can be accessed from here.

Relavant articles

Wednesday, August 29, 2012

A Scalable Multi-tenant Architecture for Business Process Executions

The journal paper “A Scalable Multi-tenant Architecture for Business Process Executions” is our latest publication which discusses in detail our work on extending scalability and multi-tenancy support to Business Processes. It was recently published in International Journal of Web Services Research (IJWSR), vol. 9(2), pp. 21-41, April-June 2012. Authors of this paper are Milinda Pathirage, Dr. Srinath Perera, Indika KumaraDenis Weerasiri and Dr. Sanjiva Weerawarana.

Abstract of the paper is
Cloud computing, as a concept, promises cost savings to end-users by letting them outsource their non-critical business functions to a third-party in pay-as-you-go style. However, to enable economic pay-as-you-go services, the end-users need Cloud middleware that maximizes sharing and support near-zero cost for unused applications. Multi-tenancy, which let multiple tenants to share a single application instance securely, is a key enabler for building such a middleware. On the other hand, Business processes capture Business logic of organizations in an abstract and reusable manner, and hence play a key role in most organizations. This paper presents the design and architecture of a scalable Multi-tenant Workflow engine while discussing in detail the potential use cases of such architecture. Primary contributions of this paper are motivating workflow multi-tenancy, and the design and implementation of a scalable multi-tenant workflow engine that enables multiple tenants to run their workflows securely within the same workflow engine instance without modifications to the workflows. Furthermore, the workflow engine supports process sharing and process variability across the tenants and discusses its ramifications.

Paper can be accessed from here.

Monday, January 30, 2012

Horizontal Format Data Mining with Extended Bitmaps - Extended version


We (Buddhika De Alwis, Supun Malinga, Kathiravelu Pradeeban and I) published the extended version of our research paper titled “Horizontal Format Data Mining with Extended Bitmaps” at International Journal of Computer Information Systems and Industrial Management Applications.
You can find it from http://www.mirlabs.org/ijcisim/regular_papers_2012/Paper56.pdf .

Initial publication can be found from here and the presentation from here.

Related Posts : Horizontal Format Data Mining with Extended Bitmaps 

Friday, December 31, 2010

Horizontal Format Data Mining with Extended Bitmaps


My colleague Kathiravelu Pradeeban and the team; Buddhika Alwis, Supun Malinga and I presented the following slides at the 2nd International Conference of Soft Computing and Pattern Recognition, France.

Paper abstract -
Analysing the data warehouses to foresee the patterns of the transactions often needs high computational power and memory space due to the huge set of past history of the data transactions. Apriori algorithm is a mostly learned and implemented algorithm that mines the data warehouses to find the associations. Frequent item set mining with vertical data format has been proposed as an improvement over the basic Apriori algorithm.
In this paper we are proposing an algorithm as an alternative to Apriori algorithm, which will use bitmap indices in conjunction with a horizontal format data set converted to a vertical format data structure to mine frequent itemsets leveraging efficiencies of bitmap based operations and vertical format data orientation.


Mooshabaya: Mashup Generator for XBaya


Last November, I and my team; Buddhika Alwis, Kathiravel Pradeeabn, Supun Malinga presented the following slides at the 8th International Workshop on Middleware for Grids, Clouds and e-Science - Middleware 2010, India.

Paper can be found in http://portal.acm.org/citation.cfm?id=1890807

Paper abstract -
Visual composition of workflows enables end user to visually depict the workflow as a graph of activities in a process. Tools that support visual composition translate those visual models to traditional workflow languages such as BPEL and execute them thus freeing the end user of the need of knowing workflow languages. Mashups on the other hand, provide a lightweight mechanism for ordinary user centric service composition and creation, hence considered to have an active role in the web 2.0 paradigm. In this paper, we extend a visual workflow composition tool to support mashups, thus providing a comprehensive tooling platform for mashup development backed up by workflow style modeling capabilities, while expanding the reach of the workflow domain into web 2.0 resources with the potential of the mashups. Furthermore, our work opens up a new possibility of converging the mashup domain and workflow domain, thus capturing beneficial aspects from each domain.


Friday, May 21, 2010

Mooshabaya Feature Demonstration

This is my final year project-Mooshabaya feature demonstration webcast. This demo contains most of the project features. Hey, this is a voiceless webcast ;), and hope to add the voice soon.