Jumat, 18 Oktober 2019

Tutorial Crud Codeigniter Sound Meggunakana Grocery Crud




Berikut ini adalah tutorial menggunakan CodeIgniter + Grocery Crud yang bisa membuat fungsi Sound CRUD dalam hitungan detik. Dalam tutorial kali ini, fokusnya adalah menyimpan dan memainkan beberapa jenis file yang berbeda seperti suara, film, dokumen, atau file lainnya

Sebelum melakukan tutorial ini, pastikan anda telah menghilangkan konfigurasi khusus untuk menghilangkan pemanggilan index.php dalam url yang bisa dilihat di tutorial berikut ini:

https://www.codinglabs.online/2019/10/cara-menghilangkan-index-php.html

lankahnya pertama simpan script ini dan simpan di folder codeigniter dengan nama
 .htacces

tiliskan script berikut :

 <IfModule mod_rewrite.c>
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
 
   RewriteEngine on
   RewriteRule ^(.*)$ index.php/$1 [L]
 </IfModule>


Anda juga mengubah bahasa komponen di Grocery CRUD menjadi bahasa Indonesia yang tutorialnya bisa anda baca di sini:

https://www.codinglabs.online/2019/10/cara-mengubah-bahasa-grocery-crud.html


Selanjutnya buka file config.php di folder Application/ConfigGanti Ganti base_url dengan http://localhost/[NAMA FOLDER].
Kemudian cari index_page dan hapus isinya.


hapus tulisan 'index.php' menjadi seperti ini ;



Buatlah database pada phpmyadmin seperti gambar dibawah ini


kemudian Export file SQL dengan klik tombol Export


Buka di text editor (misal Sublime)


Ganti nama tabelnya (misal, jadi tb_sound)


Dan paste kan seluruh file sql serta eksekusi di PHPMyAdmin


Jika tidak ada kesalahan maka anda baru saja berhasil membuat sebuah tabel baru


Dengan cara yang sama, buat tabel untuk Image, Document, dan Object


Selanjutnya masuk ke dalam folder Codeigniters > Assets > Uploads di folder ini buatlah beberapa buah folder sesuai dengan jumlah tabel yang anda buat


Satu buah tabel akan berasosiasi dengan satu buah folder untuk penyimpanan filenya



Selanjutnya, masih berhubungan dengan tutorial sebelumnya, pastikan anda telah memiliki file Main.php (Controller) seperti ini.

 <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 class Main extends CI_Controller {
   function __construct()
   {
     parent::__construct();
     /* Standard Libraries of codeigniter are required */
     $this->load->database();
     $this->load->helper('url');
     /* ------------------ */ 
     $this->load->library('grocery_CRUD');
   }
   public function index()
   {
     echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function
         die();
   }
   public function employees()
   {
     $crud = new grocery_CRUD();
     $crud->set_table('employees');
     $output = $crud->render();
     $this->_example_output($output);   
   }
   function _example_output($output = null)
   {
     $this->load->view('our_template.php',$output); 
   }
 }
 /* End of file Main.php */



Anda copy code di atas, edit di text Editor, dan COPY-PASTE fungsi/method employees menjadi fungsi lain (misal sound) serta sesuaikan nama tabelnya.

PERBEDAAN terbesar pada tutorial kali ini adalah, adanya seting baru pada field FileContent dengan mengubahnya menjadi input file/upload file seperti pada gambar berikut.



Cek di URL dengan menjalankan localhost/<folder-root>/<class>/<method>


setelah berhasil kita coba input suaranya dengan cara click "Add file Suara" dan inputkan


Tes aplikasi anda dengan mengupload file di atas 5 MB. Jika upload anda gagal, cobalah tutorial ini untuk mengganti ukuran upload file yang bisa diterima oleh PHP dan CodeIgniter.
setelah berhasil coba click suaranya  https://www.codinglabs.online/2019/10/cara-mengubah-uploadsize-grocery-crud.html



ketika sudah diinputkan suara maka akan tampil seperti berikut.


Seharusnya file suara akan berjalan secara otomatis di file lainnya


Rahasia selanjutnya adalah, semua file yang diupload tadi secara otomatis akan tersimpan di folder yang telah kita buat.




Dan Selesai sudah tutorial kali ini
semoga bermanfaat
selamat mencoba....!!!!

Tutorial Crud Codeigniter Image Meggunakana Grocery Crud


kali ini kita akan membuat Tutorial Crud Codeigniter Image  Meggunakana Grocery Crud

Berikut ini adalah tutorial menggunakan CodeIgniter + Grocery Crud yang bisa membuat fungsi Image CRUD dalam hitungan detik.

Langkah pertama download terlebih dahulu fungsi Image CRUD yang merupakan bagian dari Grocery CRUD klik disini.


Extract konten Image CRUD dan paste pada instalasi CodeIgniter (Timpa seluruh file).

Selanjutnya buka file example_database.sql dan copy perintah SQL nya.
Buka PHP MyAdmin dan paste seluruh perintah SQL pada database aktif yang terkait dengan CodeIgniter. Disini kita sudah membuat databse saat membuat tutorial Crud text dengan nama db_multimedia.



Eksekusi  kalimat SQL dan pastikan anda memiliki 4 table example
bila berhasil maka tampilanya akan seperti berikut.



Perhatikan masing-masing tabel Example hanya memiliki 2-3 field saja yang berkaitan dengan gambar



 Jalankan link http://localhost/codeigniter/index.php/images_examples.


Hasilnya adalah sebagai berikut (Example 1)
Hasilnya adalah sebagai berikut (Example 2)
Kenapa linknya dipanggil dengan path: http://localhost/codeigniter/index.php/images_examples
Karena file Controllernya bernama Images_Examples.php dan memiliki class bernama  Images_Examples
Kenapa linknya untuk setiap contoh dipanggil dengan path: http://localhost/codeigniter/index.php/images_examples /example1
Karena di dalam file Controller Images_Examples.php terdapat fungsi yang bernama example1
begitulah cara Tutorial Crud Codeigniter Image  Meggunakana Grocery Crud  semoga dapat bermanfaat dari tutorial yang saya buat ini. See you.... !!!!

Tutorial Crud Codeigniter Text Meggunakana Grocery Crud

Oke bloggers kali ini kita akan membuat "Tutorial crud text dengan codeigniter dan grocery crud" dalam hitungan detik singkat cepat dan padat,Kuy...!!!
langkah pertama yang harus dilakukan download dulun Codeigniter versi tiga

setelah itu kita download framework GroceryCrud


Next langkah selanjutnya jika sudah di download kita Exract file CodeIgniter dan GroceryCrud kemudian  masuk ke folder GroceryCrud dan copy semua file di dalamanya, lanjut paste ke folder CodeIgniter(Timpa seluruh filenya).
Dibawa ini adalah file yang di paste pada folde Codeiginter:
Pindahkan ke directory xampp anda masuk ke folder htdocs dan paste folder CodeIgniternya. Jika sudah silakan test apakah sudah atau belum dengan mengakses URL base anda jika berhasil tampilannya seperti ini.

Selanjutna buka pada browser phpmyadmin dan buat sebuah database dengan nama misal (db_multimedia)



Pastikan nama database anda sudah sesuai dengan databse yang sudah dibuat, nama username dan password sudah sesuai dengan database yang kalian buat


Buatlah sebuah controller bernama Main.php di folder application->controller yang isinya sebagai berikut:


<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Main extends CI_Controller {

    function __construct()
    {
        parent::__construct();

        $this->load->database();

    }

    public function index()
    {
        echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function
        die();
    }
}

lakukan tes file tersebut dengan memanggil nama url : localhost/name_base(nama folder codeigniter)/index.php/main.


Buat sebuah table sql, dalam contoh adalah table employees, kopy paste query ini, jalankan di querynya di phpmyadmin di database yang telah kita buat tadi:

CREATE TABLE IF NOT EXISTS `employees` (
  `employeeNumber` int(11) NOT NULL AUTO_INCREMENT,
  `lastName` varchar(50) NOT NULL,
  `firstName` varchar(50) NOT NULL,
  `extension` varchar(10) NOT NULL,
  `email` varchar(100) NOT NULL,
  `officeCode` varchar(10) NOT NULL,
  `file_url` varchar(250) CHARACTER SET utf8 NOT NULL,
  `jobTitle` varchar(50) NOT NULL,
  PRIMARY KEY (`employeeNumber`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1703 ;


INSERT INTO `employees` (`employeeNumber`, `lastName`, `firstName`, `extension`, `email`, `officeCode`, `file_url`, `jobTitle`) VALUES
(1002, 'Murphy', 'Diane', 'x5800', 'dmurphy@classicmodelcars.com', '1', '', 'President'),
(1056, 'Patterson', 'Mary', 'x4611', 'mpatterso@classicmodelcars.com', '1', '', 'VP Sales'),
 (1076, 'Firrelli', 'Jeff', 'x9273', 'jfirrelli@classicmodelcars.com', '1', '', 'VP Marketing'),
(1088, 'Patterson', 'William', 'x4871', 'wpatterson@classicmodelcars.com', '6', '', 'Sales Manager (APAC)'),
(1102, 'Bondur', 'Gerard', 'x5408', 'gbondur@classicmodelcars.com', '4', 'pdftest.pdf', 'Sale Manager (EMEA)'),
(1143, 'Bow', 'Anthony', 'x5428', 'abow@classicmodelcars.com', '1', '', 'Sales Manager (NA)'),
(1165, 'Jennings', 'Leslie', 'x3291', 'ljennings@classicmodelcars.com', '1', '', 'Sales Rep'),
(1166, 'Thompson', 'Leslie', 'x4065', 'lthompson@classicmodelcars.com', '1', '', 'Sales Rep'),
(1188, 'Firrelli', 'Julie', 'x2173', 'jfirrelli@classicmodelcars.com', '2', 'test-2.pdf', 'Sales Rep'),
(1216, 'Patterson', 'Steve', 'x4334', 'spatterson@classicmodelcars.com', '2', '', 'Sales Rep'),
(1286, 'Tseng', 'Foon Yue', 'x2248', 'ftseng@classicmodelcars.com', '3', '', 'Sales Rep'),
(1323, 'Vanauf', 'George', 'x4102', 'gvanauf@classicmodelcars.com', '3', '', 'Sales Rep'),
(1337, 'Bondur', 'Loui', 'x6493', 'lbondur@classicmodelcars.com', '4', '', 'Sales Rep'),
(1370, 'Hernandez', 'Gerard', 'x2028', 'ghernande@classicmodelcars.com', '4', '', 'Sales Rep'),
(1401, 'Castillo', 'Pamela', 'x2759', 'pcastillo@classicmodelcars.com', '4', '', 'Sales Rep'),
(1501, 'Bott', 'Larry', 'x2311', 'lbott@classicmodelcars.com', '7', '', 'Sales Rep'),
(1504, 'Jones', 'Barry', 'x102', 'bjones@classicmodelcars.com', '7', '', 'Sales Rep'),
(1611, 'Fixter', 'Andy', 'x101', 'afixter@classicmodelcars.com', '6', '', 'Sales Rep'),
(1612, 'Marsh', 'Peter', 'x102', 'pmarsh@classicmodelcars.com', '6', '', 'Sales Rep'),
(1619, 'King', 'Tom', 'x103', 'tking@classicmodelcars.com', '6', '', 'Sales Rep'),
(1621, 'Nishi', 'Mami', 'x101', 'mnishi@classicmodelcars.com', '5', '', 'Sales Rep'),
(1625, 'Kato', 'Yoshimi', 'x102', 'ykato@classicmodelcars.com', '5', '', 'Sales Rep'),
(1702, 'Gerard', 'Martin', 'x2312', 'mgerard@classicmodelcars.com', '4', '', 'Sales Rep');

contohnya seperti gambar dibawah ini

selanjutnya ubah file controller Main.php dengan kodingan berikut:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Main extends CI_Controller {

    function __construct()
    {
        parent::__construct();

        /* Standard Libraries of codeigniter are required */
        $this->load->database();
        $this->load->helper('url');
        /* ------------------ */

        $this->load->library('grocery_CRUD');

    }

    public function index()
    {
        echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function
        die();
    }

    public function employees()
    {
        $crud = new grocery_CRUD();
        $crud->set_table('employees');
        $output = $this->grocery_crud->render();

        echo "<pre>";
        print_r($output);
        echo "</pre>";
        die();
    }
}

setelah itu panggil file di localhost/name_base/index.php/main/employees.
Jika tidak ada kesalahan maka tampilan pada browser adalah sebagai berikut:


Kemudian buat File baru di folder application->views dengan nama our_template.php isi sebagai berikut:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />

<?php
foreach($css_files as $file): ?>
    <link type="text/css" rel="stylesheet" href="<?php echo $file; ?>" />

<?php endforeach; ?>
<?php foreach($js_files as $file): ?>

    <script src="<?php echo $file; ?>"></script>
<?php endforeach; ?>

<style type='text/css'>
body
{
    font-family: Arial;
    font-size: 14px;
}
a {
    color: blue;
    text-decoration: none;
    font-size: 14px;
}
a:hover
{
    text-decoration: underline;
}
</style>
</head>
<body>
<!-- Beginning header -->
    <div>
        <a href='<?php echo site_url('examples/offices_management')?>'>Offices</a> |
        <a href='<?php echo site_url('examples/employees_management')?>'>Employees</a> |
        <a href='<?php echo site_url('examples/customers_management')?>'>Customers</a> |
        <a href='<?php echo site_url('examples/orders_management')?>'>Orders</a> |
        <a href='<?php echo site_url('examples/products_management')?>'>Products</a> |
        <a href='<?php echo site_url('examples/film_management')?>'>Films</a>
    </div>
<!-- End of header-->
    <div style='height:20px;'></div>
    <div>
        <?php echo $output; ?>

    </div>
<!-- Beginning footer -->
<div>Footer</div>
<!-- End of Footer -->
</body></html>

Update kembali filecontroller Main.php dengan script sebagai berikut:
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Main extends CI_Controller {

    function __construct()
    {
        parent::__construct();

        /* Standard Libraries of codeigniter are required */
        $this->load->database();
        $this->load->helper('url');
        /* ------------------ */

        $this->load->library('grocery_CRUD');

    }

    public function index()
    {
        echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function
                die();
    }

    public function employees()
    {
        $crud = new grocery_CRUD();
        $crud->set_table('employees');
        $output = $crud->render();

        $this->_example_output($output);     
    }

    function _example_output($output = null)

    {
        $this->load->view('our_template.php',$output); 
    }
}

/* End of file Main.php */
Panggil file di localhost/name_base/index.php/main/employees, jika tidak ada kesalahan maka tampilannya akan seperti ini ;
Selesai sudah tutorial Crud Codeigniter Text Meggunakana Grocery Crud

jika anda ingin menambahkan, misal untuk tablenya ingin mengedit sendiri, carangaya mudah,
Pertama kita buat dulu tabelnya didatabase yang telah kita buat tadi. disini misal saya "tugas" yang berisi kolom  Id, nama dan tempat
struktur tabaelnya sepeti gambar dibawah ini ;


kemudian  buka file controller main.php copy paste function employees yang telah kita buat tadi dibawahnya.
lalu ubah nama function menjadi nama tabel yang telah kita buat tadi disini saya buat dengan nama "tugas" seperti gambar dibawah ini.
Lanjut buka url http://localhost/codeigniter/index.php/main/data_nama , kemudian kita klik "add Record" kita input data yang akan kita masukkan, seperti gambar dibawah ini.
setelah di input maka akan tampil hasilnya seperti gambar ini
Selesai sudah tutorial kali ini, semoga bermanfaat...!!!!

Jumat, 04 Oktober 2019

Software Interoperability




A. Pendahuluan


           
A.1. Latar Belakang
                 
                   Meningkatnya penggunaan Teknologi Informasi dan Komunikasi (TIK) dalam linkungan bisnis telah menyebabkan pertumbuhan aplikasi bisnis (perangkat lunak) yang pesat di seluruh linkungan perusahaan dan industri. Sebagai contoh, mari kita lihat aplikasi Rekam Medik di lembaga-lembaga pelayanan kesehatan seperti klinik dan rumah sakit. Di beberapa lembaga tersebut yang sudah memanfaatkan TIK pasti memiliki aplikasi yang digunakan untuk mengelola data, misalkan data pasien. Tentu saja ada kemungkinan setiap lembaga tersebut menggunakan aplikasi yang berbeda dan dari vendor yang berbeda meskipun data yang dikelola sama, yaitu data pasien.
         

        A.2. Masalah

1.    Saat ini perusahaan menghadapi masalah yang lebih menantang yang diakibatkan oleh globalisasi bisnis.
2.    Globalisasi bisnis ini telah menyebabkan meningkatnya kebutuhan akan komunikasi intra-organisasi, koordinasi, kerja sama, dan kolaborasi antar perusahaan untuk bertukar data. 
3.    Contoh: Data Rekamedik
4.     Karena begitu banyaknya variasi aplikasi yang digunakan, diperlukan suatu sistem yang bisa menyelesaikan masalah heterogenitas ini dalam komunikasi antar organisasi dengan menghubungkan dan mengintegrasikan aplikasi yang berbeda untuk bertukar data.

     
   A.3. Solusi
             
                           Era globalisasi ekonomi yang disertai oleh perkembangan teknologi informasi pada saat ini, terasa sekali terutama pada lingkungan bisnis. Seluruh perusahaan dihadapkan pada lingkungan bisnis global dengan persaingan yang sangat kompetitif.
            Globalisasi ekonomi tidak hanya meningkatkan pertambahan pesaing di pasar, tetapi juga menambah bervariasinya persaingan yang ada di pasar.
            Perkembangan teknologi informasi seperti jaringan internet, dan teknologi digital lainnya membuka celah pemasaran/distribusi produk yang tidak terbatas pada ruang, tempat, dam waktu. Jaringan dan teknologi digital lainnya ini, juga memungkinkan pertukaran informasi baik mengenai produk, produsen, maupun costumer secara global dan menyeluruh. Hal tersebut dapat diakses oleh pelaku ekonomi dengan mudah sehingga transaksi bisnis tidak lagi terpaku melalui kertas tapi bisa dilaksanakan melalui jalan raya elektronik dengan menggunakan fasilitas-fasilitas yang disediakannya seperti shared database, electronic fund transfer, electronic data incharge, electronic commerce, dsb. Oleh karena itu, mobilitas ekonomi pun semakin cepat dan kompetitif.
             Pada masa sekarang ini, transfer data banyak memakai teknologi informasi dan komunikasi, misalnya saja.
         
            Globalisasi bisnis ini telah menyebabkan meningkatnya kebutuhan akan komunikasi intra-organisasi, koordinasi, kerja sama, dan kolaborasi antar per usahaan untuk bertukar data. Contoh: Data Rekamedik.
             Riwayat klinis yang berkesinambungan sangat dibutuhkan dalam ketepatan pelayanan kesehatan pasien dalam rekam medis elektronik.Tantangan utama mewujudkannya adalah banyaknya variasi software, format, dan kamus data yang digunakan pada setiap fasyankes. Maka untuk mengatasi tantangan banyaknya variasi software , format, dan kamus data yang di gunakan pada setiap fasyankes tersebut bisa menggunakan Teknologi Software Interoperability yang munmegkinkan dua atau lebih perangkat lunak bisa saling berkomunikasi untuk saling bertukar dan memproses data meskipun di kembangkan oleh vendor yang berbeda, menggunakan bahasa pemrograman yang berbeda dalam pembuatan dan dijalankan di platform yang berbeda.


B. Software Interoperability

B.1. Pengertian

Interoperability adalah kemampuan dua atau lebih sistem, aplikasi atau komponen sistem untuk bertukar data dan memproses data. 
Dibawah ini adalah beberapa contoh penerapan interoperbility:
1. Client Server
Web browser sebagai client bisa membuka halaman web yang disediakan oleh server dengan menggunakan domain name server or IP.
2. Software service
Didesain untuk kebutuhan pertukaran data atau memperluas fungsionalitas dari masing-masing aplikasi atau sistem, contoh aplikasi fintech bisa bertukar data customer dengan aplikasi transportasi online.
3. Device
Mouse dan keywboard bisa digunakan untuk mengontrol PC.
4. Infrastruktur
Dua atau lebih network router bisa digunakan untuk meningkatkan kecepatan internet.

               Software interoperability memungkinkan dua atau lebih perangkat lunak bisa saling berkomunikasi untuk saling bertukar dan memproses data  meskipun di kembangkan oleh vendor yang berbeda, menggunakan bahasa pemrograman yang berbeda dalam pembuatant dan dijalankan di platform yang berbeda.
               Sebagai contoh adalah aplikasi social media yang bisa digunakan di perangkat smartphone berbasis android, IOS, atau pun lewat web browser.


B.2. Kelebihan

      Saat ini banyak perusahaan-perusahaan yang memanfaatkan software interoperability dalam pertukaran dan pemrosesan data dalam menjalankan bisnisnya. Hal ini dilakukan karena software interoperability ini memiliki beberapa kelebihan, diantaranya adalah:
1. Memfasilitasi berbagi pengetahuan lintas disiplin ilmu dan lintas organisasi.
2. Meningkatkan proses alur kerja organisasi.
3. Menghilangkan redudansi dan duplikat data generator.
4. Menghindari penulisan code yang sama untuk men-generate data.
5. Menjamin kemudahan pengembangan aplikasi yang berkelanjutan.


B.3. Kekurangan

1. Belum tersedianya kamus data (data dictionary) yang jelas.
2. Adanya perbedaan persepsi mengenai interoperabilitas.
3. Tidak memiliki dokumentasi sistem.
4. Belum dikenalnya interoperabilitas sistem informasi.
5. Belum merasa perlu adanya interoperabilitas sistem informasi4

B.4. Interoperability Level

Dibawah ini adalah abstraksi dari tingkatan interoperability [4]:
1. Physical Interoperability
Penggunaan floppy disk, compact disk and flash drive adalah beberapa contoh yang memanfaatkan physical interoperability
2. Data-level Interoperability
Data level memungkinkan adanya pertukaran data antar software yang tidak terikat dengan bahasa pemrograman dan platform yang digunakan. Saat ini banyak software yang menyediakan API untuk mengimplementasikan interoperability pada lingkungan jaringan komputer.
3. Specification-level Interoperability
Specification level menghandle perbedaan knowledge representation dengan abstraksi data type. Sebagai contoh tabel yang terdiri dari kolom dan baris dapat diwakili dengan menggunakan array atau list dalam bahasa pemrograman.
4. Semantic Interoperability
Semantic interoperability adalah adalah kemampuan sistem komputer untuk bertukar data dengan makna yang jelas. Ini merupakan salah satu syarat bagi sistem untuk meng-enable machine computable logic, penarikan kesimpulan dan penemuan pengetahuan antar sistem informasi.


B.5. Arsitektur

Saat ini, perkembangan arsitektur software interoperability mengalami perkembangan yang begitu pesat. Dibawah ini adalah beberapa arsitektur yang digunakan dalam software interoperability [4]:
1.Network Protocols
2.Client-Server systems
3.Application Design
4.Software Components
5.Code reuse
6.Legacy software
7.Middleware
8.Ontologies
9.Network-application Interoperability


b.5.1. Arsitektur Client- Server

1.     Ketika jaringan komputer pertama kali ditemukan dan diimplementasikan, komputer masih digunakan sebagai sebuah workstation, sementara jaringan komputer hanya digunakan sebagai media komunikasi bagi workstation supaya dapat mengakses resource dari jarak jauh, sedangkan semua fungsi komputasi dilakukan di workstation itu sendiri melalui sebuah aplikasi.
2.     Penemuan dan penerapan arsitektur Client-Server telah memindahkan fungsi komputasi dari aplikasi ke jaringan.
3.     Metodologi server clustering mengubah model komputasi menjadi model jaringan.

Perkembangan dalam arsitektur client-server ini memiliki dua dampak yang signifikan untuk software interoperability.
1. Pertama, execution model dari fungsi komputasi bisa di partisi atau disebar untuk performa yang lebih baik berdasarkan hardware yang digunakan.
2. Kedua, software modul dapat difokuskan untuk bisa berjalan di salah satu platform server atau Operating System tertentu tanpa mengalami masalah runtime karena harus berintegrasi dengan beberapa platform.