Jumat, 24 Oktober 2014

Jumlah method yang dimiliki oleh class Math adalah 50 buah method

Jumlah method yang dimiliki oleh class Math adalah 50 buah method


Modifier dan Jenis
Metode dan Deskripsi
statis ganda
abs (double a)
Mengembalikan nilai absolut dari double nilai.
mengapung statis
abs (mengapung)
Mengembalikan nilai absolut dari float nilai.
static int
abs (int a)
Mengembalikan nilai absolut dari sebuah int nilai.
statis panjang
abs (lama)
Mengembalikan nilai absolut dari long nilai.
statis ganda
acos (double a)
Mengembalikan kosinus busur nilai; sudut yang dikembalikan dalam kisaran 0,0 melalui pi.
statis ganda
asin (double a)
Mengembalikan sinus busur nilai; sudut kembali berada dalam kisaran - pi / 2 sampai pi / 2.
statis ganda
atan (double a)
Mengembalikan tangen busur nilai; sudut kembali berada dalam kisaran - pi / 2 sampai pi / 2.
statis ganda
atan2 (double y, double x)
Mengembalikan theta sudut dari konversi koordinat persegi ( x , y ) ke koordinat polar (r, theta).
statis ganda
cbrt (double a)
Mengembalikan akar pangkat tiga dari double nilai.
statis ganda
ceil (double a)
Mengembalikan terkecil (paling dekat dengan infinity negatif) double nilai yang lebih besar dari atau sama dengan argumen dan sama dengan bilangan bulat matematika.
statis ganda
copySign (double besarnya, tanda ganda)
Mengembalikan argumen floating-point pertama dengan tanda argumen floating-point kedua.
mengapung statis
copySign (float besarnya, tanda float)
Mengembalikan argumen floating-point pertama dengan tanda argumen floating-point kedua.
statis ganda
cos (double a)
Mengembalikan kosinus trigonometri dari sudut.
statis ganda
cosh (double x)
Mengembalikan kosinus hiperbolik dari double nilai.
statis ganda
exp (double a)
Pengembalian Euler nomor e pangkat dari double nilai.
statis ganda
expm1 (double x)
Pengembalian e x -1.
statis ganda
lantai (double a)
Mengembalikan terbesar (paling dekat dengan infinity positif) double nilai yang kurang dari atau sama dengan argumen dan sama dengan bilangan bulat matematika.
static int
getExponent (double d)
Mengembalikan eksponen berisi yang digunakan dalam representasi double .
static int
getExponent (float f)
Mengembalikan eksponen berisi yang digunakan dalam representasi float .
statis ganda
Hypot (double x, double y)
Pengembalian sqrt (x 2 + y 2) tanpa meluap menengah atau underflow.
statis ganda
IEEEremainder (f1 ganda, f2 ganda)
Menghitung operasi sisa dua argumen seperti yang ditentukan oleh standar IEEE 754.
statis ganda
log (double a)
Mengembalikan logaritma natural (base e) dari double nilai.
statis ganda
log10 (double a)
Mengembalikan basis 10 logaritma dari double nilai.
statis ganda
log1p (double x)
Mengembalikan logaritma natural dari jumlah argumen dan 1.
statis ganda
max (double a, double b)
Mengembalikan besar dari dua double nilai.
mengapung statis
max (float a, float b)
Mengembalikan besar dari dua float nilai.
static int
max (int a, int b)
Mengembalikan besar dari dua int nilai.
statis panjang
max (lama, lama b)
Mengembalikan besar dari dua long nilai.
statis ganda
min (double a, double b)
Mengembalikan kecil dari dua double nilai.
mengapung statis
min (float a, float b)
Mengembalikan kecil dari dua float nilai.
static int
min (int a, int b)
Mengembalikan kecil dari dua int nilai.
statis panjang
min (lama, lama b)
Mengembalikan kecil dari dua long nilai.
statis ganda
nextAfter (start ganda, arah ganda)
Mengembalikan angka floating-point yang berdekatan dengan argumen pertama ke arah argumen kedua.
mengapung statis
nextAfter (float start, arah ganda)
Mengembalikan angka floating-point yang berdekatan dengan argumen pertama ke arah argumen kedua.
statis ganda
NextUp (double d)
Mengembalikan nilai floating-point yang berdekatan dengan d ke arah positif tak terhingga.
mengapung statis
NextUp (float f)
Mengembalikan nilai floating-point yang berdekatan dengan f ke arah positif tak terhingga.
statis ganda
pow (double a, double b)
Mengembalikan nilai argumen pertama pangkat dari argumen kedua.
statis ganda
random ()
Mengembalikan double nilai dengan tanda positif, lebih besar dari atau sama dengan 0.0 dan kurang dari 1.0 .
statis ganda
etak (double a)
Mengembalikan double nilai yang paling dekat nilainya dengan argumen dan sama dengan bilangan bulat matematika.
statis panjang
round (double a)
Mengembalikan terdekat long untuk argumen, dengan ikatan mengumpulkan.
static int
round (mengapung)
Mengembalikan terdekat int argumen, dengan ikatan mengumpulkan.
statis ganda
scalb (double d, int scalefactor)
Kembali d × 2 scaleFactor bulat seolah-olah dilakukan oleh satu benar bulat floating-point multiply kepada anggota ganda nilai yang ditetapkan.
mengapung statis
scalb (float f, int scalefactor)
Kembali f × 2 scaleFactor bulat seolah-olah dilakukan oleh satu benar bulat floating-point multiply ke anggota dari himpunan nilai float.
statis ganda
signum (double d)
Mengembalikan fungsi signum argumen; nol jika argumen adalah nol, 1.0 jika argumen lebih besar dari nol, -1.0 jika argumen adalah kurang dari nol.
mengapung statis
signum (float f)
Mengembalikan fungsi signum argumen; nol jika argumen adalah nol, 1.0f jika argumen lebih besar dari nol, -1.0f jika argumen kurang dari nol.
statis ganda
dosa (double a)
Mengembalikan sinus trigonometri dari sudut.
statis ganda
sinh (double x)
Mengembalikan sinus hiperbolik dari double nilai.
statis ganda
sqrt (double a)
Mengembalikan bulat benar akar kuadrat positif dari double nilai.
statis ganda
tan (double a)
Mengembalikan tangen trigonometri dari sudut.
statis ganda
tanh (double x)
Mengembalikan tangen hiperbolik dari double nilai.

Kamis, 02 Oktober 2014

Tugas Rekayasa Perangkat Lunak

Model  Waterfall

Pada model Waterfall atau disebut  model air terjun, ada beberapa fase yang harus kita terapkan, yaitu:
1.    Analisi kebutuhan lalu pendefenisiannya
2.    Perancangan Sistem dan Perangkat lunaknya
3.    Implementasi dan unit testing
4.    Integrasi dan pengujian sistem
5.    Pengoprasian dan persawatan
Dimana sebuah proses akan kembali ke state sebulumnya agar tidak ada perubahan setelah proses menuju state di bawahnya sebab sangat sulit.
     Setiap model pasti ada kekurangan dan kelebihan, dan berikut merupakan kekurangan dan kelebihan dari model Waterfall :
Kekurangan Model Waterfall:
·       Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses.
·       Hal ini mengakibatkan sulitnya untuk merespon perubahan kebutuhan pengguna (user).
·       Model air terjun harus digunakan hanya ketika persyaratan dipahami dengan baik.
Kelebihan Model Waterfall:
·       Bisa digunakan jika suatu persyaratan untuk membuat suatu software sudah dipahami dengan baik dan sudah lengkap semua persyaratan yang ada.
B.       Model RAD
Rapid Aplication Model (RAD) adalah sebuah proses perkembangan perangkat lunak sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model RAD ini merupakan sebuah adaptasi “kecepatan tinggi” dari model sekuensial linier dimana perkembangan cepat dicapai dengan menggunakan pendekatan konstruksi berbasis komponen. Jika kebutuhan dipahami dengan baik, proses RAD memungkinkan tim pengembangan menciptakan “sistem fungsional yang utuh” dalam periode waktu yang sangat pendek (kira-kira 60 sampai 90 hari).
           

Kelebihan Penggunaan Model RAD
·       Dimungkinkan dalam proses pembuatan membutuhkan waktu yang sangat singkat (60-90 hari).
·       Menghemat biaya, karena penekannya adalah penggunaan komponen-komponen yang sudah ada.
·       RAD menggunakan kembali komponen-komponen yang sudah ada, maka beberapa komponen program sudah diuji sehingga kita dapat melakukan penghematan waktu dalam uji coba
Kekurangan Penggunaan Model RAD
·       Seperti semua proses model yang lain, pendekatan RAD memiliki kekurangan-kekurangan sebagi berikut :
·       Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.
·       RAD menuntut pengembangan dan pelanggan yang memiliki komitmen di dalam aktifitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut tidak ada, proyek RAD akan gagal. RAD menekankan perkembangan komponen program yang bisa dipakai kembali. Reusable menjadi batu pertama teknologi objek dan ditemui di dalam proses rakitan komponen
·       Tidak semua aplikasi sesuai untuk RAD. Bila sistem tidak dapat dimodulkan dengan teratur, pembangunan komponen penting pada RAD akan menjadi sangat problematis.
·       RAD menjadi tidak sesuai jika risiko teknisnya tingggi. Hal ini terjadi bila sebuah aplikasi baru memforsir teknologi baru atau bila perangkat lunak baru membutuhkan tingkat interoperabilitas yang tinggi dengan program komputer yang ada.
C.      Model Prototype
Metode prototyping adalah sistem informasi yang menggambarkan hal-hal penting dari sistem informasi yang akan datang. Prototipe sistem informasi bukanlah merupakan sesuatu yang lengkap, tetapi sesuatu yang harus dimodifikasi kembali, dikembangkan, ditambahkan atau digabungkan dengan sistem informasi yang lain bila perlu.
 
a. Jenis-Jenis Prototyping
·       Feasibility prototyping – digunakan untuk menguji kelayakan dari teknologi yang akan digunakan untuk system informasi yang akan disusun.
·        Requirement prototyping – digunakan untuk mengetahui kebutuhan aktivitas bisnis user.
·        Desain Prototyping -  digunakan untuk mendorong perancangan system informasi yang akan digunakan.
·        Implementation prototyping – merupakan lanjytan dari rancangan protipe, prototype ini langsung disusun sebagai suatu system informasi yang akan digunakan.
Adapun keunggulan dan kelemahan dalam model prototype:
Keunggulan Prototyping:
1.    User dapat berpartisipasi aktif
2.    Penentuan kebutuhan lebih mudah diwujudkan
3.    Mempersingkat waktu pengembangan SI
Kelemahan Prototyping :
1.    Proses analisis dan perancangan terlalu singkat
2.    Mengesampingkan alternatif pemecahan masalah
3.    Bisanya kurang fleksible dalam mengahadapi perubahan
4.    Prototype yang dihasilkan tidak selamanya mudah dirubah
5.    Prototype terlalu cepat selesai
D.      Model Spiral
Model ini cukup baru ditemukan,yaitu tahun 1988 oleh Barry Boehm. Spiral adalah salah satu bentuk evolusi yang menggunakan metode iterasi natural yang dimiliki oleh model prototyping dan digabungkan dengan aspek sistematis yang dikembangkan model waterfall.
Spiral model dibagi menjadi beberapa framework aktivitas, yang disebut dengan task regions. Kebanyakan aktivitas2 tersebut dibagi antara 3 sampai 6 aktivitas. Berikut adalah aktivitas-aktivitas yang dilakukan dalam spiral model :
·      Customer communication. Aktivitas yang dibutuhkan untuk membangun komunikasi yang efektif antara developer dengan user / customer terutama mengenai kebutuhan dari customer.
·      Planning. Aktivitas perencanaan ini dibutuhkan untuk menentukan sumberdaya, perkiraan waktu pengerjaan, dan informasi lainnya yang dibutuhkan untuk pengembangan software.
·      Analysis risk. Aktivitas analisis resiko ini dijalankan untuk menganalisis baik resiko secara teknikal maupun secara manajerial. Tahap inilah yang mungkin tidak ada pada model proses yang juga menggunakan metode iterasi, tetapi hanya dilakukan pada spiral model.
·      Engineering. Aktivitas yang dibutuhkan untuk membangun 1 atau lebih representasi dari aplikasi secara teknikal.
·      Construction & Release. Aktivitas yang dibutuhkan untuk develop software, testing, instalasi dan penyediaan user / costumer support seperti training penggunaan software serta dokumentasi seperti buku manual penggunaan software.
·      Customer evaluation. Aktivitas yang dibutuhkan untuk mendapatkan feedback dari user / customer berdasarkan evaluasi mereka selama representasi software pada tahap engineering maupun pada implementasi selama instalasi software pada tahap construction and release.
Adapun beberapa Kelebihan dan Kelemahan Model Spiral yang ada:
Kelebihan model Spiral :
  1. Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup  perangkat lunak komputer.
  2. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar
  3. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap   tingkat evolusi karena perangkat lunak terus bekerja selama proses
Kelemahan model Spiral:
  1. Sulit untuk menyakinkan pelanggan bahwa pendekatan evolusioner ini bisa dikontrol.
  2. Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur.
  3. Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute
E.       Model incremental
Model Incremental dalam rekayasa perangkat lunak, menerapkan rekayasa perangkat lunak perbagian, hingga menghasilkan perangkat lunak yang lengkap.  Proses membangun berhenti jika produk telah mencapai seluruh fungsi yang diharapkan.
Adapun beberapa tahapan yang ada pada model incremental dimana tahapan-tahapan tersebut dilakukan secara berurutan.  Setiap bagian yang sudah selesai dilakukan testing, dikirim ke pemakai untuk langsung dapat digunakan.
Tahapan Incremental Model adalah :
·       Requirement
·       Specification
·       Architecture Design
Pada incremental model, tiga tahapan awal harus diselesaikan terlebih dahulu sebelum sebelum tahap membangun tiap modal.
Incremental Model merupakan gabungan antara model linear sekuensial dan prototyping. Setiap linear sekuen menghasilkan produk yang deliveriables. Increment pertama merupakan produk inti yang mengandung persyaratan/kebutuhan dasar. Penambahan dilakukan pada increment-incremet berikutnya.

Keunggulan dari Incremental Model :
1.    Personil bekerja optimal
2.    Pihak konsumen dapat langsung menggunakan dahulu bagian-bagian yang telah selesai dibangun. Contohnya pemasukan data karyawan
3.    Mengurangi trauma karena perubahan sistem.  Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian
4.    Memaksimalkan pengembalian modal investasi konsumen 
Kekurangan dari Incremental Model :
1.    Cocok untuk proyek berukuran kecil (tidak lebih dari 200.000 baris coding)
2.    Mungkin terjadi kesulitan untuk memetakan kebutuhan pengguna ke dalam rencana spesifikasi masing-masing hasil increment
3.    Dapat menjadi build and Fix Model, karena kemampuannya untuk selalu mendapat perubahan selama proses rekayasa berlangsung
F. Component-based Development Model
Component-based development sangat berkaitan dengan teknologi berorientasi objek. Pada pemrograman berorientasi objek, banyak class yang dibangun dan menjadi komponen dalam suatu software. Class-class tersebut bersifat reusable artinya bisa digunakan kembali. Model ini bersifat iteratif atau berulang-ulang prosesnya.
Secara umum proses yang terjadi dalam model ini adalah:
1.    Identifikasi class-class yang akan digunakan kembali dengan menguji class tersebut dengan data yang akan dimanipulasi dengan aplikasi/software dan algoritma yang baru
2.    Class yang dibuat pada proyek sebelumnya disimpan dalam class library, sehingga bisa langsung diambil dari library yang sudah ada. Jika ternyata ada kebutuhan class baru, maka class baru dibuat dengan metode berorientasi objek.
3.    Bangun software dengan class-class yang sudah ditentukan atau class baru yang dibuat, integrasikan.
Penggunaan kembali komponen software yang sudah ada menguntungkan dari segi:

► Siklus waktu pengembangan
  software, karena   mampu   mengurangi
          waktu 70%
Biaya produksi berkurang sampai 84% arena pembangunan komponen
     berkurang
Pembangunan software dengan menggunakan komponen yang sudah tersedia dapat menggunakan komponen COTS (Commercial off-the-shelf) – yang bisa didapatkan dengan membeli atau komponen yang sudah dibangun sebelumnya secara internal. Component-Based Software Engineering (CBSE) adalah proses yang menekankan perancangan dan pembangunan software dengan menggunakan komponen software yang sudah ada. CBSE terdiri dari dua bagian yang terjadi secara paralel yaitu software engineering (component-based development) dan domain engineering.
G.      Extreme Programming (XP) Model
Model proses ini diciptakan dan dikembangkan oleh Kent Beck. Model ini adalah model proses yang terbaru dalam dunia rekayasa perangkat lunak dan mencoba menjawab kesulitan dalam pengembangan software yang rumit dan sulit dalam implementasi. Menurut Kent Beck XP adalah : “A lightweight, efficient, low-risk, flexible,predictable, scientific and fun way to develop software”. Suatu model yang menekankan pada:

-  keterlibatan user secara langsung
-  pengujian
-  pay-as-you-go design

Adapun empat nilai penting dari XP
1.  Communication/Komunikasi : komunikasi antara developer dan klien sering menjadi masalah. Karena itu komunikasi dalam XP dibangun dengan melakukan pemrograman berpasangan (pair programming). Developer didampingi oleh pihak klien dalam melakukan coding  dan unit testing sehingga klien bisa terlibat langsung dalam pemrograman sambil berkomunikasi dengan developer. Selain itu perkiraan beban tugas juga diperhitungkan.
2. Simplicity/ sederhana: Menekankan    pada      kesederhanaan     dalam
     pengkodean.
     3.  Feedback / Masukan/Tanggapan: Setiap feed back ditanggapi dengan
          melakukan tes, unit test atau system integration dan jangan menunda
          karena biaya akan membengkak (uang, tenaga, waktu).
4. 
Courage / Berani:    Banyak    ide    baru   dan    berani    mencobanya,   
     berani      mengerjakan      kembali      dan     setiap     kali    kesalahan 
     ditemukan, langsung  diperbaiki.

Referensi
http://ahsanjunior.blogspot.com/2011/12/extreme-programming-xp-model.html

Universitas Teknologi Sumbawa
I Made Widiarta, S.Komp