https://demarches.yvetot-normandie.fr/?daftar=QQ+SLOT+ONLINE+TERPERCAYA software – Page 2 – Official Blog of Akhdani Reka Solusi

PHPUnit Testing pada Laravel

1200px-phpunit_logo-svg_-1024x413

Hallo kreatif reader, pada kesempatan kali ini aku mau sharing dari artikel yang udah aku baca..

Apa sih itu PHPUnit?
PHPUnit adalah kerangka pengujian (testing framework) untuk bahasa pemrograman PHP yang bertujuan untuk memastikan bahwa setiap bagian kecil dari program berfungsi sebagaimana mestinya. Dengan menggunakan PHPUnit, developer PHP dapat meningkatkan kualitas software dengan mengidentifikasi dan memperbaiki bug lebih awal dalam siklus pengembangan.

Adapun tahapan-tahapan yang dilakukan dalam automated testing menggunakan PHPUnit adalah sebagai berikut:

1. Instalasi software testing menggunakan PHPUnit yang terintegrasi dengan framework laravel untuk pengembangan aplikasi. Ini dapat dilakukan menggunakan Composer. Sebelumnya pastikan Composer telah diinstal, kemudian buka terminal dan eksekusi perintah berikut:

composer require --dev phpunit/phpunit ^9.6

2. Menuliskan kode pengujian pada PHPUnit dengan nama file pengujian (misalnya: MyMathTest.php) untuk menguji fitur yang telah ditentukan sesuai dengan kebutuhan output yang diharapkan. Berikut contoh kode pengujian pada PHPUnit:

// File: MyMathTest.php

use PHPUnit\Framework\TestCase;

class MyMathTest extends TestCase {
 public function testAdd() {
 $math = new MyMath();
 $result = $math->add(3, 5);
 $this->assertEquals(8, $result);
 }

 public function testSubtract() {
 $math = new MyMath();
 $result = $math->subtract(8, 3);
 $this->assertEquals(5, $result);
 }
}

3. Menjalankan PHPUnit untuk mengetahui hasil pengujian (lulus atau tidak), lakukan perintah berikut melalui terminal dari direktori proyek:

vendor/bin/phpunit MyMathTest.php

Jika memiliki banyak file pengujian, dapat menjalankan semua pengujian dengan perintah berikut:

vendor/bin/phpunit

4. Jika fitur yang diuji lulus, status hasil pengujian menjadi “passed”.
5. Jika fitur yang diuji tidak lulus, maka PHPUnit akan menampilkan pesan error.
Catatan: untuk mempermudah deteksi dan eksekusi pengujian oleh PHPUnit, sebaiknya developer memberikan nama file pengujian dengan format “nama class” dan akhiran “.php”

Berikut ini adalah beberapa fitur PHPUnit dengan keunggulannya:
1. Pengujian Unit Otomatis: Fitur ini membantu dalam mendeteksi kesalahan dan memastikan bahwa perubahan kode tidak merusak fungsionalitas yang ada.
2. Pelaporan Hasil: PHPUnit memberikan laporan hasil pengujian yang jelas dan terstruktur. Ini membantu developer untuk dengan cepat mengidentifikasi masalah dan memperbaikinya.
3. Pengujian Fungsionalitas dan Integrasi: PHPUnit juga mendukung pengujian fungsionalitas dan integrasi, untuk menguji sejauh mana berbagai komponen bekerja bersama.
4. Kemampuan Pengujian Paralel: PHPUnit mendukung pengujian paralel, yang dapat menjalankan beberapa unit pengujian secara bersamaan untuk meningkatkan efisiensi.

Sehingga dapat disimpulkan, apabila tim developer sudah menggunakan PHPUnit untuk pengujian otomatis maka dapat mengurangi error dan menghemat waktu dalam pengembangan aplikasi.

Referensi:
[1] Zhang Tao and He Lei, 2018, Design and Implementation of HTTP Interface Automation Test Framework PHPUnit, Department of Informatics, Beijing University of Technology, China, Atlantis Press.
[2] PHPUnit Testing.

Pemahaman & Manfaat Penggunaan Migrasi dan Seeder pada Laravel

mengenal-migra

Halo kreatif readers, pada kesempatan kali ini kita akan mengenal dan memahami manfaat penggunaan migrasi dan seeder yang ada pada Laravel.

Seperti yang kita ketahui bahwa Laravel, sebagai kerangka kerja PHP yang populer, menyediakan dua fitur kunci, yaitu migration dan seeder. Migrasi (migration) memungkinkan pengembang untuk mengelola struktur database dengan mudah, sementara seeder memfasilitasi pengisian data awal.

Migrasi pada Laravel

Migrasi adalah cara Laravel mengelola perubahan struktur database. Dengan migrasi, pengembang dapat membuat dan memodifikasi tabel database tanpa harus berurusan dengan SQL langsung. Setiap migrasi adalah file PHP yang berisi instruksi untuk membuat atau memodifikasi tabel database, kemudian dijalankan dengan perintah ‘Php artisan migrate’. Dibawah ini merupakan contoh file PHP yang berisi migrasi.

migrasi

Seeder pada Laravel

Seeder digunakan untuk mengisi database dengan data awal. Seeder adalah file PHP yang berisi kode untuk menyisipkan data ke dalam tabel. Ini berguna untuk menguji aplikasi atau mengisi database dengan data awal untuk pengembangan. Kemudian dijalankan dengan perintah ‘php artisan db:seed’. Dibawah ini merupakan contoh file PHP yang berisi seeder.

seeder

Integrasi Migrasi dan Seeder

Pada umumnya, setelah membuat tabel menggunakan migrasi, seeder digunakan untuk mengisi tabel tersebut dengan data awal. Pengguna dapat menjalankan keduanya dengan satu perintah menggunakan ‘php artisan migrate –seed’. Dengan menggunakan migrasi dan seeder, pengembang dapat dengan mudah mengelola struktur database dan menyediakan data awal untuk pengujian atau pengembangan.

Manfaat Migrasi dan Seeder pada Laravel

Penggunaan migrasi dan seeder dalam pengembangan web dengan Laravel membawa sejumlah manfaat yang signifikan, Berikut adalah beberapa manfaat penggunaan migrasi dan seeder pada laravel.

1. Manajemen Struktur Database yang Efisien

Migrasi memungkinkan pengembang untuk membuat dan mengelola struktur database secara efisien. Dengan menyediakan file migrasi, perubahan struktur dapat dilakukan secara terorganisir tanpa perlu menyusun perintah SQL secara manual. Ini mempermudah tim pengembangan dalam mengelola skema database.

2. Rekam Historis Perubahan Database

Migrasi mencatat histori perubahan struktur database. Setiap migrasi mewakili langkah-langkah yang diambil untuk membuat atau memodifikasi tabel. Hal ini memungkinkan pengembang untuk melacak dan mengelola versi database, membantu dalam pengembangan kolaboratif dan pemeliharaan sistem.

3. Kemudahan Penyesuaian dengan Tim Pengembangan

Migrasi menyederhanakan upaya kolaborasi tim pengembangan. Setiap perubahan dalam struktur database terdokumentasi melalui migrasi, memungkinkan anggota tim untuk dengan mudah menyelaraskan langkah-langkah pengembangan mereka. Hal ini mengurangi risiko kesalahan yang mungkin muncul ketika melakukan pengelolaan skema database secara manual.

4. Isi Data Awal untuk Pengembangan dan Uji

Seeder memungkinkan pengisian data awal ke dalam tabel, mempermudah pengujian dan pengembangan. Dengan menggunakan seeder, pengembang dapat membuat dataset awal yang dibutuhkan untuk menguji fungsionalitas aplikasi atau mengembangkan fitur baru. Ini mendukung pengembangan yang lebih cepat dan efisien.

5. Konsistensi Server Pengembangan dan Produksi

Migrasi dan seeder membantu menjaga konsistensi antara server pengembangan dan produksi. Dengan menjalankan migrasi dan seeder di kedua server tersebut, pastikan bahwa struktur database dan data awal dijaga konsistensinya, mengurangi potensi masalah saat merilis ke produksi.

6. Pemeliharaan dan Pembaruan Sistem yang Aman

Penggunaan migrasi memungkinkan pemeliharaan dan pembaruan sistem yang lebih aman. Dengan memanfaatkan migrasi, perubahan pada struktur database dapat diuji terlebih dahulu di lingkungan pengembangan sebelum diaplikasikan ke lingkungan produksi. Ini membantu mencegah kemungkinan kegagalan.

Referensi : 

PHP Framework Symfony

Hallo kreatif reader, aku mau sedikit sharing nih dari artikel yang udah aku baca..

Apa itu Web Framework?
Web framework atau yang biasa dikenal dengan web application framework merupakan sebuah software yang menyediakan struktur dan alat untuk membangun dan mengembangkan aplikasi web, web service, dan web dinamis.
Salah satu contoh web framework adalah Symfony (PHP).

logoLalu, apa sih Framework Symfony?
Symfony dibangun pada tahun 2005 sesuai dengan standar PSR yang direkomendasikan oleh standar PHP. Symfony adalah framework lengkap yang dirancang untuk mengoptimalkan kode PHP dalam pengembangan aplikasi Web berdasarkan pola Model View Controller (MVC).

Adapun beberapa fitur pada framework symfony:
1. Struktur MVC (Model-View-Controller)
Symfony mengikuti pola desain arsitektur MVC, yang membantu dalam memisahkan logika aplikasi menjadi komponen-komponen yang terpisah, termasuk Model untuk representasi data, View untuk tampilan, dan Controller untuk mengelola logika bisnis.
2. Twig Template Engine
Symfony menggunakan Twig sebagai mesin template resmi. Twig adalah mesin template yang digunakan dalam kerangka kerja Symfony untuk membangun tampilan (views) dalam aplikasi web. Twig dirancang untuk membuat proses penulisan template lebih bersih, aman, dan ekspresif.
3. Doctrine ORM
Symfony menggunakan Doctrine sebagai Object-Relational Mapping (ORM) untuk berinteraksi dengan basis data. Doctrine memudahkan pengembangan basis data dengan memetakan objek PHP ke struktur basis data.
4. Security Component
Symfony memiliki komponen keamanan yang menyediakan alat dan fitur-fitur untuk mengelola otentikasi, otorisasi, dan perlindungan terhadap ancaman keamanan.
5. Routing
Symfony menyediakan sistem routing yang kuat yang memetakan URL ke tindakan-tindakan dalam aplikasi. Ini memungkinkan untuk pengelolaan URL yang fleksibel dan pembuatan tautan antar halaman.

Beberapa contoh aplikasi yang menggunakan framework symfony:
1. Accenture
accenture 2. Trivago
trivago 3. Typeform
typeform

Kesimpulan
Symfony adalah framework lengkap yang dirancang untuk memaksimalkan pengembangan aplikasi berbasis web dengan memperkenalkan beberapa fitur yang dapat diandalkan untuk pemula.

Referensi:
[1] M. Laaziri, K. Benmoussa, S. Khoulji, K. M. Larbi, and A. El Yamami, “A comparative study of laravel and symfony PHP frameworks,” vol. 9, no. 1, pp. 704–712, 2019
[2] Website Symfony

Phalcon: Unique and Fastest PHP Framework

Halo, Kreatif Readers! Pada artikel ini, saya akan membahas salah satu Framework PHP, yaitu Phalcon. Sebelum kesana, mari kita mengenal apa itu framework.

Pada dasarnya, framework merupakan bentuk sederhana dari desain arsitektur sebuah bahasa pemrograman. Salah satu desain arsitektur yang diterapkan pada PHP Framework adalah MVC (Model, View, Controller). Tujuan dari arsitektur ini adalah untuk memisahkan antara pemodelan data dengan tampilan atau user interface website. Nantinya, kedua hal tersebut akan dihubungkan menggunakan Controller berisikan request dari user yang telah ditampung dalam sebuah function.

Phalcon sendiri merupakan salah satu framework PHP yang cukup unik. Mengutip dari situs resminya, Phalcon merupakan full-stack framework yang ditulis dalam bentuk PHP extension menggunakan bahasa C. Namun, developer tidak diharuskan memahami bahasa C untuk dapat menggunakan Phalcon, karena setiap baris codenya telah dikemas dalam PHP class untuk memudahkan implementasinya.

phalcon_framework_logo_square

Dalam penggunaanya, Phalcon telah menyediakan “starter pack” berupa installer yang berisikan struktur kode siap pakai untuk memudahkan developer memahami cara kerja Phalcon. Selain itu, telah tersedia pula eksternal code generator yang dapat meningkatkan efesiensi proses pengembangan.

Phalcon memiliki beberapa karakteristik, seperti:

  1. Semua komponen code ditulis dalam bahasa C
  2. Kompatibel dengan berbagai sistem operasi
  3. Memiliki performa tinggi dengan konsumsi penyimpanan server yang rendah
  4. Merupakan salah satu framework PHP tercepat
  5. Mendukung implementasi database menggunakan metode ORM (Object Relation Mapping)

Seperti yang dijanjikan pada situs resminya, bahwa Phalcon merupakan PHP Framework tercepat, berikut merupakan hasil studi komparasi antara Phalcon dengan beberapa framework lainnya, dengan menggunakan acuan jangka waktu eksekusi pada proses CRUD (Create, Read, Update, Delete).

screenshot_43Berdasarkan grafik tersebut, terbukti Phalcon lebih unggul dibanding PHP framework lainnya, dengan jangka waktu eksekusi sebesar 28-45 ms. Selain itu, studi juga membuktikan bahwa Phalcon merupakan salah satu framework dengan konsumsi penyimpanan server yang rendah. Dapat dilihat pada grafik perbandingan di bawah ini, terhitung Phalcon hanya mengkonsumsi sebesar 0.17 MB, jauh lebih rendah dibandingkan ketiga framework lain.

memory usage

Salah satu faktor yang mempengaruhi kecepatan dan efisiensi kinerja Phalcon adalah penggunaan bahasa C dalam penulisannya. Bahasa C merupakan compile language, dimana sistem dapat lebih mudah mengeksekusi setiap perintah yang dijalankan. Hal ini sangat berdampak pada efektifitas kinerja sistem dan efisiensi penggunaan memory. Berbeda dengan PHP yang merupakan interpreter language, dimana PHP dapat lebih mudah dimengerti penggunanya, namun diperlukan effort lebih bagi sistem untuk menerjemahkannya.

Dalam hal ini, Phalcon berhasil mengadaptasi bahasa C dan mengkombinasikannya dengan kemudahan penggunaan PHP dalam sebuah framework yang dapat dipertimbangakan dalam pengembangan sebuah website.

Referensi:
1. Phalcon.io
2. Analysis and Practical Application of PHP Frameworks in Development of Web Information Systems
3. Comparing Performance of Plain PHP and Four of Its Popular Frameworks

PHP Framework Laravel

laravel

Hallo kreatif reader, aku mau sedikit sharing nih dari buku yang udah aku baca..

Apa itu PHP framework?
PHP framework dapat membantu mempromosikan metode Rapid Application Development (RAD) atau bersifat incremental terutama untuk waktu pengerjaan yang pendek, menghemat waktu, membantu membuat aplikasi lebih stabil dan mengurangi jumlah pengkodean berulang bagi pengembang aplikasi.

Apa sih Laravel itu?
Laravel adalah PHP framework yang mengikuti pola arsitektur Model-View-Controller (MVC). Sejak diluncurkan tahun 2011, laravel banyak digunakan oleh programmer karena mudah dipahami dan dokumentasinya yang lengkap. Framework ini menyediakan beberapa jenis library dan fungsi lain yang bisa memudahkan dalam penulisan baris kode dengan tujuan memperindah website.

12-fitur-laravel-framework-php-untuk-membangun-website-2Fitur-fitur yang ada pada framework laravel adalah sebagai berikut:
1. Blade Template Engine
Laravel menggunakan blade template engine yang memungkinkan programer untuk mendesain layout yang unik, konsisten dan terstruktur selama proses pengembangan. Kelebihannya dapat menggunakan kode PHP biasa di dalam tampilan, kemudian desain tampilan akan tetap di cache sampai adanya modifikasi.
2. Routing
Laravel memiliki sistem routing yang memungkinkan programer mendefinisikan rute URL dengan mudah, menentukan rute untuk mengarahkan permintaan HTTP ke tindakan (controller) yang sesuai. Routing membantu untuk memperluas dan meningkatkan performa aplikasi web.
3. Eloquent ORM
Eloquent adalah sistem ORM (Object-Relational Mapping) yang terintegrasi dengan Laravel. Ini memungkinkan pengembang berinteraksi dengan database menggunakan model PHP, mengurangi kompleksitas dalam bekerja dengan database.
4. Middleware
Middleware dalam laravel memungkinkan pengembang untuk memodifikasi permintaan HTTP sebelum atau setelah mencapai tujuan akhir, memberikan fleksibilitas dalam memanipulasi permintaan.
5. Authentication and Authorization
Laravel menyediakan sistem autentikasi yang terintegrasi dengan kemudahan konfigurasi dan ekstensibilitas, serta fitur otorisasi yang memungkinkan pengembang mengontrol akses ke bagian-bagian tertentu dari aplikasi.
6. Artisan Command-Line Tool
Laravel dilengkapi dengan Artisan, sebuah perintah baris yang memudahkan pengembang dalam menjalankan tugas-tugas rutin seperti migrasi database, pembuatan controller, dan pengelolaan modul.
7. Migrations
Migrations dalam Laravel memungkinkan programmer mengelola struktur basis data menggunakan kode ataupun membuat dan mengubah tabel serta kolom menggunakan file migrasi. Hal ini memungkinkan tim bekerjasama dengan mudah dan menjaga konsistensi skema basis data dalam pengembangan aplikasi.
8. Testing Support
Laravel mendukung pengujian aplikasi menggunakan framework pengujian PHPUnit. Programmer dapat membuat dan menjalankan pengujian dengan mudah menggunakan alat bawaan Laravel.

Contoh laravel untuk e-commerce
working-of-mvc-1024x686-removebg-preview
Pengembang aplikasi dapat mengunakan konsep Model-View-Controller (MVC) untuk mengorganisir logika aplikasi yang diuraikan seperti berikut:
1. Model, dalam framework laravel akan mewakili entitas. Contohnya: produk dan keranjang belanja, kemudian berinteraksi dengan database untuk menyimpan dan mengambil data.
2. Controller, dalam framework laravel akan mengatur aliran informasi antara model dan view, kemudian mengambil data dari model lalu memperbarui tampilan yang relevan ke view.
3. View, dalam framework laravel akan menangani tampilan. Contohnya: halaman daftar produk, halaman detail produk dan halaman keranjang belanja.

Kesimpulan
Dengan kombinasi fitur-fitur yang sudah dijelaskan dan konsep Model-View-Controller (MVC) yang jelas, Laravel menjadi pilihan untuk pengembangan aplikasi web modern. Penggunaan laravel dapat meningkatkan efisiensi, kualitas, keamanan pengembangan aplikasi web, dan juga dokumentasi yang lengkap. Terimakasih..

PHP: Web Programming Language for Beginner

cover

Halo, Kreatif Readers! Pada artikel ini, akan membahas mengenai bahasa pemrograman PHP beserta cara kerjanya.

PHP (Hypertext Prepocessor) merupakan salah satu bahasa pemrograman yang sering digunakan dalam pembangunan sebuah website. Beberapa situs besar yang masih menggunakan PHP antara lain Facebook, Wikipedia, dan WordPress. Seiring berjalannya waktu, PHP telah merilis berbagai versi, dengan versi terbaru saat ini adalah PHP 8.3

PHP bekerja pada sisi server, atau biasa disebut dengan server-side rendering. Hal ini memungkinkan PHP dapat mengelola konten website dengan dinamis, didukung dengan penggunaan database. Di bawah ini merupakan ilustrasi pemrosesan data menggunakan PHP.

php

Pada proses ini, PHP berperan dalam mengambil dan mengelola data pada server, seperti yang digambarkan pada step nomor 2 di bawah ini.

server-side-rendering-php

Selain itu, bahasa pemrograman ini juga bersifat scripting language, yaitu kumpulan bahasa pemrograman yang telah ditafsirkan. Sehingga, untuk menjalankan sebuah kode PHP tidak diperlukan compiler khusus. Hal ini cukup membantu para pemula dalam mempelajari bahasa pemrograman tanpa harus melewati langkah-langkah yang “rumit”. Beberapa kelebihan lain dari PHP yaitu:

  • Gratis dan open-source
  • Mendukung integrasi dengan berbagai teknologi
  • Dukungan komunitas yang telah tersebar di seluruh dunia

Selain beberapa keuntungan di atas, PHP juga memudahkan penggunanya dengan menyediakan beberapa framework yang berisikan basic structure untuk mengakomodir pengembangan sebuah website. Penggunaan framework dapat membantu penyusunan kode menjadi lebih terstruktur, mempersingkat proses pembuatan, serta memudahkan proses maintanance atau perawatan pada sebuah website.

Contoh framework PHP yang cukup familiar digunakan dalam pembangunan sebuah website adalah Laravel, CodeIgniter, Phalcon, serta masih banyak lainnya. Pembahasan dari masing-masing framework akan dijelaskan pada artikel-artikel berikutnya. Stay tune!

Referensi:
Pemrograman Web dengan PHP & MySQL
Achmad Solichin
Bab 1 - Pengantar Pemrograman Web

PHP: Hypertext Preprocessor

 

Software Engineering #Chapter 22 : Project Management – Risk Management

risk_management-removebg-preview

 

Hallo teman-teman Akhdani, aku mau sedikit sharing nih dari buku yang udah aku baca

Apa itu Project Management?
Project Management adalah metode penyelesaian proyek dengan melakukan proses initiating, planning, executing, control and monitoring, hingga closing untuk mencapai output/tujuan yang sudah ditentukan.

Dalam pengelolaan proyek dapat mengikuti panduan dari PMBOK Guide 4th Edition yang salah satu isinya ada Risk Management.

Apa itu Risk Management?

Risk Management adalah salah satu pekerjaan terpenting seorang Project Manager yang memikirkan kemungkinan terjadinya risiko dan konsekuensinya terhadap proyek. Risk Management dapat mengantisipasi risiko yang mungkin mempengaruhi jadwal proyek atau kualitas software yang sedang dikembangkan, kemudian mengambil tindakan untuk menghindari risiko tersebut.

Beberapa tahapan yang dapat dilakukan:

screenshot-2023-10-30-105801

  1. Risk Identification
    Pada tahapan ini tim berkumpul untuk bertukar pikiran mengenai kemungkinan risiko yang terjadi sehingga project manager dapat mengidentifikasi risiko berdasarkan pengalaman pada proyek sebelumnya.
    Sebagai titik awal untuk identifikasi risiko, ada 6 (enam) jenis risiko yang dapat dimasukkan dalam daftar risiko:
    a. Estimation
    b. Organizational
    c. People
    d. Requirements
    e. Technology
    f. Tools
  2. Risk Analysis
    Pada tahapan ini project manager harus mempertimbangkan setiap risiko yang teridentifikasi dan mengambil tindakan penilaian tentang kemungkinan dan keseriusan risiko tersebut. Project manager tidak mungkin membuat penilaian numerik yang tepat mengenai probabilitas dan keseriusan setiap risiko, sehingga dapat dilakukan penilaian dengan cara berikut ini:
    a. Kemungkinan risiko dapat dinilai sebagai tidak signifikan (rendah, sedang, tinggi, atau sangat tinggi).
    b. Dampak risiko dapat dinilai sebagai bencana besar (mengancam kelangsungan hidup proyek), serius (akan menyebabkan penundaan besar), dapat ditoleransi (keterlambatan akan terjadi kontingensi yang diperbolehkan), atau tidak signifikan.
  3. Risk Planning
    Pada tahapan ini project manager mengembangkan strategi untuk mengelola risiko-risiko utama yang mengancam proyek. Untuk setiap risiko, project manager harus memikirkan tindakan yang memungkinkan dalam meminimalisir gangguan terhadap proyek jika masalah yang diidentifikasi dalam risiko tersebut terjadi.
  4. Risk Monitoring
    Pada tahapan ini project manager harus memantau risiko secara teratur di semua tahapan proyek, mempertimbangkan dan mendiskusikan setiap risiko utama secara terpisah, memutuskan apakah risiko tersebut lebih besar atau lebih kecil kemungkinannya untuk timbul dan apakah konsekuensi risiko telah berubah.

Sehingga dapat disimpulkan untuk pengajuan proposal manajemen proyek bagian Risk Management tertulis seperti berikut ini: 

421315

Mengenal Business Intelligence

Cover BI

Halo Sobat Akhdani! Di era teknologi saat ini, para pelaku usaha mulai menggunakan Businesss Intelligence sebagai tools untuk memonitoring performa bisnisnya. Secara umum, Businesss Intelligence dapat membantu mengumpulkan informasi dari berbagai sumber, yang kemudian disimpan, diolah dan diproses menjadi data visual. Untuk mengenal lebih dalam apa itu BI dan bagaimana cara kerjanya, mari simak artikel berikut ini!

Apa itu Business Intelligence?

Business Intelligence merupakan bentuk pengolahan data menggunakan model matematis dan analitis yang kemudian akan menghasilkan informasi untuk memudahkan perusahaan dalam pengambilan keputusan pada proses bisnis yang dijalankan.

Dalam artian lain, BI dapat membantu perusahaan melihat secara rinci dan real-time kondisi bisnis yang sedang berjalan saat ini, apakah sedang mengalami penurunan, peningkatan, atau bahkan stagnan. BI juga dapat membantu menyajikan informasi secara lebih ringkas, sehingga perusahaan dapat mengambil langkah lebih cepat dan tepat untuk perencanaan bisnis kedepannya.

BI

Komponen Business Intelligence

Business Intelligence terdiri atas beberapa komponen pembentuk, antara lain:

  • OLAP (On-line Analytical Processing)

OLAP melakukan query data dari berbagai sumber untuk menghasilkan berbagai sudut pandang. Dengan kata lain, BI menggunakan OLAP untuk menggabungkan dan mengelompokkan data ke dalam beberapa kategori untuk memberikan informasi yang lebih ringkas dalam bentuk pelaporan, analisis, pemodelan, dan perencanaan. Beberapa operasi OLAP yang digunakan adalah roll up, drill down, slice and dice, dan pivot.

  • Analisis lanjutan

BI menerapkan teknik machine learning, otomasi proses bisnis, teknik statistik tren, mengenali pola, karakteristik, serta menganalisa anomali dari berbagai sumber data.

  • Manajemen Kinerja Perusahaan

Peran utama BI adalah integrasi dari beberapa data untuk menghasilkan informasi kinerja bisnis. Dalam komponen ini, BI berperan untuk meningkatkan kinerja perusahaan dengan melacak fluktuasi pasar, menganalisis tren jangka pendek dan jangka panjang, serta menciptakan peluang investasi

Cara kerja Business Intelligence

Untuk menghasilkan sebuah data visual berbentuk laporan, BI perlu melewati beberapa proses seperti pengumpulan data, pemrosesan dan penyimpanan data, serta analisis dan penyajian.

konsep BI

Sumber: Pengantar BI dalam Bisnis

  • Pengumpulan data

Pada tahapan ini, BI akan melakukan ekstraksi pada data-data “mentah” yang telah tercatat pada database, seperti data penjualan, laporan laba rugi, penggajian, dan lain-lain sebelum disimpan dan diintegrasikan antar satu dengan yang lain.

  • Penyimpanan pada Data Warehouse

Data mentah yang telah dikumpulkan berikutnya akan disimpan dalam bentuk Data Warehouse untuk dilakukan proses integrasi dari beragam database yang ada.

  • Akses dan Analisis Data

Setelah proses integrasi data, peran BI berikutnya adalah mengakses informasi dari Data Warehouse untuk kemudian dianalisa dan diinterpretasikan dalam bentuk tren, pola, dan menyajikannya dengan bentuk yang lebih ringkas.

  • Pembuatan Laporan

Dari hasil analisa dan interpretasi data tersebut, dilakukan proses pembuatan laporan yang nantinya akan menampilkan data visual beserta informasi pendukung agar pengguna dapat lebih mudah memahami data yang telah diolah.

Aplikasi Business Intelligence

Nah, berikut ini terdapat beberapa rekomendasi aplikasi yang dapat mendukung penerapan Business Intelligence, antara lain:

  1. Microsoft Power BI
  2. Tableau
  3. Oracle BI

 


Referensi:
Business Intelegent (Pengantar Business Intelligence dalam Bisnis)
PT. Sonpedia Publishing Indonesia
Bagian 1 - Pengenalan dan Konsep Dasar Business Intellegence

Meningkatkan User Interface dan User Experience (UI/UX) melalui Pendekatan Berbasis Pengguna

user-1

Pengembangan aplikasi yang sukses tidak hanya bergantung pada teknologi canggih, tetapi juga pada kemampuan untuk memahami, menghormati, dan memenuhi kebutuhan pengguna. Salah satu pendekatan yang fading efektif dalam mencapai tujuan ini adalah Metode User Centered Design( UCD). UCD adalah kerangka kerja yang difokuskan pada pengguna dalam pengembangan tampilan antarmuka aplikasi. Pada kesempatan kali ini ARS Mania akan membahas tentang metode UCD dan mengapa ini sangat penting dalam menciptakan aplikasi yang sukses.

Berdasarkan penelitian yang dilakukan oleh (Kaligis & Fatri, 2020), berikut adalah penjelasan mengenai User Centered Design (UCD).

Apa Itu User Centered Design?

Menurut ISO 9241- 210 yang mengatur tentang Prinsip- prinsip Ergonomi Antarmuka Manusia Sistem Interaktif, metode UCD merupakan pendekatan dalam pengembangan sistem secara interaktif dengan tujuan untuk mengembangkan sistem yang berguna bagi penggunanya. UCD menempatkan pengguna sebagai pusat dari proses desain, dan berfokus pada pemahaman mendalam tentang kebutuhan, dan pengalaman pengguna. Pada metode pengembangan aplikasi, UCD diterapkan pada tahap perencanaan, perancangan, dan pengujian.

Tahapan Metode User Centered Design

the-user-centred-design-process-according-to-iso-9241-21020101. Understand and Specify the Context of Use (Memahami dan Menentukan Konteks Penggunaan)

Pada tahapan ini kita melakukan identifikasi yang berfokus pada kondisi siapa yang akan menggunakan sistem, di mana mereka akan menggunakannya dan apa yang menjadi alasan pengguna menggunakan sistem. Kita mencoba memahami apa yang mereka butuhkan dari sistem tersebut

2. Specify the User Requirements (Menentukan Kebutuhan Pengguna)

Setelah kita tahu siapa pengguna, di mana sistem akan digunakan, dan mengapa pengguna menggunakan sistem, kita menuliskan dengan jelas apa yang pengguna butuhkan dari sistem ini. Kita menentukan apa tugas yang harus mereka lakukan dan apa keinginan mereka.

3. Produce Design Solutions to Meet User Requirements (Menghasilkan Solusi Desain yang Memenuhi Kebutuhan Pengguna)

Dalam tahap ini, kita mulai membuat desain sistem. Desain ini harus mencakup antarmuka yang memudahkan pengguna untuk mengoperasikan sistem dan mencapai tujuan mereka. Pada tahapan ini juga kita berfokus pada untuk meningkatkan user experinece.

4. Evaluate the Design Against Requirements (Evaluasi Desain Berdasarkan Kebutuhan)

Setelah desain dibuat, kita menguji desain ini dengan pengguna. Pengguna mencoba sistem dan memberikan masukan atau feedback. Dari masukan tersebut akan dilakukan perbaikan secara berulang hingga memenuhi ekspektasi pengguna, karena pada metode ini berjalan secara iteratif.

Kesimpulan

Metode User-Centered Design (UCD) adalah pendekatan yang kritis dalam pengembangan aplikasi yang bertujuan untuk meningkatkan pengalaman pengguna. Dengan memahami dan memenuhi kebutuhan pengguna, aplikasi dapat menjadi lebih efisien, efektif, dan memuaskan. UCD membantu mengurangi risiko kesalahan desain dan meningkatkan peluang kesuksesan aplikasi. Oleh karena itu, pengguna seharusnya selalu menjadi fokus utama dalam pengembangan aplikasi yang sukses.

Referensi : 
¹Kaligis, D.L. & Fatri R.R. (2020). Pengembangan Tampilan Antar Muka Aplikasi Survei Berbasis Web Dengan Metode User Centered Design. Jurnal Sistem Informasi, Teknologi Informatika dan Komputer, Vol 10. No 2, Hal 106-114.
²Saputri, I.S.Y. Fadhli, M. & Surya, I. (2017). Penerapan Metode UCD (User Centered Design) pada E-Commerce Putri Intan Shop Berbasis Web. Jurnal Nasional Teknologi dan Sistem Informasi. Vol 03. No 02. 269-278.

Understanding Requirement Engineering

cover-1

Fase Requirement Engineering merupakan proses memahami kebutuhan sistem, baik dari segi bisnis, kebutuhan fungsional, ataupun dari segi interaksi pengguna dengan sistem nantinya.

Tujuan dilakukannya fase Requirement Engineering adalah untuk menyamakan presepsi setiap pemangku kepentingan yang terlibat, agar dapat menghasilkan solusi yang efektif dan efisien.

Fase ini terdiri dari beberapa tahapan:

  1. Identifikasi permasalahan
  2. Analisa kebutuhan pengguna
  3. Klasifikasi kebutuhan pengguna
  4. Pemodelan sistem
  5. Negosiasi dan spesifikasi kebutuhan
  6. Validasi kebutuhan
Identifikasi Permasalahan

Tahapan ini merupakan awal dari proses Requirement Engineering. Identifikasi permasalahan biasanya dilakukan menggunakan teknik kolaborasi meeting yang akan dihadiri oleh pihak user atau pengguna, serta vendor atau tim yang akan melakukan pengembangan sistem. Tahapan ini dapat juga disebut Requirement Gathering.

Tujuan utama dari Requirement Gathering adalah memahami permasalahan yang dihadapi oleh user yang kemudian dilanjutkan dengan penawaran solusi secara garis besar.

Analisa Kebutuhan Pengguna

Tahapan ini merupakan tindak lanjut atas informasi yang telah diperoleh pada tahap sebelumnya. Pemasalahan akan dipetakan menjadi poin-poin kebutuhan yang nantinya akan direalisasikan dalam bentuk fitur-fitur pada sistem yang dikembangkan.

Klasifikasi Kebutuhan Pengguna

Setelah diperoleh daftar kebutuhan pengguna, maka selanjutnya akan dilakukan klasifikasi kebutuhan berdasarkan level kepentingannya, yaitu:

  1. Normal Requirement (Kebutuhan objektif sesuai dengan permintaan user)
  2. Expected Requirement (Kebutuhan dasar sebuah sistem)
  3. Exciting Requirement (Kebutuhan tambahan yang berada di luar ekspektasi user)

Klasifikasi kebutuhan dilakukan untuk memudahkan tim pengembang dalam menentukan prioritas ketika proses pengerjaan nantinya.

Pemodelan Sistem

Tahapan ini bertujuan untuk menggambarkan sistem dalam bentuk dokumen teknis untuk memperjelas elemen apa saja yang dibutuhkan, bagaimana hubungan antar entitas, serta bagaimana behavior atau perilaku sistem atas berbagai kondisi yang diminta oleh setiap aktor.

Pemodelan dapat dilakukan menggunakan Use Case Skenario ataupun Use Case Diagram, UML, Class Diagram, ataupun Prototype sistem.

Negosiasi dan Spesifikasi Kebutuhan

Setelah dilakukan pemodelan, gambaran alur serta fungsional sistem akan semakin jelas. Tahapan berikutnya adalah melakukan diskusi dan negosiasi antara vendor dan user untuk menentukan prioritas pada proses pengembangan, biaya yang dibutuhkan, risiko yang akan ditimbulkan, serta kemungkinan untuk menggabungkan, memodifikasi atau bahkan mengeliminasi kebutuhan-kebutuhan yang telah dituliskan di awal agar mencapai kesepakatan bersama.

Hasil terbaik negosiasi adalah terbentuknya Project Plan dimana pihak user dapat memperoleh sistem yang diinginkan sesuai spesifikasi yang telah diminta, dan pihak vendor dapat bekerja dengan realistis, mendapatkan upah yang sesuai, serta deadline yang wajar.

Validasi Kebutuhan

Setelah proses negosiasi menghasilkan kesepakatan bersama, maka tahapan berikutnya adalah proses validasi dari kedua belah pihak yaitu user dan vendor. Hal ini dilakukan untuk mencegah kesalahan interpretasi, kurangnya informasi, inkonsistensi, serta kemungkinan tidak terpenuhinya kebutuhan yang telah disepakati di awal.

Jika seluruh informasi telah dinyatakan valid, maka dilanjutkan dengan proses pengembangan sistem sesuai dengan kebutuhan yang telah dituliskan dalam dokumen Requirement Engineering.

Dalam beberapa kasus, proses Requirement Engineering dapat berlangsung secara paralel atau beriringan dengan proses pengembangan sistem, tergantung pada kebutuhan setiap projectnya. Semakin banyak pemangku kepentingan yang terlibat, maka akan bertambah pula kebutuhan yang harus diidentifikasi. Maka dibutuhkan kemampuan manajemen informasi dan pendokumentasian yang baik, agar memudahkan pelacakan perubahan sepanjang proses pengembangan.

Beberapa kendala yang memungkinkan terjadi pada proses Requirement Engineering adalah:

  1. User kesulitan dalam mengkomunikasikan kebutuhannya.
  2. Terlalu banyak pemangku kepentingan yang terlibat, sehingga menyulitkan dalam proses pengambilan keputusan.
  3. Ketidaksesuaian antara permintaan, deadline, serta budget yang ditawarkan.

It’s your worst nightmare. A customer walks into your office, sits down, looks you straight in the eye, and says, “I know you think you understand what I said, but what you don’t understand is what I said is not what I meant.” Invariably, this happens late -Ralph Young

Reference: Software Engineering A Practitioner’s Approach / Roger S. Pressman / Seventh Edition