@stiki.ac.id
Lecturer
STIKI
Doctoral
Vocational education
Information technology
Computer science
E-Learning
Scopus Publications
Scholar Citations
Scholar h-index
Scholar i10-index
Go Frendi Gunawan, Jozua Ferjanus Palandi, and Subari
IEEE
Component-Based Software Engineering (CBSE) has been proven to be quite effective to deal with software complexity. Nowadays developers prefer to build micro-services rather than a single monolithic application. Several SOA (Ser-vice Oriented Architecture) approaches like HTTP/REST API, CORBA, and BPEL are commonly used by developers. Some of those solutions are built under assumptions that the developers are either building the services from scratch or able to create abstraction layer for the pre-existing services. In most cases the assumptions are true. However, there are cases when developers prefer to keep the architecture as simple as possible without any need to build additional abstraction layers. For example, when they work with the mini-embeded system. Previously, a YAML based orchestration language was developed for Chimera-Framework (A language agnostic framework for stand-alone and distributed computing). However, we observe some weak points in the language. In this paper, we refine the orchestration language in order to let developers accessing preexisting services without any need to build another abstraction layer.
Go Frendi Gunawan, Mukhlis Amien, and Jozua Ferjanus Palandi
IEEE
Component-Based Software Engineering (CBSE) is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a given software system. The main advantage of CBSE is separation of components. A single component only focus on a single task or a related collection of tasks which allowing software developer to reuse the component for other use-cases. By using this approach, software developers can focus on single components rather than dealing with complex monolithic source code. Several approaches have already been developed in order to achieve ideal CBSE. The earliest implementation was UNIX pipe and redirect, while the newer approach including CORBA, XML-RPC, and REST. Unfortunately those approaches are either too complex or lack of features. Therefore, a simple language-agnostic framework, so called Chimera, was developed in this research. Chimera was built on top of Node.js. This framework allows developer to build pipe flow in a chain (a YAML formatted file) as well as defining global variables. Compared to UNIX named and unnamed pipe, this format is easier and more flexible. On the other hand, unlike XML-RPC, REST, and CORBA, Chimera is much simpler. HTTP protocol is only required for distributed computing scenario. Nor it require the components to be aware that they works on top of the framework.