Anda di halaman 1dari 35

Machine Translated by Google

BAGIAN 3

Esensi Desain Sistem


Bab 6
Esensi Desain dan
Kegiatan Desain

Bab 7
Merancang Pengguna dan
Antarmuka Sistem

151
Machine Translated by Google

Halaman ini sengaja dikosongkan


Machine Translated by Google

6
Esensi Desain dan
Kegiatan Desain

Garis besar bab


ÿ Elemen Desain

ÿ Masukan dan Keluaran untuk Perancangan Sistem

ÿ Kegiatan Desain

ÿ Rancang Lingkungan

Tujuan pembelajaran
Setelah membaca bab ini, Anda seharusnya dapat:

ÿ Jelaskan perbedaan antara analisis sistem dan desain sistem

ÿ Jelaskan setiap aktivitas desain utama

ÿ Jelaskan pilihan utama perangkat keras dan lingkungan jaringan

ÿ Jelaskan berbagai layanan hosting yang tersedia

153
Machine Translated by Google

154 BAGIAN 3 ÿ Esensi Perancangan Sistem

PEMBUKAAN KASUS

Keputusan Teknologi di Wysotronics, Inc.


Saat James Schultz berjalan menyusuri lorong menuju pertemuan dengan "Hai, Bill," sapa James. “Apakah Anda punya rekomendasi baru untuk
stafnya, dia memikirkan tentang pekerjaan barunya. kami hari ini? Apakah ada kejutan dari penelitian Anda?”
Selama satu tahun, Schultz menjabat sebagai wakil presiden dan kepala
informasi untuk pemasok komponen elektronik skala menengah ke beberapa “Tidak ada kejutan,” kata Bill. “Tetapi Anda akan senang mengetahui
perusahaan elektronik besar, termasuk Samsung dan Acer. Perusahaan bahwa penelitian kami telah memvalidasi keputusan yang Anda buat baru-
James, Wysotronics, Inc., telah menjalankan bisnisnya selama bertahun- baru ini. Kami memberikan layanan yang lebih baik kepada perusahaan
tahun namun baru-baru ini mengalami beberapa masalah dengan sistem dibandingkan sebelumnya, dan kami melakukannya dengan biaya lebih
komputer internalnya. James dipekerjakan untuk memperbaiki masalah murah dibandingkan sebelumnya. Saya mempunyai beberapa rekomendasi
tersebut. tentang cara menyempurnakan infrastruktur kami untuk memberikan
layanan yang lebih baik lagi.”
Segera setelah memulai pekerjaan barunya, James menemukan Terlihat jelas bahwa Bill cukup antusias dengan hasil penelitiannya.
bahwa beberapa sistem berfungsi dengan baik namun infrastrukturnya
merupakan gabungan dari komputer dan jaringan yang terputus-putus. Di “Sebelum kita mulai, bisakah Anda memberi saya gambaran singkat
sisi korporat, terdapat sistem akuntansi dan sistem sumber daya manusia, tentang dari mana penghematan biaya ini berasal?” James bertanya.
keduanya merupakan sistem klien/server desktop yang dihosting di “Tentu,” kata Bill. “Seperti yang Anda ketahui, kami memutuskan
komputer jaringan lokal yang berada di departemen akuntansi. untuk membuat jaringan pribadi virtual menggunakan Internet untuk semua
kebutuhan rantai pasokan dan produksi kami. Kami memindahkan semua
komputer untuk mendukung sistem ini ke fasilitas kolokasi.
Teknik memiliki database dan jaringan komputernya sendiri, yang Kami masih memiliki servernya, namun kami telah menandatangani
menampung beberapa sistem teknik canggih dengan kebutuhan komputasi perjanjian layanan dengan perusahaan hosting untuk mengelola semua
yang intensif. Sistem desktop lokal para insinyur adalah peralatan dan sistem operasi dan koneksi serta pemeliharaan jaringan. Hal ini
perangkat lunak terkini. Servernya juga berkapasitas tinggi, dengan tempat memungkinkan kami memfokuskan upaya kami pada perangkat lunak itu
penyimpanan data yang besar untuk menampung semua dokumen teknik sendiri dan tidak perlu menggunakan personel berharga yang
dan gambar. mengkhawatirkan lingkungan atau konektivitas. Dan kami tidak perlu
berinvestasi pada gedung tambahan untuk pusat data yang lebih besar.
Pemasaran dan Penjualan juga memiliki sistem mereka sendiri yang Ditambah lagi, tingkat layanannya luar biasa. Kami memiliki waktu aktif
dihosting di server jaringan mereka sendiri, yang juga terhubung ke Internet. hampir 100 persen sejak peralihan.
Staf penjualan bekerja sama dengan pabrik manufaktur dan perakitan untuk Orang-orang di pabrik kami sangat senang karena mereka dapat memeriksa
memastikan pengiriman tepat waktu, dan mereka sering mengunjungi klien tingkat inventaris dan tanggal pengiriman dari semua pemasok mereka
Wysotronics. Tugas mereka adalah memastikan bahwa klien puas dengan kapan saja.”
jadwal, pengiriman, dan kualitas, dan mereka ingin dapat mengakses "Wow. Itu adalah berita bagus,” kata James. “Dan apa yang akan
database penjualan dan produksi saat mereka dalam perjalanan. Sayangnya, Anda rekomendasikan untuk sistem pemasaran dan penjualan kami?”
server yang mereka gunakan tidak terlalu stabil dan terus-menerus
mengalami masalah. “Seperti yang Anda ketahui, ini adalah sistem berbasis web,” jawab
Bill. “Ini tidak memiliki persyaratan keamanan seperti yang dimiliki sistem
produksi kami, namun harus tersedia secara luas.
Mungkin masalah terbesarnya adalah sistem manajemen rantai Penelitian kami menunjukkan bahwa kami dapat menerapkan sistem
pasokan. Wysotronics memiliki pabrik besar, pabrik perakitan, dan beberapa tersebut melalui perusahaan hosting yang menyediakan komputasi 'cloud'.
pemasok yang memerlukan akses ke sistem inventaris dan rantai pasokan. Kami memiliki pilihan untuk menggunakan penyedia colocation kami atau
Infrastruktur yang ada saat ini tidak memiliki kemampuan yang cukup untuk menggunakan perusahaan lain yang pernah kami gunakan sebelumnya.
memberikan informasi yang tepat waktu kepada fasilitas dan pemasok Saya pikir perusahaan lain ini akan memberi kami konsesi harga yang
tersebut. bagus dan tetap dapat memberikan layanan terbaik.”

Pertemuan hari ini adalah salah satu dari banyak pertemuan yang “Kedengarannya bagus!” kata James. “Saya tertarik mendengar
merencanakan dan mengkonfigurasi keseluruhan infrastruktur sistem detailnya. Saya berasumsi Anda juga telah menyusun rencana migrasi
perusahaan. Saat dia masuk ke dalam ruangan, James disambut oleh untuk memindahkan sistem?”
William Hendricks, yang akan membuat presentasi yang merangkum “Ya, saya sudah mengerjakan pekerjaan rumah saya untuk yang satu ini,” Bill
keputusan masa lalu dan arah masa depan. dikatakan. “Saya pikir Anda akan senang dengan hasilnya.”
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 155

Ringkasan
Bab-bab sebelumnya menjelaskan aktivitas dan keputusan yang terkait dengan penemuan dan
pemahaman elemen utama kebutuhan pengguna—dengan kata lain, aktivitas analisis. Bab ini
berfokus pada sistem solusi.
Selama analisis, fokusnya adalah pada pemahaman apa yang harus dilakukan sistem (yaitu
persyaratan), sedangkan selama desain, fokusnya adalah pada solusi (yaitu, menentukan
bagaimana sistem akan dibangun dan komponen struktural apa yang akan digunakan oleh sistem
baru. menjadi).
Pertanyaan yang sering ditanyakan oleh pengembang baru adalah “Kapan tugas-tugas ini
dilaksanakan dalam proyek nyata?” Sayangnya, tidak ada jawaban tunggal. Banyak proyek
dimulai dengan beberapa keputusan desain telah dibuat, khususnya yang berkaitan dengan
lingkungan penerapan ketika perusahaan telah memiliki infrastruktur teknologi yang kuat. Untuk
proyek lain, sistem baru mungkin merupakan hasil dari dorongan baru bagi organisasi dan dengan
demikian keputusannya terbuka lebar. Namun, merupakan hal yang normal bagi tim proyek untuk
mulai memikirkan isu-isu ini sejak awal proyek dan mulai membuat keputusan awal seiring dengan
penetapan persyaratan. Topik yang dibahas dalam bab ini dan bab berikutnya adalah topik desain
berorientasi solusi; namun, Anda tidak boleh mencoba mencari solusi sampai Anda memahami
masalahnya.

Ini adalah bab pertama dari beberapa bab yang membahas tentang desain. Di sini, kami
menjelaskan secara singkat semua kegiatan desain dan mendiskusikan kegiatan pertama
(merancang lingkungan) secara lebih rinci. Bab-bab selanjutnya mengeksplorasi aktivitas desain
lainnya dan menjelaskan secara rinci berbagai model dan teknik yang digunakan untuk desain sistem.

Elemen Desain Pada Bab 1, kami


mendefinisikan desain sistem sebagai aktivitas yang memungkinkan tim
proyek mendeskripsikan secara rinci sistem yang memecahkan kebutuhan.
Tentunya ada banyak aspek dari suatu sistem yang perlu dirancang. Desain
artefak yang rumit memerlukan dokumen desain yang terperinci. Misalnya,
pikirkan semua komponen yang harus dirancang untuk membuat kapal laut
atau pesawat komersial. Untuk pesawat komersial, desain berkisar dari
bentuk awal dan ukuran pesawat hingga subsistem utama, seperti sistem
mekanis, sistem hidrolik, dan sistem elektronik, hingga ke detail terkecil:
bentuk airfoil, ukuran dan bentuk kursi, penempatan tampilan kokpit dan
perangkat kontrol, dan bahkan perangkat pengukur eksternal. Tidak ada
yang dibiarkan begitu saja. Merancang pesawat komersial saat ini hanya
mungkin dilakukan karena pengalaman bertahun-tahun dan basis pengetahuan
yang luas mengenai cara membuat pesawat terbang.
Aplikasi perangkat lunak yang dirancang dan dibangun saat ini sama rumitnya dan hanya
mungkin terjadi karena begitu banyak infrastruktur yang sudah ada dan terdapat basis
pengetahuan yang sangat besar serta seperangkat alat pengembangan.
Bahkan dengan semua alat yang tersedia, merancang dan membangun aplikasi perangkat lunak
adalah proses yang sulit dan rumit.
Pada bagian ini, pertama-tama kita mengeksplorasi beberapa aspek dan tingkat desain yang
berbeda. Selanjutnya, kita mengambil pandangan tingkat tinggi dari sistem aplikasi komputer
untuk melihat hal-hal apa saja yang harus disertakan dalam sebuah desain. Nanti di bagian ini,
kami mengidentifikasi jenis dokumen dan produk yang dihasilkan melalui proses desain.
Terakhir, kami meninjau informasi dan dokumen apa yang tersedia sebagai masukan untuk
perancangan.

Apa Itu Desain Sistem?


Desain sistem sebenarnya merupakan proses jembatan. Tujuan dari analisis sistem adalah untuk
memahami secara menyeluruh kebutuhan atau persyaratan informasi organisasi dan
mendokumentasikan persyaratan tersebut dalam serangkaian spesifikasi. Tujuan dari
Machine Translated by Google

156 BAGIAN 3 ÿ Esensi Perancangan Sistem

konstruksi perangkat lunak adalah membangun sistem yang memenuhi persyaratan tersebut.
Desain sistem merupakan jembatan yang membawa kita dari kebutuhan ke solusi.
Tujuan dari desain sistem adalah untuk mendefinisikan, mengatur, dan menyusun komponen
sistem solusi akhir yang akan berfungsi sebagai cetak biru konstruksi. Cara lain untuk berpikir
tentang desain sistem adalah bahwa analisis memberi tahu kita solusi apa yang perlu dilakukan,
sedangkan desain menjelaskan bagaimana sistem akan dikonfigurasi dan dibangun.

Komponen Utama dan Tingkat Desain Saat ini, sistem


informasi diterapkan pada berbagai perangkat—mulai dari komputer individu dan perangkat
digital seluler kecil hingga jaringan komputer lokal hingga komputer besar yang terdistribusi dan
terkoneksi ke Internet. Kami membahas beberapa konfigurasi peralatan dan jaringan ini di bagian
selanjutnya.
Persyaratan desain sangat bervariasi tergantung pada lingkungan yang ditargetkan.
Beberapa aplikasi tidak pernah terhubung ke Internet, beberapa terhubung secara berkala untuk
mengambil informasi tertentu, dan beberapa memerlukan koneksi terus-menerus agar dapat
dijalankan. Misalnya, Anda mungkin memiliki komputer laptop dengan beberapa aplikasi yang
hanya dijalankan di laptop Anda. Ini mungkin termasuk program spreadsheet, program pengolah
kata, program persiapan pajak, atau program yang memutar musik. Tentu saja, mengingat
keterhubungan dunia saat ini, bahkan program kecil ini mungkin mempunyai komponen yang
dari waktu ke waktu memeriksa pembaruan. Namun, program semacam ini tidak perlu terhubung
ke Internet atau jaringan untuk menjalankan tujuan dasarnya.

Anda juga dapat memiliki perangkat digital seluler atau ponsel cerdas dengan aplikasi
yang berjalan secara mandiri (yaitu, tidak tersambung ke Internet). Mungkin Anda mengunduh
aplikasi dari Internet, tetapi setelah diunduh, aplikasi itu dijalankan dengan sendirinya. Rancangan
program jenis ini biasanya cukup rumit.

Di sisi lain adalah aplikasi yang berjalan di beberapa jenis lingkungan jaringan terdistribusi.
Lingkungan dapat berupa jaringan pribadi yang terlokalisasi, seperti yang ditemukan di
perusahaan skala menengah, atau jaringan global terdistribusi. Hampir semua perusahaan besar
memiliki sistem internal seperti ini yang hanya dapat digunakan oleh karyawan. Misalnya, sebuah
perusahaan global besar mungkin memiliki sistem sumber daya manusia yang dapat diakses
oleh personel sumber daya manusia di banyak kantor perusahaan di seluruh dunia.

Jenis sistem informasi lain yang ada di mana-mana saat ini adalah sistem berbasis web
yang diterapkan pada server (atau beberapa server) dan diakses seluruhnya melalui halaman
Web. Beberapa dari jenis sistem ini berukuran kecil dan relatif sederhana, sedangkan yang
lainnya sangat kompleks, memerlukan akses database yang kompleks serta konektivitas dan
antarmuka yang canggih dengan berbagai sistem eksternal. Contoh sistem sederhana adalah
blog pribadi yang dihosting di server kecil. Sistem yang lebih kompleks adalah katalog yang
komprehensif dan sistem penjualan pelanggan, seperti RMO CSMS yang baru.

diagram jaringan model yang menunjukkan Gambar 6-1 adalah diagram jaringan yang mengilustrasikan satu konfigurasi umum untuk
bagaimana aplikasi diterapkan di sistem informasi saat ini. Diagram jaringan adalah model yang menunjukkan bagaimana aplikasi
seluruh jaringan dan komputer
diterapkan di seluruh jaringan dan komputer. Sistem yang digambarkan pada Gambar 6-1
merupakan sistem berbasis jaringan yang juga dapat diakses melalui Internet. Jenis sistem
komprehensif ini kami ilustrasikan untuk mengidentifikasi berbagai komponen sistem yang harus
dirancang dan dibangun.
Untuk keseluruhan sistem, analis pertama-tama mengidentifikasi lingkungan penerapan
aplikasi secara keseluruhan. Hal ini memerlukan pendefinisian lingkungan perangkat keras dan
perangkat lunak. Lingkungan perangkat keras yang ditunjukkan pada Gambar 6-1 mencakup
komputer, jaringan, firewall, dan sebagainya. Lingkungan perangkat lunak mencakup hal-hal
seperti sistem operasi apa, sistem manajemen basis data apa, dan jenis protokol jaringan apa
yang akan digunakan.
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 157

GAMBAR 6-1 Komponen sistem yang memerlukan desain sistem

Desain lingkungan menentukan jaringan


Perangkat telepon dan perangkat keras yang menghubungkan
seluler sistem bersama-sama (bab ini).

Desain keamanan dan


kontrol diwakili oleh firewall (Bab Perangkat
12). nirkabel

Desktop bagian dalam

Internet

Desain aplikasi menjelaskan program


komputer (Bab 10 dan 11).

Perangkat Aplikasi
berkemampuan Wi-Fi server

Basis data
server

Desktop bagian dalam

Sistem Desain antarmuka pengguna


asing mendefinisikan layar,
Desain antarmuka sistem Desain basis data
menjelaskan menentukan struktur basis laporan, dan kontrol untuk input
komunikasi kepada orang lain data dan output (Bab 7).
sistem (Bab 7). (Bab 12).

Dalam kebanyakan situasi, infrastruktur untuk sistem informasi aplikasi sudah ada dan
sistem baru harus menyesuaikan dengan konfigurasi yang ada.
Misalnya, sebagian besar perusahaan sudah memiliki infrastruktur komputer, jaringan, dan
perangkat komunikasi. Oleh karena itu, beberapa bagian dari desain sistem mungkin tidak
diperlukan karena aplikasi baru akan diintegrasikan ke dalam lingkungan yang ada. Namun,
meskipun infrastruktur sudah ada, aplikasi baru terkadang perlu diperluas untuk memenuhi
persyaratan baru.
Untuk melakukan perancangan, analis pertama-tama mempartisi keseluruhan sistem
menjadi komponen-komponen utamanya karena sistem informasi terlalu rumit untuk dirancang
sekaligus. Ikon pada Gambar 6-1 mengacu pada perangkat keras, dan di dalam perangkat keras
terdapat komponen perangkat lunaknya. Awan besar di sisi kanan gambar mewakili keseluruhan
sistem, dan berbagai ikon di dalamnya menunjukkan bagian-bagian sistem yang harus bekerja
sama agar sistem berfungsi.
Profesional sistem informasi harus memastikan untuk mengembangkan solusi total bagi
pengguna. Mereka belum melakukan tugasnya jika belum memberikan solusi yang terintegrasi
dan lengkap. Dengan kata lain, desain harus mencakup keseluruhan infrastruktur serta berbagai
komponennya.
Infrastruktur yang diilustrasikan pada Gambar 6-1 adalah infrastruktur yang umum di
lingkungan komputasi saat ini. Server berisi aplikasi perangkat lunak dan database. Seringkali,
ada komputer desktop lokal yang mengakses aplikasi di jaringan lokal—baik kabel atau nirkabel.
Jaringan lokal diisolasi dari
Machine Translated by Google

158 BAGIAN 3 ÿ Esensi Perancangan Sistem

Internet dengan komputer firewall. Aplikasi ini tersedia untuk Internet dan seluruh dunia melalui
firewall komputer. Komputer firewall sering kali terhubung langsung ke Internet dan
menyediakan akses untuk komputer dan perangkat digital seluler melalui koneksi Wi-Fi
Internet. Di luar firewall, koneksi ke perangkat telepon juga dapat memberikan akses ke
aplikasi untuk perangkat telepon seluler. Tidak semua aplikasi memerlukan akses Internet
yang diperluas ini, namun semakin banyak perusahaan yang mengizinkan karyawannya
bekerja di lokasi terpencil di mana mereka memerlukan akses Internet untuk aplikasi internal.

Pada Gambar 6-1, kotak info mengidentifikasi berbagai komponen yang memerlukan
desain. Seperti disebutkan dalam paragraf sebelumnya, jaringan dan infrastruktur perlu
dirancang atau diperluas pada waktu-waktu tertentu. Perangkat lunak aplikasi yang ada pada
server perlu dirancang, begitu pula dengan database yang menyertainya.
Antarmuka pengguna juga harus dirancang, baik itu layar desktop atau halaman Web.
Beberapa sistem memiliki antarmuka otomatis ke sistem eksternal, dan antarmuka tersebut
harus dirancang. Misalnya, sistem pembelian internal dapat berinteraksi langsung dengan
vendor dan pemasok sehingga mereka dapat mengirimkan pesanan pembelian secara
elektronik. Bab-bab berikut akan menjelaskan detail perancangan berbagai komponen sistem
informasi tersebut.
Selain mendefinisikan komponen yang memerlukan desain, ide penting yang mendasari
desain sistem berkaitan dengan berbagai tingkat desain. Selama analisis, pertama-tama kami
mengidentifikasi ruang lingkup masalah dan mendeskripsikannya dengan dokumen visi
sistem. Setelah kami memiliki gambaran yang jelas tentang masalah dan isu, kami menelusuri
untuk memahami persyaratan rinci. Dengan kata lain, selama analisis, kami beralih dari
informasi umum tingkat tinggi ke informasi yang lebih rinci dan spesifik. Selama desain, kami
mengambil pendekatan serupa.
Pertama, kami mencoba merancang infrastruktur secara keseluruhan, kemudian fungsi utama
dari masing-masing komponen, dan terakhir rincian spesifik dalam setiap komponen.
Saat Anda mulai bekerja di industri, Anda akan menemukan bahwa berbagai nama
diberikan pada desain di tingkat tertinggi, termasuk desain arsitektur, desain umum, dan desain
desain arsitektur desain luas dari keseluruhan konseptual. Kami menggunakan istilah desain arsitektur. Selama desain arsitektur, Anda
struktur sistem; disebut juga desain umum atau menentukan keseluruhan struktur dan bentuk solusi sebelum mencoba mendesain detailnya.
desain konseptual
Mendesain detail biasa disebut dengan detail design. Pada titik ini tidaklah penting untuk
desain detail desain tingkat rendah yang membedakan aktivitas mana yang merupakan desain arsitektur dan mana yang merupakan
mencakup desain detail program tertentu desain detail, juga tidak penting untuk mengidentifikasi model atau dokumen mana yang
termasuk dalam desain arsitektur atau desain detail.
Yang penting adalah menyadari bahwa desain harus dilakukan secara top-down.

Mari kita tinjau implikasi pendekatan ini untuk masing-masing komponen desain yang
diidentifikasi pada Gambar 6-1.
Untuk komponen perangkat lunak aplikasi, langkah pertama adalah mengidentifikasi
berbagai subsistem dan hubungannya satu sama lain. Aplikasi juga harus dikonfigurasi agar
konsisten dengan jaringan, database, dan komponen antarmuka pengguna. Bagian dari
desain awal aplikasi tersebut adalah batasan sistem otomasi. Batasan sistem mengidentifikasi
fungsi mana yang termasuk dalam sistem otomatis dan mana yang merupakan prosedur
manual.
Untuk komponen database, langkah pertama adalah mengidentifikasi jenis database yang
akan digunakan dan sistem manajemen database. Beberapa detail tabel, bidang data, dan
indeks mungkin telah diidentifikasi, namun keputusan desain akhir akan bergantung pada
arsitektur serta detail aplikasi.

Untuk komponen antarmuka pengguna, langkah pertama adalah mengidentifikasi bentuk


umum dan struktur dialog pengguna berdasarkan masukan dan keluaran utama.
Tim proyek juga menjelaskan hubungan elemen antarmuka pengguna dengan perangkat lunak
aplikasi dan peralatan perangkat keras. Di dunia sekarang ini, hal ini bisa menjadi agak rumit
karena berbagai jenis perangkat mungkin perlu terhubung ke sistem. Gambar 6-1
mengilustrasikan komputer internal (berkabel dan nirkabel), perangkat komputasi yang
terhubung ke Internet, dan ponsel pintar yang terhubung
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 159

melalui protokol telepon. Antarmuka pengguna harus cukup fleksibel untuk mengantisipasi semua
jenis koneksi yang akan digunakan. Setelah keseluruhan protokol koneksi dan komunikasi diputuskan,
tata letak layar terperinci dan format laporan dapat dikembangkan.

Masukan dan Keluaran untuk Perancangan Sistem Selama aktivitas analisis yang

dijelaskan pada bab sebelumnya, kami membangun dokumen dan model. Untuk analisis berorientasi
objek, kami menggunakan tabel peristiwa dan mengembangkan model lain, seperti diagram kelas,
diagram use case, deskripsi use case, diagram aktivitas, diagram urutan sistem, dan diagram mesin
keadaan. Dalam bab online opsional, kami menyajikan model analisis tradisional, seperti tabel
kejadian, diagram aliran data, dan diagram hubungan entitas. Apapun pendekatannya, masukan pada
aktivitas desain terdiri dari dokumen dan model yang dibangun pada aktivitas sebelumnya.

Dalam proyek berulang, yang telah kita bahas di bab sebelumnya dan akan dijelaskan lebih rinci
di Bab 8, aktivitas analisis dan desain sering kali dilakukan secara bersamaan. Namun, fokus pertama
dari setiap iterasi harus mengidentifikasi dan menentukan persyaratan (yaitu analisis); penentuan
solusi (misalnya desain) dilakukan kemudian.

Selama analisis, analis juga membangun model untuk mewakili dunia nyata dan untuk memahami
proses bisnis yang diinginkan serta informasi yang digunakan dalam proses tersebut. Pada dasarnya,
analisis melibatkan dekomposisi—memecah masalah kompleks dengan kebutuhan informasi yang
rumit menjadi komponen-komponen yang lebih kecil dan lebih mudah dipahami. Analis kemudian
mengatur, menyusun, dan mendokumentasikan pengetahuan domain masalah dengan membangun
model persyaratan. Analisis dan pemodelan memerlukan keterlibatan pengguna yang besar untuk
menjelaskan persyaratan dan memverifikasi keakuratan model.

Desain juga merupakan aktivitas membangun model. Analis mengubah informasi yang
dikumpulkan selama analisis—model persyaratan—menjadi model yang mewakili sistem solusi.
Desain lebih berorientasi pada masalah teknis dan oleh karena itu memerlukan lebih sedikit
keterlibatan pengguna dan lebih banyak keterlibatan profesional sistem lainnya. Gambar 6-2
mengilustrasikan alur dari analisis hingga desain, dengan menyoroti tujuan analisis dan desain yang
berbeda.
Desain melibatkan deskripsi, pengorganisasian, dan penataan solusi sistem.
Keluaran dari kegiatan desain adalah sekumpulan diagram dan dokumen yang mencapai tujuan ini.
Diagram ini memodelkan dan mendokumentasikan berbagai aspek sistem solusi.

Formalitas suatu proyek juga mempengaruhi desain. Proyek formal biasanya memerlukan
dokumen desain yang dikembangkan dengan baik, yang sering kali ditinjau dalam pertemuan formal.
Pengembang proyek informal sering kali membuat desain mereka dengan buku catatan dan pensil,
lalu membuang desain tersebut setelah program diberi kode. Desain informal semacam ini (digunakan
di banyak proyek Agile) hanyalah alat untuk mencapai tujuan, yang merupakan kode program
sebenarnya. Namun meskipun pihak luar tidak melihat dokumen desain tersebut, namun proses
desain harus tetap diikuti. Seorang pemrogram yang terjun ke dalam kode tanpa memikirkannya
secara matang—hal ini sering disebut sebagai pengkodean koboi—akan berakhir dengan kesalahan,
perbaikan, dan sistem yang tidak terstruktur dengan baik.
Gambar 6-3 mengidentifikasi model-model utama yang digunakan untuk analisis dan desain. Hal
ini cocok untuk pembangunan berorientasi objek, meskipun mereka juga mempunyai banyak
kesamaan karakteristik dengan pembangunan tradisional, seperti yang dijelaskan dalam Bab A secara online.
Perhatikan bahwa beberapa model analisis memiliki model desain yang sesuai; misalnya, diagram
kelas memiliki diagram kelas desain. Seperti disebutkan sebelumnya, pengembangan sering kali
mengalir lancar dari analisis hingga desain, dan pendekatan ini semakin difasilitasi ketika model-
modelnya cukup mirip. Ambil diagram kelas misalnya; di sini, model analisis mengidentifikasi kelas,
atribut, dan hubungan, dan diagram kelas desain menambahkan lebih banyak informasi, seperti tipe
Machine Translated by Google

160 BAGIAN 3 ÿ Esensi Perancangan Sistem

GAMBAR 6-2
Tujuan analisis dan tujuan
Kegiatan analisis
desain
Tujuan: Untuk
memahami 1.
Peristiwa dan proses bisnis 2. Aktivitas
sistem dan persyaratan pemrosesan 3.
Persyaratan
penyimpanan informasi

Model analisis dan


dokumen

Kegiatan desain

Objektif:
Untuk mendefinisikan, mengatur, dan menyusun
komponen sistem solusi akhir yang akan
berfungsi sebagai cetak biru konstruksi

informasi untuk atribut, kunci, indeks, dan metode atau fungsi kelas.
Itu membangun dan memperluas apa yang ditawarkan diagram kelas berorientasi analisis.
Anda harus familiar dengan model analisis yang ditunjukkan pada Gambar 6-3. Dalam bab
berikut, Anda akan mempelajari cara membuat model desain yang ditunjukkan pada bagian bawah
gambar. Dua di antaranya—diagram paket dan diagram node serta lokasi—terutama merupakan
model desain arsitektur. Mereka mendokumentasikan keseluruhan struktur sistem akhir. Diagram
kelas desain mendeskripsikan kelas-kelas dengan cara yang berguna untuk desain database dan
desain aplikasi.
Diagram urutan adalah perpanjangan dari diagram urutan sistem dan mendokumentasikan aliran
kontrol dan eksekusi antar kelas. Skema database tentu saja diperlukan untuk mendokumentasikan
database aplikasi. Untuk sebagian besar aplikasi saat ini, pendekatan database relasional
digunakan. Model antarmuka pengguna menyediakan tata letak untuk layar komputer dan laporan
online atau cetak. Diagram komunikasi mirip dengan diagram urutan karena mendokumentasikan
interaksi antar kelas dalam kode program.

Model keamanan dan kontrol sistem bukanlah model formal; itu adalah dokumen dan notasi yang
mengidentifikasi fitur kontrol penting dari aplikasi baru.
Pada bab sebelumnya, Anda telah mempelajari aktivitas analisis dan mengembangkan
keterampilan dalam menggunakan teknik dan alat yang diperlukan untuk membuat model analisis
yang ditunjukkan pada bagian atas Gambar 6-3. Dalam kehidupan proyek nyata, setelah analis
sistem mulai memahami kebutuhan bisnis pengguna dan mendokumentasikan persyaratan
tersebut dengan menggunakan model analisis, mereka memulai aktivitas desain dan memperluas
model analisis ke dalam model desain. Selanjutnya kita membahas kegiatan desain tersebut.

Aktivitas Perancangan Gambar 6-4

mengidentifikasi aktivitas yang terkait dengan proses inti berikut yang telah dibahas dalam Bab 1:
Merancang komponen sistem yang memecahkan masalah atau memenuhi kebutuhan. Setiap
kegiatan desain sesuai dengan desain
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 161

GAMBAR 6-3
Model analisis dan desain
Gunakan
Diagram kelas diagram kasus

Diagram Gunakan
urutan
deskripsi kasus
sistem

Diagram
Diagram
aktivitas
mesin negara

Analisis

Desain

Node dan
Diagram
lokasi
paket
diagram

Desain
Diagram
urutan
diagram kelas

Layar dan laporan


Skema
antarmuka
basis data
pengguna

Keamanan Komunikasi
dan
diagram
kontrol sistem

GAMBAR 6-4 Kegiatan desain

Inti Iterasi
proses
12 3 45 6

Identifikasi masalah dan dapatkan


persetujuan.

Merencanakan dan memantau proyek.


Kegiatan desain

Rancang lingkungan. Temukan dan pahami detailnya.

Merancang arsitektur aplikasi dan perangkat lunak.


Desain antarmuka pengguna. Komponen sistem desain.
Antarmuka sistem desain.
Rancang basis datanya. Membangun, menguji, dan mengintegrasikan
Desain kontrol sistem dan keamanan. komponen sistem.

Selesaikan pengujian sistem dan terapkan


solusi.
Machine Translated by Google

162 BAGIAN 3 ÿ Esensi Perancangan Sistem

salah satu komponen yang diidentifikasi pada Gambar 6-1. Bagian ini akan memberikan gambaran singkatnya
pengenalan masing-masing kegiatan desain ini. Penjelasan dan instruksi mendalam mengenai konsep dan
keterampilan khusus diberikan kemudian dalam teks. Merancang
lingkungan dibahas sebagai bagian terakhir dalam bab ini, dan topik lainnya
dibahas dalam bab-bab selanjutnya.
Desain sistem adalah upaya membangun model, seperti halnya analisis sistem.
Saat keputusan desain dibuat, terutama pada tingkat detail, keputusan tersebut diturunkan
dari dan didokumentasikan oleh pembuatan model. Seperti yang ditunjukkan sebelumnya,
Modelnya mungkin cukup informal, namun itulah inti dari desain. Misalnya,
dalam desain database, kami mengidentifikasi tabel mana yang diperlukan dan bidang apa
akan berada di tabel mana sebelum kita mulai membuat tabel dengan pernyataan SQL.
Dalam desain perangkat lunak, kami memutuskan kelas mana yang merupakan kelas inti dan mana yang merupakan kelas inti
kelas utilitas dan tanggung jawab (metode) apa yang dimiliki setiap kelas.
Desain antarmuka pengguna sering kali memerlukan storyboard atau model visual lainnya untuk membuatnya
keputusan alur kerja yang efisien. Semua tugas desain sistem ini adalah pembuatan model
tugas.

Perancangan sistem melibatkan penentuan secara rinci bagaimana suatu sistem akan bekerja dan kapan
menggunakan teknologi tertentu. Beberapa detail desain telah dikembangkan selama analisis sistem, namun
seringkali diperlukan lebih banyak detail. Selain itu, setiap komponen solusi akhir sangat dipengaruhi oleh
desain
semua komponen lainnya. Dengan demikian, aktivitas desain sistem biasanya dilakukan di
paralel. Misalnya, desain database banyak digunakan dalam desain perangkat lunak
dan bahkan mempengaruhi desain antarmuka pengguna. Begitu pula dengan arsitektur aplikasinya
mendorong banyak keputusan tentang bagaimana jaringan harus dikonfigurasi. Ketika sebuah
pendekatan berulang terhadap SDLC digunakan, keputusan desain utama dibuat di dalamnya
iterasi pertama atau kedua; namun, banyak komponen yang dirancang ditinjau kembali
selama iterasi berikutnya. Untuk lebih memahami aktivitas desain ini, Anda bisa
rangkum masing-masing dengan sebuah pertanyaan. Faktanya, pengembang sistem sering bertanya
sendiri pertanyaan-pertanyaan ini untuk membantu mereka tetap fokus pada tujuan masing-masing
aktivitas desain. Gambar 6-5 menyajikan pertanyaan-pertanyaan ini.
Masing-masing kegiatan mengembangkan bagian tertentu dari rangkaian desain akhir
dokumen. Sama seperti sekumpulan cetak biru bangunan yang mempunyai beberapa dokumen berbeda,
paket desain sistem terdiri dari beberapa set dokumen yang menentukan
seluruh sistem. Selain itu, seperti halnya cetak biru, semuanya harus konsisten dan
terintegrasi untuk menggambarkan bangunan fisik yang sama, berbagai desain sistem
dokumen harus konsisten dan terintegrasi untuk menyediakan serangkaian informasi yang komprehensif
spesifikasi untuk sistem yang lengkap. Misalnya, jika seorang analis sedang mengerjakan
antarmuka pengguna tanpa berkonsultasi dengan perancang basis data, analis dapat melakukannya
membangun antarmuka dengan bidang yang salah atau jenis dan panjang bidang yang salah.

GAMBAR 6-5 Aktivitas desain Pertanyaan kunci


Kegiatan desain dan pertanyaan kunci
Rancang lingkungan Sudahkah kita tentukan secara rinci lingkungan dan segala macamnya
pilihan di mana perangkat lunak akan dijalankan?

Aplikasi desain Sudahkah kita menentukan secara rinci semua elemen perangkat lunak dan
arsitektur dan perangkat lunak bagaimana setiap kasus penggunaan dieksekusi?

Antarmuka sistem desain Sudahkah kita tentukan secara detail bagaimana sistem akan berkomunikasi
dengan semua sistem lain di dalam dan di luar organisasi?

Desain antarmuka pengguna Sudahkah kita menentukan secara rinci bagaimana pengguna akan berinteraksi dengan
sistem untuk melaksanakan semua tugasnya (use case)?

Rancang basis datanya Sudahkah kita tentukan secara rinci semua informasi penyimpanannya
persyaratan, termasuk semua elemen skema?

Kontrol sistem desain dan Sudahkah kita menentukan secara rinci semua elemen untuk memastikan
keamanan sistem dan data aman dan terlindungi?
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 163

Konsistensi internal merupakan elemen wajib dari pemodelan dan desain sistem yang efektif.
Berikut ini, kami membahas secara singkat aktivitas desain ini untuk lebih memahami apa saja
yang terlibat. Di bab-bab selanjutnya, Anda akan mengembangkan keterampilan yang diperlukan
untuk setiap aktivitas ini.

Desain Lingkungan Lingkungan


adalah semua teknologi yang diperlukan untuk mendukung aplikasi perangkat lunak yang
sedang dikembangkan. Misalnya, dalam pengembangan CSMS RMO, sejauh ini kami fokus
pada persyaratan fungsional dan nonfungsional. Namun, sistem tersebut harus ada pada
sekumpulan komputer server, komputer desktop, komputer seluler, dan mungkin perangkat
komputasi tambahan. Masing-masing perangkat komputasi tersebut akan memiliki sistem
operasi, kemampuan komunikasi, kemampuan input dan output yang beragam, dan lain
sebagainya.
Perangkat lunak tambahan—sering disebut sebagai middleware—mungkin diperlukan untuk
memfasilitasi integrasi beragam perangkat komputasi ini ke dalam solusi komprehensif. Semua
sistem pendukung ini—perangkat keras dan perangkat lunak—dianggap sebagai bagian dari
arsitektur teknologi, yang telah kita bahas di Bab 2. Agar CSMS baru dapat dikembangkan dan
diterapkan dengan sukses, lingkungan yang lengkap harus didefinisikan secara tepat. Oleh
karena itu, langkah pertama dalam pengembangan sistem baru adalah mendefinisikan
lingkungan ini.
Setiap aplikasi perangkat lunak harus dijalankan di lingkungan teknologi tertentu.
Lingkungan ini mencakup komputer dan perangkat keras lain yang diperlukan untuk penerapan
aplikasi serta hal-hal seperti komputer server, komputer desktop, komputer seluler, firewall,
router dan kabel, serat optik, dan titik akses nirkabel. Beberapa aplikasi merupakan aplikasi
sederhana yang berdiri sendiri yang dijalankan pada satu komputer, laptop, atau perangkat
komputasi seluler. Aplikasi lain sepenuhnya berbasis server dan memanfaatkan server aplikasi,
server database, dan mungkin beberapa jaringan pengiriman konten, dengan pengguna
mengakses semua fungsi aplikasi di komputer mereka melalui browser lokal. Aplikasi lain
adalah aplikasi terdistribusi yang kompleks di mana aplikasi itu sendiri dan datanya dijalankan
di berbagai komputer secara bersamaan. Masih ada aplikasi lain yang dapat diterapkan ke
perangkat komputasi jarak jauh, seperti ponsel cerdas atau perangkat pemantauan jarak jauh.
Lingkungan komputasi saat ini telah menjadi dunia teknologi yang terhubung, banyak di
antaranya beroperasi pada protokol berbeda dan tidak sepenuhnya kompatibel. Bagian penting
dalam merancang lingkungan adalah mengidentifikasi dan mendefinisikan semua jenis
perangkat komputasi yang diperlukan. Itu termasuk mengidentifikasi semua lokasi dan protokol
komunikasi yang diperlukan untuk mengintegrasikan perangkat keras komputasi.

Lingkungan teknologi mencakup lebih dari sekedar perangkat keras. Komponen penting
lainnya terdiri dari sistem operasi, protokol dan sistem komunikasi, serta perangkat lunak
pendukung lainnya (yaitu middleware). Misalnya, penerapan sistem berbasis web akan
melibatkan sistem operasi server serta sistem operasi pada komputer pengguna. Server
mungkin juga memiliki sistem lain, seperti server Web, sistem manajemen basis data, server
bahasa pemrograman, prosesor gambar dan grafis, atau perangkat lunak khusus lainnya.
Desain lingkungan perangkat lunak pendukung menjadi lebih rumit ketika sistem perangkat
lunak tidak dapat berkomunikasi secara langsung satu sama lain. Ketidaksesuaian ini harus
diselesaikan.

Merancang Arsitektur Aplikasi dan Perangkat Lunak Dalam merancang


arsitektur aplikasi, kami mencakup keputusan tentang struktur dan konfigurasi sistem baru
serta desain perangkat lunak komputer itu sendiri. Salah satu langkah pertama dalam proses
desain ini adalah mempartisi perangkat lunak menjadi subsistem. Keputusan juga dibuat
mengenai infrastruktur database dan tentang desain multilayer di mana antarmuka pengguna
berada
Machine Translated by Google

164 BAGIAN 3 ÿ Esensi Perancangan Sistem

dipisahkan dari logika bisnis dan pemrosesan database. Arsitektur teknologi akan
mendorong banyak keputusan desain ini. Misalnya, sub-sistem mana yang perlu
ditempatkan pada peralatan apa? Subsistem dapat ditempatkan pada komputer
server yang berbeda berdasarkan kepentingannya, persyaratan waktu respons,
atau masalah privasi dan keamanan.
Jenis persyaratan pemrosesan lainnya mempengaruhi arsitektur teknologi dan
arsitektur aplikasi. Misalnya, apakah pengguna dapat mengakses sistem baru
hanya saat bekerja melalui desktop atau haruskah mereka juga dapat bekerja dari
rumah melalui koneksi Internet? Apakah perlu mengizinkan perangkat nirkabel
jarak jauh untuk terhubung ke sistem? Jenis transaksi (use case) apa dan berapa
volume transaksi yang harus mampu ditangani oleh sistem baru? Keputusan
aplikasi semacam ini akan menentukan arsitektur aplikasi, lingkungan, dan
persyaratan perangkat keras lainnya. Perancangan arsitektur aplikasi biasanya
merupakan proses top-down, dengan struktur keseluruhan ditentukan terlebih
dahulu dan kemudian desain detail berbagai komponen.
Bagian lain dari desain aplikasi adalah merancang perangkat lunak aplikasi
pada tingkat yang rinci. Desain detail pada dasarnya adalah aktivitas pembuatan
model. Membuat model tidak hanya memungkinkan proses desain, namun juga
menyediakan dokumentasi yang diperlukan untuk menulis kode. Model-model
tersebut meliputi diagram aktivitas, diagram urutan, diagram kelas desain, dan
model fisik lainnya. Untuk pendekatan tradisional, model seperti diagram aliran data dikemba
Misalnya, untuk desain berorientasi objek, salah satu model utamanya adalah
diagram kelas desain, yang mengidentifikasi kelas, atributnya, dan metodenya.
Gambar 6-6 adalah diagram kelas desain parsial untuk CSMS RMO.

GAMBAR 6-6
Diagram kelas desain parsial untuk RMO <<pengontrol>>
CSMS Pengendali Penjualan
Barang Inventaris

-productItem:string
-inventoryItem:int
-ukuran:string
+prosesPenjualan Baru ( ) -warna:string
+pembayaran ( ) -options:string
-quantityOnHand:int
-averageCost:currency
-reorderQuantity:int
-dateLastOrder:date
-dateLastShipment:date

+perbaruiQOH ( )
+perbaruiInformasi ( )

Pelanggan Penjualan Barang Penjualan

-accountNo:string {key} -saleID:int {key} -saleItemId:int {key}


-nama:string -saleDateTime:tanggal -productItem:string
-billingAddress:string -priorityCode:string -kuantitas:int
-shippingAddress:string -S&H:mata uang -soldPrice:currency
-dayPhone:string -pajak:mata uang -shipStatus:string
-nightPhone:string -totalAmt:mata uang -backOrderStatus:string
-emailAddress:string
-status:string +tambahkanItem +perbarui informasi ( )
( ) +updateInformasi ( ) +batalItem ( )
+namaperbarui ( ) +permintaanPengiriman ( ) +permintaanBackorder ( )
+alamatperbarui ( ) +updateStatus ( )
+riwayat permintaan ( ) +penerimaan Pembayaran ( )
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 165

Bab 10 dan 11 akan menjelaskan secara detail bagaimana merancang arsitektur aplikasi dan
perangkat lunak.

Desain Antarmuka Pengguna Analis


harus ingat bahwa bagi pengguna suatu sistem, antarmuka pengguna adalah sistemnya. Ini
lebih dari sekedar layar. Ini adalah segala sesuatu yang berhubungan dengan pengguna saat
menggunakan sistem—secara konseptual, persepsi, dan fisik.
Dengan demikian, antarmuka pengguna bukan sekadar tambahan pada sistem.
Teknologi baru telah menyebabkan banyak persyaratan baru untuk antarmuka pengguna.
Misalnya, apakah pengguna hanya akan menggunakan komputer dengan layar besar atau
akankah mereka juga menggunakan PDA dan perangkat jarak jauh lainnya dengan area grafis
kecil? Apakah perangkat lain akan digunakan untuk memasukkan informasi, seperti teks,
perintah verbal, gambar, dan grafik? Elemen dan persyaratan antarmuka pengguna ini perlu
dipertimbangkan selama proses pengembangan.
Pada desktop, laptop, dan komputer tablet, antarmukanya adalah antarmuka pengguna
grafis dengan jendela, kotak dialog, dan interaksi mouse.
Bahkan kini semakin banyak yang menyertakan perintah suara, video, dan suara. Pada
perangkat seluler, hal-hal seperti layar sentuh, keyboard layar, perintah dan respons suara,
serta input dan output pergerakan dan pemosisian merupakan bagian standar dari antarmuka
pengguna. Ketika sistem informasi menjadi semakin interaktif dan mudah diakses, antarmuka
pengguna menjadi bagian yang lebih besar dan penting dari keseluruhan sistem.

Merancang antarmuka pengguna dapat dianggap sebagai analisis dan aktivitas desain. Ini
memiliki elemen analisis di mana pengembang harus memahami kebutuhan pengguna dan
bagaimana pengguna melakukan pekerjaannya. Antarmuka pengguna tidak hanya harus
membawa informasi yang benar, tetapi juga harus efisien secara ergonomis dan menarik secara
estetika. Desain antarmuka pengguna juga merupakan aktivitas desain yang memerlukan
kreativitas dan kesesuaian dengan persyaratan teknologi yang ketat.
Banyak jenis model dan alat yang digunakan untuk melakukan desain antarmuka pengguna,
termasuk mock-up, storyboard, tata letak grafis, dan pembuatan prototipe dengan alat
pemodelan layar. Salah satu kesulitan utama dalam merancang antarmuka pengguna di dunia
yang terhubung saat ini adalah perbedaan antara layar desktop dan tampilan ponsel cerdas
sering kali memerlukan beberapa antarmuka pengguna untuk aplikasi yang sama. Bab 7
menjelaskan banyak alat dan teknik yang digunakan untuk melaksanakan desain antarmuka
pengguna secara efektif.

Rancang Antarmuka Sistem Hanya sedikit,


jika ada, sistem yang berada dalam ruang hampa di lingkungan komputasi yang terhubung
saat ini. Suatu sistem informasi baru akan mempengaruhi dan memanfaatkan banyak sistem
informasi lainnya. Terkadang, satu sistem menyediakan informasi yang kemudian digunakan
oleh sistem lain, dan terkadang, sistem bertukar informasi secara terus-menerus saat dijalankan.
Komponen yang memungkinkan sistem untuk berbagi informasi adalah antarmuka sistem, dan
setiap antarmuka sistem perlu dirancang secara rinci.
Bentuk antarmuka ini akan sangat bervariasi. Dalam beberapa kasus, file dikirim dari satu
sistem ke sistem lainnya. Dalam kasus lain, pertukaran data real-time diperlukan, dan transaksi
langsung ditransfer antar sistem. Dalam kasus lain, satu sistem memerlukan layanan dari
sistem lain, dan pemanggilan fungsi dilakukan melalui antarmuka program aplikasi. Format
pertukarannya juga bisa bermacam-macam, mulai dari format biner, format terenkripsi, hingga
format berbasis teks.

Sejak awal desain sistem, analis harus memastikan bahwa semua sistem bekerja sama
dengan baik. Dalam beberapa kasus, sistem baru perlu berinteraksi dengan sistem di luar
organisasi—misalnya, di lokasi pemasok atau rumah pelanggan. Semakin banyak organisasi
yang menghubungkan sistem bersama-sama melintasi batas-batas organisasi. Misalnya, di
RMO, Sistem Manajemen Rantai Pasokan yang baru akan memiliki aliran informasi dari RMO
ke pemasok utamanya.
Machine Translated by Google

166 BAGIAN 3 ÿ Esensi Perancangan Sistem

GAMBAR 6-7
Contoh antarmuka sistem-ke-sistem <Catatan Inventaris>

menggunakan XML <productItem>WS39448-7</productItem> <inventoryItem>48763920</


inventoryItem> <itemCharacteristics>

<size>besar</size> <color>biru</
color> <options>dengan ritsleting</
options> </itemCharacteristics> <orderRules>

<quantityOnHand>54</quantityOnHand> <averageCost>38,27</
averageCost> <reorderQuantity>25</reorderQuantity> </
orderRules> <tanggal>

<dateLastOrder>06042012</dateLaseOrder> <dateLastShipment>08072012</
dateLastShipment> </dates> </inventoryRecord>

CSMS baru ini juga memerlukan hubungan dengan sistem Manajemen Rantai Pasokan serta
hubungan real-time ke bank dan organisasi verifikasi kredit lainnya. Salah satu metode standar
untuk mendefinisikan antarmuka sistem berbasis teks adalah dengan menggunakan eXtensible
Markup Language (XML). Sama seperti HTML, XML menggunakan tag untuk menentukan
struktur catatan. Gambar 6-7 menyajikan contoh data XML.

Beberapa antarmuka sistem menghubungkan sistem internal organisasi, sehingga analis


mungkin memiliki informasi yang tersedia tentang sistem lain. Secara internal di RMO, sistem
Supply Chain Management akan memiliki komunikasi real-time dengan Trade Show System
yang telah dijelaskan pada Bab 1. Subsistem Penjualan harus memiliki akses ke database
gudang rantai pasokan untuk mengetahui barang mana yang ada dalam stok dan mana. tidak
tersedia.
Antarmuka sistem bisa menjadi sangat kompleks, terutama dengan banyaknya jenis
teknologi yang tersedia saat ini. Desain antarmuka sistem dibahas lebih rinci di Bab 7.

Merancang Basis Data Bagian


integral dari setiap sistem informasi komputer adalah informasi itu sendiri, dengan basis data
yang mendasarinya. Model data (model domain) dibuat pada awal analisis sistem dan kemudian
digunakan untuk membuat model implementasi database. Biasanya keputusan pertama adalah
menentukan struktur database. Terkadang, database adalah kumpulan file komputer tradisional.

Lebih sering, ini adalah database relasional yang terdiri dari lusinan atau bahkan ratusan tabel.
Terkadang, file dan database relasional digunakan dalam sistem yang sama.
Keputusan lain yang perlu diambil adalah apakah database akan terpusat atau terdistribusi.
Properti internal database juga harus dirancang, termasuk hal-hal seperti tabel, atribut, dan link.
Gambar 6-8 adalah contoh definisi tabel database RMO untuk item inventaris di MYSQL.

Analis harus mempertimbangkan banyak masalah teknis penting ketika merancang


database. Banyak persyaratan teknis (bukan persyaratan fungsional) yang ditentukan selama
analisis sistem berkaitan dengan kebutuhan kinerja basis data (seperti waktu respons). Sebagian
besar pekerjaan desain mungkin melibatkan penyesuaian kinerja untuk memastikan sistem
benar-benar bekerja cukup cepat. Masalah keamanan dan enkripsi, yang merupakan aspek
penting dari integritas informasi, harus diatasi dan dirancang menjadi solusinya. Mengingat
konektivitas yang luas saat ini, database mungkin perlu direplikasi atau dipartisi di berbagai
lokasi di seluruh dunia.
Juga tidak jarang memiliki banyak database, dengan database yang berbeda
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 167

GAMBAR 6-8 Contoh definisi tabel database di MYSQL

Sistem Menejemen. Basis data ini dapat didistribusikan ke beberapa server basis data dan
bahkan mungkin ditempatkan di situs yang berbeda. Masalah yang sangat teknis ini seringkali
memerlukan keahlian khusus dari para ahli di bidang desain database, keamanan, kinerja, dan
konfigurasi fisik. Aspek kunci terakhir dari desain basis data adalah memastikan basis data baru
terintegrasi dengan baik dengan basis data yang sudah ada. Bab 12 menjelaskan desain
database secara rinci.

Merancang Keamanan dan Pengendalian Sistem Aktivitas


desain akhir adalah memastikan bahwa sistem memiliki perlindungan yang memadai untuk
melindungi aset organisasi—pengamanan yang disebut sebagai pengendalian sistem. Aktivitas
ini tidak tercantum di urutan terakhir karena merupakan aktivitas yang paling tidak penting.
Sebaliknya, khususnya dalam budaya saat ini, di mana pihak luar dapat menyebabkan kerusakan
parah pada sistem dan datanya, merancang pengendalian sistem merupakan aktivitas yang
sangat penting. Desain keamanan dan pengendalian sistem harus disertakan dalam semua
aktivitas desain lainnya: antarmuka pengguna, antarmuka sistem, arsitektur aplikasi, database, dan desain j
Kontrol antarmuka pengguna membatasi akses ke sistem untuk pengguna yang berwenang.
Kontrol antarmuka sistem memastikan bahwa sistem lain tidak membahayakan sistem ini.
Pengendalian aplikasi memastikan bahwa transaksi dicatat secara tepat dan pekerjaan lain yang
dilakukan oleh sistem dilakukan dengan benar. Pengendalian basis data memastikan bahwa data
dilindungi dari akses yang tidak sah dan dari kehilangan yang tidak disengaja karena kegagalan
perangkat lunak atau perangkat keras. Yang terakhir—dan semakin penting—kontrol jaringan
memastikan bahwa komunikasi melalui jaringan terlindungi. Semua pengendalian ini perlu
dirancang ke dalam sistem berdasarkan teknologi yang ada.
Spesialis sering kali dilibatkan untuk mengerjakan pengendalian, dan semua pengendalian sistem
perlu diuji secara menyeluruh. Permasalahan pengendalian dibahas dalam beberapa bab namun
yang paling eksplisit di Bab 12.

Rancang Lingkungan
Aktivitas pertama dalam daftar aktivitas desain adalah mendesain lingkungan. Aktivitas ini juga
dicantumkan pertama karena mencakup semua keputusan desain lainnya. Misalnya, sistem
desktop tunggal yang berdiri sendiri akan memerlukan keputusan desain yang sangat berbeda
untuk perangkat lunak, antarmuka pengguna, antarmuka sistem, dan database dibandingkan
sistem kompleks yang saling berhubungan dan terdistribusi. Meskipun semua keputusan desain
rinci mengenai lingkungan mungkin tidak diselesaikan pada awal proyek, keputusan-keputusan
besar telah ditangani.
Terdapat variasi yang luar biasa dalam sistem perangkat lunak yang diterapkan saat ini
serta ledakan jenis perangkat dan konfigurasi yang memiliki aplikasi perangkat lunak. Akibatnya,
tidak ada cara mudah untuk mengatur dan mendiskusikan isu-isu yang relevan dengan
perancangan lingkungan. Pada bagian ini, kami membahas isu-isu yang berkaitan dengan tiga
tren industri utama dalam perangkat lunak
Machine Translated by Google

168 BAGIAN 3 ÿ Esensi Perancangan Sistem

penyebaran: sistem perangkat lunak yang diterapkan seluruhnya dalam suatu organisasi, sistem
perangkat lunak yang dibangun hanya untuk penggunaan eksternal (dalam kasus kami, diterapkan
di World Wide Web melalui Internet), dan sistem perangkat lunak yang diterapkan dari jarak jauh
dengan cara terdistribusi (untuk penggunaan internal dan eksternal).

Desain untuk Penerapan Internal Ada dua jenis


sistem perangkat lunak yang diterapkan secara internal: sistem yang berdiri sendiri dan sistem
jaringan internal. Meskipun lingkungan internal untuk kedua jenis sistem ini memiliki beberapa fitur
umum, masing-masing jenis sistem memiliki persyaratan unik yang harus dipertimbangkan selama
perancangan.

Sistem Perangkat Lunak yang Berdiri


Sendiri Setiap sistem perangkat lunak yang dijalankan pada perangkat komputasi tunggal tanpa
terhubung secara eksternal melalui Internet atau koneksi jaringan adalah sistem yang berdiri sendiri.
Perusahaan masih mengembangkan sistem yang berdiri sendiri, namun sebagian besar
dikembangkan oleh individu dan kemudian dijual atau diserahkan kepada perusahaan atau individu
lain. Misalnya, Microsoft Office Suite dan Apple iWork Suite, yang memungkinkan pembuatan
dokumen word, spreadsheet, dan presentasi, dijalankan terutama pada satu komputer. Demikian
pula, banyak orang menggunakan perangkat lunak yang berdiri sendiri seperti QuickBooks atau
H&R Block At Home—program yang diperoleh sebagai paket CD atau diunduh sebagai file instalasi
yang dapat dieksekusi. Jenis lain dari sistem yang berdiri sendiri adalah permainan yang diunduh
dan dimainkan banyak orang di laptop atau desktop mereka.

Masalah desain untuk sistem yang berdiri sendiri biasanya bersifat langsung. Sistem ini
biasanya membaca dan menulis data ke dalam file tanpa akses database. Masalah terbesar dengan
sistem yang berdiri sendiri adalah bahwa sistem tersebut sering kali perlu diterapkan pada berbagai
peralatan. Misalnya, program pajak mungkin memerlukan versi yang dijalankan pada PC dengan
Windows, PC dengan Unix, dan komputer Apple yang menggunakan sistem operasi Mac. Program
lain yang berdiri sendiri mungkin perlu dijalankan dalam ketiga konfigurasi ini serta dapat dijalankan
pada perangkat seluler, termasuk komputer tablet dan ponsel pintar. Masing-masing lingkungan
ini memerlukan versi antarmuka yang sedikit berbeda dengan sistem operasi dan fungsi antarmuka
pengguna. Biasanya, versi aplikasi yang berbeda akan dirancang dan dibangun sehingga versi
yang paling sesuai untuk perangkat tertentu dapat diterapkan.

Sistem Berbasis Jaringan Internal Sistem


berbasis jaringan internal adalah sistem yang digunakan secara eksklusif oleh organisasi yang
membangun atau membelinya. Ini tidak dimaksudkan untuk digunakan oleh siapa pun kecuali
karyawan perusahaan yang berlokasi di dalam fasilitas fisik organisasi.
Gambar 6-9 adalah diagram jaringan yang mengilustrasikan kemungkinan konfigurasi perangkat
keras untuk sistem jenis ini. Seringkali, lingkungan perangkat keras seperti itu disebut sebagai
jaringan area lokal (LAN) jaringan komputer di jaringan area lokal (LAN)—jaringan komputer yang kabel dan perangkat kerasnya terbatas pada
mana kabel dan perangkat keras terbatas pada satu lokasi, seperti gedung.
satu lokasi
Konfigurasi ini menggambarkan arsitektur client-server sederhana untuk sistem jaringan
arsitektur client-server konfigurasi jaringan internal. Yang membedakan arsitektur client-server dengan arsitektur komputer tunggal adalah
komputer dengan komputer pengguna dan bahwa masing-masing komputer dalam arsitektur client-server harus terhubung ke server. Komputer
komputer pusat yang menyediakan layanan tempat pengguna melakukan pekerjaannya disebut komputer klien, sedangkan komputer utama
umum
disebut komputer server. Yang terakhir “melayani” fungsi dan data yang diterima komputer klien.
komputer klien komputer tempat pengguna Ada dua jenis sistem yang dapat digunakan dalam arsitektur client-server:
bekerja untuk melakukan tugas komputasi
mereka

komputer server komputer pusat yang ÿ Sistem aplikasi desktop ÿ Sistem


menyediakan layanan (seperti akses
aplikasi berbasis browser
database) ke komputer klien melalui jaringan
Versi paling sederhana dari sistem desktop adalah program komputer yang dijalankan pada
komputer klien. Situasi itu bahkan mungkin tidak memerlukan komputer server. Namun, banyak
sistem desktop mengakses komputer server untuk mengambil
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 169

GAMBAR 6-9
Diagram jaringan untuk sistem
jaringan internal

Klien laptop nirkabel

Pencetak
klien Apple

Aplikasi
server
Klien desktop

Basis data
server

dan memperbarui data dari database. Sistem desktop yang lebih canggih mungkin terdiri dari
program komputer yang berkomunikasi bersama antara komputer klien dan server. Keuntungan
dari sistem jenis ini adalah presentasi (yaitu, antarmuka pengguna) dan fungsinya dapat
disesuaikan dengan kebutuhan pengguna. Contoh dari jenis sistem ini mencakup sistem grafis
atau rekayasa yang persyaratan pemrosesan dan presentasinya sangat ketat dan sangat intensif.

Jenis sistem jaringan internal lainnya adalah yang berbasis browser. Dalam sistem berbasis
browser, presentasi layar dan laporan ke komputer pengguna (yaitu klien) ditangani oleh browser
Internet, seperti Internet Explorer, Firefox, Chrome, atau Safari. Dalam konfigurasi ini, sebagian
besar proses dan penghitungan berat dilakukan oleh server dan kemudian diteruskan ke
komputer klien sebagai halaman Hypertext Markup Language (HTML) . Hal ini memberikan beban
Hyper Text Markup Language yang lebih berat pada komputer server karena tidak hanya harus menyajikan data ke semua klien,
(HTML) bahasa utama untuk membuat tetapi juga harus melakukan pemrosesan untuk semua klien. Oleh karena itu, komputer
halaman Web dan terdiri dari tag dan aturan
berkecepatan tinggi biasanya dibeli untuk menyediakan daya komputasi yang diperlukan.
tentang cara menampilkan halaman
Kerugian lainnya adalah penyajian layar antarmuka pengguna dan laporan harus sesuai dengan
kemampuan yang disediakan oleh browser.

Seringkali, ini bukan masalah besar, tapi kadang-kadang bisa membatasi. Keuntungan
menggunakan desain berbasis browser adalah sistem dapat dengan mudah diperluas ke luar
LAN lokal dan digunakan melalui Internet. Sistem semacam ini menggunakan protokol transmisi
Protokol Kontrol Transmisi/ yang sama dengan Internet: Transmission Control Protocol/Internet Protocol (TCP/IP).
Protokol Internet (TCP/IP) protokol dasar
Internet; digunakan untuk menyediakan
pengiriman pesan yang andal antara komputer
Arsitektur Klien-Server Tiga Lapis Salah satu
jaringan
metode desain perangkat lunak yang efektif adalah dengan memisahkan rutinitas antarmuka
pengguna dari rutinitas logika bisnis dan memisahkan rutinitas logika bisnis dari rutinitas akses
database. Metode perancangan perangkat lunak aplikasi ini disebut arsitektur tiga lapis. Arsitektur
arsitektur tiga lapis arsitektur klien/server
tiga lapis digunakan untuk semua jenis sistem, termasuk aplikasi desktop dan aplikasi berbasis
yang membagi aplikasi menjadi lapisan tampilan,
lapisan logika bisnis, dan lapisan data browser. Arsitektur tiga lapisan membagi perangkat lunak aplikasi menjadi tiga lapisan: ÿ
Antarmuka pengguna atau lapisan tampilan, yang menerima input dan format pengguna,

view layer bagian dari arsitektur tiga lapis dan


yang berisi antarmuka pengguna
menampilkan hasil pemrosesan
Machine Translated by Google

170 BAGIAN 3 ÿ Esensi Perancangan Sistem

GAMBAR 6-10 Arsitektur tiga lapis abstrak

Meminta Permintaan
Permintaan pengguna informasi akses data

Lihat lapisan Lapisan domain Lapisan data

Diformat Tidak diformat Akses data


tanggapan tanggapan tanggapan

lapisan logika bisnis atau lapisan domain ÿ Logika bisnis atau lapisan domain, yang menerapkan aturan dan prosedur pemrosesan
bagian dari arsitektur tiga lapisan yang berisi bisnis. ÿ Lapisan data, yang mengelola
program yang mengimplementasikan aturan dan data yang disimpan, biasanya dalam satu atau lebih
proses bisnis database

lapisan data bagian dari arsitektur tiga lapisan Gambar 6-10 mengilustrasikan secara abstrak bagaimana ketiga lapisan ini bekerja sama
yang berinteraksi dengan data
untuk merespons permintaan pengguna untuk pemrosesan atau informasi. Hal ini terbukti
menjadi pendekatan yang efektif untuk membangun perangkat lunak. Hal ini efektif karena
pemrogram dapat lebih mudah memusatkan perhatiannya pada penyelesaian satu masalah
dalam satu waktu. Juga lebih mudah untuk meningkatkan dan menyempurnakan berbagai bagian sistem
Misalnya, antarmuka pengguna dapat diubah dengan dampak minimal pada rutinitas logika
bisnis.
Salah satu keuntungan dari arsitektur client-server adalah ia dengan mudah mendukung
—bahkan mendorong—perangkat lunak untuk dikembangkan dengan menggunakan program
aplikasi arsitektur tiga lapis. Gambar 6-11 mengilustrasikan sistem yang diterapkan secara
internal dengan arsitektur tiga lapisan, dan menunjukkan bagaimana ketiga lapisan tersebut
dapat dikonfigurasi pada tiga platform komputasi terpisah.
Lapisan tampilan berada pada semua komputer klien serta pada sebagian komputer
server aplikasi. HTML dirender dan ditampilkan oleh browser di komputer klien. Kelas lapisan
tampilan yang memformat HTML ada di server aplikasi. Lapisan data terdiri dari server
database dan program aplikasi apa pun di server aplikasi yang diperlukan untuk mengakses

GAMBAR 6-11 Penerapan internal dengan arsitektur tiga lapis

Lihat lapisan Perangkat lunak di server aplikasi

Lihat logika lapisan—format layar/laporan

Lapisan domain Server aplikasi Logika lapisan domain—menerapkan aturan bisnis

Logika lapisan data—merumuskan kueri

Lapisan data
server basis data
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 171

data. Lapisan logika bisnis berada di komputer server aplikasi dan mencakup semua logika
untuk memproses aturan bisnis.
Keuntungan utama menggunakan arsitektur tiga lapis adalah fleksibilitas yang melekat.
Interaksi antar lapisan selalu berupa permintaan atau tanggapan, yang membuat lapisan-
lapisan tersebut relatif independen satu sama lain. Tidak masalah di mana lapisan lain
diterapkan atau pada jenis komputer atau sistem operasi apa yang dijalankannya. Satu-
satunya ketergantungan antar lapisan adalah bahasa umum untuk permintaan dan
tanggapan serta jaringan yang andal dengan kapasitas komunikasi yang memadai.
Beberapa lapisan dapat dijalankan pada komputer yang sama atau setiap lapisan
dapat dioperasikan pada komputer terpisah. Lapisan kompleks dapat dibagi menjadi dua
atau lebih komputer. Kapasitas sistem dapat ditingkatkan dengan membagi fungsi lapisan
di seluruh komputer atau dengan pembagian beban di seluruh komputer redundan. Jika
terjadi malfungsi, redundansi meningkatkan keandalan sistem jika beban server dapat
dipindahkan dari satu komputer ke komputer lain. Singkatnya, arsitektur tiga lapis
memberikan fleksibilitas yang dibutuhkan oleh organisasi modern untuk menyebarkan dan
menerapkan kembali sumber daya pemrosesan informasi sebagai respons terhadap kondisi
yang berubah dengan cepat. Kita akan membahas aspek perangkat lunak dari desain tiga
lapis di Bab 10 dan 11.

Desain untuk Penerapan Eksternal Arena


terbesar dan paling cepat berkembang untuk aplikasi perangkat lunak baru adalah
penerapan sistem yang murni untuk penggunaan eksternal di Internet. Peningkatan luar
biasa dalam kemampuan konektivitas broadband dan perangkat yang mendukung Web
telah menghasilkan peluang luar biasa bagi terciptanya bisnis yang murni online. Saat ini,
hampir semua bisnis “brick and mortar” telah memperluas model bisnis mereka hingga
mencakup pembelian barang dan jasa secara online.
Pertumbuhan luar biasa juga terjadi pada usaha rumahan dan usaha kecil lainnya yang
hanya melakukan bisnis melalui Internet. Aplikasi perangkat lunak yang mendukung aktivitas
bisnis ini, dalam banyak kasus, dibuat murni untuk penggunaan eksternal. Dengan kata
lain, karyawan internal tidak perlu menggunakan sistem ini. Mereka akan digunakan oleh
pelanggan yang bukan bagian dari organisasi hosting. Permasalahan penting terkait
lingkungan untuk sistem yang diterapkan secara eksternal meliputi: ÿ Konfigurasi

untuk penerapan Internet ÿ Alternatif hosting


untuk penerapan Internet ÿ Keanekaragaman perangkat
klien dengan penerapan Internet

Konfigurasi untuk Penerapan Internet Gambar


6-12 mengilustrasikan konfigurasi penerapan Internet sederhana. Perhatikan bahwa ini
sangat mirip dengan arsitektur tiga lapis di bagian terakhir. Faktanya, hampir semua aplikasi
yang digunakan di Internet menggunakan arsitektur tiga lapis. Bagian belakang (yaitu,
server aplikasi dan server database) menyediakan fungsionalitas yang sama seperti sistem
klien-server yang diterapkan secara internal. Arsitektur lapisan tampilan memiliki beberapa
kesamaan tetapi juga memiliki persyaratan yang lebih kompleks karena sifat Internet yang
bervariasi dan tidak aman. Lapisan tampilan terdiri dari halaman HTML yang dirender oleh
browser. Ini juga mencakup program atau kelas yang berada di server dan memformat
HTML dinamis.

Teknologi Internet dan Web menghadirkan alternatif yang menarik untuk menerapkan
sistem informasi yang digunakan oleh pelanggan eksternal dan karyawan organisasi.
Misalnya, pertimbangkan kebutuhan entri data dan akses data pembeli RMO yang membeli
barang dari pemasok perusahaan. Pembeli biasanya berada di jalan selama beberapa
bulan dalam setahun—seringkali selama berminggu-minggu. Oleh karena itu, pembeli yang
bepergian memerlukan beberapa cara untuk berinteraksi dari jarak jauh dengan sistem
Manajemen Rantai Pasokan (SCM) RMO untuk mencatat perjanjian pembelian dan
menanyakan status inventaris.
Machine Translated by Google

172 BAGIAN 3 ÿ Esensi Perancangan Sistem

GAMBAR 6-12
Penyebaran aplikasi perangkat lunak
melalui Internet

Internet

Aplikasi
tembok api server

Basis data
server

Mengimplementasikan aplikasi melalui Web memiliki sejumlah keunggulan dibandingkan aplikasi


klien/server tradisional, termasuk: ÿ Aksesibilitas—Mengingat

browser Web dan koneksi Internet hampir ada di mana-mana, aplikasi berbasis Web dapat diakses oleh
sejumlah besar pengguna potensial (termasuk pelanggan). , pemasok, dan karyawan di luar
lokasi). ÿ Komunikasi berbiaya rendah—Jaringan berkapasitas tinggi yang membentuk

Tulang punggung internet pada awalnya didanai terutama oleh pemerintah. Lalu lintas pada
jaringan backbone berjalan bebas biaya tambahan ke pengguna akhir.
Koneksi ke Internet dapat dibeli dari berbagai penyedia layanan Internet swasta dengan
biaya yang relatif rendah. ÿ Standar yang diterapkan secara
luas—Standar web sudah dikenal luas, dan banyak profesional komputasi sudah terlatih dalam
penggunaannya.

Tentu saja, terdapat aspek-aspek bermasalah dalam pengiriman aplikasi melalui Internet dan
teknologi Web, termasuk: ÿ Keamanan—Server Web

merupakan target pelanggaran keamanan yang jelas


karena standar Web bersifat terbuka dan dikenal luas. Interkoneksi jaringan berskala luas dan
penggunaan standar Internet dan Web membuat server dapat diakses oleh kelompok peretas
global. Ini mungkin masalah paling serius yang harus diatasi dengan penerapan aplikasi eksternal.

Perlindungan harus diberikan untuk sistem rumah, termasuk data, dan untuk data yang dikirimkan
melalui Internet. ÿ Throughput—Ketika beban tinggi terjadi, throughput
dan waktu respons dapat menurun secara signifikan. Konfigurasi tersebut harus mendukung tidak
hanya pengguna rata-rata harian tetapi juga jumlah pengguna beban puncak. Hal ini tidak dapat
diprediksi dan dapat sangat bervariasi.

ÿ Mengubah standar—Standar web berubah dengan cepat. Perangkat lunak klien adalah
diperbarui setiap beberapa bulan. Pengembang aplikasi yang banyak digunakan dihadapkan pada
dilema: Gunakan standar terbaru untuk meningkatkan fungsionalitas atau gunakan standar
lama untuk memastikan kompatibilitas yang lebih baik dengan perangkat lunak pengguna lama.

Bagi RMO, kelemahan utama penerapan aplikasi pesanan pelanggan atau bahkan sistem rumah
yang mengakses pembeli RMO melalui Internet adalah keamanan dan throughput. Jika pembeli dapat
mengakses sistem melalui Web, orang lain juga bisa. Akses ke bagian sensitif dari sistem dapat dibatasi
dengan beberapa cara, termasuk akun pengguna dan kata sandi. Namun risiko suatu keamanan
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 173

pelanggaran akan selalu ada. Perlindungan data saat transit adalah penting karena
perangkat lunak “sniffer” dapat menemukan ID pengguna, kata sandi, dan data sensitif
selama transmisi.
Protokol Transfer Hypertext Aman Perlindungan data saat transit dilakukan melalui Hypertext Transfer Protocol Secure
(HTTPS) bentuk transfer informasi terenkripsi di (HTTPS), yang merupakan kombinasi protokol Hypertext Transfer Protocol (HTTP) dan
Internet yang menggabungkan HTTP dan TLS
Transport Layer Security (TLS) . Halaman web yang disajikan melalui protokol HTTPS
dikirimkan dalam format terenkripsi, yang bisa dibuat cukup aman. Anda akan mempelajari
Transport Layer Security (TLS) merupakan versi lebih lanjut tentang transmisi aman di Bab 12.
lanjutan dari protokol Secure Sockets Layer (SSL)
yang digunakan untuk mengirimkan informasi melalui
Kinerja dipengaruhi oleh beberapa faktor. Pertama tentu saja kapasitas komputer
Internet dengan aman
server dan jumlah trafik yang harus didukungnya. Gambar 6-13 mengilustrasikan
konfigurasi sederhana, hanya dengan server Web, yang menampung aplikasi perangkat
lunak, dan server database. Namun, seiring dengan peningkatan volume, peningkatan
kapasitas disediakan dengan memanfaatkan server yang lebih besar dan lebih kuat serta
dengan menambahkan lebih banyak server. Secara konseptual, konfigurasinya sama
dengan konfigurasi penerapan Internet yang ditunjukkan pada Gambar 6-12: server
aplikasi Web dan server database. Namun, masing-masing dari dua server menjadi
banyak server yang memiliki peralatan di sisi input untuk mendistribusikan permintaan
halaman dan permintaan database di seluruh server ini. Gambar 6-13 mengilustrasikan
konfigurasi pusat data tipikal yang menggunakan beberapa server aplikasi dan beberapa
server database. Konfigurasi ini menambah lapisan kompleksitas pada desain lingkungan komputa
Banyak perusahaan yang mendukung volume sangat tinggi juga membangun server
farm, yang terdiri dari beberapa pusat data yang ditempatkan di seluruh negeri atau
bahkan di seluruh dunia. Setiap pusat data menampung banyak server individual yang
dihubungkan bersama dengan perangkat keras penyeimbang beban. Hal ini menambah
kompleksitas karena permintaan akses ke aplikasi diarahkan ke pusat data yang benar,

GAMBAR 6-13
Konfigurasi beberapa server

Internet

tembok api

Komputer penyeimbang beban

Server aplikasi

Server basis data


Machine Translated by Google

174 BAGIAN 3 ÿ Esensi Perancangan Sistem

yang sering kali merupakan pusat data terdekat tetapi tidak selalu demikian. Algoritma dan
perangkat lunak sinkronisasi yang canggih diperlukan untuk menjaga data tetap terkini di
berbagai pusat data.
jaringan pengiriman konten (CDN) Throughput juga dapat ditingkatkan dengan menggunakan jaringan pengiriman konten
sekumpulan komputer server, terpisah dari (CDN). Ini adalah seperangkat komputer tambahan yang dapat digunakan untuk mengirimkan
komputer hosting, digunakan untuk mengirimkan
konten statis, seperti gambar atau video. Misalnya, ketika pelanggan RMO meminta halaman
konten statis seperti gambar atau video
dari katalog, perangkat lunak aplikasi menentukan semua informasi yang akan dikembalikan
pada halaman tersebut. Halaman dibuat secara dinamis berdasarkan permintaan dengan
menggunakan data dari database. Namun, banyak gambar yang mungkin perlu dikembalikan
adalah gambar statis yang jarang berubah. Dengan kata lain, mereka tidak berubah secara
dinamis. Daripada menggunakan bandwidth yang masuk dan keluar dari firewall pusat data dan
penyeimbang beban, RMO dapat menggunakan server CDN untuk mengirimkan semua gambar
dan video yang digunakannya. Gambar 6-14 adalah contoh konfigurasi tersebut, dengan
beberapa server dan lokasi terpisah untuk pengiriman konten.

Terakhir, kinerja dibatasi oleh titik koneksi Internet pengguna RMO dan kapasitas Internet
yang tersedia antara koneksi tersebut dan server aplikasi. Koneksi Internet lokal yang tidak
dapat diandalkan atau kelebihan beban dapat membuat aplikasi tidak dapat digunakan. RMO
tidak memiliki kendali atas koneksi pengguna.

Alternatif Hosting untuk Penerapan Internet Aplikasi


perangkat lunak yang dikembangkan hanya untuk penggunaan eksternal membuka banyak
menghosting proses penyediaan server fisik di alternatif hosting. Hosting mengacu pada menjalankan dan memelihara sistem komputer atas
lokasi yang aman dan menjual layanan tersebut nama seseorang di mana perangkat lunak aplikasi dan database berada. Ada beberapa
ke bisnis lain yang ingin menerapkannya permasalahan penting yang harus diperhatikan dalam hal ini
Situs web

GAMBAR 6-14
Konfigurasi beberapa server dengan
jaringan pengiriman konten

Internet

Server jaringan pengiriman konten

tembok api

Komputer penyeimbang beban

Server aplikasi

Server basis data


Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 175

penyebaran sistem apa pun untuk penggunaan eksternal, terutama untuk sistem yang digunakan
oleh pelanggan atau pihak luar lainnya. Hal tersebut

mencakup: ÿ Keandalan—Lingkungan perangkat keras harus benar-benar dapat diandalkan karena


pelanggan dan pihak luar lainnya biasanya memiliki toleransi yang sangat rendah terhadap
sistem yang tidak tersedia. Hal ini sering kali memerlukan pencerminan komputer, hard drive,
dan catatan database. Pencadangan dan pemulihan harus dilakukan dengan baik.
ÿ Keamanan—Sistem—perangkat keras dan perangkat lunak—harus aman. Itu
peraturan hukum saat ini untuk data keuangan dan layanan kesehatan memerlukan tingkat
keamanan yang sangat tinggi. Hukumannya berat.
ÿ Fasilitas fisik—Untuk menjamin keandalan dan keamanan, seringkali diperlukan ruangan khusus
atau bahkan bangunan khusus. Selain itu, konektivitas Internet sering kali memerlukan
beberapa rute akses ke tulang punggung Internet.
Tenaga listrik harus aman, yang berarti harus mempunyai generator cadangan di
lokasi. Dan unit pendingin udara harus memadai, dengan fasilitas cadangan, untuk
menjamin lingkungan fisik yang konstan. ÿ Staf—Untuk menjamin
keandalan dan keamanan, diperlukan staf teknis yang berkualifikasi baik
harus berada di lokasi 24/7.
ÿ Pertumbuhan—Sistem eksternal sering kali tumbuh secara dramatis seiring dengan
berkembangnya bisnis, sehingga meningkatkan jumlah server yang dibutuhkan untuk
merespons lalu lintas. Ketika jumlah server aplikasi dan server database meningkat,
terdapat kebutuhan untuk penyeimbangan beban yang lebih canggih. Pertumbuhan juga
dapat membuat fasilitas fisik menjadi lebih unggul sehingga memerlukan banyak pusat data.

Karena masalah ini, banyak perusahaan melakukan outsourcing terhadap lingkungan


perangkat keras mereka. Dalam beberapa tahun terakhir, terdapat perluasan besar layanan yang
ditawarkan kepada perusahaan untuk menghosting aplikasi mereka. Beberapa alternatif yang lebih
populer kini dibahas.

colocation layanan hosting dengan lokasi aman Colocation Dalam pengaturan colocation , satu perusahaan menyediakan pusat data yang aman di
tetapi komputer biasanya dimiliki oleh bisnis mana perusahaan lain (yaitu klien) menampung komputer server mereka. Salah satu fitur yang
klien
disertakan dengan pusat data mencakup situs yang terkunci dan terlindungi dengan aman yang
memenuhi semua persyaratan peraturan untuk catatan keuangan dan layanan kesehatan.
Situs ini juga sering kali memiliki beberapa koneksi berkapasitas tinggi ke tulang punggung Internet.
Dan sering kali kota ini terintegrasi ke dalam beberapa jaringan listrik dan memiliki pembangkit
listrik daruratnya sendiri. Klien dapat menyewa ruang rak untuk menampung server komputernya
sendiri atau dapat menyewa komputer dari penyedia host. Mengelola server—sistem operasinya,
perangkat lunak Internet, perangkat lunak manajemen basis data, pencadangan data, dan
sebagainya—dilakukan dari jarak jauh. Setelah pengaturan awal, klien jarang, jika pernah,
mengunjungi situs tersebut. Keuntungan dari layanan semacam ini adalah tidak menimbulkan biaya
pusat data fisik, aman, dan kompleks.

Layanan Terkelola Klien mungkin ingin membeli layanan tambahan, seperti menginstal dan
mengelola sistem operasi, server Internet, server database, dan perangkat lunak penyeimbang
beban. Klien memelihara perangkat lunaknya sendiri tetapi tidak perlu mempekerjakan staf untuk
mengelola lingkungan operasi. Layanan ini biasanya disebut layanan terkelola, dan hampir semua
perusahaan hosting menyediakannya. Biasanya, perusahaan klien memiliki atau menyewakan
sejumlah komputer tertentu untuk servernya. Keuntungan dari layanan ini adalah perusahaan klien
tidak perlu mempekerjakan staf teknis khusus untuk mengelola perangkat lunak sistem server.

server virtual suatu metode untuk mempartisi Server Virtual Dalam pengaturan ini, perusahaan klien menyewa server virtual yang dikonfigurasi
layanan server Web fisik sehingga tampak sebagai server nyata, dengan sejumlah kapasitas CPU, memori internal, memori hard drive, dan
sebagai beberapa server Internet independen
bandwidth ke Internet. Bagaimana perangkat keras komputer dikonfigurasi tidak diketahui oleh
klien, yang hanya membeli (biasanya dengan sewa bulanan atau tahunan) konfigurasi server
tertentu. Perusahaan klien dapat membeli server virtual dengan atau tanpa layanan terkelola.

Perusahaan penyedia menggunakan perangkat lunak sistem khusus untuk mengkonfigurasi virtual
Machine Translated by Google

176 BAGIAN 3 ÿ Esensi Perancangan Sistem

dunia untuk perusahaan klien itu. Perusahaan menggunakan layanan jenis ini untuk aplikasi
dengan volume sangat rendah yang tidak memerlukan daya komputasi a
seluruh komputer. Harga untuk jenis layanan ini berkisar hanya beberapa
dolar sebulan hingga satu atau dua ribu dolar sebulan tergantung pada
ukuran dan kekuatan server virtual. Keuntungan dari layanan ini (selain itu
yang baru saja disebutkan) adalah bahwa perusahaan klien dapat memulai dari yang kecil dan menambahkan lebih banyak
kapasitas sesuai kebutuhan. Biasanya, klien membeli server virtual dan
meningkatkan kapasitas secara bertahap, menambahkan server virtual yang lebih besar
atau server virtual tambahan sesuai kebutuhan.

komputasi awan merupakan perpanjangan dari virtual Cloud Computing Ada dua filosofi di balik cloud computing. Pertama, sebuah
server di mana sumber daya yang tersedia termasuk klien harus dapat membeli kapasitas komputasi seperti seseorang yang membeli tersebut
komputasi, penyimpanan, dan akses Internet dan
utilitas seperti air atau listrik. Dengan kata lain, klien hanya membeli sebanyak itu
tampaknya memiliki ketersediaan tak terbatas
sesuai kebutuhan dan digunakan. Kedua, klien tidak perlu khawatir
isu-isu lingkungan seperti bagaimana atau di mana kapasitas komputasi ini disediakan,
sama seperti seseorang tidak perlu khawatir tentang bagaimana listrik dihasilkan.
Dengan komputasi awan, perusahaan klien membeli kapasitas komputasi (dengan
memori terkait, penyimpanan hard drive, dan bandwidth) dalam peningkatan yang sangat kecil
untuk periode waktu yang sangat singkat. Perusahaan klien menentukan lingkungan yang
diperlukan, seperti sistem operasi Unix dengan server Web Apache, tetapi tidak
memiliki kontak dengan lingkungan operasi. Dengan kata lain, milik klien
perangkat lunak aplikasi berjalan “di cloud.” Ketika pertumbuhan terjadi, cloud secara otomatis
menyediakan kapasitas lebih besar. Seharusnya, pengaturan ini menyelamatkan klien
uang perusahaan karena tidak perlu membeli kapasitas yang tidak dibutuhkannya. Pada
saat ini, ini adalah pemisahan utama antara perangkat lunak aplikasi dan
lingkungan operasi.
Salah satu nilai jual utama dari semua perusahaan hosting adalah keandalannya
peralatan dan akses Internet mereka. Sebagian besar kontrak untuk layanan semacam ini
Bagian Perjanjian Tingkat Layanan (SLA). menyertakan Perjanjian Tingkat Layanan (SLA), yang menjamin tingkat tertentu
kontrak antara perusahaan dan a
ketersediaan sistem. Volume dan aktivitas di situs Web (yaitu, tertentu
perusahaan hosting yang menjamin spesifik
aplikasi perangkat lunak) membuat ketersediaan menjadi sangat penting. Misalnya bagaimana
tingkat ketersediaan sistem
banyak pendapatan yang akan hilang dari Amazon jika sistemnya tidak tersedia bahkan untuk a
menit pada jam sibuk? Bukan hal yang aneh melihat SLA yang memberikan jaminan
ketersediaan 99,9 persen sepanjang waktu, dengan penalti jika tidak berkinerja. Beberapa
penyedia bahkan menjamin ketersediaan 100 persen. Penyedia mampu membuat
jaminan ini karena mereka memiliki banyak server farm dengan beberapa lapisan
redundansi dan cadangan bawaan.
Gambar 6-15 mencantumkan opsi hosting dan berbagai kemampuannya.

GAMBAR 6-15 Atribut opsi hosting

OPSI HOSTING

Opsi layanan Kolokasi Layanan terkelola Server virtual Komputasi awan

Layanan hosting menyediakan Ya Ya Ya Ya

bangunan dan infrastruktur

Klien memiliki komputer Ya Mungkin TIDAK TIDAK

Klien mengelola komputer Ya TIDAK Mungkin TIDAK

konfigurasi

Skalabilitas Klien menambahkan lebih banyak Klien menambahkan lebih banyak Klien membeli lebih besar atau lebih Klien menambahkan sedikit demi sedikit

komputer komputer server virtual kekuatan komputasi

Pemeliharaan Klien menyediakan Tuan rumah menyediakan Tuan rumah menyediakan Tuan rumah menyediakan

Cadangan dan pemulihan Klien menyediakan Tuan rumah menyediakan Tersedia Tersedia
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 177

Keanekaragaman Perangkat Klien dengan Penerapan Internet


Masalah penting lainnya dengan aplikasi yang digunakan untuk penggunaan eksternal adalah
jangkauan perangkat klien yang sangat luas. Masalahnya adalah berbagai perangkat memiliki
ukuran layar, karakteristik tampilan layar, browser Internet, dan lingkungan pengoperasian
yang berbeda. Masalah ini sedikit lebih baik karena perangkat yang digunakan untuk melihat
halaman Web biasanya menyediakan beberapa jenis aplikasi browser sebagai bagian dari
perangkat lunak standarnya. Namun, browser di perangkat yang berbeda memiliki kemampuan
yang berbeda-beda. Merancang dan mengimplementasikan antarmuka pengguna untuk
browser ini selalu merupakan sebuah tantangan.
Perangkat klien terbagi dalam tiga kategori berdasarkan ukuran: komputer berukuran penuh,
komputer tablet berukuran sedang, dan perangkat komputasi seluler kecil.
Perangkat berukuran penuh mencakup komputer desktop dan laptop. Ini biasanya memiliki
layar berukuran penuh 15 inci atau 17 inci, meskipun tidak jarang melihat monitor dengan layar 24
inci atau 28 inci. Selain itu, perangkat berukuran penuh ini menawarkan tingkat resolusi yang
memungkinkannya menampilkan detail tingkat tinggi.
Perangkat tablet berukuran menengah memiliki ukuran layar yang lebih standar. Kebanyakan
memiliki ukuran layar kurang lebih 10 inci, meski ada juga yang memiliki ukuran layar 12 inci.
Kebanyakan tablet dapat dilihat dalam mode lanskap atau potret, yang mungkin perlu
dipertimbangkan oleh perancang Web. Resolusinya biasanya lebih rendah dan lebih sedikit detail
yang dapat dilihat pada layar yang lebih kecil ini.
Jumlah perangkat komputasi seluler telah berkembang pesat belakangan ini. Perangkat ini
tidak hanya dapat dilihat dalam mode lanskap atau potret, tetapi terdapat juga variasi ukuran dan
resolusi layar yang jauh lebih luas. Merancang antarmuka pengguna merupakan tantangan besar
jika pengguna ingin menerima pengalaman menonton sebaik mungkin. Ukuran layar yang kecil
memberikan batasan besar pada jumlah detail yang dapat disajikan, namun hal ini dapat diimbangi
oleh kemampuan zoom perangkat.

Bukan hal yang aneh untuk membangun dua atau tiga lapisan tampilan terpisah sehingga
aplikasi perangkat lunak dapat dilihat di ketiga jenis perangkat tersebut. Faktanya, sebagian besar
aplikasi perangkat lunak Internet baru memiliki setidaknya dua lapisan tampilan terpisah untuk
mengakomodasi perbedaan dalam perangkat ini. Dalam beberapa kasus, perbedaan antara lapisan
tampilan tidak lebih dari cara HTML diformat.
Dalam kasus lain, layar yang sepenuhnya berbeda disajikan oleh berbagai jenis perangkat.

Desain untuk Lingkungan Terpencil dan Terdistribusi Lingkungan


terdistribusi jarak jauh memiliki karakteristik lingkungan internal dan lingkungan eksternal berbasis
Web. Seperti halnya konfigurasi internal, aplikasi perangkat lunak untuk lingkungan terdistribusi
jarak jauh sering kali merupakan sistem internal yang digunakan oleh karyawan suatu bisnis.
Seperti halnya penerapan eksternal berbasis web, karyawan tidak dibatasi pada satu lokasi saja;
faktanya, mereka dapat tersebar di seluruh dunia. Secara historis, banyak perusahaan telah
membangun WAN mereka sendiri untuk melayani karyawannya. Namun, biaya untuk membangun
dan memelihara jaringan komunikasi individual ini menjadi penghalang bagi sebagian besar
perusahaan. Saat ini, hampir semua sistem ini dibangun dengan menggunakan Internet dan
disebut Virtual Private Networks (VPN). VPN adalah jaringan yang dibangun di atas jaringan publik
Virtual Private Networks (VPN) adalah jaringan seperti Internet, yang menawarkan keamanan dan akses terkontrol untuk grup pribadi.
tertutup dengan keamanan dan akses tertutup
yang dibangun di atas jaringan publik, seperti
Internet

Penerapan Jarak Jauh melalui Jaringan Pribadi Virtual


Sebelumnya, kami menjelaskan pembeli RMO yang sedang dalam perjalanan dan memerlukan
akses ke sistem kantor pusat. Jika pembeli hanya memerlukan akses ke beberapa halaman,
koneksi TCP/IP yang aman dengan HTTPS sudah cukup. Namun, jika pembeli memerlukan
akses ke sistem aman lainnya di kantor pusat, VPN mungkin merupakan solusi yang lebih
baik. Dengan VPN, pembeli dapat mengakses server kantor pusat seolah-olah dia sedang
bekerja di dalam gedung kantor pusat.
Machine Translated by Google

178 BAGIAN 3 ÿ Esensi Perancangan Sistem

GAMBAR 6-16
Perangkat yang mendukung VPN
Jaringan Pribadi Virtual menggunakan TCP/IP

Terowongan (koneksi logis)

Internet

Gerbang/server VPN Aplikasi


server

Basis data
server

Gambar 6-16 mengilustrasikan VPN melalui Internet menggunakan TCP/IP. Seperti yang
ditunjukkan pada gambar, terdapat “pipa” aman antara komputer jarak jauh dan server kantor
pusat. Hal ini menunjukkan adanya VPN yang menggunakan protokol Internet namun dengan
keamanan dan kontrol lebih. Untuk mengimplementasikan VPN jenis ini, perangkat lunak khusus
digunakan untuk membuat koneksi aman dan mengenkripsi semua transmisi data. Hanya
komputer dengan perangkat lunak dan kunci yang tepat yang dapat mengakses jaringan VPN.

Variasi konfigurasi ini dapat terjadi ketika dua komputer jarak jauh perlu berkomunikasi
secara langsung satu sama lain. Mereka dapat menggunakan server kantor pusat untuk
memfasilitasi koneksi di antara mereka, namun setelah terhubung, mereka dapat membuat
koneksi peer-to-peer ketika komputer koneksi peer-to-peer yang melanjutkan komunikasi tanpa bantuan apa pun. Koneksi peer-to-
independen berkomunikasi dan berbagi sumber peer adalah koneksi yang berjalan langsung antara komputer jarak jauh dan tidak memerlukan
daya tanpa memerlukan terpusat
akses ke komputer di rumah. Konfigurasi tersebut dapat direpresentasikan melalui pipa langsung
komputer server
antara komputer jarak jauh. Keuntungan dari konfigurasi ini adalah kecepatan koneksi dapat
menangani transfer volume tinggi atau respons langsung, yang bermanfaat untuk, misalnya,
chatting online.

Cara alternatif bagi pembeli untuk menerapkan akses jarak jauh adalah dengan membangun
aplikasi yang menggunakan antarmuka browser Web. Aplikasi dijalankan di server Web,
berkomunikasi dengan browser Web menggunakan HTML, dan dapat diakses dari komputer
mana pun dengan koneksi Internet. Pembeli dapat menggunakan browser Web di komputer
laptop mereka dan terhubung ke aplikasi melalui penyedia layanan Internet lokal. Mereka juga
dapat mengakses aplikasi dari komputer lain yang memiliki akses Internet (misalnya, komputer
di kantor vendor, ruang bisnis hotel, atau pusat fotokopi, seperti milik FedEx Kinko).

Aspek penting dari semua VPN adalah tautan komunikasi selalu dienkripsi untuk menjaga
keamanan. Karena tujuan VPN adalah untuk memungkinkan komunikasi pribadi antara orang-
orang dalam organisasi yang sama, komunikasi tersebut dienkripsi. Server dan perangkat lunak
VPN tidak hanya menggunakan protokol HTTP aman (HTTPS://), tetapi juga mencakup otorisasi
tambahan, enkripsi yang lebih aman, dan tingkat pemantauan transportasi yang lebih tinggi.

Keanekaragaman Perangkat
Klien Pada bagian sebelumnya, kita membahas kesulitan penerapan perangkat lunak pada
berbagai perangkat. Aplikasi perangkat lunak yang diterapkan dari jarak jauh memiliki persyaratan
rendering yang lebih kompleks. Seringkali, peralatan khusus diperlukan untuk melakukannya
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 179

menyebarkan aplikasi ke karyawan jarak jauh—misalnya, ketika layanan kurir mengirimkan


tanda tangan pelanggan kembali ke kantor pusat setelah pengiriman paket. Jenis perangkat
pemantauan lainnya memiliki persyaratan pengambilan data dan komunikasi data yang unik
untuk aplikasi perangkat lunak tertentu.

Arsitektur Teknologi Korporat RMO Kantor utama RMO


terdiri dari kantor pusat perusahaan serta toko ritel besar, pabrik, dan gudang distribusi besar di
Park City, Utah. Park City adalah tempat perusahaan memulai usahanya dan membuka toko
ritel pertamanya. Salt Lake City, dalam banyak hal, merupakan pusat operasi harian RMO. Pusat
data utama terletak di gedung terpisah di Park City. Ada dua pusat distribusi: satu di Portland,
Oregon, dan yang lainnya di Albuquerque, New Mexico. Manufaktur tambahan dilakukan di
Seattle, Washington. Peta yang ditunjukkan pada Gambar 6-17 menunjukkan lokasi 10 toko ritel
tersebut.

Seiring dengan pusat data utama di Park City, RMO memiliki LAN internal di setiap kantor,
gudang, pabrik, dan toko ritel. Selain itu, pusat distribusi dan pabrik manufaktur semuanya
menggunakan VPN yang menghubungkan fasilitas ini ke pusat data pusat dan ke kantor
perusahaan di Park City. Semua gerai ritel terhubung ke situs pusat, dengan VPN terpisah yang
terhubung dengan aplikasi ritel. Di dalam setiap gedung, terdapat LAN

GAMBAR 6-17
Peta yang menunjukkan gudang,
pabrik, dan toko ritel RMO
Seattle

Washington

montana
Portland
Tagihan
Oregon
Boise

Idaho

Wyoming
Sacramento Garam

Kota Danau
Reno

Nevada
Taman Kota

Utah
Denver

Kalifornia Colorado

Alburquerque
Arizona

Meksiko Baru

Toko ritel
Pusat gudang distribusi
Pabrik manufaktur
Machine Translated by Google

180 BAGIAN 3 ÿ Esensi Perancangan Sistem

GAMBAR 6-18 Arsitektur teknologi RMO saat ini

Gerbang VPN Cluster server database


Gerbang VPN ke untuk gudang dan berkapasitas tinggi dengan Unix dan
LAN manufaktur Basis data Oracle

Distribusi dan
manufaktur
stasiun kerja klien
dengan Windows 7
dan MacOS LAN berkecepatan tinggi di
Pusat data Park City
Internet
Gerbang VPN
untuk toko ritel

Gerbang VPN ke
LAN

Stasiun kerja Firewall


untuk aplikasi Server aplikasi berjalan
klien ritel dengan
Server Windows dan IIS
Windows 7 dan pelanggan
macOS

Layanan persetujuan
kredit eksternal
Pelanggan RMO di
PC dan MAC

dikonfigurasi untuk menyediakan konektivitas umum. Gambar 6-18 memberikan diagram


jaringan yang menjelaskan konfigurasi teknologi saat ini.
Bagian dari proyek CSMS baru akan mencakup penilaian kelayakan hosting sistem
baru dengan penyedia berkapasitas besar. Meskipun tidak ada alternatif yang
dihilangkan, analisis awal menunjukkan bahwa penggunaan server virtual dengan
layanan terkelola adalah pilihan yang paling menguntungkan. Perusahaan hosting di
Utah dan California tampaknya merupakan pilihan yang paling menarik. Analisis lebih
lanjut perlu dilakukan, dan waktu proyek dijadwalkan untuk penyelidikan lebih
menyeluruh dan kunjungan lapangan ke dua atau tiga perusahaan hosting yang paling menjanjik

Ringkasan Bab Perancangan


sistem adalah proses pengorganisasian dan penataan Masukan untuk kegiatan desain terdiri dari model yang
komponen-komponen suatu sistem untuk memungkinkan dibangun selama analisis. Keluaran dari desain terdiri dari
pembangunan (yaitu, pemrograman) sistem baru. Perancangan sekumpulan diagram, atau model, yang menggambarkan
sistem baru terdiri dari aktivitas-aktivitas yang berhubungan arsitektur sistem baru dan logika rinci dalam berbagai
secara spesifik dengan perancangan berbagai komponen sistem komponen
baru. pemrograman.
Komponennya meliputi lingkungan penerapan, arsitektur Perancangan arsitektur aplikasi dapat dibagi lagi menjadi
aplikasi dan perangkat lunak, antarmuka pengguna, desain arsitektur dan detail. Desain detail sering kali mengacu
antarmuka sistem, database, dan kontrol sistem yang terkait pada desain program perangkat lunak.
dengan keamanan sistem. Desain arsitektur menyesuaikan aplikasi dengan
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 181

lingkungan penyebaran, termasuk perangkat keras, perangkat lunak, lingkungan. Pilihan lingkungan komputasi klien berkisar dari sistem
dan jaringan. Perangkat lunak aplikasi modern biasanya digunakan desktop sederhana hingga komputer tablet hingga perangkat seluler
dalam lingkungan multikomputer terdistribusi dan diatur menurut yang sangat kecil. Pada desain sisi server, ada banyak pilihan—
arsitektur klien/server— biasanya dalam arsitektur tiga lapis. mulai dari peralatan internal hingga kolokasi atau komputasi awan.
Persyaratan spesifik dari peralatan klien potensial dan komputer
Dalam lingkungan komputasi yang terhubung secara luas saat server berdampak pada desain akhir dan pengoperasian sistem
ini, desain aplikasi perangkat lunak harus mempertimbangkan baru.
karakteristik komputer klien dan server

Istilah-Istilah Utama

desain arsitektur 158 lapisan jaringan area lokal (LAN) 168 diagram
logika bisnis 170 komputer klien jaringan 156 koneksi peer-to-
168 peer 178 komputer server 168
arsitektur klien-server 168

komputasi awan 176 Perjanjian Tingkat Layanan (SLA) 176 arsitektur


kolokasi 175 tiga lapis 169
jaringan pengiriman konten (CDN) 174 lapisan Protokol Kontrol Transmisi/

data 170 desain Protokol Internet (TCP/IP) 169

detail 158 lapisan domain Keamanan Lapisan Transportasi (TLS) 173 lihat

170 hosting 174 lapisan 169


Jaringan Pribadi Virtual (VPN) 177
server maya 175
Bahasa Markup Hiperteks (HTML) 169
Protokol Transfer Hiperteks Aman (HTTPS) 173

Tinjau Pertanyaan
1. Apa tujuan utama desain sistem? 12. Apa yang dimaksud dengan desain tiga lapis?

2. Apa perbedaan antara analisis sistem dan desain sistem? 13. Jelaskan isi setiap lapisan dalam tiga lapisan
desain.
3. Sebutkan elemen-elemen utama yang harus dirancang untuk 14. Sebutkan berbagai jenis perangkat klien dalam arsitektur
aplikasi perangkat lunak baru. klien/server.

4. Sebutkan model-model yang digunakan untuk analisis sistem. 15. Apa perbedaan antara HTTPS dan HTTP?

5. Sebutkan model yang digunakan untuk desain sistem. 16. Dalam penggunaan perangkat lunak melalui Internet, apa
6. Apa perbedaan antara desain antarmuka pengguna dua masalah keamanan utama yang harus
dipertimbangkan?
dan desain antarmuka sistem?
7. Pada proyek yang menggunakan iterasi untuk 17. Jelaskan faktor utama yang mempengaruhi throughput sistem
mengembangkan sistem, pada iterasi manakah desain Internet.
sistem dimulai? Jelaskan mengapa. 18. Sebutkan lima isu yang penting ketika mempertimbangkan
8. Apa perbedaan desain arsitektur perusahaan hosting eksternal.
dan desain detail? 19. Apa perbedaan antara komputasi awan dan server virtual?
9. Perancangan keamanan dan pengendalian berdampak
pada perancangan elemen lainnya? 20. Mengapa perusahaan menggunakan fasilitas colocation?
10. Jelaskan apa yang diperlukan untuk desain database. 21. Jelaskan isu-isu yang harus dipertimbangkan ketika merancang
11. Apa itu LAN? Kapan itu akan digunakan untuk banyak klien.
menerapkan sistem baru? 22. Apa itu VPN? Mengapa perusahaan menggunakan VPN?
Machine Translated by Google

182 BAGIAN 3 ÿ Esensi Perancangan Sistem

Soal dan Latihan


1. Perusahaan keuangan memiliki aplikasi desktop yang berjalan pada awalnya, dan sulit untuk memprediksi pola pertumbuhannya,
di beberapa kantor berbeda yang semuanya didukung meskipun terdapat potensi pertumbuhan yang pesat.
oleh bank aplikasi terpusat yang terdiri dari dua komputer. Memutuskan alternatif mana yang harus dipilih perusahaan.
Selain itu, terdapat database terpusat yang Pertahankan keputusan Anda dengan memberikan kelebihan
membutuhkan tiga server. Gambarlah diagram jaringan dan kekurangan setiap solusi berdasarkan karakteristik
yang mewakili persyaratan ini. perusahaan start-up.

2. Organisasi penjualan memiliki sistem dukungan pelanggan


berbasis Internet yang perlu mendukung setiap jenis perangkat 5. Jelaskan perbedaan antara HTTPS dan a
klien. Konfigurasi server harus berupa server aplikasi berlapis VPN. Situasi komputasi dan jaringan seperti apa yang lebih
normal dan server database. Gambarlah diagram jaringan cocok untuk HTTPS? Situasi komputasi dan jaringan seperti
yang mewakili persyaratan ini. apa yang lebih cocok untuk VPN?

3. Sebuah perusahaan teknik menengah mempunyai tiga kantor 6. Temukan empat penyedia hosting terpisah dan bandingkan
teknik terpisah. Di setiap kantor, LAN lokal mendukung penawaran mereka, termasuk harga. Letakkan jawaban Anda
semua teknisi di kantor tersebut. Karena kebutuhan kolaborasi dalam tabel yang menunjukkan hasil penelitian Anda.
antar kantor, semua komputer harus dapat melihat dan 7. Bandingkan ukuran layar, resolusi, dan karakteristik tampilan
memperbarui data dari salah satu dari tiga kantor. Dengan penting lainnya dari lima ponsel pintar populer yang mendukung
kata lain, server penyimpanan data dalam setiap LAN Internet. Mana yang menurut Anda terbaik? Pertahankan
harus dapat diakses oleh semua komputer, di mana pun jawaban Anda.
komputer tersebut berada. Gambarlah diagram jaringan
8. Meneliti masalah-masalah yang berkaitan dengan dukungan
yang akan mendukung konfigurasi ini.
database yang sangat besar yang harus didistribusikan
ke beberapa server. Tuliskan daftar masalah yang perlu
4. Sebuah perusahaan rintisan kecil yang berbasis web diatasi dan solusi alternatif untuk database terdistribusi dan
sistem penjualan pelanggan yang ditulis dengan menggunakan terpartisi di mana (a) semua server ditempatkan di pusat data
PHP dan JavaScript. Perusahaan sedang memutuskan apakah yang sama dan (b) server ditempatkan di data terpisah
akan menghosting sistem di servernya sendiri, membuat
kontrak dengan perusahaan hosting untuk server virtual, pusat.
atau menggunakan cloud Amazon. Volume diperkirakan rendah pada

Studi kasus

Sistem Komunikasi Seluler Sheriff County Katakanlah departemen sheriff daerah setempat telah menerima
(CMSSC) hibah untuk meningkatkan sistem komunikasi yang ada dan sistem tersebut
harus memenuhi persyaratan tertentu.
Lembaga penegak hukum berkembang pesat dalam hal informasi. Mereka
Pertama, harus ada cakupan yang menyeluruh di seluruh wilayah. Wilayah
memerlukannya untuk merespons keadaan darurat dan mengantisipasi apa
ini mencakup wilayah metropolitan serta gurun dan pegunungan yang sering
yang akan mereka hadapi saat tiba di lokasi. Pada era sebelumnya, kali berada di luar jangkauan radio normal atau Wi-Fi area luas. Sekitar 95
penerimaan informasi cukup melalui radio pengiriman polisi. Saat ini,
persen wilayahnya berada dalam jangkauan telepon seluler, dan 5 persen
dibutuhkan lebih dari sekadar informasi berbasis suara. Petugas sering kali
berada di daerah pegunungan yang tidak terjangkau.
perlu memeriksa STNK, identitas pribadi, surat perintah yang beredar, foto
mug, peta, dan lokasi petugas lainnya.
Petugas biasanya memiliki akses ke laptop khusus di kendaraan
mereka. Namun, beberapa petugas diharuskan berpatroli di jalur ATV dan
tempat perkemahan. Petugas tersebut masih perlu terhubung dengan
Salah satu kesulitan besar dalam memenuhi kebutuhan akan informasi
perangkat komputasi portabel.
lebih lanjut adalah memikirkan cara mengirimkan data ke lokasi terpencil
Oleh karena itu, persyaratan lainnya adalah dapat menggunakan perangkat
dan mobile. Badan kepolisian setempat terkadang dapat membatasi
portabel yang lebih kecil.
kebutuhan penularannya
Tugas Anda: Merekomendasikan solusi komunikasi dan jaringan
dalam batas kota. Namun, sheriff daerah dan polisi negara bagian sering
untuk departemen sheriff daerah. Ini bisa berupa kombinasi Internet, VPN,
kali harus melakukan perjalanan ke lokasi terpencil yang tidak berada dalam
Wi-Fi, telepon, dan komunikasi satelit. Aplikasinya bisa custom
batas wilayah metropolitan.
Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 183

dibangun, dengan antarmuka pengguna khusus perangkat atau berbasis HTML. Seperti biasa, anggarannya terbatas, jadi solusi Anda harus
Meskipun HTML cenderung lebih serbaguna, HTML memiliki seekonomis mungkin. Kembangkan diagram jaringan yang
kelemahan terkait keamanan; tampilan juga dapat menjadi masalah menggambarkan solusi yang Anda usulkan. Juga, jelaskan solusi
pada perangkat yang tidak memiliki dukungan browser. Anda dan justifikasi desain Anda.

MENJALANKAN STUDI KASUS

Dewan Komunitas Realtors

Community Board of Realtors Multiple Listing Service (MLS) akan enam aktivitas desain yang dibahas dalam bab ini, mencantumkan
menjadi aplikasi berbasis web dengan ekstensi untuk memungkinkan beberapa tugas spesifik untuk merancang lingkungan, arsitektur
interaksi ponsel pintar nirkabel antara agen dan pelanggan mereka. aplikasi dan perangkat lunak, antarmuka pengguna, antarmuka sistem,
Tinjau persyaratan fungsional dan nonfungsional yang telah Anda database, serta kontrol dan keamanan sistem.
kembangkan untuk bab sebelumnya. Kemudian, untuk masing-masing Anda mungkin ingin merujuk kembali ke Sistem Pameran Dagang yang
dibahas di Bab 1 untuk mengetahui beberapa spesifikasi desain.

Layanan Perjalanan Liburan Musim Semi 'R' Us

Katakanlah sistem informasi SBRU mencakup empat subsistem: Resor ini akan bertanggung jawab untuk menghubungkan ke Internet
Hubungan resor, Pemesanan pelajar, Akuntansi dan keuangan, dan dan menyediakan lingkungan nirkabel yang aman bagi para siswa.
Jejaring sosial. Tiga yang pertama adalah murni aplikasi Web, jadi
akses ke aplikasi tersebut akan dilakukan melalui koneksi Internet ke
1. Merancang lingkungan sistem informasi SBRU dengan menggambar
server Web di kantor pusat SBRU. Subsistem jejaring sosial memiliki
diagram jaringan. Sertakan apa yang mungkin diperlukan
kemampuan obrolan bawaan. Hal ini bergantung pada akses Internet
untuk mendukung kemampuan chatting online.
bagi siswa, saat siswa membandingkan catatan sebelum mereka
memesan reservasi perjalanan dan saat mereka mengobrol saat
2. Mengingat semuanya dirancang untuk beroperasi melalui Internet
bepergian. Agar dapat berfungsi dengan baik, sistem ini jelas
dengan browser atau ponsel pintar, seberapa sederhanakah
memerlukan jaringan nirkabel di setiap resor selama perjalanan. SBRU
arsitektur ini? Dapatkah Anda memahami mengapa aplikasi Web
tidak bertanggung jawab untuk memasang atau memelihara jaringan
dan ponsel pintar begitu menarik?
nirkabel resor; mereka hanya berencana memberikan beberapa
spesifikasi desain dan pedoman untuk setiap resor.
3. Aspek desain apa yang menjadi sangat penting untuk melindungi
integritas sistem?

Layanan Kurir Di Tempat

Pada bab sebelumnya, kami telah menjelaskan kemampuan teknologi aplikasi perangkat lunak—banyak di antaranya memberikan kemampuan
yang diinginkan Bill Wiley untuk melayani pelanggannya. Salah satu yang dibutuhkan Bill.
masalah yang dihadapi Bill adalah perusahaannya sangat kecil, Satu-satunya peringatan adalah karena ini akan menjadi sistem
sehingga ia tidak mampu mengembangkan peralatan khusus atau produksi langsung, sistem ini harus dapat diandalkan, stabil, bebas
bahkan perangkat lunak canggih. kesalahan, dapat diandalkan, dan dapat dipelihara.
Mari kita tinjau beberapa kemampuan yang dibutuhkan sistem
Mengingat keterbatasan ini, permintaan Bill akan kemampuan baru, yang telah dijelaskan pada bab sebelumnya:
teknologi canggih datang pada saat yang tepat. Produsen peralatan
Pelanggan
sedang mengembangkan peralatan dengan kemampuan telekomunikasi
tingkat lanjut. ÿ Pelanggan dapat meminta pengambilan paket secara online melalui
Dan pengembang perangkat lunak lepas memproduksinya Internet.

(lanjutan di halaman 184)


Machine Translated by Google

184 BAGIAN 3 ÿ Esensi Perancangan Sistem

(lanjutan dari halaman 183)

ÿ Pelanggan dapat memeriksa status paket secara online ÿ Bill dapat mengakses jaringan perusahaan dari miliknya
melalui internet. rumah.
ÿ Pelanggan dapat mencetak label surat di kantor mereka.
Mengingat persyaratan ini, lakukan hal berikut: 1. Buatlah
Pengemudi
daftar peralatan yang harus dibeli Bill untuk mendukung sistem

ÿ Pengemudi dapat melihat jadwal mereka melalui perangkat digital barunya. Sertakan semua perlengkapan yang akan

portabel saat dalam perjalanan. ÿ Pengemudi dibutuhkan untuk kantor pusat, pengemudi, dan di kediaman

dapat memperbarui status paket saat berada di rutenya. Bill.


Identifikasi dan jelaskan peralatan sebenarnya yang dapat

ÿ Pengemudi dapat mengizinkan pelanggan untuk dibeli hari ini. Perkirakan biaya peralatan.

“menandatangani” paket yang


dikirimkan. ÿ Sistem “mengetahui” lokasi pengemudi dalam rutenya 2. Jelaskan perangkat lunak khusus apa saja yang mungkin ada

dan dapat mengirimkan pembaruan secara real-time. diperlukan. Insinyur perangkat lunak sedang mengembangkan

ÿ Pengemudi dapat menerima pembayaran dan mencatatnya di sistem. perangkat lunak aplikasi (penjadwalan dan pemrosesan paket,
akuntansi, dll.), tetapi tidak diperlukan perangkat lunak
khusus untuk menghubungkan perangkat atau komunikasi
Bill Wiley (manajemen) ÿ Bill di antara perangkat tersebut.

dapat mencatat pengambilan paket dari gudang. ÿ Bill dapat


3. Kembangkan diagram jaringan yang menunjukkan bagaimana
menjadwalkan
semua peralatan akan dihubungkan. Identifikasi koneksi
pengiriman/penjemputan. ÿ Bill dapat melakukan
Internet, VPN, dan tautan telepon yang sesuai.
akuntansi, penagihan, dll.

Alat Kesehatan Sandia


Seperti yang telah dijelaskan pada bab sebelumnya, sistem Real- ÿ Melindungi terhadap penggunaan atau pengungkapan informasi yang
Time Glucose Monitoring (RTGM) akan mencakup komponen diantisipasi secara wajar dan tidak diperbolehkan.

pemrosesan di server dan perangkat seluler, seperti ponsel ÿ Memastikan kepatuhan tenaga kerja mereka.
pintar, dengan pertukaran data melalui jaringan telepon 3G dan
Secara khusus, entitas yang tercakup dalam hal ini harus
4G. Pengguna akan mencakup pasien dan petugas kesehatan
menerapkan kebijakan, prosedur, dan teknologi yang: ÿ
seperti dokter, perawat, dan asisten dokter. Di Amerika Serikat,
Undang-Undang Portabilitas dan Akuntabilitas Asuransi Menentukan penggunaan dan akses yang tepat terhadap pekerja
Kesehatan tahun 1996 (HIPAA) mengamanatkan tanggung tions dan media elektronik.

jawab tertentu mengenai privasi dan keamanan informasi ÿ Mengenai pemindahan, pemindahan, pembuangan, dan penggunaan
kesehatan yang dilindungi secara elektronik (ePHI). Undang- kembali media elektronik untuk memastikan perlindungan yang
undang ini berlaku untuk apa yang secara kolektif disebut tepat terhadap ePHI.

sebagai entitas yang tercakup dalam hal ini—yaitu, rencana ÿ Hanya izinkan orang yang berwenang untuk mengakses ePHI. ÿ
kesehatan, lembaga kliring layanan kesehatan, dan penyedia Mencatat dan memeriksa akses dan aktivitas lainnya dalam sistem
layanan kesehatan mana pun yang mengirimkan informasi informasi yang berisi atau menggunakan ePHI. ÿ Pastikan
kesehatan dalam bentuk elektronik. Informasi lebih lanjut dapat ePHI tidak diubah atau dimusnahkan secara tidak semestinya. ÿ Jagalah
diperoleh dari situs web Departemen Kesehatan & Layanan terhadap akses tidak sah ke ePHI yang dikirimkan melalui jaringan
Kemanusiaan AS (www.hhs.gov). elektronik.
Secara umum, entitas yang dilindungi harus:
Jawablah pertanyaan-pertanyaan ini sesuai dengan persyaratan
HIPPA:
ÿ Pastikan kerahasiaan, integritas, dan ketersediaan
kemampuan semua ePHI yang mereka buat, terima, pelihara, atau 1. Apakah HIPAA berlaku pada sistem RTGM?
transmisikan.
Mengapa atau mengapa tidak?
ÿ Identifikasi dan lindungi dari ancaman yang diantisipasi secara wajar 2. Bagaimana seharusnya sistem memastikan keamanan data
terhadap keamanan atau integritas informasi. selama transmisi antara perangkat seluler pasien dan
server?

(lanjutan di halaman 185)


Machine Translated by Google

BAB 6 ÿ Esensi Desain dan Kegiatan Desain 185

(lanjutan dari halaman 184)

3. Pertimbangkan masalah penyimpanan data terkait perangkat perangkat di luar fasilitas layanan kesehatan, perlindungan
seluler pasien dan kemungkinan dampaknya jika apa yang harus diterapkan pada perangkat dan/atau data
perangkat tersebut hilang atau dicuri. apa pun yang tersimpan di dalamnya atau dikirimkan ke perangkat
Tindakan apa yang harus diambil untuk melindungi data dari tersebut?

akses tidak sah? 5. Pertimbangkan masalah yang berkaitan dengan kabel dan
4. Pertimbangkan isu-isu yang berkaitan dengan pelayanan kesehatan transmisi data nirkabel antara server dan stasiun kerja
profesional mengakses data server dengan menggunakan dalam fasilitas layanan kesehatan. Kewajiban
stasiun kerja dan perangkat seluler dalam fasilitas keamanan apa, jika ada, yang berlaku pada transmisi yang
layanan kesehatan. Bagaimana sistem memenuhi tugasnya mengandung ePHI? Apakah jawaban Anda berubah jika
untuk mencatat dan memeriksa akses ke ePHI? server dihosting oleh penyedia pihak ketiga?
Jika seorang profesional kesehatan menggunakan ponsel

Sumber Daya Lebih Lanjut

Frederick P. Brooks, Desain Desain: Esai dari Ilmuwan Komputer, Addison- Doug Kaye, Strategi untuk Web Hosting dan Layanan Terkelola,
Wesley, 2010. Wiley, 2001.

Priscilla Oppenheimer, Desain Jaringan Top-Down (Edisi ke-3rd), Cisco,


2010.

Anda mungkin juga menyukai