BAB 2 LANDASAN TEORI 2.1 Konsep Analisis dan Perancangan Sistem 2.1.1 Pengertian Analisis Sistem Analisis sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Sistem ini menggambarkan suatu kejadian-kejadian dan kesatuan yang nyata adalah suatu objek nyata, seperti tempat, benda, dan orang-orang yang benar-benar ada dan terjadi (Hartono, 2005, p2). Menurut Burch dan Grundnitki, desain sistem dapat didefinisikan sebagai penggambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari beberapa elemen-elemen yang terpisah kedalam suatu kesatuan yang utuh dan berfungsi (Hartono, 2005, p196). 2.1.2 Pengertian Perancangan Sistem Definisi perancangan menurut Ladjamudin (2005, p39) dalam bukunya yang berjudul Analisis & Desain Sistem Informasi, menyebutkan bahwa: ”perancangan adalah suatu kegiatan yang memiliki tujuan untuk men-design sistem baru yang dapat menyelesaikan masalah-masalah yang dihadapi perusahaan yang diperoleh dari pemilihan alternatif sistem yang terbaik.” Karakteristik Sistem menurut Hartono (2005, p3) mengemukakan sistem mempunyai karakteristik atau sifat-sifat tertentu, yakni: 1 2 1. Komponen Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, yang artinya saling bekerja sama membentuk satu kesatuan dari komponen-komponen sistem atau elemen-elemen sistem dapat berupa suatu subsistem atau bagian-bagian dari sistem. Setiap subsistem mempunyai sifat-sifat dari sistem untuk menjalankan suatu fungsi tertentu, mempengaruhi proses sistem yang menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan. 2. Batasan Sistem Batasan sistem (boundary) merupakan daerah yang membatasi antara suatu sistem dengan sistem yang lainnya atau dengan lingkungan luarnya. Batasan suatu sistem menunjukan ruang lingkup dari sistem tersebut. 3. Lingkungan Luar Sistem Lingkungan luar (envinronment) dari suatu sistem adalah apapun diluar batas sistem yang mempengaruhi operasi. Lingkungan luar sistem dapat bersifat menguntungkan dana dapat juga bersifat menguntungkan sistem tersebut. Lingkungan luar yang menguntungkan berupa energi dari sistem dan dengan demikian harus tetap dijaga dan dipelihara. Sedangkan lingkungan luar yang merugikan harus ditahan dan dikendalikan, apabila tidak maka akan mengganggu kelangsungan hidup dari sistem. 3 4. Penghubung Sistem Penghubung (interface) sistem merupakan media penghubung antara satu subsistem dengan subsistem yang lainnya. Melalui penghubung ini memungkinkan sumber daya mengalir dari satu subsistem ke subsistem yang lainnya. Dengan penghubung satu subsistem dapat berinteraksi dengan subsistem yang lainnya membentuk satu kesatuan. 5. Masukkan Sistem Masukan (input) sistem adalah energi yang masukan kedalam sistem. Masukan dapat berupa masukan perawatan (maintenance input) dan masukan sinyal (signal input). Maintenance input adalah energi yang dimasukan agar sistem tersebut dapat beroperasi. Signal input adalah energi yang diproses untuk didapatkan keluaran. Sebagai contoh data di dalam komputer adalah signal input untuk diolah menjadi informasi. 6. Keluaran Sistem Keluaran (output) sistem adalah hasil dari energi yang diolah dan diklafikasikan menjadi keluaran yang berguna dan sisa pembuangan. Misalnya untuk sistem komputer, panas yang dihasilkan adalah keluaran yang tidak berguna dan merupakan hasil sisa pembuangan, sedangkan informasi adalah keluaran yang dibutuhkan. 4 7. Pengolahan Sistem Suatu sistem dapat mempunyai suatu bagian pengolah yang akan merubah masukan menjadi keluaran. Suatu sistem produksi akan mengolah masukan berupa bahan baku dan bahan-bahan yang lain menjadi keluaran berupa barang jadi. 8. Sasaran Sistem Dengan adanya sasaran sistem, maka kita dapat menentukan masukan yang dibutuhkan sistem dan keluaran apa yang akan dihasilkan sistem tersebut dapat dikatakan berhasil apabila mencapai atau mengenai sasaran maupun tujuan. 2.2 Internet 2.2.1 Pengertian Internet Internet merupakan rangkaian jaringan dalam jaringan yang menghubungkan pemerintah, komputer universitas, individual group yang non-profit dimiliki dan oleh perusahaan. Interkoneksi ini dihubungkan dengan standar protokol yang bebas dan terbuka. Internet adalah sistem jaringan komputer dan jaringan dari banyak jaringan yang meliputi seluruh dunia. Internet bersifat publik, kooperatif dan mandiri yang memfasilitasi akses ke ratusan atau jutaan manusia di seluruh dunia (Turban, 2005, p478). 5 2.3 World Wide Web (WWW) World Wide Web adalah aplikasi yang digunakan dalam internet yang berfungsi sebagai transportasi data yang diterima sebagai standar untuk menyimpan, menerima, formatting, dan menampilkan informasi melalui client/server architecture (Turban, 2005, p50). 2.3.1 HyperText Transfer Protocol (HTTP) HTTP adalah sebuah protokol yang menentukan aturan main antara software client dan software server dalam penyediaan dokumen yang diminta browser (Sunarto, 2005, p22). Transaksi HTTP terdiri dari tahapan yaitu a. Koneksi. Client melakukan koneksi dengan web-server. b. Permintaan. Client mengirim permintaan ke web-server. c. Respon. Web-server mengirim respon kepada client. d. Selesai. Koneksi ditutup oleh web-server. 2.3.2 HyperText Markup Language (HTML) HTML adalah bahasa pemrograman yang digunakan pada web, dalam format dokumen dan menghubungkan dynamic hypertext ke dokumen lain yang tersimpan dalam komputer lain (Turban, 2005, p482). 6 2.3.3 Browser Browser adalah sebuah program aplikasi yang dipergunakan untuk menjelajah dunia maya internet. Aplikasi ini mempunyai kemampuan menampilkan suatu web page yang ditulis dalam bentuk dokumen HTML (Sunarto, 2005, p23). 2.3.4 Hosting Web hosting adalah jasa penyedia hosting di internet. Tugas web hosting adalah menyediakan dan mengelola ruang hard disk yang akan disewa oleh pemilik suatu domain untuk menyimpan file-file nya agar halaman web si pemilik domain dapat ditampilkan di browser internet. Pada dasarnya, perusahaan web hosting adalah lembaga bisnis yang menyediakan komputer server yang melayani banyak pemilik domain (Juju, 2010, p11-13). Suatu domain biasanya diakhiri dengan .com, .net, .org dan lain-lain. Ada beberapa tipe hosting diantaranya : a. Virtual Hosting. Di dalam satu server terdapat banyak domain dan hosting. b. Free Hosting. c. Dedicated Hosting. Di dalam satu server hanya terdapat satu domain. d. Collated Hosting. Sama seperti dedicated hosting namun yang mengurus dan merawat server adalah perusahaan hosting. 7 2.3.5 Web Server Web Server adalah perangkat lunak yang mengatur atau mengelola program berdasarkan permintaan browser dan mengirimkan hasil dari permintaan tersebut (Supardi, 2009, p181). 2.4 Web-applications Web-applications adalah satuan aplikasi yang cukup luas. Pada bentuk yang paling sederhana, web-applications dapat berupa serangkaian hypertext files yang terhubung yang memberikan informasi berupa text dengan sedikit gambar atau grafik. Seiring dengan perkembangannya, webapplications berkembang sehingga memiliki banyak fungsi, fitur, dan content, juga terhubung dengan database korporasi dan aplikasi bisnis yang rumit (Pressman, 2005, p41). 2.5 Rekayasa Piranti Lunak 2.5.1 Pengertian Rekayasa Piranti Lunak Perangkat lunak dapat didefinisikan sebagai berikut : a. Instruksi-instruksi (program komputer) yang bisa dijalankan akan memberikan fungsi dan unjuk kerja yang diharapkan. b. Struktur data yang memungkinkan program untuk memanipulasi informasi secara memadai. c. Dokumen-dokumen yang menjelaskan operasi dan penggunaan program- program. Dengan pengertian di atas, maka perangkat lunak merupakan komponen sentral di dalam aktifitas yang komplek. Dengan alasan kompleksitas tersebut, maka hal ini merupakan suatu tantangan 8 untuk dapat menghasilkan perangkat lunak yang memerlukan suatu kekhususan dan teknik yang memadai (Pressman, 2005, p36). Rekayasa Piranti Lunak (RPL) menurut Pressman (2005, p53) pengertian awal dari rekayasa perangkat lunak (software engineering) diajukan oleh Firtz Bauer. Definisi rekayasa perangkat lunak menurut Firtz Bauer adalah pembentukan dan penggunaan prinsip-prinsip rekayasa dalam rangka mendapatkan perangkat lunak yang ekonomis yaitu perangkat lunak yang dapat diandalkan dan bekerja pada mesin yang nyata. Institude If Electrical Electronics Engineers (IEEE) menyatakan definisi yang lebih komperhensif mengenai rekayasa perangkat lunak : 1. Aplikasi yang sistemastis, disiplin, terukur terhadap pengembangan, pengoperasian, dan pemeliharaan perangkat lunak. 2. Studi terhadap pendekatan-pendekatan seperti pada butir pertama. 2.5.2 Karakteristik Perangkat Lunak Menurut Pressman (2005, p37) perangkat lunak lebih merupakan elemen logika dan bukan merupakan elemen sistem fisik. Dengan demikian, perangkat lunak memiliki ciri yang berbeda dari perangkat keras : 1. Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk yang klasik Meskipun banyak kesamaan diantara pabrik perangkat keras 9 dan perangkat lunak, aktivitas keduanya secara mendasar sangat berbeda. Dalam kedua akivitas tersebut, kualitas yang tinggi dicapai melalui perancangan yang baik, tetapi di dalam fase pembuatan perangkat keras, selalu saja ditemukan masalah kualitas yang tidak mudah untuk disesuaikan dengan perangkat lunak. Biaya untuk perangkat lunak dikonsentrasikan kepada pengembangan. Hal ini berarti proyek perangkat lunak tidak dapat diatur seperti pengaturan proyek-proyek manufaktur. 2. Perangkat lunak tidak pernah usang Perangkat keras mengalami laju kegagalan yang sangat tinggi pada awal hidupnya (kegagalan-kegagalan itu sering disebabkan oleh perancangan atau cacat pembuatan). Cacat-cacat tersebut harus dikoreksi, dan laju kegagalan turun ke keadaan steady-state (diharapkan, sangat rendah) untuk beberapa periode waktu. Tetapi seiring dengan perjalanan waktu, laju kegagalan bertambah lagi pada saat komponen perangkat keras terkena pengaruh penumpukan debu, getaran, ketidak hati-hatian, suhu tinggi, serta beberapa kerusakan yang disebabkan oleh lingkungan. Secara singkat dapat dikatakan bahwa perangkat keras sudah mulai menjadi usang. Perangkat lunak tidak rentan terhadap pengaruh lingkungan yang merusak dan menyebabkan perangkat keras menjadi usang. Kesalahan-kesalahan yang tidak dapat ditemukan akan menyebabkan tingkat kegagalan menjadi sangat tinggi pada awal hidup program. Tetapi hal itu dapat diperbaiki (diharapkan tidak 10 lagi ditemukan kesalahan yang lain). Aspek lain dari keusangan menggambarkan perbedaan antara perangkat keras dan perangkat lunak. Bila komponen suatu perangkat keras telah usang, komponen dapat diganti dengan suku cadangnya. Namun tidak ada suku cadang bagi perangkat lunak. Setiap kegagalan perangkat lunak menggambarkan kesalahan dalam perancangan atau proses di mana rancangan diterjemahkan kedalam kode mesin yang dapat dieksekusi. Demikianlah pemeliharaan perangkat lunak menjadi lebih kompleks daripada pemeliharaan perangkat keras. 3. Sebagian besar perangkat lunak dibuat secara custom-built, serta tidak dapat dirakit dari komponen yang sudah ada. Dalam pembuatan perangkat keras, pengembang desain menggambar sebuah skema sederhana rangkaian digital, melakukan analisis dasar untuk memastikan bahwa fungsi yang tepat dapat dicapai serta kemudian menyesuaikan ke katalog komponen digital. Setiap perangkat keras mempunyai nomor bagian tersendiri, sebuah fungsi yang sudah tervalidasi, interface yang didefinisikan dengan baik, serta rangkaian standar tuntunan integrasi. Setelah masing-masing komponen diseleksi, perangkat keras dapat dipesan secara terpisah. Tetapi para perancang perangkat lunak tidak diberi fasilitas seperti yang tergambar di atas. Dengan sedikit pengecualian, tidak ada katalog komponen perangkat lunak. Memang memungkinkan untuk memesan perangkat lunak secara terpisah, tetapi tetap merupakan satu 11 kesatuan yang lengkap, bukan sebagai komponen yang dapat dipasangkan ke dalam program-program yang baru. 2.5.3 System Development Life Cycle (SDLC) Menurut Turban (2005, p489) yang dimaksud dengan SDLC adalah kerangka terstruktur, digunakan untuk proyek IT yang besar, yang terdiri dari beberapa proses yang berurutan yang diperlukan untuk membangun suatu sistem informasi. Pendekatan ini digunakan untuk menggambarkan SDLC dalam skripsiini. Menurut Turban (2005, p490) pendekatan SDLC yang tugasnya dilakukan secara bertahap dengan menyelesaikan satu tugas sebelum melanjutkan ke tugas selanjutnya. Gambar 2.1 Delapan step dalam SDLC (Sumber : Turban, Rainer dan Potter, 2005, p490) 12 Tahap-tahap SDLC adalah sebagai berikut : 1. Investigasi Sistem (System Investigation). Feasibility study atau pembelajaran terhadap segala kemungkinan yang dapat terjadi adalah tahap terpenting dalam tahap system investigation. Dengan feasibility study yang benar maka suatu perusahaan dapat terhindar dari kesalahan yang dapat meningkatkan pengeluaran. Feasibility study menentukan kemungkinan adanya keuntungan dari proyek pengembangan sistem yang diajukan dan menilai proyek tersebut secara teknik, biaya, dan sifat. 2. Analisis Sistem (System Analysis). System Analysis adalah analisis terhadap masalah bisnis yang akan diselesaikan dengan sistem informasi oleh perusahaan. Tahap ini mendefinisikan masalah bisnis, mengidentifikasikan penyebab, menspesifikasikan solusi, serta mengidentifikasi informasi-informasi yang diperlukan. Tujuan utama dari tahap ini adalah untuk menggabungkan informasi mengenai sistem yang ada dan menentukan kebutuhan dari sistem yang baru. Beberapa hal yang dihasilkan dari tahap analisis adalah : 1. Kekuatan dan kelemahan dari sistem yang telah ada. 2. Fungsi-fungsi yang diperlukan oleh sistem yang baru untukmenyelesaikan permasalahan. 3. Kebutuhan informasi mengenai pengguna untuk system 13 yang baru. 3. Desain Sistem (System Design). Tahap ini menjelaskan bagaimana suatu sistem akan bekerja. Yang dihasilkan oleh desain sistem adalah sebagai berikut : 1. Output, Input, dan User Interface dari sistem 2. Perangkat keras, perangkat lunak, database, telekomunikasi, personal, dan prosedur 3. 4. Penjelasan bagaimana komponen terintegrasi Pemrograman (Programming). Tahap ini mencakup penerjemahan spesifikasi desain kedalam bahasa komputer. 5. Pengujian (Testing). Tahap ini dipergunakan untuk memeriksa apakah pemrograman komputer telah menghasilkan hasil yang diinginkan dan diharapkan atas situasi tertentu. Testing didesain untuk mendeteksi adanya kesalahan di dalam coding. 6. Penerapan (Implementation). Implementasi adalah proses perubahan dari penggunaan sistem lama ke sistem yang baru. Ada empat strategi yang dapat digunakan oleh suatu perusahaan dalam menghadapi perubahan, yaitu : 1. Parallel conversion : Perusahaan akan menerapkan kedua sistem, yang lama dan yang baru, secara simultan 14 dalam periode waktu tertentu. 2. Direct conversion : Sistem yang baru akan langsung dterapkan dan yang lama akan langsung didisfungsikan. 3. Pilot conversion : Sistem yang baru akan dipergunakan dalam satu bagian dari organisasi. Apabila sistem baru tersebut berhasil maka akan digunakan pada bagian lain dari organisasi. 4. Phased conversion : Sistem akan digunakan secara bertahap, perkomponen atau modul. Satu persatu modul akan dicoba dan dinilai, bila satu modul berhasil maka modul lain akan digunakan sampai seluruh sistem berhasil dengan baik. 7. Pengoperasian dan Pemeliharaan (Operation and Maintenance). Setelah tahap konversi berhasil maka sistem baru akan dioperasikan dalam suatu periode waktu. Ada beberapa tahap dalam maintenance atau pemeliharaan, yaitu: a. Debugging the program : Proses yang berlangsung selama sistem berjalan b. Terus memperbaiki sistem untuk mengakomodasi perubahan dalam situasi bisnis c. Menambah fungsi atau feature baru di dalam sistem 15 2.6 PHP PHP adalah salah satu bahasa scripting untuk web programming yang bersifat server-side dan juga untuk command line interface atau untuk graphical application yang bersifat stand alone. PHP juga termasuk salah satu bahasa pemograman script yang paling banyak dipakai saat ini, PHP banyak dipakai untuk memprogram situs web dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. 2.6.1 Pengertian PHP Pengertian PHP menurut Suryatiningsih (2009, p141) PHP adalah bahasa scripting yang menyatu dengan HTML dan dijalankan pada server-side. Artinya, semua sintax yang diberikan akan sepenuhnya dijalankan pada server sedangkan yang dikirimkan ke browser hanya hasilnya saja. PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP banyak dipakai untuk memrogram situs web dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. Contoh terkenal dari aplikasi PHP adalah phpBB dan MediaWiki (software di belakang Wikipedia). PHP juga dapat dilihat sebagai pilihan lain dari ASP.NET/C#/VB.NETMicrosoft, ColdFusion Macromedia, JSP/Java Sun Microsystems, dan CGI/Perl. Contoh aplikasi lain yang lebih kompleks berupa CMS yang dibangun menggunakan PHP adalah Mambo, Joomla!, Postnuke, Xaraya, dan lain-lain. 16 Kelebihan PHP 2.6.2 1. Life Cycle yang singkat, sehingga PHP selalu up-to-date mengikuti perkembangan teknologi internet dan diterbitkan secara gratis. 2. PHP mudah dibuat dan kecepatan aksesnya tinggi. 3. PHP termasuk bahasa yang embedded (bisa diletakkan dalam tag HTML). 4. Cross Platform, PHP dapat dipakai di hampir semua webserver yang ada di pasaran (seperti Apache, AOLServer, Microsoft IIS, dll) yang dijalankan pada berbagai sistem operasi (sepertiLinux, Unix, Solaris, Windows). 5. PHP mendukung banyak paket database, baik yang komersil maupun non-komersil, seperti PostgreSQL, mSQL, mySQL, Oracle, Microsoft SQL Server, dll. 2.7 6. PHP termasuk server-side programming. 7. Tingkat keamanan lebih tinggi. MySQL Pengertian MySQL menurut Kadir (2009, p15) merupakan software yang tergolong database server dan bersifat open source. Open source menyatakan bahwa software ini dilengkapi dengan source code (kode yang dipakai untuk membuat MySQL), selain tentu saja bentuk executable-nya atau kode yang dapat dijalankan secara langsung dalam sistem operasi dan bisa diperoleh dengan cara mengunduh di internet secara gratis. Menurut Nugroho (2009, p1) MySQL adalah sebuah program 17 database server yang mampu menerima dan mengirimkan datanya sangat cepat, multi user serta menggunakan perintah standard SQL (Structured Query Languange). 2.7.1 Keunggulan MySQL Beberapa keunggulan MySQL adalah : - Mampu menangani jutaan user dalam jangka waktu yang bersamaan. - Mampu menampung lebih dari 50.000.000 record. - Sangat cepat mengakses perintah. 2.8 CASCADING Style Sheet (CSS) 2.8.1 Pengertian CSS Cascading Style Sheet (CSS) adalah bahasa pemrograman desain situs yang mengontrol format tampilan sebuah halaman situs yang ditulis dengan menggunakan bahasa penanda (markup language) (Wiswakarma, 2010, p2). 2.8.2 Kelebihan CSS 1. Mudah diakses Karena CSS dapat berfungsi untuk memisahkan antara konten utama dengan layout seperti huruf, warna, dll. Sehingga hal ini mendatangkan manfaat kemudahan untuk mengakses situs pemeliharaan situs. serta kemudahan untuk melakukan 18 2. Hemat Waktu Karena menggunakan format tersendiri dalam menampilkan halaman-halaman situs, maka memerlukan waktu akses yang lebih cepat karena tidak ada pengulangan kode yang harus dibaca oleh web browser. Selain itu dari sisi pengembangan dengan menggunakan CSS tidak diperlukan pengulangan dalam menuliskan kode program yang sama sehingga proses pengembangan juga menjadi lebih cepat. 3. Pilihan tampilan yang jauh lebih menarik Dengan menggunakan CSS halaman situs dapat dibuat sedemikian rupa sehingga dapat menghasilkan tampilan yang menarik. 2.9 Unified Modeling Language (UML) 2.9.1 Pengertian UML Unfied Modelling Language (UML) menurut Fowler (2005, p1) adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek (OO). UML merupakan standar yang relatif terbuka yang dikontrol oleh Object Management Company (OMC), sebuah konsorsium terbuka yang terdiri dari banyak perusahaan. Unified Modeling Language (UML) adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, 19 menggambarkan, dan membangun sistem perangkat lunak seperti halnya pada business modelling dan sistem lainnya. UML tidak berdasarkan pada bahasa pemrograman tertentu. Standar spesifikasi UML dijadikan standar defacto oleh OMG (Object Management Group) pada tahun 1995. UML yang berorientasikan object mempunyai beberapa notasi standar. Spesifikasi ini menjadi populer dan standar karena sebelum adanya UML, telah ada berbagai macam spesifikasi yang berbeda. Hal ini menyulitkan komunikasi antar pengembang perangkat lunak. Untuk itu beberapa pengembang spesifikasi yang sangat berpengaruh berkumpul untuk membuat standar baru. UML dirintis oleh Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique) dan Ivar Jacobson OOSE (Object-Oriented Software Engineering). UML mendeskripsikan OOP (Object Oriented Programming) dengan beberapa diagram. 2.9.2 Structure Diagram 2.9.2.1 Class Diagram Class diagram menurut Munawar (2005, p28) merupakan himpunan dari objek-objek yang sejenis. Sebuah objek memiliki keadaan sesaat (state) dan perilaku (behavior). State sebuah objek adalah kondisi objek tersebut yang dinyatakan dalam attribute/properties. Sedangkan perilaku suatu bagaimana sebuah objek memberikan reaksi. objek mendefinisikan bertindak/beraksi dan 20 Notasi-notasi yang digunakan dalam diagram kelas adalah sebagai berikut: 1. Class Menyatakan kelas yang digunakan. Diagram ini berisikan tiga komponen, yaitu nama kelas, atribut dalam kelas, dan behavior. Atribut merepresentasikan parameter dan data-data yang terdapat dalam kelas. Behavior menyatakan fungsi atau method yang berlaku dalam kelas tersebut. Gambar 2.2 Class Diagram (Sumber : Munawar, 2005, p29) 21 No. Simbol Nama Keterangan Sebuah deskripsi dari seperangkat objek yang berbagi atribut, operasi dan relasi yang sama. Class Class terdiri dari 3 bagian, yaitu 01. nama class pada bagian atas, atribut pada bagian tengah, dan operasi pada bagian bawah. Merupakan hubungan 02. Association structural antar class yang saling berelasi. Merupakan hubungan special dari hubungan asosiasi yang menspesifikasikan semua Aggregation 03. hubungan antara kumpulan (the whole) dan sebuah bagian (the part). Agregasi digambarkan dengan wajik tidak terisi. 22 Komposisi digambarkan Composition 04. dengan wajib berisi berwarna hitam. Menggambarkan jumlah Multiplicity objek yang berpartisipasi 05. dalam hubungan antar class. Merupakan sebuah relasi spesialisasi / generalisasi Generalization 06. dimana suatu kelas dapatlebih spesifik dari kelas lainnya. Gambar 2.3 Simbol – Simbol Class Diagram (Sumber : Munawar, 2005, p33) 2. Inheritance Menyatakan hirarki dari suatu kelas sebagai komponen kelas lain yang juga disebut sub objek. 23 Gambar 2.4 Inheritance (Sumber : Munawar, 2005, p35) 3. Agregation Merupakan sebuah bentuk asosiasi yang menyatakan bagian dari keseluruhan dan digambarkan dalam notasi berbentuk diamond. 4. Message Message (pesan) merupakan cara untuk berhubungan antara satu objek dengan objek lain. Suatu pesan dikirimkan oleh suatu objek kepada objek tertentu dapat digambarkan sebagai anak panah. Objek pengirim mengirimkan pesan kepada objek penerima supaya objek penerima melaksanakan salah satu metode yang dimilikinya. 24 2.9.3 Behavior Diagram 2.9.3.1 Use Case Diagram Use Case menurut Fowler (2005, p141) adalah teknik untuk merekam persyaratan fungsional sebuah sistem. Use Case mendeskripsikan interaksi tipikal antara para pengguna sistem dengan sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem tersebut digunakan. Use Case Diagram menampilkan aktor mana yang menggunakan use case mana, use case mana yang memasukkan use case lain dan hubungan antara aktor dan use case. Use case diagram menggambarkan interaksi antara sistem dengan sistem eksternal dan pengguna. Dengan kata lain, secara grafis menggambarkan siapa yang menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk berinteraksi dengan sistem. Pemodelan use case awalnya disusun oleh Dr. Ivar Jacobson pada tahun 1986 dan menjadi populer setelah beliau menerbitkan buku, Object-Oriented Software Engineering, pada tahun 1992. Dr. Jacobson menggunakan pemodelan use case sebagai kerangka kerja untuk metodologi objectory-nya dengan sukses digunakannya untuk mengembangkan sistem informasi berorientasi-objek. 25 Gambar 2.5 Use Case Diagram (Sumber : Martin Fowler, 2005, p142) No. Gambar Nama Keterangan Orang atau divisi yang terlibat 01. Actor 02. Use Case 03. Communicates dalam suatu sistem. Kegiatan yang dilakukan oleh actor. Komunikasi antar actor dan use case Relasi use case dimana proses 04. Include bersangkutan akan dilanjutkan ke proses yang dituju. Relasi use case tambahan ke sebuah 05. Extends use ditambahkan case dapat yang berdiri sendiri tanpa use case tambahan itu. Batas gambaran antara sistem 06. System Boundary dan actor. Gambar 2.6 Simbol – Simbol Use Case Diagram (Sumber : Martin Fowler, 2005, p144) 26 Bagian umum kejadian use case adalah deskripsi use case, yaitu langkah demi langkah mulai dengan pelaku menginisialisasi use case dan melanjutkannya hingga akhir kejadian bisnis. Di mana diadakan deskripsi use case terdapat : Nama use-case (use case), merupakan nama dari suatu use case. Aktor (actor), pelaku yang berpartisipasi di dalam suatu use case. Tujuan (goals), tujuan dari use case. Prakondisi (precondition), batasan pada keadaan sistem sebelum use case dapat di eksekusi. Ringkasan (summary), deskripsi ringkasan pendek yang berisi sejumlah kalimat yang menunjukan secara garis besar tujuan use case dan berbagai kegiatannya. Related use case, use case yang saling berhubungan. Langkah-langkah (Steps), menjelaskan setiap langkah dari use case dengan menggunakan dua kolom, dimana kolom sebelah kiri menunjukkan aksi dari pelaku dan kolom sebelah kanan merupakan respon yang diberikan oleh sistem. Use Case descriptive Setiap use case harus dijelaskan alur prosesnya melalui sebuah deskripsi use case (use case 27 description) atau skenario use case Deskripsi use case berisi: Nama use case yaitu penamaan use case yang menggunakan kata kerja. Deskripsi yaitu penjelasan mengenai tujuan use case dan nilai yang akan didapatkan oleh aktor. Kondisi sebelum (pre-condition) yaitu kondisikondisi yang perlu ada sebelum use case dilakukan. Kondisi sesudah (post-condition) yaitu kondisi-kondisi yang sudah dipenuhi ketika use case sudah dilaksanakan. Alur dasar (basic flow) yaitu alur yang menceritakan jika semua aksi yang dilakukan adalah benar atau proses yang harusnya terjadi. Alur alternatif (alternatif flow) yaitu alur yang menceritakan aksi alternatif, yang berbeda dari alur dasar. 2.9.3.2 Sequence Diagram Sequence diagram menurut Munawar (2005, p187) adalah grafik dua dimensi dimana obyek ditunjukkan dalam dimensi horizontal, sedangkan lifeline ditunjukkan dalam dimensi vertikal. 28 Sequence diagram menunjukan interaksi objek dengan waktu yang direpresentasikan dalam grafik dua dimensi. Dimensi vertical menunjukan waktu, digambarkan melintang kebawah. Dimensi horizontal menunjukkan jenis peranan yang menggambarkan individu objek dalam diagram collaboration. Durasi aktivitas objek ditunjukkan oleh lifeline yang berupa garis putus-putus. Message ditampilkan sebagai panah dari satu lifeline sebuah objek ke lifeline objek yang lainnya. Gambar 2.7 Sequence Diagram (Sumber : Munawar, 2005, p188) 29 No. Simbol Nama Keterangan Orang, proses, atau sistem lain yang berinteraksi system Aktor / informasi dengan dan mendapat manfaat dari system. Berpartipasi secara berurutan 01. Actor dengan mengirimkan atau mengirimkan pesan. Di tempatkan di bagian atas diagram. Berpartipasi secara berurutan Objek / 02. dengan mengirimkan atau menerima pesan. Object Di tempatkan di bagian atas diagram. Menandakan kehidupan objek Garis Hidup selama urutan. Diakhiri tanda X pada titik di 03. / Lifeline mana kelas tidak lagi berinteraksi. Fokus kontrol adalah persegi panjang yang sempit panjang Objek yang 04. berinteraksi / Activation ditempatkan di atas sebuah garis hidup. Menandakan ketika suatu objek mengirim atau menerima pesan. Pesan / Objek mengirim satu pesan ke objek lainnya. 05. Message 30 Menyatakan suatu objek Membuat / membuat objek yang lain, arah Create panah mengarah pada objek 06. yang dibuat. Menyatakan Masukkan / Message 07. Send bahwa suatu objek mengirim masukkan ke objek lainnya megarah pada arah panah objek yang dikirimi. Objek Keluaran / 08. atau metode menghasilkan suatu kembalian Message ke objek tertentu, arah panah Return mengarah pada objek yang menerima kembalian. Menyatakan suatu objek mengakhiri hidup objek yang Hasil Akhir 09. / Destroy lain, arah panah mengarah pada objek yang diakhiri, sebaiknya jika ada create maka ada destroy. Gambar 2.8 Simbol – Simbol Sequence Diagram (Sumber : Munawar, 2005, p192) 2.9.3.3 Activity Diagram Activity diagram menurut Fowler (2005, p163) adalah teknik untuk menggambarkan logika prosedural, proses bisnis, dan jalur kerja. Activity diagram memainkan peran mirip diagram alir, tetapi perbedaan prinsip antara notasi diagram alir 31 adalah activity diagram mendukung behavior paralel. Node pada sebuah activity diagram disebut sebagai action, sehingga diagram tersebut menampilkan sebuah activity yang tersusun dari action. Activity Diagram digunakan untuk mengilustrasikan gambaran dari suatu sistem. Activity Diagram menekankan pada aliran kontrol diantara objek. Activity Diagram adalah notasi yang digunakan untuk menggambarkan grafis aktivitas yang meliputi simbolsimbol yang unik. Simbol-simbol tersebut dapat digunakan dalam diagram statechart. Gambar 2.9 Activity Diagram (Sumber : Martin Fowler, 2005, p164) 32 Simbol Nama Keterangan Titik awal atau permulaan Initial State dalam memulai aktifitas diagram. State Suatu aktifitas yang dilakukan aktor. Digunakan untuk Control Flow menghubungkan antara aktifitas dengan aktifitas lainnya. Pilihan yang diambil untuk Decision menunjukkan suatu keputusan yang lebih dari satu True / False. Final State Titik akhir atau mengakhiri suatu aktifitas diagram. Gambar 2.10 Simbol – Simbol Activity Diagram (Sumber : Martin Fowler, 2005, p165) 2.10 Pengertian IMK (Interaksi manusia dan Komputer) Menurut Shneiderman (2010, p74) prinsip – prinsip ini berasal dari pengalaman dan disempurnakan selama 2 dekade, perlu validasi dan tuning untuk domain desain khusus. Tidak ada daftar seperti ini yang bisa diselesaikan, tetapi telah diterima dengan baik sebagai panduan yang berguna untuk siswa dan desainer. Dalam IMK, terdapat 8 aturan emas (Eight Golden Rules) yang digunakan untuk perancangan antarmuka pengguna, yaitu: 33 1. Berusaha untuk konsistensi Konsistensi dalam urutan tindakan harus diperlukan dalam situasi yang sama, istilah-istilah yang sama harus digunakan di menu, layar bantuan, konsistensi warna, tampilan, penkapitalisasian, dan font. 2. Memenuhi kegunaan bersama Mengetahui kebutuhan yang beragam dari pengguna dan rancangan untuk yang kelihatan, memfasilitasi perubahan terhadap isi. Perbedaan terhadap pemula dan pakar, rentang usia, dan keragaman teknologi setiap memperkaya spektrum persyaratan yang memandu dalam perancangan. Menambahkan fitur untuk pemula, seperti penjelasan, dan fitur-fitur yang sudah ahli, seperti shortcut dan lebih cepat untuk berpindah-pindah, dapat memperkaya rancangan tampilan dan meningkatkan kualitas sistem. 3. Memberikan umpan balik yang informatif Untuk setiap tindakan pengguna, sebaiknya disertakan suatu sistem umpan balik. Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan balik yang sederhana. Tetapi ketika tindakan merupakan hal yang penting, maka umpan balik sebaiknya lebih banyak. 4. Merancang dialog untuk menghasilkan suatu penutupan Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dengan bagian awal, tengah, dan akhir. Umpan balik yang informatif akan memberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan berikutnya. 34 5. Mencegah kesalahan Sebanyak mungkin sistem dirancang sehingga pengguna tidak dapat melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan cepat dan memberikan mekanisme yang sedehana dan mudah dipahami untuk penanganan kesalahan. 6. Memungkinkan pembalikan aksi yang mudah Diharapkan adanya fitur untuk kembali ke aktifitas sebelumnya. Hal ini bertujuan agar pengguna dapat kembali ke aktivitas sebelumnya jika ternyata pengguna melakukan suatu kesalahan sehingga pengguna dapat memperbaikinya. 7. Dukungan internal dari tempat kendali Pengurus yang sudah berpengalaman mempunyai keinginan yang kuat bahwa mereka bertanggung jawab atas antarmuka dan merespon tindakan mereka. 8. Mengurangi beban ingatan jangka pendek Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana atau banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu pelatihan untuk kode, mnemonic, dan urutan tindakan. 2.11 Basis Data 2.11.1 Pengertian Basis Data Menurut Hartono (2005, p11) Sistem Basis Data adalah Suatu sistem informasi yang mengintegarasikan kumpulan dari data yang berhubungan satu dengan yang lainnya dan membuatnya tersedia 35 untuk beberapa aplikasi yang bermacam-macam di dalam suatu organisasi. Basis data adalah kumpulan data logikal yang saling berhubungan dan merupakan deskripsi dari data tersebut, yang didesain untuk mendapatkan informasi yang dibutuhkan oleh perusahaan. Selain itu basisdata merupakan sebuah media yang besar untuk penyimpanan data yang dapat digunakan secara bersamaan oleh berbagai departemen dan pengguna. 2.11.2 Database Management Sistem (DBMS) Database Management System (DBMS) adalah sebuah sistem software yang memperbolehkan pengguna untuk menggambarkan, membuat, menjaga, dan mengontrol akses ke basis data (Begg, 2005, p16). Fasilitas yang disediakan DBMS antara lain : - Memperbolehkan pengguna untuk menggambarkan basis data, biasanya melalui Data Definition Language (DDL). DDL memberikan fasilitas kepada pengguna untuk menspesifikasikan tipe data dan struktur serta constraint pada data yang akan disimpan pada basis data - Constraint adalah peraturan konsistensi nilai pada basis data yang tidak dapat dilanggar. - Memperbolehkan pengguna untuk memasukkan update, menghapus dan mengambil data dari basis data yang menggunakan Database Manipulation Language (DML). 36 Bahasa yang umum digunakan adalah Structured Query Language (SQL). Menyediakan kontrol akses ke basis data : - Sistem keamanan (security system), di mana mencegah pengguna yang tidak mempunyai hak akses agar tidak mengakses basis data. - Sistem integritas (integrity system), di mana menjaga konsistensi data yang disimpan. - Sistem kontrol pada saat yang bersamaan (concurrency control), di mana memperbolehkan akses berbagi terhadap basis data. - Sistem kontrol perbaikan (recovery control system), di mana mengembalikan basis data ke kondisi sebelum yang konsisten pada saat terjadi kegagalan pada perangkat keras dan perangkat lunak. - Katalog pengguna yang dapat diakses (user-accessible catalog), yang berisi tentang deskripsi data pada basis data. 2.11.3 Database Relational “Relation” , hubungan yang datang dari kenyataan bahwa tabel-tabel dihubungkan yang satu dengan yang lainnya, misalnya penulis buku dapat dihubungkan dengan tabel “authors” untuk menyediakan lebih banyak informasi tentang penulis. Salah satu keuntungan utama database relational adalah bahwa tidak akan ada duplikasi berbagai data dan juga membantu menjaga integritas data. Relational database seperti MySQL, Microsoft SQL Server & Oracle lebih banyak menggunakan struktur logikal dalam 37 penyimpanan data. Tabel dapat digunakan untuk menampilkan obyek, dengan setiap kejadian sebagai atribut. (A database consist of an organized collection of data for one or more uses, typically in digital form) (Kroenke at al, 2007) Tipikal sistem basis data yang lebih luas. Dalam cakupan yang minimum sistem tersebut memenuhi kriteria berikut: 1. Menyajikan data pada pengguna dalam bentuk relasional (ditampilkan dalam bentuk tabular, sebagai koleksi dari tabel di mana setiap tabel berisi sekumpulan baris dan kolom). 2. Menyediakan operator relasional untuk memanipulasi data dalam bentuk tabular. 2.12 Enterprise Architecture Enterprise Architecture merupakan salah satu disiplin ilmu dalam teknologi informasi dengan definisi sebagai berikut: Deskripsi misi para stakeholder mencakup parameter informasi, fungsionalitas/kegunaan, lokasi, organisasi dan kinerja. Enterprise architecture menjelaskan rencana untuk membangun sistem atau sekumpulan sistem. Enterprise Architecture merupakan suatu pendekatan logis yang komprehensif dan holistik untuk merancang dan mengimplementasikan sistem dan komponen sistem secara bersama-sama yang meliputi suatu infrastruktur manajemen informasi atau teknologi. Enterprise Architecture secara berkelanjutan mempengaruhi manajemen organisasi serta area teknologi yang ada dalam organisasi untuk pengembangan blueprint sistem informasi (Doucet, 2009) dari berbagai disiplin baik secara teori maupun praktek. 38 Dari definisi-definisi tersebut maka enterprise architecture dapat dijadikan acuan atau pedoman pada saat akan mengembangkan sistem informasi dan komunikasi karena enterprise architecture merupakan suatu cetak biru. 2.13 Evaluasi Evaluasi diartikan sebagai suatu kegiatan yang terencana untuk mengetahui keadaan suatu obyek dengan menggunakan instrument dan hasilnya dibandingkan untuk memperoleh simpulan. Evaluasi adalah proses mendeskripsikan, mengumpulkan, dan menyajikan suatu informasi yang bermanfaat untuk pertimbangan dalam mengambil keputusan. 2.14 Pengertian Pemasaran Menurut Lane (2012, p5) Pemasaran yaitu sebagai suatu proses sosial di mana individu dan kelompok mendapatkan apa yang mereka butuhkan dan inginkan melalui upaya menciptakan, menawarkan, dan mempertukarkan secara bebas produk dan jasa yang bernilai satu sama lain. Sebagai konsep, pemasaran mengalami evolusi, mulai dari konsep produksi, konsep produk, konsep penjualan, konsep pemasaran, hingga konsep pemasaran sosial. Kemungkinan itu dapat dikelompokkan menjadi empat kelompok variabel yang dikenal dengan “4 P”: Product, Price, Place, dan Promotion (produk, harga, distribusi dan promosi). 39 1. Produk (product) adalah kombinasi barang dan jasa yang ditawarkan oleh perusahaan kepada pasar sasaran. 2. Harga (price) adalah sejumlah uang yang harus dibayar oleh pelanggan untuk memperoleh produk 3. Distribusi (place) adalah aktivitas perusahaan agar produk mudah didapatkan konsumen sasarannya. 4. Promosi (promotion) adalah aktivitas mengkomunikasikan keunggulan produk serta membujuk pelanggan sasaran untuk membelinya. Gambar 2.11 Pemasaran 4P (Sumber : Kotler & Keller Lane, 2012, p6) 2.15 Rencana Strategi Perusahaan Menurut Kaye (2005, p22) definisi perencanaan strategi adalah proses sistematik yang disepakati organisasi dan membangun keterlibatan diantara stakeholder tentang prioritas yang hakiki bagi misinya dan tanggap terhadap lingkungan operasi. Perencanaan strategi khususnya digunakan untuk mempertajam fokus organisasi, agar semua sumber organisasi digunakan secara optimal untuk 40 melayani misi organisasi itu. Artinya, bahwa perencanaan strategi menjadi pedoman sebuah organisasi harus tanggap terhadap lingkungan. Satu diantara berbagai tujuan perusahaan adalah untuk memperoleh laba yang optimal dari kegiatannya sehari-hari, khususnya kegiatan pemasaran. Untuk menjalankan kegiatan pemasaran tersebut dengan baik, dan sesuai dengan sasaran yang diharapkan, perusahaan harus menerapkan suatu strategi yang tepat sesuai dengan lingkungan pemasaran perusahaannya. Lingkungan pemasaran suatu perusahaan terdiri dari para pelaku dan kekuatan-kekuatan yang berasal dari luar fungsi manajemen pemasaran perusahaan yang mempengaruhi kemampuan rnanajemen pemasaran untuk mengembangkan dan mempertahankan transaksi yang sukses dengan para pelanggan sasarannya. Keberhasilan strategi pemasaran yang diterapkan oleh perusahaan tergantung pada analisa dan pengamatan yang cermat oleh perusahaan terhadap faktor-faktor yang dapat mempengaruhi strategi pemasaran perusahaan. Strategi pemasaran adalah logika pemasaran, dan berdasarkan itu, unit bisnis diharapkan untuk mencapai sasaran-sasaran pemasarannya. Strategi pemasaran perusahaan terdiri dari pengambilan keputusan tentang biaya pemasaran dari perusahaan, bauran pemasaran, dan alokasi pemasaran dalam hubungannya dengan keadaan lingkungan yang diharapkan dalam kondisi persaingan. Strategi pemasaran menyeluruh perusahaan tercermin dalam rencana strategi pemasaran perusahaan (Corporate Marketing Plan) yang disusun. 41 Rencana strategi pemasaran perusahaan adalah suatu rencana pemasaran jangka panjang yang bersifat menyeluruh dan strategis, yang merumuskan berbagai strategi dan program pokok dibidang pemasaran perusahaan pada suatu jangka waktu tertentu dalam jangka panjang dimasa depan. Ciri penting rencana strategis pemasaran perusahaan ini adalah sebagai berikut: a. Titik-tolak penyusunannya melihat perusahaan secara keseluruhan b. Diusahakan dampak kegiatan yang direncanakan bersifat menyeluruh c. Dalam penyusunannya diusahakan untuk memahami kekuatan yang mempengaruhi perkembangan perusahaan d. Jadwal waktu/timing yang ditentukan adalah yang sesuai dan mempertimbangkan fleksibilitas dalam menghadapi perubahan e. Penyusunan rencana dilakukan secara realistis dan relevan dengan lingkungan yang dihadapi. 2.15.1 Faktor – faktor yang Mempengaruhi Strategi Pemasaran Perusahaan Adapun faktor-faktor yang dapat mempengaruhi strategi pemasaran pada suatu perusahaan adalah : 1. Lingkungan mikro perusahaan Lingkungan mikro perusahaan terdiri dari para pelaku dalam lingkungan yang langsung berkaitan dengan perusahaan yang mempengaruhi kemampuannya untuk melayani pasar, yaitu: a. Perusahaan Yaitu struktur organisasi perusahaan itu sendiri. Strategi pemasaran yang diterapkan oleh bagian manajemen pemasaran 42 harus memperhitungkan kelompok lain di perusahaan dalam merumuskan rencana pemasarannya, seperti manajemen puncak, keuangan perusahaan, penelitian dan pengembangan, pembelian, produksi, dan akuntansi serta sumber daya manusia yang dimiliki perusahaan, karena manajer pemasaran juga harus bekerja sama dengan para staff di bidang lainnya. b. Pemasok (Supplier) Para pemasok adalah perusahaan-perusahaan dan individu yang menyediakan sumber daya yang dibutuhkan oleh perusahaan dan para pesaing untuk memproduksi barang dan jasa tertentu. Kadang kala perusahaan juga harus memperoleh tenaga kerja, peralatan, bahan bakar, listrik dan faktor-faktor lain dari pemasok. Perkembangan dalam lingkungan pemasok dapat memberi pengaruh yang arnat berarti terhadap pelaksanaan pemasaran suatu perusahaan. Manajer pemasaran perlu mengamati kecenderungan harga dari masukan-masukan terpenting bagi kegiatan produksi perusahaan mereka. Kekurangan sumber-sumber bahan mentah, pemogokan tenaga kerja, dan berbagai kejadian lainnya yang berhubungan dengan pemasok dapat mengganggu strategi pemasaran yang dilakukan dan dijalankan perusahaan. c. Para Perantara Pemasaran Para perantara pemasaran adalah perusahaan-perusahaan yang membantu perusahaan dalam promosi, penjualan dan distribusi barang/jasa kepada para konsumen akhir. Para perantara pemasaran ini meliputi : 43 Perantara adalah perusahaan atau individu yang membantu perusahaan untuk menemukan konsumen. Mereka terbagi dua macam, yaitu agen perantara seperti agen, pialang dan perwakilan produsen yang mencari dan menemukan para pelanggan dan atau mengadakan perjanjian dengan pihak lain, tetapi tidak memiliki barang atau jasa itu sendiri. Perusahaan Distribusi Fisik, perusahaan seperti ini membantu perusahaan dalam penyimpanan dan pemindahan produk dari tempat asalnya ketempat-tempat yang dituju. Para agen jasa pemasaran, seperti perusahaan atau lembaga penelitian pemasaran, agen periklanan, perusahaan media, dan perusahaan konsultan pemasaran, kesemuanya membantu perusahaan dalam rangka mengarahkan dan mempromosikan produknya ke pasar yang tepat. Perantara keuangan seperti bank, perusahaan kredit, perusahaan asuransi, dan perusahaan lain yang membantu dalam segi keuangan. d. Para Pelanggan Yaitu pasar sasaran suatu perusahaan yang menjadi konsumen atas barang atau jasa yang ditawarkan perusahaan apakah individu-individu, Iembaga-lembaga, organisasi-organisasi, dan sebagainya. e. Para Pesaing Dalam usahanya melayani kelompok pasar pelanggan, perusahaan tidaklah sendiri. Usaha suatu perusahaan untuk membangun sebuah sistem pemasaran yang efisien guna melayani 44 pasar gelati disaingi oleh perusahaan lain. Sistem pemasaran dan strategi yang diterapkan perusahaan dikelilingi dan dipengaruhi oleh sekelompok pesaing. Para pesaing ini perlu diidentifikasi dan dimonitor segala gerakan dan tindakannya di dalam pasar. f. Masyarakat Umum Sebuah perusahaan juga harus memperhatikan sejumlah besar lapisan masyarakat yang tentu saja besar atau kecil menaruh perhatian terhadap kegiatan-kegiatan perusahaan, apakah mereka menerima atau menolak metode-metode dari perusahaan dalam menjalankan usahanya, karena kegiatan perusahaan pasti mempengaruhi minat kelompok lain, kelompok-kelompok inilah yang menjadi masyarakai umum. Masyarakat umum dapat memperlancar atau sebaliknya dapat sebagai penghambat kemampuan perusahaan untuk mencapai sasarannya. 2. Lingkungan Makro Lingkungan makro terdiri dari kekuatan-kekuatan yang bersifat kemasyarakatan yang lebih besar dan mempengaruhi semua pelaku dalam lingkungan mikro dalam perusahaan, yaitu: a. Lingkungan Demografis atau Kependudukan Lingkungan demografis atau kependudukan menunjukkan keadaan dan permasalahan mengenai penduduk, seperti distribusi penduduk secara geografis, tingkat kepadatannya, kecenderungan perpindahan dari satu tempat ke tempat lain, distribusi usia, kelahiran, perkawinan, ras, suku bangsa dan struktur keagamaan. Ternyata hal di atas dapat mempengaruhi strategi pemasaran suatu 45 perusahaan dalam memasarkan produknya karena publik yang membentuk suatu pasar. b. Lingkungan Ekonomi. Lingkungan ekonomi menunjukkan sistem ekonomi yang diterapkan, kebijakan-kebijakan pemerintah yang berkenaan dengan ekonomi, penurunan dalam pertumbuhan pendapatan nyata, tekanan inflasi yang berkelanjutan, perubahan pada pola belanja konsumen, dan sebagainya yang berkenaan dengan perkonomian. c. Lingkungan Fisik Lingkungan fisik menunjukkan kelangkaan bahan mentah tertentu yang dibutuhkan oleh perusahaan, peningkatan biaya energi, peningkatan angka pencemaran, dan peningkatan angka campur tangan pemerintah dalam pengelolaan dan penggunaan sumber-sumber daya alam d. Lingkungan Teknologi Lingkungan teknologi rnenunjukkan peningkatan kecepatan pertumbuhan teknologi, kesempatan pembaharuan yang tak terbatas, biaya penelitian dan pengembangan, yang tinggi, perhatian yang lebih besar tertuju kepada penyempurnaan bagian kecil produk daripada penemuan yang besar, dan semakin banyaknya peraturan yang berkenaan dengan perubahan teknologi. e. Lingkungan sosial atau budaya Lingkungan ini menunjukkan keadaan suatu kelompok masyarakat mengenai aturan kehidupan, norma-norma dan nilainilai yang berlaku dalam masyarakat, pandangan masyarakat dan 46 lain sebagainya yang merumuskan hubungan antar sesama dengan masyarakat lainnya serta lingkungan sekitarnya. 47