Pertemuan ke 2
(Structured Query Language /SQL)
Structured Query Language (SQL) merupakan bahasa yang banyak digunakan dalam berbagai produk database. SQL dibangun di laboratorium IBM-San Jose California sekitar akhir tahun 70-an. Pertama kali dikembangkan sebagai bahasa di produk database DB2 yang sampai saat ini merupakan produk database andalan IBM. SQL sering di lafalkan dengan “sequel”.
Saat ini organisasi standar America (ANSI) menetapkan standar bahasa SQL yaitu ANSI-92 standard. Masing-masing vendor database memiliki dialeknya sendiri sebagaian besar spesifikasinya mengacu pada standar ANSI tersebut dengan berbagai ekstensi tambahan. SQL Server menggunakan bahasa Transact-SQL dalam produknya, sedangkan Oracle menggunakan PL/SQL.
1. Dasar SQL
Fungsi paling dasar dari SQL adalah untuk menampilkan data dari database. Data tersebut selanjutnya dapat difilter dan dimanipulasi sesuai kebutuhan aplikasi.
Perintah perintah dalam SQL terbagi dalam 2 kelompok besar :
• Data Manipulation Language
• Data Definition Language
2. Bekerja dengan MySQL
Untuk menjalankan MySQL dari menu Windows: Start -> Programs -> MySQL ->MySQL Server 5.0 -> MySQL Command Line Client.
Isikan password yang telah dibuat pada saat instalasi MySQL, jika ada password.
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 60
Server version: 5.0.45-community-nt MySQL Community Edition (GPL)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
Menampilkan database
Kita coba dengan perintah "SHOW DATABASES" yang akan menampilkan database yang ada di dalam sistem MySQL kita.
mysql> show databases ;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
--------------------- +
3 rows in set (0.00 sec)
Membuat database baru
Sudah ada 3 buah database di dalam sistem MySQL. Sekarang kita akan membuat sebuah database untuk latihan kita. Gunakan perintah "CREATE DATABASE" untuk membuat sebuah database.
mysql> create database Coba1 ;
Query OK, 1 row affected (0.02 sec)
Anda perhatikan dari dua perintah MySQL di atas,bahwa setiap perintah selalu diakhiri dengan tanda ";" (titik-koma). Memang pada umumnya perintah-perintah MySQL diakhiri oleh tanda ";" ini. Perhatikan perintah dibawah ini bila ditulis tanpa tanda titik-koma ";'.
mysql> create database coba2
->
Sistem MySQL akan menampilkan tanda panah '->' yang menyatakan bahwa perintah MySQL tersebut dianggap belum selesai (karena belum diakhiri dengan tanda titik-koma ';').
Sekarang kita lengkapi perintah sebelumnya dengan tanda titik-koma ';'
mysql> create database coba2
-> ;
Query OK, 1 row affected (0.02 sec)
Kita periksa lagi hasil dari perintah di atas dengan "SHOW DATABASE".
Perintah:
mysql> show databases ;
+-------------------- +
| Database |
+-------------------- +
| information_schema |
| coba1 |
|coba2 |
| mysql |
| test |
+--------------------+
5 rows in set (0.00 sec)
Menghapus database
Jika kita akan menghapus database coba2, dapat dilakukan dengan perintah DROP DATABASE.
Jika kita menggunakan perintah DROP DATABASE , maka database beserta isi akan terhapus.
mysql> drop database coba2 ;
Query OK, 0 row affected (0.02 sec)
Anda bisa memeriksanya lagi hasil dari perintah di atas dengan "SHOW DATABASE".
mysql> show databases ;
+--------------------+
| Database |
+--------------------+
| information_schema |
| coba1 |
| mysql |
| test |
+--------------------+
4 rows in set (0.00 sec)
database coba2 sudah hilang.
Memilih dan membuka sebuah database
Sekarang pilih database "coba1" dan kita buka dengan perintah "USE"
mysql> use coba1 ;
Database change
Melihat isi sebuah database
Untuk melihat apa isi dari sebuah database, kita gunakan perintah "SHOW TABLES". Mari kita
coba.
mysql> show tables ;
Empty set (0.00 sec)
Hasil dari perintah SHOW TABLES diatas adalah "Empty Set", yang berarti belum ada table apapun didalam database coba1.
I. MEMBUAT TABEL
Kita akan membuat sebuah tabel baru dengan menggunakan perintah "CREATE TABLE".
Contohnya sebagai berikut..
mysql> create table karyawan
-> (kopeg INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-> nama VARCHAR(30) NOT NULL)
-> ;
Query OK, 0 rows affected (0.14 sec)
Secara umum, kita akan membuat sebuah
tabel Karyawan dengan 2 buah kolom/field. Kolom pertama adalah KOPEG dengan jenis data bilangan bulat (INTeger), tanpa tanda negatif (UNSIGNED), yang akan bertambah nilainya secara otomatis (AUTO_INCREMENT), dan kolom KOPEG adalah kolom utama (PRIMARY KEY).
Kemudian pada kolom kedua, NAMA akan menampung nama karyawan, dengan jenis data
VARiabel CHARacter, lebar datanya dapat menampung maksimal 30 karakter, dan tidak boleh dikosongkan (NOT NULL).
Jika kita mau melihat isi dari database coba1:
mysql> show tables ;
+--------------------+
| Tables_in_latihan1 |
+--------------------+
| karyawan |
+--------------------+
1 row in set (0.00 sec)
Dari hasil perintah di atas, kita lihat bahwa database coba1 telah memiliki sebuah tabel yang bernama karyawan.
1. Membuat table:
CREATE TABLE `coba2`.`pegawai` (
`nip` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
`nama` VARCHAR(45) NOT NULL,
`alamat` VARCHAR(45),
PRIMARY KEY(`nip`)
)
ENGINE = InnoDB;
Melihat struktur tabel
Untuk melihat struktur sebuah tabel dapat menggunakan perintah "DESCRIBE" atau bisa juga menggunakan perintah "SHOW COLUMNS FROM". Contohnya berikut ini...
mysql> describe karyawan ;
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| kopeg | int(10) unsigned | NO | PRI | NULLauto_increment |
| nama | varchar(30) | NO | | | |
+-------+------------------+------+-----+---------+----------------+
2 rows in set (0.02 sec)
Atau menggunakan perintah "SHOW COLUMNS FROM..."
mysql> show columns from karyawan ;
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| kopeg | int(10) unsigned | NO | PRI | NULL | auto_increment |
| nama | varchar(30) | NO | | | |
+-------+------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
Tidak ada perbedaan hasil dari dua perintah di atas.
Sekarang kita buat sebuah tabel lagi.
mysql> create table contoh1
-> (noid INT)
-> ;
Query OK, 0 rows affected (0.13 sec)
Sekarang kita lihat berapa tabel yang ada di dalam database contoh1:
mysql> show tables ;
+--------------------+
| Tables_in_coba1 |
+--------------------+
| contoh1 |
| karyawan |
+--------------------+
2 rows in set (0.00 sec)
Menghapus table
Menghapus sebuah tabel dalam MySQL dilakukan dengan perintah "DROPTABLE".
mysql> drop table contoh1 ;
Query OK, 0 rows affected (0.03 sec)
Kita lihat lagi tabel yang ada di dalam database coba1:
mysql> show tables ;
+--------------------+
| Tables_in_coba1 |
+--------------------+
| karyawan |
+--------------------+
1 rows in set (0.00 sec)
Mengubah struktur sebuah tabel
Pengubahan struktur dapat dilakukan untuk:
a. Penambahan kolom (ADD),
b. pengubahan lebar dan jenis kolom (MODIFY)
c. penghapusan kolom dan indeks (DROP),
d. penggantian nama kolom (CHANGE),
e. pengantian nama tabel (RENAME), dan sebagainya.
f. Apa pun juga yang anda lakukan pada kolom
Misalnya kita akan menambahkan beberapa kolom baru, yaitu kolom jenis kelamin, kota, tanggal lahir dan kodepos pada tabel karyawan.
Perintah untuk mengubah struktur tabel adalah "ALTER TABLE". Mari kita coba...
mysql> alter table karyawan
-> ADD jenkelamin CHAR(2) NOT NULL,
-> ADD kota VARCHAR(25) NOT NULL,
-> ADD kodepos CHAR(5) NOT NULL,
-> ADD tgllahir DATE
-> ;
Query OK, 0 rows affected (0.20 sec)
Records: 0 Duplicates: 0 Warnings: 0
Sekarang kita lihat hasilnya:
mysql> describe karyawan ;
+------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+----------------+
| kopeg | int(10) | NO | PRI | NULL | auto_increment |
| nama | varchar(30) | NO | | | |
| jenkelamin | char(2) | YES | | NULL | |
| kota | varchar(25) | NO | | | |
| kodepos | char(5) | NO | | | |
| tgllahir | date | YES | | NULL | |
+------------+-------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)
Jika kita ingin mengubah nama kolom kopeg menjadi id. Nama kolom jenkelamin, diubah menjadi jk. Dalam pengubahan kolom ini sebaiknya
'sifat-sifat' kolom yang asli tetap ditulis ulang. Misal bila kolom kopeg memiliki sifat 'auto_increment', maka selama sifat itu tetap dipertahankan, maka dia (auto_increment) harus ditulis ulang. Begini caranya...
Mengubah kolom jenkelamin menjadi jk, sekaligus mengubah jenis datanya dari CHAR(2)
menjadi CHAR(1):
mysql> alter table karyawan
-> change jenkelamin jk char(1) ;
Query OK, 0 rows affected (0.24 sec)
Records: 0 Duplicates: 0 Warnings: 0
Mengubah kolom kopeg menjadi id, tanpa mengubah jenis datanya (tetap INT(10), dan tetap (auto_increment):
mysql> alter table karyawan
-> change kopeg id int(10) auto_increment
-> ;
Query OK, 0 rows affected (0.16 sec)
Records: 0 Duplicates: 0 Warnings: 0
Sekarang kita lihat struktur tabel setelah pengubahan:
mysql> describe karyawan ;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | int(10) | NO | PRI | NULL | auto_increment |
| nama | varchar(30) | NO | | | |
| jk | char(1) | YES | | NULL | |
| kota | varchar(25) | NO | | | |
| kodepos | char(5) | NO | | | |
| tgllahir | date | YES | | NULL | |
+----------+-------------+------+-----+---------+----------------+
6 rows in set (0.00 sec)
Jika ingin mengubah nama tabel karyawan menjadi tabel pegawaidapaat dilakukan denga perintah seperti di bawah ini
mysql> alter table karyawan
-> rename pegawai ;
Query OK, 0 rows affected (0.09 sec)
Kita lihat lagi hasilnya:
mysql> show tables ;
+--------------------+
| Tables_in_latihan1 |
+--------------------+
| pegawai |
+--------------------+
1 row in set (0.00 sec)
Sekarang kita kembalikan lagi nama tabel pegawai menjadi karyawan. Tetapi dengan perintah yang
berbeda, yaitu "RENAME TABLE".
mysql> rename table pegawai
-> to karyawan
-> ;
Query OK, 0 rows affected (0.06 sec)
Jangan lupa untuk memeriksa hasilnya:
mysql> show tables ;
+--------------------+
| Tables_in_latihan1 |
+--------------------+
| karyawan |
+--------------------+
1 row in set (0.00 sec)
2. Mengisi table :
Kita akan mulai mengisi data karyawan ke dalam tabel. Perintah yang digunakan adalah "INSERT INTO". Caranya sebagai berikut:
mysql> insert into karyawan
-> (nama, jenkel, kota, kodepos, tgllahir)
-> values
-> ("Dewi Suharti", "P", "Yogyakarta","41011","1988-11-02")
-> ;
Query OK, 1 row affected (0.17 sec)
Pemasukkan data yang berjenis karakter, selalu diapit dengan tanda
kutip ganda ("). Bisa juga digunakan tanda kutip tunggal ('). Tetapi jangan dicampur dengan tanda kutip ganda dan tanda kutip tunggal, misal: "Dewi Suhartii'. Perhatikan juga pada penulisan tanggal
lahir, menggunakan format "tahun-bulan-tanggal". Standar MySQL untuk format penulisan tanggal. Kita tidak memasukkan data untuk kolom "id"? Ini karena sifat kolom id yang auto_increment, sehingga dia akan secara otomatis berisi dengan angka 1, dan terus bertambah 1, seiring dengan penambahan data.
Nah, kita akan masukkan 4 buah record lagi dengan cara:
mysql> insert into karyawan
-> (nama, jenkel, kota, kodepos, tgllahir)
-> values
-> ("Sundariwati", "P", "Bandung", "40123", "1978-11-12"),
-> ("Ryan Cakep", "L", "Jakarta", "12111", "1981-03-21"),
-> ("Zukarman","L", "Bekasi", "17211", "1978-08-10"),
-> ("Yuliawati", "P", "Bogor", "00000", "1982-06-09")
-> ;
Query OK, 4 rows affected (0.05 sec)
Records: 4 Duplicates: 0 Warnings: 0
insert into pegawai (nip,nama,alamat)
values (1324,'Andi','sleman')
Sekarang kita coba memasukkan data dengan cara yang lain lagi:
mysql> insert into karyawan
-> set nama="Mawar",
-> jenkel="P",
-> kota="Bogor",
-> kodepos="12345",
-> tgllahir="1985-07-07"
-> ;
Query OK, 1 row affected (0.05 sec)
0
Read more
Dasar MySql
Diposting oleh
Made Agung Raharja (De Gunk)
Label:
MySQL
0
Read more
BALANCED SCORECARD
Diposting oleh
Made Agung Raharja (De Gunk)
Label:
Akuntansi Biaya
BALANCED SCORECARD
Kelemahan Alat Ukur Keuangan
Penilaian prestasi perusahaan merupakan salah satu kebutuhan tiap-tiap perusahaan. Penilaian prestasi berguna untuk mengatahui kemajuan atau kemunduran suatu perusahaan. Penilaian prestasi hanya dengan menggunakan tolak ukur keuangan saja sudah tidak dapat mengakomodasi perkembangan yang ada.
Empat kelemahan dari pengukuran trandisional (Hopwood, 1972) adalah;
a. Tidak semua dimensi yang relevan dalam kaitannya dengan prestasi seseorang atau organisasi dapat diungkapkan secara lengkap oleh informasi keuangan.
b. Fungsi biaya ekonomi suatu organisasi yang jarang diketahui dengan akurat dan akuntansi hanya berusaha menyatakan dengan harga taksiran.
c. Data akuntansi hanya dapat memberikan informasi tentang hasil suatu kegiatan sedangkan di pihak lain kegiatan manajemen merupakan hasil proses kegiatan sehari-hari sampai dapat dilihat dalam hasil akhir.
d. Pada dasarnya fungsi utama laporan keuangan adalah memberikan evaluasi prestasi suatu organisasi dalam jangka pendek, sementara evaluasi yang lebih lengkap tentunya memerlukan waktu yang lebih lama dan laporan yang lebih lengkap.
Konsep Balanced scorecard
Balanced scorecard memberi para eksekutif kerangka kerja yang komprehensif untuk menerjemahkan visi dan strategi perusahaan ke dalam seperangkat ukuran kinerja yang terpadu. Banyak perusahaan telah mengadopsi pernyataan misi (mission statement) untuk mengkomunikasikan berbagai nilai dan keyakinan fundamental perusahaan kepada semua pekerja. Pernyataan misi menyatakan berbagai keyakinan dan mengidentifikasi pasar sasaran dan produk utama perusahaan.
Pernyataan misi harus inspirasional. Pernyataan-pernyataan itu harus memberi energi dan motivasi kepada perusahaan. Tetapi pernyataan misi dan slogan yang inspirasional tidaklah cukup. Seperti yang diamati Peter Senge: “Banyak pemimpin yang memiliki visi pribadi yang tidak pernah diterjemahkan ke dalam visi bersama yang dapat menyepuh perusahaan. Yang kurang selama ini adalah disiplin untuk menerjemahkan visi pribadi ke dalam visi bersama.
Balanced scorecard menerjemahkan misi dan strategi ke dalam berbagai tujuan dan ukuran, yang tersusun ke dalam empat perspektif : Finansial, pelanggan, proses bisnis internal, serta pembelajaran dan pertumbuhan. Scorecard memberi kerangka kerja, bahasa, untuk mengkomunikasikan misi dan strategi ; scorecard menggunakan pengukuran untuk memberi informasi kepada para pekerja tentang factor yang mendorong keberhasilan saat ini dan yang akan datang. Dengan mengartikulasikan hasil yang diinginkan perusahaan dan factor pendorong hasil-hasil tersebut, para eksekutif senior berharap dapat menyalurkan energi, kemampuan, dan pengetahuan spesifik sumber daya manusia perusahaan menuju ke arah tercapainya tujuan jangka panjang.
Perspektif Balanced scorecard
Empat perspektif scorecard memberi keseimbangan antara tujuan jangka pendek dan jangka panjang, antara hasil yang diinginkan dengan factor pendorong tercapainya hasil tersebut, dan antara ukuran objektif yang keras dengan ukuran subjektif yang lebih lunak. Sementara keberagaman ukuran pada Balanced scorecard mungkin tampak membingungkan, scorecard yang dibuat dengan benar, seperti yang akan kita lihat, mengandung kesatuan tujuan karena semua ukuran diarahkan kepada pencapaian strategi terpadu.
1. Perspektif Finansial
BSC tetap menggunakan perspektif `finansial karena ukuran financial sangat penting dalam memberikan ringkasan konsekuensi tindakan ekonomis yang sudah diambil. Ukuran kinerja financial memberikan petunjuk apakah strategi perusahaan implementasi dan pelaksanaannya memberikan kontribusi atau tidak kepada peningkatan laba perusahaan.
Tujuan financial biasanya berhubungan dengan profitabilitas, yang diukur misalnya laba operasi, return on capital employee (ROCE) atau yang paling baru, nilai tambah ekonomis (economic value added) EVA. Tujuan financial lainnya mungkin berupa pertumbuhan penjualan yang cepat atau terciptanya arus kas. Tujuan dan ukuran financial harus memainkan peran ganda, menentukan kinerja financial yang diharapkan dari strategi, dan menjadi sasaran akhir tujuan dan ukuran perspektif scorecard lainnya.
Tujuan financial mungkin sangat berbeda untuk setiap tahap siklus hidup bisnis. Teori strategi bisnis menawarkan beberapa strategi yang berbeda yang dapat diikuti oleh unit bisnis dari pertumbuhan pangsa pasar yang agresif sampai kepada konsolidasi bisnis, keluar dan likuidasi. Untuk menyederhanakan terdapat tiga tahap dalam perspektif financial :
1. Bertumbuh (growth). Perusahaan yang sedang bertumbuh berada pada awal siklus hidup perusahaan. Mereka mengahsilkan produk dan jasa yang memiliki potensi pertumbuhan. Untuk memanfaatkan potensi ini, mereka harus melibatkan sumber daya yang cukup banyak untuk mengembangkan dan meningkatkan berbagai produk dan jasa baru; membangun dan memperluas fasilitas produksi; membangun kemampuan operasi menanamkan investasi dalam system, infrastruktur dan jaringan distribusi yang akan mendukung terciptanya hubungan global; dan memelihara serta mengembangkan hubungan yang erat dengan pelanggan. Perusahaan dalam tahap pertumbuhan mungkin beroperasi dengan arus kas yang negative dan pengembalian modal investasi yang rendah. Investasi yang dibuat untuk masa depan mungkin mengkomsumsi uang kas yang lebih banyak dari yang dapat dihasilkan saat ini oleh produk, jasa, dan pelanggan perusahaan yang masih terbatas. Tujuan financial keseluruhan perusahaan dalam tahap pertumbuhan adalah persentase tingkat pertumbuhan pendapatan, dan tingkat pertumbuhan penjualan di berbagai pasar sasaran, kelompok pelanggan dan wilayah. Sebagian besar unit bisnis dalam sebuah perusahaan mungkin berada pada tahap bertahan, situasi di mana unit bisnis masih memiliki daya tarik bagi penanaman investasi dan investasi ulang, tetapi diharapkan mampu menghasilkan pengembalian modal yang cukup tinggi. Unit bisnis seperti ini diharapkan mampu mempertahankan pangsa pasar yang dimiliki dan secara bertahap tumbuh tahun demi tahun. Proyek investasi akan lebih diarahkan untuk mengatasi berbagai kemacetan, perluasan kapasitas, dan peningkatan aktivitas perbaikan yang berkelanjutan, disbanding dengan investasi yang memberikan pengembalian odal dan pertumbuhan jangka panjang seperti yang dilakukan pada tahap pertumbuhan.
2. Bertahan (sustain). Kebanyakan unit bisnis di tahap bertahan akan menetapkan tujuan financial yang terkait dengan profitabilitas. Tujuan seperti ini dapat dinyatakan dengan memakai ukuran yang terkait dengan laba akuntansi seperti laba operasi dan marjin kotor. Ukuran ini menganggap investasi modal di dalam unit bisnis sudah tetap (given/exogenous) dan meminta para manajer untuk memaksimalkan pendapatan yang dihasilkan dari investasi modal. Unit bisnis lain yang lebih memiliki otonomi, diminta untuk tidak hanya mengelola arus pendapatan tetapi juga tingkat investasi modal yang ditanamkan di dalam unit bisnis bersangkutan. Ukuran yang digunakan untuk unit bisnis seperti ini menyelaraskan laba akuntansi yang dihasilkan dengan tingkat investasi yang ditanamkan; ukuran seperti tingkat pengembalian investasi, return-on-capital-employed dan nilai tambah ekonomis adalah contoh ukuran yang digunakan untuk mengevaluasi kinerja unit bisnis seperti itu.
3. Menuai (harvest). Sebagian unit bisnis akan mencapai tahap kedewasaan dalamsiklus hidupnya, tahap dimana perusahaan ingin “menuai” investasi yang dibuat pada dua tahap sebelumnya. Bisnis tidak lagi membutuhkan invertasi yang besar-cukup untuk pemeliharaan peralatan dan kapabilitas, bukan perluasan atau pembangunan berbagai kapabilitas baru. Tujuan financial keseluruhan untuk bisnis pada tahap menuai adalah arus kas operasi (sebelum depresiasi) dan penghematan berbagai kebutuhan modal kerja.
Manajemen Risiko
Pengelolaan financial yang efektif seharusnya memberi perhatian kepada risiko sama seperti yang diberikan kepada pengembalian investasi. Tujuan yang berkaitan dengan pertumbuhan, profitabilitas, dan arus kasmenekankan peningkatan pengembalian investasi. Tetapi bisnis juga harus memberi perhatian yang seimbang kepada pengelolaan dan pengembalian risiko. Secara umum, manajemen risiko berfungsi sebagai pelapis, suatu tujuan tambahan yang seharusnya melengkapi setiap strategi pengembalian investasi yang telah dipilih oleh unit bisnis.
Tema Strategis Perspektif Finansial
Ada tiga tema yang dapat mendorong penetapan strategi bisnis :
1. Bauran dan pertumbuhan pendapatan
Bauran dan pertumbuhan pendapatan mengacu kepada berbagai usaha untuk memperluas penawaran produk dan jasa, menjangkau pelanggan dan pasar baru, mengubah bauran produk dan jasa ke arah penciptaan nilai tambah yang lebih tinggi, serta penetapan ulang harga produk dan jasa.
2. Penghematan biaya/peningkatan produktifitas
Tujuan penghematan biaya dan peningkatan produktifitas mengacu kepada usaha untuk menurunkan biaya langsung produk dan jasa, mengurangi biaya tidak langsung, dan pemanfaatan bersama berbagai sumber daya perusahaan.
3. Pemanfaatan aktiva/strategi investasi
Untuk tema pemanfaatan aktiva, para manajer berusaha untuk mengurangi tingkat modal kerja yang dibutuhkan untuk mendukung volume dan bauran bisnis tertentu. Mereka juga berusaha untuk lebih memanfaatkan basis aktiva tetap, dengan mengarahkan berbagai bisnis baru kepada sumber daya perusahaan, efisien sumber daya yang langka, dan melepas aktiva yang tidak memberikan pengembalian yang memadai sebesar nilai pasarnya. Semua tindakan ini memungkinkan setiap unit bisnis untuk memperbesar tingkat pengembalian aktiva perusahaan..
2. Perspektif Pelanggan
Dalam perspektif pelanggan Balanced scorecard, perusahaan melakukan identifikasi pelanggan dan segmen pasar yang akan dimasuki. Segmen pasar merupakan sumber yang akan menjadi komponen penghasilan tujuan financial perusahaan. Perspektif pelanggan memungkinkan perusahaan menyelaraskan berbagai ukuran pelanggan penting-kepuasan, loyalitas, retensi, akuisisi, dan profitabilitas- dengan pelanggan dan segmen pasar sasaran. Perspektif pelanggan juga memungkinkan perusahaan melakukan identifikasi dan pengukuran, secara eksplisit, proposisi nilai yang akan perusahaan berikan kepada pelanggan dan pasar sasaran. Proposisi nilai merupakan factor pendorong, lead indicator, untuk ukuran pelanggan penting.
Perusahaan harus mengidentifikasi berbagai segmen pasar, baik dalam populasi pelanggan yang ada saat ini maupun pelanggan potensial dan kemudian memilih segmen mana yang akan mereka masuki. Mengidentifikasi proposisi nilai yang akan diberikan kepada segmen sasaran menjadi kunci dalam pengembangan tujuan dan ukuran perspektif pelanggan.
Segmentasi Pasar
Pelanggan yang ada saat ini maupun pelanggan potensial umumnya tidak homogen. Setiap pelanggan mempunyai preferensi dan menilai atribut produk atau jasa secara berbeda. Proses perumusan strategi, dengan menggunakan riset pasar yang mendalam, seharusnya mengungkapkan segmen pelanggan atau pasar yang berbeda, dan juga preferensi masing-masing dalam berbagai dimensi seperti harga, mutu, fungsionalitas, citra, hubungan, dan jenis layanan pelanggan. Strategi perusahaan dapat disesuaikan dengan preferensi pelanggan dan segmen pasar yang dipilih perusahaan sebagai sasaran usaha. Balanced scorecard, sebagai suatu deskripsi strategi perusahaan, harus mengidentifikasi setiap tujuan pelanggan dalam semua segmen sasaran.
Kelompok Pengukuran Pelanggan Utama
1. Pangsa pasar
Menggambarkan proporsi bisnis yang dijual oleh sebuah unit bisnis di pasar tertentu (dalam bentuk jumlah pelanggan, uang yang dibelanjakan, atau volume satuan yang terjual).
2. Retensi pelanggan
Untuk mempertahankan dan meningkatkan pangsa pasar dalam segmen pelanggan sasaran diawali dengan mempertahankan pelanggan yang ada di segmen tersebut. Selain mempertahankan pelanggan, banyak perusahaan menginginkan dapat mengukur loyalitas pelanggan melalui persentase pertumbuhan bisnis dengan pelanggan yang ada saat ini.
3. Akuisisi pelanggan
Mengukur dalam bentuk relative atau absolute, keberhasilan unit bisnis menarik atau memenangkan pelanggan atau bisnis baru.
4. Kepuasan pelanggan
Menilai tingkat kepuasan atas criteria kinerja tertentu di dalam proposisi nilai
5. Profitabilitas pelanggan
Mengukur keuntungan bersih yang diperoleh dari pelanggan atau segmen tertentu setelah menghitung berbagai pengeluaran yang digunakan untuk memenuhi kebutuhan pelanggan tersebut.
Faktor Pendorong Kinerja Pelanggan ( Diluar kelompok utama)
Proposisi nilai pelanggan menyatakan atribut yang diberikan perusahaan kepada produk dan jasanya untuk menciptakan loyalitas dan kepuasan pelanggan dalam segmen pasar sasaran. Proposisi nilai adalah sebuah konsep penting dalam memahami factor pendorong pengukuran utama kepuasan, akuisisi, retensi, serta pangsa pasar dan pangsa rekening pelanggan. Atribut ini dapat dibagi dalam tiga kategori :atribut produk/ jasa, hubungan pelanggan, citra dan reputasi.
3. Perspektif Proses Bisnis Internal
Pada perspektif proses bisnis internal, para manajer melakukan identifikasi berbagai proses yang sangat penting untuk mencapai tujuan pelanggan dan pemegang saham. Perusahaan biasanya mengembangkan tujuan dan ukuran-ukuran untuk perspektif ini setelah merumuskan tujuan dan ukuran untuk perspektif financial dan pelanggan. Urutan ini memungkinkan perusahaan memfokuskan pengukuran proses bisnis internal kepada proses yang akan mendorong tercapainya tujuan yang ditetapkan untuk pelanggan dan para pemegang saham.
Proses penetapan tujuan dan ukuran perspektif proses bisnis internal inilah yang menjelaskan perbedaan yang mencolok antara balanced scorecard dengan system pengukuran kinerja tradisional. Dalam balanced scorecard, tujuan dan ukuran perspektif proses bisnis internal diturunkan dari strategi eksplisit yang ditujukan untuk memenuhi harapan para pemegang saham dan pelanggan sasaran. Proses bertahap, dari atas ke bawah ini biasanya akan mengungkapkan segenap proses bisnis baru yang harus dikuasai dengan baik oleh sebuah perusahaan.
Rantai Nilai Proses Bisnis Internal
Setiap bisnis memiliki rangkaian proses tertentu untuk menciptakan nilai bagi pelanggan dan memberikan hasil financial yang baik. Model ini terdiri atas tiga proses bisnis utama, yaitu :
1. Inovasi
Dalam proses inovasi, unit bisnis meliputi kebutuhan pelanggan yang sedang berkembang atau yang masih tersembunyi, dan kemudian menciptakan produk atau jasa yang akan memenuhi kebutuhan tersebut.
2. Operasi
Proses operasi, langkah utama kedua dalam rantai nilai internal generic, adalah tempat di mana produk atau jasa diproduksi dan disampaikan kepada pelanggan. Proses ini secara histories telah menjadi focus sebagian besar system pengukuran kinerja perusahaan.
3. Layanan purna jual
Langkah utama ketiga dalam rantai nilai internal adalah layanan kepada pelanggan setelah penjualan atau penyampaian produk atau jasa.
4. Perspektif Pembelajaran dan Pertumbuhan
Tujuan di dalam perspektif pembelajaran dan pertumbuhan adalah menyediakan infrastruktur yang memungkinkan tujuan ambisius dalam tiga perspektif lainnya dapat dicapai. Tujuan dalam perspektif pembelajaran dan pertumbuhan merupakan factor pendorong dihasilkannya kinerja yang istimewa dalam tiga perspektif scorecard yang pertama.
Balanced scorecard menekankan pentingnya menanamkan investasi bagi masa datang, dan bukan dalam bidang investasi tradisional saja, seperti peralatan baru, riset, dan pengembangan produk baru. Investasi peralatan dan litbag jelas sangat penting, tetapi tampaknya tidak cukup hanya dengan itu saja. Perusahaan juga harus melakukan investasi dalam infrastruktur – para pekerja, system dan prosedur – jika ingin mencapai tujuan pertumbuhan keuangan jangka panjang yang ambisius.
Terdapat tiga kategori utama untuk perspektif pembelajaran dan pertumbuhan :
1. Kapabilitas Pekerja
Tiga kelompok pengukuran utama pekerja adalah kepuasan pekerja, retensi pekerja, produktivitas pekerja. Dalam kelompok pengukuran ini, tujuan kepuasan pekerja umumnya dipandang sebagai pendorong kedua pengukuran lainnya, retensi pekerja dan produktivitas pekerja.
2. Kapabilitas System Informasi
Jika ingin agar para pekerja bekerja efektif dalam lingkungan kompetitif dunia bisnis dewasa ini, perlu didapat banyak informasi-mengenai pelanggan, proses internal, dan konsekuensi financial keputusan perusahaan. Para pekerja garis depan perlu mendapatkan informasi yang akurat dan tepat waktu tentang setiap hubungan yang ada antara perusahaan dengan pelanggan.
3. Motivasi, Pemberdayaan, Dan Keselarasan
Meskipun pekerja yang terampil dilengkapi dengan akses kepada informasi yang luas, tidak akan memberi kontribusi bagi keberhasilan perusahaan jika mereka tidak akan termotivasi bertindak untuk kepentingan terbaik perusahaan, atau jika mereka tidak diberikan kebebasan membuat keputusan dan mengambil tindakan. Oleh karenanya, factor enabler yang ketiga bagi tujuan pembelajaran dan pertumbuhan terfokus kepada iklim perusahaan yang mendorong timbulnya motivasi dan inisiatif pekerja.
0
Read more
Diposting oleh
Made Agung Raharja (De Gunk)
Label:
Programing ( Bahasa Pascal )
{Program Stack
made Agung raharja
tgl.26 Nop 2009}
program tumpukan;
uses
wincrt;
type
PStackType =^StackType;
StackType = record
data : Integer;
Next : PStackType;
end;
var
stack:PStackType;
input : string;
data, code,i :integer;
procedure Push(Var s:PStackType; d:integer);
var
r : PStackType;
begin
new(r);
r^.Data := d;
r^.next := s;
s :=r;
end;
function Pop(var s:PStackType):Integer;
var
r:PStackType;
begin
pop :=0;
if (s <> nil) then
begin
r :=s;
s :=s^.Next;
Pop := r^.Data;
Dispose(r);
end;
end;
procedure TampilStack(s:PStackType);
begin
if (s <> nil) then
begin
write(s^.Data:5);
TampilStack(s^.Next);
end;
end;
begin
writeln('Procedure Stack');
writeln('===============');
writeln;
Stack := nil;
repeat
write('Masukkan angka');
readln(input);
if (input <> '') then
begin
Val(Input, Data, Code);
if (code <> 0) then
data :=0;
Push(Stack, data);
end;
until (input ='');
writeln;
writeln('Di Dalam Stack');
TampilStack(Stack);
writeln;
writeln;
writeln('Memproses Stack:');
i:=1;
while (stack <> nil) do
begin
writeln('Tumpukan ke-', i, ':', Pop(Stack));
inc(i);
end;
end.
0
/* info.c */
/* programmer: Andi WRE
harus dibuat file info.txt terlebih dahulu*/
#include
#include
#include
#include
#define TAHUN 2009
#define BULAN 11
#define TANGGAL 21
/* prototype fungsi */
void doparent(char[], int, int, int);
void dochild1(int, int, int);
int validasi(int, int, int *); /* validasi input */
int main(){
int rv=0,i,tanggal,bulan,tahun, cek;
pid_t pid1;
char name[20];
printf("Masukkan nama anda: ");
scanf("%s", name);
do {
printf("Tanggal lahir: ");
cek = validasi(1,31,&tanggal);
} while(cek == 0);
do {
printf("Bulan lahir: ");
cek = validasi(1,12,&bulan);
} while(cek == 0);
do {
printf("Tahun lahir: ");
cek = validasi(1900,2010,&tahun);
} while(cek == 0);
pid1=fork(); /* buat proses child1 */
if(pid1 == -1) {
perror("Fork gagal");
exit(EXIT_FAILURE);
}
if(pid1==0) {
dochild1(tanggal, bulan, tahun);
}
else
doparent(name, tanggal, bulan, tahun);
}
// fungsi doparent() menuliskan informasi nama dan tanggal
// lahir, kemudian menuliskan apapun yang dituliskan dalam
// berkas info.txt
//
void doparent(char *fname, int tanggal, int bulan, int tahun){
FILE *pf; /* pointer file */
char buff;
int i = 0;
/* ambil nama file yang isinya ingin dibaca*/
pf=fopen("info.txt","r"); /* buka file untuk dibaca */
if(pf==NULL){
perror("PARENT: Error : \n");
exit(EXIT_FAILURE); /* exit jika buka file gagal */
}
// tampilkan informasi
printf("Nama : %s\n", fname);
printf("Tanggal lahir : %d ", tanggal);
switch(bulan) {
case 1: printf("Januari "); break;
case 2: printf("Februari "); break;
case 3: printf("Maret "); break;
case 4: printf("April "); break;
case 5: printf("Mei "); break;
case 6: printf("Juni "); break;
case 7: printf("Juli "); break;
case 8: printf("Agustus "); break;
case 9: printf("September "); break;
case 10: printf("Oktober "); break;
case 11: printf("November "); break;
case 12: printf("Desember ");
}
printf(" %d\n", tahun);
printf("Informasi : \n");
buff=getc(pf); /* baca karakter pertama */
while(buff!=EOF){
putc(buff,stdout); /* cetak karakter */
buff=getc(pf); /* baca karakter berikutnya sampai EOF */
}
fclose(pf); /* tutup file */
}
// fungsi dochild1() menuliskan informasi tentang umur dan
// tahun - tahun dimana berulang tahun secara mundur
// dimulai dari tahun terakhir sampai tahun lahir
//
void dochild1(int tanggal, int bulan, int tahun){
int i, usia, thn_sekarang;
FILE *pf=fopen("umur.txt","w");
if(pf==NULL){
printf("CHILD1: Error\n");
exit(EXIT_FAILURE);
}
usia = TAHUN - tahun; // prediksi awal
thn_sekarang = TAHUN;
if(bulan > BULAN) {
usia--;
thn_sekarang--;
}
else if(bulan == BULAN)
if(tanggal < TANGGAL) {
usia--;
thn_sekarang--;
}
printf("Usia anda: %d tahun\n", usia);
fprintf(pf, "Usia anda: %d tahun\n", usia);
for(i = 0; i <= usia; i++)
fprintf(pf, "%d\n", thn_sekarang - i);
fclose(pf);
}
// fungsi validasi() akan meminta input dan
// mengecek apakah dalam kisaran min sampai max
//
int validasi(int min, int max, int *nilai)
{
int flag;
scanf("%d", nilai);
if((*nilai >= min) && (*nilai <= max))
flag = 1; /* inputan valid */
else
flag = 0; /* inputan tidak valid */
return flag;
}
Read more
Program C dengan GUI Linux (Info.c)
Diposting oleh
Made Agung Raharja (De Gunk)
Label:
Programing(Bahasa C )
/* info.c */
/* programmer: Andi WRE
harus dibuat file info.txt terlebih dahulu*/
#include
#include
#include
#include
#define TAHUN 2009
#define BULAN 11
#define TANGGAL 21
/* prototype fungsi */
void doparent(char[], int, int, int);
void dochild1(int, int, int);
int validasi(int, int, int *); /* validasi input */
int main(){
int rv=0,i,tanggal,bulan,tahun, cek;
pid_t pid1;
char name[20];
printf("Masukkan nama anda: ");
scanf("%s", name);
do {
printf("Tanggal lahir: ");
cek = validasi(1,31,&tanggal);
} while(cek == 0);
do {
printf("Bulan lahir: ");
cek = validasi(1,12,&bulan);
} while(cek == 0);
do {
printf("Tahun lahir: ");
cek = validasi(1900,2010,&tahun);
} while(cek == 0);
pid1=fork(); /* buat proses child1 */
if(pid1 == -1) {
perror("Fork gagal");
exit(EXIT_FAILURE);
}
if(pid1==0) {
dochild1(tanggal, bulan, tahun);
}
else
doparent(name, tanggal, bulan, tahun);
}
// fungsi doparent() menuliskan informasi nama dan tanggal
// lahir, kemudian menuliskan apapun yang dituliskan dalam
// berkas info.txt
//
void doparent(char *fname, int tanggal, int bulan, int tahun){
FILE *pf; /* pointer file */
char buff;
int i = 0;
/* ambil nama file yang isinya ingin dibaca*/
pf=fopen("info.txt","r"); /* buka file untuk dibaca */
if(pf==NULL){
perror("PARENT: Error : \n");
exit(EXIT_FAILURE); /* exit jika buka file gagal */
}
// tampilkan informasi
printf("Nama : %s\n", fname);
printf("Tanggal lahir : %d ", tanggal);
switch(bulan) {
case 1: printf("Januari "); break;
case 2: printf("Februari "); break;
case 3: printf("Maret "); break;
case 4: printf("April "); break;
case 5: printf("Mei "); break;
case 6: printf("Juni "); break;
case 7: printf("Juli "); break;
case 8: printf("Agustus "); break;
case 9: printf("September "); break;
case 10: printf("Oktober "); break;
case 11: printf("November "); break;
case 12: printf("Desember ");
}
printf(" %d\n", tahun);
printf("Informasi : \n");
buff=getc(pf); /* baca karakter pertama */
while(buff!=EOF){
putc(buff,stdout); /* cetak karakter */
buff=getc(pf); /* baca karakter berikutnya sampai EOF */
}
fclose(pf); /* tutup file */
}
// fungsi dochild1() menuliskan informasi tentang umur dan
// tahun - tahun dimana berulang tahun secara mundur
// dimulai dari tahun terakhir sampai tahun lahir
//
void dochild1(int tanggal, int bulan, int tahun){
int i, usia, thn_sekarang;
FILE *pf=fopen("umur.txt","w");
if(pf==NULL){
printf("CHILD1: Error\n");
exit(EXIT_FAILURE);
}
usia = TAHUN - tahun; // prediksi awal
thn_sekarang = TAHUN;
if(bulan > BULAN) {
usia--;
thn_sekarang--;
}
else if(bulan == BULAN)
if(tanggal < TANGGAL) {
usia--;
thn_sekarang--;
}
printf("Usia anda: %d tahun\n", usia);
fprintf(pf, "Usia anda: %d tahun\n", usia);
for(i = 0; i <= usia; i++)
fprintf(pf, "%d\n", thn_sekarang - i);
fclose(pf);
}
// fungsi validasi() akan meminta input dan
// mengecek apakah dalam kisaran min sampai max
//
int validasi(int min, int max, int *nilai)
{
int flag;
scanf("%d", nilai);
if((*nilai >= min) && (*nilai <= max))
flag = 1; /* inputan valid */
else
flag = 0; /* inputan tidak valid */
return flag;
}
0
Read more
SelectionSort(Pascal)
Diposting oleh
Made Agung Raharja (De Gunk)
Label:
Programing ( Bahasa Pascal )
{Program Pengurutan data
INSERTION SORT
Progmr: Made Agung Raharja
tgl : 231109
=--------------------------------------------------}
program Insertion_sort;
uses
wincrt;
type
Array100=array[1..100] of integer;
var
Data: Array100;
DataCount:Integer;
procedure Input(var d: Array100; var c : integer);
var
Code, k : Integer;
i : string;
begin
k:=1;
repeat
write('Masukkan angka ke-', k, ':');
readln(i);
if (i <> '') then
begin
val (i, d[k], Code);
if (Code <> 0 )then
d[k] :=0;
end;
inc(k);
until (K > 100) or (i = '');
c :=k-2;
end;
procedure swap(var a, b :integer);
var
t:integer;
begin
t:=a;
a:=b;
b:=t;
end;
procedure SelectionSort(var d:Array100; c: integer);
var
lok,i, j : integer;
begin
for i := 1 to c-1 do
begin
lok:=i;
for J:= i+1 downto 2 do
if (d[j]< d[j-1]) then swap(d[j], d[j-1]); end; end; procedure tampil(var d:Array100; c: integer); var i : integer; begin for i := 1 to c do writeln(d[i]:5); writeln; end; begin Input(data, dataCount); writeln; writeln('Sebelum Diurutkan'); Tampil(Data, DataCount); SelectionSort(Data, DataCount); writeln; writeln; writeln('Setelah Diurutkan'); Tampil(Data, DataCount); end.
Langganan:
Postingan (Atom)