Kamis, 12 Juni 2014

TUGAS MATA KULIAH IMK

TUGAS KELOMPOK IMK

Nama Anggota :
2011-83-003 (Poppy Indah Nurlita)
2011-83-010 (Attiyatul Kareem)
2011-83-026 (Rocky Ronaldo Sompie)
2011-83-043 (Diana Aditiya)


PROYEK 1


Masalah Pada PT. Surya Baru


Adapun masalah yang di hadapi oleh PT. Surya Baru yaitu pada cara kerja sistem administrasi penjualan yang masih diperlukan kecepatan, ketepatan dan ketelitian yang cukup tinggi. Masalah yang sering timbul di pada percetakan PT. Surya Baru tersebut antara lain :
a.         Banyaknya arsip yang hilang yang disebabkan oleh lalainya Admin Finance dalam penyimpanan datanya di loker penyimpanan yang tidak tersusun rapih , akibatnya sulit dalam membuat laporan penjualan bulanan.

b.         Sering terjadi pencatatan kwitansi dan invoice yang berulang-ulang yang di sebabkan pencatatan masih tulis tangan akibatnya data penjualan harian sering selisih dengan order yang di lakukan pelanggan.


PROYEK 2

Story board


 Storyboard adalah visualisasi ide dari aplikasi yang akan dibangun, sehingga dapat memberikan gambaran dari aplikasi yang akan dihasilkan. Storyboard dapat dikatakan juga visual script yang akan dijadikan outline dari sebuah proyek, ditampilkan shot by shot yang biasa disebut dengan istilah scene.

Form Menu utama




Form Menu Utama Master




Form Entity Barang



Form Data Kurir


Form Data Pelanggan


Form Cetak Invoice


Form Entry Purchase Order (PO)



Form Menu Utama Transaksi



PROYEK 3 dan PROYEK 4 (Evaluasi)

Prototype


Menu Utama

Entity Barang

Entry  Pelanggan

Entry Kurir

Entry PO

Cetak Invoice

Cetak Faktur Pajak

 Cetak Kwitansi

EVALUASI

Pencatatan data barang masih sering selisih,karena disebabkan oleh pencatatannya masih manual yang mengakibatkan kesulitan nya bagian produksi untuk belanja kebutuhan perusahaanDisediakannya informasi mengenai barang sebagai masukkan sistem dalam sebuah database.


Selasa, 04 Februari 2014

KUIS REKAYASA PERANGKAT LUNAK

1. Jelaskan proses kualitas segitiga McCall (McCalls’s Triangle of Quality) ?
2. Bagaimana memperhitungkan metric pada desain Object Oriented ?
3. Sebutkan dan jelaskan beberapa atribut aplikasi web ?
4. Apa yang dimaksud dengan formulasi WebE ?
5. Bagaimana cara melakukan analisis WebE ?
6. Coba jelaskan apa yang dimaksud dengan analysis navigasi ?
7. Bagaimana merancang dan kualitas aplikasi web ?
8. Sebutkan dan jelaskan tes aplikasi web ?
9. Bagaimana mengatur Proyek perangkat lunak ?
10. Apa yang dimaksud penjadwalan proyek ?
11. Apa yang dimaksud dengan manajemen proyek resiko ?
12. Apa yang dimaksud dengan manajemen kualitas proyek ?


1.) Kualitas Segitiga McCall
Merupakan salah satu pendekatan atau metode yang didalamnya terdapat beberapa karakteristik sebagai model untuk menilai dan memastikan kualitas pada software.
Mengapa diperlukan adanya measurement untuk Software Quality?
Perlunya penilaian untuk kualitas pada software adalah untuk memastikan bahwa antara kesepakatan requirement dengan hasil produk jadinya sudah sesuai atau tidak. Sebab jika tidak adanya measurement atau penilaian, maka tentunya akan terdapat kekurangan persyaratan yang ditetapkan sebagai bentuk yang berdampak pada rendahnya kualitas pada software tersebut.
Dan berikut ini adalah skema breakdown dari segitiga Mc Call’s Quality Factor yang terbagi atas 3 kategori utama, dan dimana pada masing-masing kategori tersebut memiliki kriteria-kriteria untuk measurement dari kualitas software.
http://csis.pace.edu/~marchese/cs615sp/L9/fg1.gif
No.
Mc Call’s Faktor
Uraian
1.
Correctness (kebenaran)
Apakah kebutuhan yang dispesifikasikan dan memenuhi tujuan dan kebutuhan client.
2.
Reliability (keandalan)
Kemampuan program yang diharapkan dapat menampilkan fungsi yang sesuai dengan harapan user
3.
Efficiency (efisiensi)
Jumlah sumberdaya yang diproses  yang diperlukan oleh program untuk melaksanakan fungsinya.
4.
Integrity (integritas)
Kemampuan pengawasan akses terhadap data atau software oleh orang-orang tertentu.
5.
Usability
Kemampuan dalam mengoperasikan.
6.
Maintainability:
Usaha untuk menetapkan dan memperbaiki kesalahan dalam program.
7.
Flexibility
Bagaimana software dapat digunakan se-fleksibilitas
8.
Testability
Usaha yang diperlukan untuk menguji program untuk memastikan bahwa program melaksanakan
fungsi yang ditetapkan
9.
Portability
Usaha yang diperlukan untuk memindahkan program dari hardware/ lingkungan sistem software
tertentu ke yang lainnya.
10.
Reusability
Tingkat kemampuan program/ bagian dari program yang dapat dipakai ulang dalam aplikasi
lainnya, berkaitan dengan paket dan lingkup dari fungsi yang dilakukan oleh program
11.
Interoperability
Usaha yang diperlukan untuk menggabungkan satu sistem dengan yang lainnya.
Berdasarkan gambaran skema dan deskripsinya masing-masing diatas maka banyak sekali baik dari sisi tangible atau pun intangible sebuah software ketika dikatakan berkualitas. Dari beberapa kriteria yang menjadi sisi yang dirasakan langsung oleh pegguna ini berkaitan dengan kebutuhan non-fungsional pada sebuah software. Seperti yang diketahui bahwa kebutuhan software ini terkategorikan menjadi dua, yaitu kebutuhan fungsional dan kebutuhan non-fungsional. Dimana kebutuhan non-fungsional ini juga akan mempengaruhi performa software atas kebutuhan fungsionalnya.
2.) Perhitungan Metric pada Object Oriented
Tipe-tipe pengukuran – Orientasi Metrik :
·         kesalahan per KLOC (ribu baris kode)
·         cacat per KLOC
·         $ Per LOC
·         halaman dokumentasi per KLOC
·         kesalahan orang per-bulan
·         Kesalahan review per-jam
·         LOC orang per-bulan
·         $ Per halaman dokumentasi

Tipe fungsi – Orientasi Metrik :
·         kesalahan per FP (ribu baris kode)
·         cacat per FP
·         $ Per FP
·         halaman dokumentasi per FP
·         FP orang per –bulan

Pengukuran Orientasi Objek :
·         Jumlah skrip skenario (Use-Case)
·         Jumlah dukungan Class (yang dibutuhkan untuk mengimplementasikan sistem tetapi tidak segera berhubungan dengan masalah domain)
·         Jumlah rata-rata kelas dukungan per Class utama (analisis class)
·         Jumlah subsistem (Class Agregate yang mendukung fungsi yang dapat dilihat oleh pengguna akhir dari suatu sistem)


3.) Berikut mayoritas atribut yang ada di webApps / Aplikasi web :
1. Network Intensiveness.Aplikasi web berada di internet dan harus dapat melayani permintaan dari komunitas klien yang berbeda-beda.
2. Concurrency. Besarnya jumlah user yang mengakses webApps pada waktu yang bersamaan sehingga dalam beberapa kejadian, pola dari pemakaian antara end-user akan bervariasi sekali.
3. Unpredictable load. Jumlah dari user yang menggunakan WebApps dari hari ke hari mungkin bertambah.
4. Performance. Jika user harus menunggu terlalu lama untuk mengakses server user mungkin akan memilih untuk berpindah ke web yang lain.
5.  Availability. Ketersediaan webApps untuk 100% tidak lah mungkin.
6. Data driven. Fungsi utama dari webApps adalah  untuk menggunakan berbagai media untuk menampilkan teks, grafik, audio, dan video kepada end-user. Ditambah lagi webApps digunakan untuk mengakses informasi yang berada di database yang bukan asli bagian dari lingkungan Web.
7. Content sensitive. Kualitas dari webApps ditentukan oleh isi dari konten, jg konten-konten haruslah tidak megandung sesuatu yang sensitif karena dapat diakses oleh berbagai user.
8. Immediacy. Kebanyakan pengembang berkeinginan untuk segera meluncurkan aplikasi ke pasar secepatnya tetapi itu jarang terjadi. Pengembang web haruslah menggunakan metode untuk merencanakan, menganalisis, mendesign, implementasi, dan testing yang disesuaikan dengan waktu yang dibutuhkan dalam pengembangan.
9. Security. Karena webApps tersedia lewat akses jaringan akan sulit untuk membatasi jumlah end-user yang mengakses aplikasi. Dalam melindungi konten yang sensitif dan menyediakan keamanan transmisi data, pengukuran kekuatan keamanan harus di implementasikan di seluruh infrastruktur yang mendukung webApps dan aplikasi itu sendiri.
10. Aesthetics. Suatu webApps haruslah terlihat menarik. Ketika sebuah aplikasi dibuat untuk dijual, teknik disain menjadi pengaruh yang paling besar dalam kesuksesan.


4.) Formulasi Web-E
·         dimulai perlu dengan identifikasi bisnis
·         bergerak ke deskripsi tujuan Aplikasi Web
·         mendefinisikan fitur dan fungsi utama
·         menetapkan kegiatan persyaratan pengumpulan yang akan mengarah pada pengembangan dari model analisis
·         memungkinkan stakeholder dan tim rekayasa web untuk membangun seperangkat tujuan dan sasaran untuk pembangunan aplikasi web tersebut.
·         mengidentifikasi ruang lingkup dari upaya pembangunan
·         menyediakan sarana untuk menentukan kesuksesan hasilnya

5.) Cara melakukan analisis Web-E
Analisis Isi (content analysis)
Spektrum konten penuh yang akan diberikan oleh aplikasi web ini diidentifikasi, termasuk teks, grafik dan gambar, video, dan data audio. Pemodelan data dapat digunakan untuk mengidentifikasi dan menggambarkan setiap objek data.
Analisis interaksi (interaction analysis) .
Cara di mana pengguna berinteraksi dengan apliasi web yang dijelaskan secara rinci. Gunakan-kasus dapat dikembangkan untuk menyediakan deskripsi rinci dari interaksi ini.
Analisis fungsional (functional analysis) .
Skenario penggunaan (use-kasus) dibuat sebagai bagian dari analisis interaksi menentukan operasi yang akan diterapkan untuk konten WebApp dan menyiratkan fungsi pengolahan lainnya. Semua operasi dan fungsi dijelaskan secara rinci.
Analisis konfigurasi (configuration analysis) .
Lingkungan dan infrastruktur dimana Aplikasi web yang berada dijelaskan secara rinci.
Kapan kita melakukan analisis
Dalam beberapa situasi WebE, analisis dan desain gabungan. Namun, kegiatan analisis eksplisit terjadi ketika ...yang aplikasi web yang akan dibangun besar dan / atau kompleks jumlah stakeholder besar jumlah insinyur Web dan kontributor lainnya tujuan dan sasaran besar 177
(ditentukan selama formulasi) untuk aplikasi web akan mempengaruhi bisnis 'bottom line keberhasilan webapp akan memiliki bantalan yang kuat terhadap keberhasilan bisnis.
6.) Analysis Navigasi :

Navigasi (Navigation) - mekanisme link-link ini meliputi internal dalam webapp, link eksternal untuk webapps lainnya, dan jangkar dalam halaman Web tertentu.

Hubungan Analisis Navigasi
Relationship Navigation Analysis (RNA) mengidentifikasi hubungan antara unsur-unsur ditemukan sebagai bagian dari penciptaan model analisis langkah-langkah:
·         Analisis Stakeholder - mengidentifikasi berbagai kategori pengguna dan menetapkan hirarki pemangku kepentingan yang sesuai

·         Analisis elemen-mengidentifikasi benda konten dan elemen fungsional yang menarik bagi pengguna akhir
·         Analisis hubungan - hubungan analisis menggambarkan hubungan yang ada di antara elemen WebApp
·         Analisis Navigasi - analisis meneliti bagaimana pengguna dapat mengakses elemen individu atau kelompok elemen
·         Analisis Evaluasi - mempertimbangkan isu-isu pragmatis (misalnya, biaya / manfaat) berkaitan dengan penerapan hubungan ditetapkan sebelumnya

7.) Merancang Kualitas Aplikasi Web
Perancangan User Interface:

·         User interface
·         pedoman dialog (dialogs guidences)
·         Tanggapan (feedback)
·         Membantu (help)
·         dialog E-commerce
·         Data mining
·         ergonomi

Perancangan Model Input:

• Desain Input (Input design)
• Desain formulir (Form design)
• Desain Tampilan (Display design)
• Desain Layar Graphical User Interface (GUI screen design)
• Pengontrolan GUI (GUI controls)
• Petunjuk-petunjuk mendesain web (Web design guidelines)

Perancangan Model Database :

·         Files
·         Basis Data (Databases)
·         Normalization
·         Desain Kunci (Key design)
·         Using the database
·         Data warehouses
·         Data mining

Perancangan Model Output:

·         Output Desain (Designing output)
·         Teknologi keluaran (Output technologies)
·         Faktor-faktor dalam memilih sebuah output teknologi
·         Desain laporan (Report design)
·         Desain layar (Screen design)
·         Desain situs web (Web site design)

8.) Tes Aplikasi Web

Testing Konten
·         Konten pengujian memiliki tiga tujuan penting:
·         untuk mengungkap kesalahan sintaksis (misalnya, kesalahan ketik, kesalahan tata bahasa) dalam dokumen berbasis teks, representasi grafis, dan media lainnya
·         untuk mengungkap kesalahan semantik (yaitu, kesalahan dalam keakuratan atau kelengkapan informasi) di setiap objek konten disajikan sebagai terjadi navigasi, dan
·         untuk menemukan kesalahan dalam organisasi atau struktur konten yang disajikan kepada pengguna akhir
Testing Database
Testing User Interface
·         Fitur antarmuka (interface feature) diuji untuk memastikan bahwa aturan desain, estetika, dan konten visual yang terkait tersedia bagi pengguna tanpa kesalahan.
·         Mekanisme individu antarmuka (individual interface mechanism) diuji dengan cara yang analog dengan unit testing.
·         Setiap mekanisme antarmuka (each interface mechanism) diuji dalam konteks use case atau NSU (Bab 19) untuk kategori pengguna tertentu.
·         Antarmuka lengkap (complete interface) diuji terhadap dipilih penggunaan-kasus dan NSUs untuk mengungkap kesalahan dalam semantik antarmuka.
·         Antarmuka (interface) diuji dalam berbagai lingkungan (misalnya, browser) untuk memastikan bahwa hal itu akan kompatibel.
Testing Usability
·         Desain oleh tim WebE ... dieksekusi oleh pengguna akhir\
·         Urutan Pengujian...
·         Mendefinisikan seperangkat kategori pengujian kegunaan dan mengidentifikasi untuk masing-masing tujuan.
·         Desain tes yang akan memungkinkan setiap tujuan untuk dievaluasi.
·         Pilih peserta yang akan melakukan tes.
·         Instrument Interaksi peserta dengan saat pengujian aplikasi web dilakukan.
·         Mengembangkan mekanisme untuk menilai kegunaan dari aplikasi web
·         Berbagai tingkat abstraksi:
·         Kegunaan dari mekanisme interface tertentu (misalnya, bentuk) dapat dinilai
·         Kegunaan dari suatu halaman web yang lengkap (mekanisme antarmuka meliputi, obyek data dan fungsi-fungsi terkait) dapat dievaluasi
·         kegunaan dari aplikasi web dapat dianggap lengkap

Testing Kompabilitas (Comp ability test)
·         Pengujian kompatibilitas adalah untuk mendefinisikan satu set "biasa ditemui" komputasi konfigurasi client side dan varian mereka
·         Buat struktur pohon mengidentifikasi
·         setiap platform komputasi
·         perangkat layar khas
·         sistem operasi yang didukung pada platform
·         browser yang tersedia
·         kemungkinan kecepatan koneksi internet
·         informasi serupa.
·         Turunkan serangkaian tes validasi kompatibilitas
·         berasal yang ada dari tes antarmuka, tes navigasi, tes kinerja, dan tes keamanan.
·         maksud dari tes ini adalah untuk mengungkap kesalahan atau masalah eksekusi yang dapat ditelusuri perbedaan konfigurasi.

Testing tingkat komponen
·         Fokus pada serangkaian tes yang mencoba untuk mengungkap kesalahan dalam fungsi aplikasi web
·         Uji Metode desain kasus konvensional baik black box dan white box dapat digunakan
·         Pengujian database sering merupakan bagian integral dari komponen-pengujian
Testing Navigasi
Mekanisme navigasi berikut harus diuji:

·         Navigasi (Navigation) - mekanisme link-link ini meliputi internal dalam webapp, link eksternal untuk webapps lainnya, dan jangkar dalam halaman Web tertentu.
·         Pengalihan (Redirect) -link ini ikut bermain ketika pengguna meminta non-ada URL atau memilih link yang tujuan telah dihapus atau yang namanya telah berubah.
·         Penanda-penanda (Bookmarks) meskipun adalah fungsi browser, webapp harus diuji untuk memastikan bahwa judul halaman yang berarti dapat diekstraksi sebagai penunjuk dibuat.
·         Bingkai (Frameset) – frame-frame diuji untuk konten yang benar, tata letak yang tepat dan ukuran, kinerja download, dan kompatibilitas browser
·         Peta-peta situs (SiteMap) - Setiap situs entri harus diuji untuk memastikan bahwa link tersebut akan membawa pengguna ke konten yang tepat atau fungsi.
·         Mesin Pencari Internal (Internal Search Engines) - Mesin pencari internal memvalidasi keakuratan dan kelengkapan dari pencarian, sifat-penanganan kesalahan dari mesin pencari, dan fitur pencarian lanjutan
Testing Navigation Semantic
·         Apakah NSU yang dicapai secara keseluruhan tanpa kesalahan?
·         Apakah setiap simpul navigasi (didefinisikan untuk NSU) dicapai dalam konteks jalur navigasi yang ditetapkan untuk NSU?
·         Jika NSU dapat dicapai dengan menggunakan lebih dari satu jalur navigasi, telah setiap jalan yang relevan telah diuji?
·         Jika petunjuk yang diberikan oleh antarmuka pengguna untuk membantu dalam navigasi, adalah arah yang benar dan dapat dipahami sebagai hasil navigasi?
·         Apakah ada mekanisme (selain panah browser 'back') untuk kembali ke node navigasi sebelumnya dan awal jalur navigasi.
·         Apakah mekanisme untuk navigasi dalam simpul navigasi besar (yaitu, halaman web yang panjang) bekerja dengan baik?
·         Jika fungsi yang akan dijalankan pada satu simpul dan pengguna memilih untuk tidak memberikan masukan, dapat sisa NSU akan selesai?
·         Jika fungsi dijalankan pada node dan kesalahan dalam fungsi pengolahan terjadi, dapat NSU diselesaikan?
·         Apakah ada cara untuk menghentikan navigasi sebelum semua node telah tercapai, tapi kemudian kembali ke tempat navigasi dihentikan dan lanjutkan dari sana?
·         Apakah setiap simpul dicapai dari peta situs? Apakah nama simpul berarti bagi pengguna akhir?
·         Jika node dalam sebuah NSU tercapai dari beberapa sumber eksternal, apakah mungkin untuk memproses ke node berikutnya pada jalur navigasi. Apakah mungkin untuk kembali ke node sebelumnya pada jalur navigasi?
·         Apakah pengguna mengerti lokasinya dalam arsitektur konten sebagai NSU dijalankan?


Testing Configuration
·         Server-side
·         Apakah aplikasi web sepenuhnya kompatibel dengan server OS?
·         Apakah sistem file, direktori, dan data terkait sistem dibuat dengan benar ketika operasional aplikasi web ?
·         Apakah langkah-langkah keamanan sistem (misalnya, firewall atau enkripsi) memungkinkan aplikasi web untuk mengeksekusi dan tanpa gangguan layanan pengguna atau penurunan kinerja?
·         Apakah aplikasi web yang telah diuji dengan konfigurasi server terdistribusi (jika ada) yang telah dipilih?
·         Apakah aplikasi web dengan benar terintegrasi dengan perangkat lunak database?
·         Apakah aplikasi web yang sensitif terhadap versi yang berbeda dari perangkat lunak database?
·         Apakah server-side script aplikasi web mengeksekusi dengan baik?
·         Apakah kesalahan sistem administrator telah diperiksa untuk mempengaruhi mereka pada operasi aplikasi web ?
·         Jika server proxy yang digunakan, memiliki perbedaan dalam konfigurasi mereka telah ditangani dengan pengujian di tempat?
·         Client-side
·         Perangkat keras-CPU, memori, penyimpanan dan pencetakan
·         Sistem operasi Linux-, Macintosh OS, Microsoft Windows, OS mobile berbasis
·         Browser perangkat lunak Internet Explorer, Mozilla / Netscape, Opera, Safari, dan lain-lain
·         User interface-komponen Active X, Java applet dan lain-lain
·         Plug-in-QuickTime, RealPlayer, dan banyak lainnya
·         Konektivitas-kabel, DSL, modem biasa, T1
·         Jumlah variabel konfigurasi harus dikurangi ke nomor dikelola
Testing Security
·         Dirancang untuk menyelidiki kerentanan (vulnerabilities) lingkungan client-side, jaringan komunikasi yang terjadi sebagai data yang lulus dari klien ke server dan kembali lagi, dan lingkungan server-side
·         Di sisi klien, kerentanan sering dapat ditelusuri ke bug yang sudah ada di browser, program e-mail, atau perangkat lunak komunikasi.
·         Di sisi server, kerentanan termasuk serangan denial-of-service dan skrip berbahaya yang dapat diteruskan ke sisi klien atau digunakan untuk menonaktifkan operasi server yang

Testing Performa
·         Apakah waktu respon server menurunkan ke titik di mana ia terlihat dan tidak dapat diterima?
·         Pada titik (dalam hal pengguna, transaksi atau loading data) tidak kinerja menjadi tidak dapat diterima?
·         Apa komponen sistem bertanggung jawab untuk penurunan kinerja?
·         Apa waktu respon rata-rata bagi pengguna di bawah berbagai kondisi pembebanan?
·         Apakah penurunan kinerja berdampak pada sistem keamanan?
·         Apakah keandalah Aplikasi web atau ketepatan terpengaruh beban pada sistem tumbuh?
·         Apa yang terjadi ketika beban yang lebih besar dari kapasitas server secara maksimum diterapkan?




Testing Load (load TESTING)
·         Tujuannya adalah untuk menentukan bagaimana webapp dan lingkungan sisi server akan merespon berbagai kondisi pembebanan

N, jumlah pengguna secara bersamaan T, jumlah transaksi on-line per unit waktu D, beban data yang diproses oleh server per transaksi
·         Throughput keseluruhan, P, dihitung dengan cara sebagai berikut:

P = N x T x D
Testing Stress
·         Apakah sistem menurunkan 'lembut' atau apakah server menutup akibat kapasitas terlampaui?
·         Apakah perangkat lunak server menghasilkan pesan "Server tidak tersedia"? Lebih umum, adalah pengguna menyadari bahwa mereka tidak dapat mencapai server?
·         Apakah permintaan antrian server untuk sumber daya dan mengosongkan sekali antrian tuntutan kapasitas berkurang?
·         Apakah transaksi hilang karena kapasitas terlampaui?
·         Apakah integritas data terpengaruh kapasitas terlampaui?
·         Apa nilai dari N, T, dan D memaksa lingkungan server gagal? Bagaimana kegagalan memanifestasikan dirinya? Adalah pemberitahuan otomatis dikirim ke staf dukungan teknis di server situs?
·         Jika sistem gagal, berapa lama waktu yang dibutuhkan untuk kembali on-line?
·         Apakah fungsi Aplikasi web tertentu (misalnya, menghitung fungsi intensif, streaming data kemampuan) dihentikan kapasitas mencapai level 80 atau 90 persen?

9.) Mengatur Proyek Perangkat Lunak

Proses pembangunan perangkat lunak mempunyai banyak personel didalamnya, personel-personel ini akan di kelompokan menjadi 5 kategori yaitu :

1. Manajer senior
Berperan sebagai yang membuat kebijakan, keputusan dan strategi dalam proyek, semuanya  dipegang oleh manajer senior

2. Manajer proyek (pemimpin tim)
Berperan sebagai orang yang bertanggung jawab dalam mengurus sebuah proyek dan mampu memilih praktisi sesuai dengan posisi.

3. Praktisi : Berperan sebagai yang mengerjakan perangkat lunak

4. Klien : Berperan sebagai pemberi kerja dan menentukan kebutuhan perangkat lunak

5. Pengguna perangkat lunak : Orang yang menggunakan prangkat lunak yang telah dibangun.

Tim Proyek Perangkat lunak
Dalam sebuah Tim pastinya ada struktur organisasi yang terbentuk untuk menentukan pembagian tugas yang bisa diterapkan pada tim perangkat lunak. Misalnya semua personel dibagi menjadi beberapa tim, setiap tim mengerjakan satu atau lebih tugas dan koordinasi dikendalikan oleh tim dam manager. Struktur organisasi yang bisa diterapkan yaitu :



1. Democratic Decentralized (DD)
Demokratis Desentralisasi adalah sebuah gaya berorganisasi tim yang pemimpinnya mempromosikan berbagi tanggung jawab, sehingga tidak bersifat otoriter, pemimpin tidak permanen.

2. Controlled decentralized (CD)
Pendelegasian wewenang dalam membuat keputusan dan kebijakan kepada manajer atau orang-orang yang berada pada level bawah dalam suatu struktur organisasi yang terkontrol.

3. Controlled Centralized (CC)
Terkontrolnya suatu organisasi yang memusatkan seluruh wewenang kepada sejumlah kecil manajer atau yang berada di posisi puncak pada suatu struktur organisasi.

Pengukuran perangkat lunak
a. Pengukuran berdasarkan ukuran
Pengukuran dilakukan berdasarkan line of code (LOC),  waktu, harga, dan kesalahn yang ditemukan.

b. Pengukuran berdasarkan fungsi (Function Point – FP)
Pengukuran dilakukan berdasarkan bagian-bagian software yang bisa dihitung, misalnya : jumlah file, input,  external interface, output,  dan user inquiry.

c. Ukuran untuk organisasi kecil (DRE = Defect Removal efficiency)
Pengukuran dilakukan berdasarkan  usaha (melakukan evaluasi dan membuat perubahan), waktu (permintaan dan selesainya evaluasi sampai penugasan lain ke personel), cacat dan kesalahan yang terjadi.

10.) Penjadwalan proyek :

Penjadwalan proyek adalah kegiatan menetapkan jangka waktu kegiatan proyek yang harus diselesaikan, bahan baku, tenaga kerja serta waktu yang dibutuhkan oleh setiap aktivitas.

11.) Manajemen Proyek Resiko

Manajemen proyek adalah suatu rencana pekerjaan yang di susun secara sistematik sehingga suatu pekerjaan tersebut dapat terselesaikan dengan baik atau bisa di sebut juga sebagai cara mengelola dan mengorganisir berbagai aset, sumber daya manusia, waktu serta kualitas pekerjaan proyek, sehingga proyek menghasilkan kualitas yang maksimal dalam waktu yang sudah direncanakan serta memberikan efek kesejahteraan bagi karyawan, sebagai contoh kita ambil yaitu pembangunan sebuah rumah, pada saat pembuatan rumah, kita harus membutuhkan berbagai macam bahan material seperti pasir, semen, batu bata, dsb.
Proyek dan Resiko adalah suntingan utama, yakni kita harus benar-benar merencanakan semua kemungkinan yang terjadi dari project atau proyek tersebut. Manajemen proyek dan resiko adalah hal yang sangat penting jika kita ingin membuat sesuatu dalam project kita, dengan memikirkan apa project kita dan juga pastinya resiko yang ditimmbulkan dari project kita tersebut.

Manajemen 
Pengertian Manajemen. 
Manajemen adalah Suatu Proses dalam rangka mencapai tujuan dengan bekerja bersama melalui orang-orang dan sumber daya organisasi lainnya.







Proyek 
Proyek adalah suatu kegiatan yang kita rencanakan matang-matang agar sesuai yang kita inginkan. Gagasan dalam proyek adalah awal dari sebuah proyek, karena jika tidak ada gagasan kita tidak bisa membuat proyek. Contohnya pada pemasangan jaringan internet di dalam sebuah kantor dalam gedung perkantoran atau mall-mall. 
Hal-hal yang dilakukan dalam proyek : 
1. Gagasan atau ide utama proyek 
2. Perencanaan proyek 
3. Pelaksanaan proyek 


Resiko 
Resiko adalah suatu hal yang berkaitan erat dengan proyek, yakni resiko adalah masalah yang ditimbulkan dari proyek tersebut. Jangan menyepelekan dari resiko , karena resiko juga merupakan bagian dari proyek yang artinya jika resiko itu terlewati dengan baik maka proyek tersebut juga pasti sukses. Tentu saja kita harus berusaha lebih keras dan teliti untuk mengerjakannya. Resiko juga dapat dibagi dua sisi yakni internal resiko dan eksternal resiko.

12.) Manajemen Kualitas Proyek adalah sebagai berikut :

Kualitas
The American Heritage Dictionary mendefinisikan kualitas sebagai"Karakteristik atau atribut dari sesuatu."
·         Untuk perangkat lunak, dua jenis kualitas mungkin dihadapi:
·         Kualitas desain meliputi persyaratan, spesifikasi, dan desain sistem.
·         Kualitas kecocokan adalah masalah difokuskan terutama pada implementasi.
·         kepuasan pengguna produk compliant = + kualitas bagus + pengiriman dalam anggaran dan jadwal

Kualitas Perangkat Lunak
Kesesuaian dengan persyaratan eksplisit dinyatakan fungsional dan kinerja, standar pengembangan eksplisit didokumentasikan, dan karakteristik implisit yang diharapkan dari semua perangkat lunak yang dikembangkan secara profesional.