PENYUSUNAN SISTEM MANAJEMEN DATABASE (DBMS) KOMPONEN PERPIPAAN MENGGUNAKAN METODE REKURSIF UNTUK MENUNJANG SISTEM PAKAR CAPD Ari Satmoko' ABSTRAK PENYUSUNAN SISTEM MANAJEMEN DATABASE (DBMS) KOMPONEN PERPIPAAN MENGGUNAKAN METODE REKURSIF UNTUK MENUNJANG SISTEM PAKAR CAPD. Salahsatukegiatanpenelitiandi P2TKN-BATANadalahmengembangkan sistimpakar untuk perancanganotomatis sistim perpipaan yang disebut dengan computer aided piping design (CAPD). Untuk menunjang kinerja CAPD tersebut,dikembangkanlahsistem manajemendatabase (DBMS) komponenperpipaan.DBMS meliputi dua tugas pokok yaitu menciptakanorganisasihirarkis struktur data daD mengolah data. Komponenperpipaanyang dikelola oleh DBMS sangatberagam. Masing-masingkomponenmempunyaistrukturdatayangberbeda.DBMS dirancangsefleksibelmungkin agar dapat mengakomodasi perbedaanini. Permasalahanini dipecahkandenganmenggunakanmetode rekursif. Dari hasil evaluasi diperoleh kesimpulanbahwa DBMS telah berfungsi secaramemuaskan sepertiyangdiharapkan.DBMS ini juga mengizinkanpada operatoruntukmenambahataumemperkaya databasedengan komponen perpipaan yang baru. Pemrogramandibuat dengan bahasa AutoLISP sehinggadatanyadapatdiakseslangsungolehCAPD. ABSTRACT DATABASE MANAGEMENT SYSTEM (DBMS) OF PIPING COMPONENTS USING RECURSIVE METHOD FOR SUPPORTING CAPD EXPERT SYSTEM. One of the research activities in P2TKN-BATAN is developingexpertsystemfor automaticpiping designcalled asComputer Aided Piping Design (CAPD). To supportthe CAPD, it is necessaryto developDatabaseManagement System(DBMS) on Piping Components.The DBMS has two main functions. Both are to createthe hierarchyof the data structureand to manipulatedata. Piping componentsto be evaluatedare various. Each componenthas different data structure.The DBMS is designedas flexible as possible in order to accommodatethesedifferences.These problemsare resolved by using a recursivemethod. From the evaluation,it is concludedthatthe DBMS has successfullyfunctioned.The DBMS allows operatorto add new piping componentsinto the database.Since the programis written in AutoLISP, the data can be directlyaccessedby the CAPD. Pusat Pengembangan Teknologi Keselamatan Nuklir -BAT AN 107 RisalahLokakaryaKornputasidalamSainsclanTeknologiNuklir XIV, Juli 2003 (107-121) PENDAHULUAN Salah satu kegiatan penelitian di P2TKN-BATAN adalah mengembangkan sistim pakar untuk perancanganotomatis sistem perpipaan yang disebut dengan computeraidedpiping design(CAPD)[I]. Prinsip kerja sistempakar tersebutadalah mencari solusi berupa lintasan pipa dengan menerapkanberbagai aturan seperti misalnya tidak boleh menabrakbenda lain, fleksibilitas pipa, panjang lintasan dan jumlah belokanminimum, sertaaspek-aspek engineeringlainnya. Sebagaisuatu sistim pakar, CAPD harus ditunjang oleh databasekomponen perpipaan yang lengkap. Dalam rangka inilah penelitian dikembangkan untuk menyusunsistem manajemendatabaseatau databasemanagementsystem(DBMS) komponenperpipaan.Untuk menjamin tidak ada konflik dalam pemindahandata, DBMS akanditulis denganbahasapemrogramanAutoLISPsepertihalnyaCAPD[I]. Semua komponen perpipaan mempunyai struktur klasifikasi yang telah dibakukanberdasarkanstandar-standartertentu dengantujuan untuk menyamakan persepsibagi semuapihak yang terkait denganprosesdesain,pengadaan,maupun konstruksi. Tiap-tiap komponen juga memiliki parameter karakteristik yang menggambarkan dimensidan bentukkomponentersebut.Strukturdatadanparameterparameterkarakteristikuntuk beberapakomponendapat dilihat dalam Gambar1[2]. Terlihatdenganjelasbahwastrukturdatakomponen-komponen perpipaanmempunyai format yang tidak sarna.Untuk pipa misalnya, klasifikasinya menggunakanistilah nominalpipe size (nps) dan schedule.Parameterkarakteristikpipa sangatsederhana hanya terdiri dari diameter luar dan diameter dalam karena memangbentuknya silinder. Komponenlain sepertimisalnyaflange mempunyaiklasifikasi yang berbeda yakni dengan menggunakan klasifikasi class dan nps. Jumlah parameter karakteristiknyajuga berbedadan relatif lebih banyaksepertidiameterluar, diameter hub,panjangtotal dantebal sisi silinder. Karena mengikuti perkembanganteknologi, komponenperpipaanbaru terus berkembang menyesuaikanpermintaan teknis tertentu di lapangan. Misalnya komponenmono-flangeyang berfungsisepertiflange namuntelah dilengkapi dengan peralataninstrumentasiuntuk kendali. Begitu pula dengan valve-o-let yang mirip denganvalve namun mempunyai salah satu sisi yang lebih panjang dibandingkan denganvalvebiasa.Komponen-komponen perpipaanterusberkembangseiringdengan waktu. Dan uraiantersebutdi atas,DBMS yang sedangdikembangkanini hams dibuat sefleksibelmungkin. DBMS harns dapat mengevaluasistruktur data dan masingmasing komponen yang berbeda. DBMS juga harns dapat mengakomodasi kemungkinan munculnya komponen-komponen barn sebagai akibat dan perkembangan teknologi. 108 I. ~ I:Q Penyusunan SisternManajemenDatabase(DBMS) KomponenPerpipaanMenggunakanMetode (Ari Satmoko) M £: :a .a IS ~ ~ ':S § v m ~ "Q 109 RisalahLokakaryaKomputasidalamSainsdan TeknologiNuklir XIV. Juli 2003 TEORI DatabasedaD komponen perpipaan Untuk membentuk suatu database, data mempunyai tingkatan-tingkatan yang terdiri daTikarakter,field, record, file clandatabase[3].Karakter merupakan bagian data yang terkecil, dapat berupa angka, huruf ataupun karakter khusus. Field menggambarkan suatu atribut yang menunjukkan identitas daTi data. Dalam DBMS komponen perpipaan, field menunjukkan parameter karakteristik seperti dimensi, bentuk ataupun berat. Kumpulan daTi field membentuk suatu record yang menggambarkan suatu unit data individu tertentu. Untuk sebuahkomponen perpipaan tertentu, tiap-tiap klasifikasi mempunyai record yang berbeda dengan yang lain. File adalah kumpulan daTi record yang menggambarkan satu kesatuan data yang sejenis. Dengan demikian masing-masing komponen akan mempunyai file tersendiri. Kumpulan dari file-file membentuk suatudatabase. Seperti terlihat dalam skema pada Gambar 1, struktur data komponen-komponen pipa, flange, valve, reducer clan elbow mempunyai format yang tidak sarna. Namun demikian mereka mempunyai kesamaan yaitu struktur datanya bersifat hirarkis. Untuk alasan itulah, database yang disusun ini menggunakan struktur data yang berjenjang (hirarkis). Struktur data dibentuk berdasarkan urutan level yang terdiri daTi beberapa elemen grup data yang disebut dengannode. Tiap-tiap node dapatbercabang ke bawah (mempunyai anakan) menghasilkan nodes lainnya. Aturan lain dalam struktur data hirarkis adalah sebuah node hanya dapat mempunyai sebuah orang tua atau node atasansaja. Struktur data komponen harus mentaati format-format tertentu. Sebagai contoh dengan mengacu pada Bautista[2], struktur data (dalam bahasa AutoLISP) yang diinginkan oleh CAPD dapat digambarkan sebagaiberikut untuk komponenflange: 110 Penyusunan SistemManajemenDatabase(DBMS) KomponenPerpipaanMenggunakanMetode (Ari Satmoko) ( ( (class 150) ( «nps 2") (odflange 6.0) (odhub 3.0625)(thicknes0.75) (length 2.5» «nps 3") (odflange 7.5) (odhub 4.25) (thicknes 0.9375)(length 2.75» «nps 4") (odflange 9.0) (odhub 5.3125) (thicknes 0.9375)(length 3.0» ) ( (class300) ( «nps 2") (odflange 6.5) (odhub 3.9375) (thicknes0.875)(length 2.75» «nps 3") (odflange 8.25) (odhub 4.625) (thicknes 1.125)(length 3.125» «nps 4") (odflange 10.0) (odhub 5.75) (thicknes 1.25)(length 3.375» ) ) Gambar2. ContohstrukturdatadalamAutoLISPuntuk komponenflange Struktur data seperti di atas dapat dibaca sebagai berikut. Flange digolongkan berdasarkan class, dalam hal ini class 150 dan class 300. Masing masing class digolongkan lagi sesuai dengan dimensi standar pipa yang disebut dengan nps (nominal pipe size). Dalam contoh ini terdapat tiga ukuran yakni 2", 3" dan 4". Data yang mengikuti klasifikasi nps merupakan data karakteristik yang mencirikan komponen flange seperti misalnya odflange, odhub, odpipe, dan seterusnya sesuai dengan class dan nps yang bersangkutan. Data seperti inilah yang harus dimiliki oleh DBMS. Teknik pemrograman Pemrograman diawali dengan pembuatanflow-chart yang menerangkan alur clan logika pemrograman. Karena berbagai alasan yang akan didiskusikan di bagian pembahasan, pemrograman akan menggunakan metode rekursif. Proses rekursif merupakan suatu proses di mana sebuah subprogram memanggil dirinya sendiri[4]. Metode ini mensyaratkan adanya sebuahanchor untuk menghentikan proses rekursif dalam kondisi tertentu. Tanpa anchor bersyarat, program rekursif tidak akan pernah berhenti mengeksekusi. Pada umumnya proses rekursif mempunyai kelemahan yaitu penggunaan memory stack, pemahaman algoritma relatif susah, clan pemeriksaan kesalahan yang 11 RisalahLokakaryaKomputasidalamgainsdan TeknologiNuklir XIV, Juli 2003 relatif sulit. Kelemahan pertama berdasarkan kenyataan bahwa pemanggilan sebuah subprogram alan membutuhkan memory stack. Dalam proses rekursif, sebuah subprogram belum selesai dieksekusi namun telah memanggil subprogram dirinya lagi. Dengan demikian memory stack yang dibutuhkan alan semakin banyak clan berisiko memberikan error "out of stack memory". Sedangkan kelemahan berupa pemahamanalgoritma yang relatif susah dan pemeriksaankesalahan yang relatif sulit lebih berorientasi kepada kemampuan pemrogram dalam memecahkan permasalahan yang timbul. Pemrogram dituntut untuk menggunakan trik-trik ataupun taktik-taktik tertentu. Dengan menggunakan bahasa tertentu, dalam hal ini AutoLISP, kegiatan dilanjutkan denganpenulisan program. Selanjutnya program diuji coba. Mungkin saja selama penyusunan program terdapat berbagai kesalahan. Secara garis besar terdapat tiga jenis kesalahan yaitu kesalahan sintaksis, kesalahan sewaktu proses run-time, clan kesalahan logika[3]. Kesalahan sintaksis merupakan kesalahan gramatikal terhadap aturan-aturan yang berlaku sesuai dengan bahasa pemrograman yang digunakan. Kesalahan ketik merupakan jenis kesalahan sintaksis. Meski secara sintaksis sudah tidak ada kesalahan, mungkin saja masih muncul kesalahan sewaktu run-time. Misalnya, pembagian dengan nol akan memberikan error. Dalam hal ini kesalahan harus diperbaiki dengan menambah blok instruksi tertentu. Kesalahan logika relatif sulit untuk dicari. Secara keseluruhan, program dapat dieksekusi clan menghasilkan suatu hasil. Output-output inilah yang harus diperiksa apakah program sudah bekerja sebagaimana mestinya. Ini bisa dilakukan dengan pengecekan di mana program dieksekusi dengan menggunakan input-input yang telah diketahui hasilnya. Keluaran program dibandingkan dengan prediksi manual. BahasaAutoLISP Bahasa ini merupakan turunan daTibahasa LISP yang banyak digunakan dalam pemrograman berbasiskan kecerdasan buatan. AutoLISP dijalankan di dalam piranti lunak AutoCAD[5&6]. Sebagian besar data yang diolah adalah dalam bentuk list. Datadata lain juga dapat dikelola seperti integer, real, logika clanstring. AutoLISP mengenal dua ripe variabel yakni variabellokal dan global. Variabel lokal merupakan parameter formal yang ditransfer secara by value melalui pemanggilan sebuahsubprogram. Variabel ini bersifat lokal karena hanya berlaku clan dikenal pada saat subprogram tersebut aktif dalam keadaan dipanggil. Begitu subprogram ini selesai dieksekusi clan kemudian ditutup, variabel tersebut akan hilang secaraotomatis. Selain parameter by value yang bersifat lokal, semua variabel dalam AutoLISP bersifat global. Variabel tersebut tidak memerlukan deklarasi terlebih dahulu, tetapi langsung bisa digunakan. Meski variabel tersebut hanya dioperasikan pada sebuah 112 Penyusunan SistemManajemenDatabase(DBMS) KornponenPerpipaanMenggunakanMetode (Ari Satmoko) subprogramkecil, variabel tersebut dapat diakses oleh semua subprogramatau program yang ada. Dan meskipun subprogramyang mengolahnyaditutup, variabel tersebutmasihdapatdigunakanclantidak akanhilang. Penjelasanvariabel lokal clan global dapat dilihat pada contoh program sederhana berikut: (defun contob (Z) (setq Z (+ 2.0 5.0» (setq P (+ 2.05.0» {Blok instruksi} Pada contoh tersebut, Z adalah variabel lokal clan hanya ada pada waktu subprogram contoh masih aktif dipanggil. Varibel Z clan P mengalami operasi matematika yang sarna, sehingga nilainya adalah sarna yakni 7,0. Namun bedanya adalah ketika subprogram contoh selesai dipanggil, variabel Z akan hilang clan tidak lagi dikenal oleh program atau subprogram lainnya. Hal ini berbeda dengan variabel P yang tetap bernilai 7,0 clan dapat dikenal serta dapat digunakan oleh subprogram lainnya. PEMBAHASAN DAN PEMROGRAMAN Secaragang besar, DBMS yang sedang disusun ini mempunyai dua tugas yakni menciptakan hirarki organisasi struktur data dan mengolah data. Ini dilakukan untuk tiap-tiap komponen. Tugas pertama menghasilkan suatu struktur data sebagai referensi untuk pengolahan data lebih lanjut. Bagian pengolah data berfungsi untuk memanipulasi data-datayang tersimpan dalam sebuahfile. Menyusun hirarki struktur data Menyusun hirarki struktur data tentu saja harus identik dengan struktur data yang diinginkan (lihat Gambar 2). Untuk tiap-tiap komponen perpipaan, penyusunan hirarki ini hanya perlu dilakukan sekali saja dan hasilnya disimpan dalam sebuah file. Untuk mengaksesnya cukup dengan melakukan loading file tersebut. Jadi pekerjaan menyusun hirarki struktur data tak lain adalah menciptakan sebuahfile AutoLISP. Inti daTi penyusunan hirarki adalah memberikan inpu-input untuk semua field data lengkap dengan urutan levelnya. Gambar 3 menampilkan flowchart subprogram "inpuchild" yang berfungsi untuk menciptakan hirarki struktur data. Subprogram tersebut menggunakan metode rekursif. Sebenamya penggunaan metode rekursif di 113 Risalah Lokakarya Kornputasi dalam Sains clan Teknologi Nuklir XIV, Juli 2003 sini bukan merupakan hal mutlak. Metode iterasi biasa juga bisa digunakan tanpa kendala. Logika pernrograman adalah sebagaiberikut. Dimulai daTilevel data paling atas, input tentang field data dimasukkan. Kemudian diperiksa apakahfield data tersebut merupakan level terbawah. Bila masih mempunyai anakan, maka program akan segera mencarifield data di level yang lebih bawah, dan seterusnya.Karena rekursif, program memanggil dirinya sendiri. Bila ternyata field data sudah merupakan level terbawah, maka berikutnya adalah mencari field-field data karakteristik untuk masing-masing komponen perpipaan. Di sini metode rekursif juga digunakan untuk perulangan. Eksekusi program akan selesai setelah tidak ada lagi data karakteristik yang akan dimasukkan. Gambar3 Subprograminpuchild denganmetoderekursif untuk menyusunstruktur data Pengolahdata Bagian ini merupakan pengolah data yang berfungsi untuk memasukkan, menambah, menghapus ataupun mengambil data daTi database. Pemrograman dibuat dengan sistem modular, artinya program akan dipecah-pecah ke dalam beberapa modul atau subprogram. Dan masing-masing subprogram mempunyai tugas-tugas 114 Penyusunan SistemManajemenDatabase(DBMS) KomponenPerpipaanMenggunakanMetode (Ari Satmoko) tertentu. Dalam makalah ini, pembahasanhanya mencakup subprogram untuk memasukkandata yang diberi nama "subprogram writedata". Subprogramini clan juga modul-modul yang lain menggunakanmetoderekursif denganflowchart yang mmp. Misalnya untuk flange, anggapbahwaDBMS akanmemasukkansebuahrecord tunggalsebagaiberikut: ( ( (class 150) « (nps 2") (odflange 6.0) (odhub 3.0625) (thiclrnes 0.75) (length 2.5))))). Yang menjadi masalah adalah bahwa struktur record tersebut hanya dapat disusun dengan memulai daTi level terbawah. Ini adalah karakteristik daTi data berbentuk list. Data (odflange 6.0) dan (odhub 3.0625) disusun terlebih dahulu. Berikutnya, (thicknes 0.75) dan (length 2.5) menyusul secara urut ke arab belakang. Karena (nps 2") mempunyai tingkatan data yang lebih tinggi, field ini hams ditambahkan di depan data-data yang telah tersusun. Begitu pula, (class 150) sebagai field dengan level teratas hams digabungkan di muka. Nilai-nilai daTi field tersebut dimasukkan melalui keyboard. Namun, prinsip kerja yang harns dilakukan oleh komputer tersebut di atas berlawanan arab dengan prinsip ergonomi. Manusia, dalam hal ini operator, cenderung mengisi terlebih dahulu data-data berupa class dan nps, barn disusul kemudian oleh data-datakarakteristilrnya. Kalau pemrograman disusun secara independen khusus untuk flange, dengan mudah pekerjaan tersebut disusun karena sudah tabu berapa jumlah level yang akan dikerjakan. Begitu pula dengan nama fieldnya yang praktis sudah diketahui. Namun, membuat program independen akan bermasalah karena masing-masing komponen perpipaan menuntut juga sebuah program. Dapat dibayangkan, pekerjaan menjadi tidak efisien karena terlalu banyalrnya program yang harns disusun. Masalah ini akan menjadi lebih pelik jika ada penambahan komponen-komponen barn untuk dimasukkan dalam DBMS. Oleh karena itulah perlu dibuat sebuah program yang bersifat umum dan fleksibel di mana jumlah level data dan jumlah data karakteristik yang menyertainya belum dapat diketahui. Permasalahan terletak pada bagaimana program dapat menyimpan field level atas, masuk ke level yang lebih rendah, menyimpan field tambahan barn, dan masuk ke level yang lebih rendah lagi. Begitu seternsnya hingga berada dalam level terbawah. Di level bawah, boleh dikatakan relatif tidak ada masalah karena field yang diinputkan langsung dimanipulasi untuk membentuk struktur list yang diinginkan. Penyimpananfield level atas dengan nilainya menimbulkan masalah karena jumlah levelnya belum diketahui dan nama field-nya pun tidak sarna tergantung daTimasingmasing komponen perpipaan. Dengan uraian tersebut, field-field untuk level atas harns dapat disembunyikan untuk sementara dan akan dipanggil pada waktu dibutuhkan. Trik ini dapat dilakukan 115 ~ RisalahLokakaryaKomputasidalamSainsdan TeknologiNuklir XIV, Juli 2003 dengan memanfaatkan variabellokal. Variabel yang mengandung nilai level-level atas dideklarasikan sebagai parameter formal yang ditransfer secara by value melalui sebuahsubprogram. Karena struktur data terdiri dari beberapalevel, maka subprogram akan dipanggil secara berulang-ulang. Di sini dapat ditarik sebuah catatan bahwa metode yang cocok dan efisien untuk pengolahan database yang tleksibel adalah metode rekursif. Flowchart subprogram untuk memasukkan data dapat dilihat pada Gambar4. Secara teoritis, metode rekursif memiliki beberapa kelemahan. Dalam kasus databasekomponen perpipaan, kekhawatiran terhadap kurangnya memory stack dapat dihilangkan karena jumlah perulangan rekursifnya bergantung pada jumlah level data yang relatif tidak banyak. Mengenai kesulitan dalam pemahaman maupun pencarian kesalahan, memang diakui bahwa selama penyusunan program pengolah databaseini, metode rekursif membutuhkan perhatian yang ekstra hati-hati. Demikian pula, pencarian kesalahan relatif lebih rumit dibandingkan dengan prosedur iterasi biasa. Mulai: Subprogram Writedata ~ lnisialisasikosong: databasil & dataterbawah y y .:(~~~~;~~~:::> T .c::::::::::::~~~~~~~~~~~~~~~::::::::> field pertcfnastruktur data dihilangkan T (~~~~) Gambar4 Subprogram writedata dengan metode rekursif untuk mamasukkan data 16 Penyusunan SistemManajemenDatabase(DBMS) KornponenPerpipaanMenggunakanMetode (Ari Satrnoko) v ALmASI PROGRAMDAN BASIL Pemrograman sesuai dengan flowchart pada Gambar 3 dan 4 telah selesai disusun dengan menggunakan bahasa AutoLISP. Selain kedua subprogram tersebut, berbagai subprogram lain juga telah disusun untuk mendukung DBMS. Tahap berikutnya adalah membersihkan kesalahan-kesalahanyang mungkin ada. Suksesnya AutoCAD dalam me-loading program yang telah dibuat menunjukkan bahwa kesalahan sintaksis sudah tidak ada lagi. Kesalahan sewaktu run-time juga dipastikan telah berhasil diatasi. Untuk meyakinkan tidak adanya kesalahan logika, program diarahkan untuk mendesain sebuah sistim perpipaan seperti ditunjukkan dalam Gambar 5. Berangkat daTi titik A yang berkoordinat (0;0;0), sistim perpipaan dimulai dengan sebuah pipa 2" dengan panjang 5" dengan arab sejajar dengan sumbu X. Sistem diikuti oleh sebuah valve yang diapit oleh sepasangflange. Reducer 2x3 mengubah diameter menjadi 3". Hingga titik di sini semua komponen termasuk dalam class 150. Sistem dilanjutkan dengan class 300 yang diawali dengan valve bertipe globe yang diapit oleh sepasangflange. Sebuah elbow digunakan untuk mengubah arab menjadi sejajar dalam sumbu Y. Begitu keluar daTi elbow, sistim langsung dihubungkan dengan reducer 3x6 dan dilanjutkan dengan valve bertipe globe yang diapit oleh sepasangflange. Sistem berakhir denganpipa 6" denganpanjang 10". ~ titlk reducer 2x3 titik nwnl(A) \ ~[XJH:}i class 150-)I~ M z :2 Qkhir ~reducer ~ <C) 3x6 titik belok (B) class 300 Gambar5. Sistemperpipaanuntuk mengujikeandalanDBMS Komponen-komponen perpipaan yang digunakan da1am sistem tersebut dapat diringkas da1amTabe1 1. Berdasarkan data tersebut, secara manual panjang AB dapat dihitung sebesar 43,750. Sedangkan panjang BC sarna dengan 45,250. DBMS juga te1ah di1engkapi dengan berbagai subprogram yang dapat membantu visua1isasi 117 -~ 5,°. Valve Valve, 1 "\ RisalahLDkakaryaKornputasidalamSainsdaDTeknologiNuklir XN, Juli 2003 komponen perpipaan. DBMS diuji untuk mendesain sistem perpipaan seperti ditunjukkan dalam Gambar 5 tersebutdan kemudiantitik akhir daTigambarsistem perpipaantersebutakandiperiksa. Tabe11. RingkasanKomponenPerpipaan Komponen 1. Pipa 2" 2. Flange2" 3. Reducer2x3 4. Flange3", class300 5. 3", class 300,' globe 6. Elbow 3" Jumlah Panjang (inchi) ~ 2 ==::~~ 2.5 1 7;0 2 I 12,5 1 ~~~ 7. Reducer 3x6 1 8. Flange6", class300 2 1 17,5 1 10 9. 6", class 300, gate 10. PiDa 6" DBMS mengevaluasikomponen secara urut. Berdasarkaninput-input yang sesuai,DBMS mengakseske database,melakukanmanipulasi,mengambildata yang diperlukan, clan kemudian menampilkangambarkomponentersebut. Seperti yang diharapkan,DBMS clan subprogrampendukunglainnya berhasil menampilkanbasil yang memuaskan(lihat Gambar 6). Terlihat denganjelas, komponen-komponen berupapipa,jlange, valve,reducerclanelbow sesuaidenganukuranmasing-masing Gambar6. VisualisasidaTiuji coba sistemDBMS 118 2. Penyusunan SistemManajemenDatabase(DBMS) KomponenPerpipaanMenggunakanMetode (Ari Satmoko) Gambar tersebutjuga memberikan koordinat akhir sistem perpipaan yang terletakpadaposisi (43,75 ,45,25 ,0,00). Koordinat ini persissarnadenganprediksi manual. Dengan basil ini, dapat diambil kesimpulan bahwa DBMS komponen perpipaantelahberfungsidenganmemuaskansepertiyangdiharapkan. KESIMPULAN Sistem manajemen database (DBMS) komponen perpipaan telah dikembangkan dalam rangka menunjang kinerja sistim pakar CAPD (computer aided piping design) untuk perancanganotomatis sistim perpipaan. DBMS meliputi dua tugas pokok yaitu menciptakan organisasi hirarkis struktur data daD mengolah data. Berbagai subprogram juga diciptakan untuk menunjang kinerja DBMS seperti misalnya subprogram untuk menampilkan visualisasi gambar komponen perpipaan. Tugas sebagai pengolah data mengizinkan pada operator untuk memasukkan, menambah, menghapus ataupun mengambil data daTi database. Dalam melakukan pengolahan data, DBMS menggunakan metode rekursif di mana sebuah subprogram memanggil dirinya sendiri. Metode ini dipertimbangkan sebagaimetode yang cocok karena dapat melakukan perulangan clan mampu menyembunyikan sementarafield besertanilainya dengan jumlah yang belum diketahui. Data tersembunyi tersebut diambil lagi pada saat subprogram selesai dieksekusi. Dengan metode rekursif ini, DBMS dapat diterapkan untuk semua jenis komponen perpipaan. Dari basil evaluasi diperoleh kesimpulan bahwa DBMS telah berfungsi secara memuaskan seperti yang diharapkan. DBMS ini juga mengizinkan pada operator untuk menambah atau memperkaya databasedengan komponen perpipaan yang barn. DAFTARPUSTAKA 1 CARMELITA E. BAUTISTA, The Piping Guide for the Design and Drafting of IndustrialPiping Sytems,Partll, SyentekInc., SanFrancisco JOGIYANTO H. M., PengenalanKomputer, Penerbit Andi Offset, Cetakan ketiga,Yogyakarta,1992 3, BUDI SUTEDJO,MICHAEL AN, A1goritmaclanTeknik Pemrograman,Penerbit Andi Offset,Edisi Pertama,Yogyakarta,1997 119 Risalah Lokakarya Komputasi dalam Sains clan Teknologi Nuklir XIV, Juli 2003 4. , AutoCAD Development SystemTM:Programmer's Reference Manual,AutodeskInc., Publication100192-01,1992 5, MUFID DJOKO PURW ANTO, Pedoman Pemakaian AutoLISP, Penerbit Andi Offset, Yogyakarta, 1993 DISKUSI UTAJA 2. Apakah bahasaAUTOLISP berubah denganversi AUTOCAD ? Bagaimana pengaruhnyahila berubah? Apa datayang dibuatmerupakanfilebarnataumengubahdatalama? ARI SATMOKO 1 2. AUTOLISP sudah terintegrasi dengan AUTOCAD. Dengan perubahan versi AUTOCAD, maka AUTOLISP juga ikut berubah. Semakin baru versinya, fasilitas yang disediakan oleh AUTOLISP/AUTOCAD semakin banyak. Contohnya adalah DBMS yang sedang dikembangkan ini hanya dapat dieksekusi dengan versi AUTOCAD 2000 atau 2002 clan tidak dapat dijalankan dengan AUTOCAD R14. Pada awalnya, database adalah kosong. Melalui subprogram write data, data dapat dimasukkan clan kemudian disimpan dalam sebuahfile. File tidak dapat digunakan lagi denganpenambahan,penghapusanataupunperubahan. ADE JAMAL Apakah interface/linkantarakomponendiperhatikanmisalnyarating 150 tidak bisa di link ke 300. Masukan: metode rekursif cocok untuk DBMS yang tidak dapat ditentukan jumlah data,sedangkan metodeiterasijumlah datapasti. 120 . 2. 121 Penyusunan SistemManajemenDatabase(DBMS) KomponenPerpipaanMenggunakanMetode (Ari Satrnoko) ARI SATMOKO Antara rating 150 dan 300 tidak bisa di link. KarenaDBMS ini menggunakan sistemdataberjenjang/hierarkis,sehinggamasing-masingkomponentidak bisa dihubungkan. Terima kasih atas informasinya daD memang sesuai dengan pengalaman pemrograman selamaini. DAFT AR RIW AY A T HIDUP 1. Nama : Ari Satmoko 2. Tempat/fangga1Lahir : Purwokerto,28 Februari1968 3. Instansi : P2TKN-BATAN 4. Pekerjaan/ Jabatan : Ka Ba1aiKeteknikan 5. RiwayatPendidikan : (sete1ah SMU sampaisekarang) Sl Mechanical Engineer, Universitas de Technology de Compiegne, France .S2 Modelisasi Nurnerik, Universitas de Technology de Compiegne, France,1994 6. Pengalaman Kerja : .Peneliti di P2TKN-BATAN, 1994-sekarang .Piping StressEngineerpadaAP600, 1995-1997 .Peneliti di bidangmaterialbehaviordalamprogramSTA Japan,1998 .Piping Stress Engineer pada PT McDERMOTTE INDONESIA, Juni- November2002 7. OrganisasiProfesional Home :