VSTS 2008, from a developer perspective

Software development is similar to "building development"

building

Untuk membangun sebuah bangunan yang besar(katakanlah membangun sebuah mall), diperlukan architect, designer, dan bahkan pekerja / tukang yang berpengalaman dan mampu mengerjakannya dengan baik. Selain tim pengembang, tentunya diperlukan bahan (bangunan) yang berkualitas pula misalnya batu bata / batako, semen, pasir, dll. Begitu juga dengan alat / tools seperti traktor dan mesin - mesin lainnya.

Membangun software sangat serupa dengan membangun sebuah bangunan / building. Untuk membangun sebuah software yang berkualitas, selain membutuhkan sebuah tim pengembang yang tangguh, tentunya juga diperlukan tools yang membantu (seperti Visual Studio).

products_bricksUntuk menjadi sebuah bangunan yang tangguh, tentunya kita tidak bisa meremehkan sebuah batu bata kecil. Perlu dipastikan bahwa batu bata tersebut tangguh dan sudah teruji kualitasnya. Seperti halnya software development, unit / lines of code dapat dianalogikan sebagai batu bata yang jangan sekali - kali meremehkannya. Sebab untuk membuat sebuah software yang berkualitas, kita juga membutuhkan unit code yang berkualitas dan teruji pula.

Visual Studio Team Edition for Developer

Visual Studio Team System 2008 (khususnya Development Edition) menyediakan beberapa fitur dengan tujuan membangun source code yang berkualitas. Mari kita bahas satu per satu secara sekilas. (Kalau memungkinkan, akan saya bahas lebih detail masing - masing pada blog berikutnya).

1. Unit Test

Unit Test adalah sebuah pengujian terhadap unit terkecil dari bagian source code untuk memastikan kita menulis source code yang berkualitas. Biasanya dalam Object Oriented Programming, unit yang dilakukan pengujian adalah method.

image image

Masing - masing method yang kita buat, sebaiknya dilakukan unit test, pengujian terhadap logika method tersebut apakah mendapatkan hasil yang sebenarnya diinginkan.

2. Code Coverage

Code Coverage berhubungan denga Unit Test. Dalam menjalankan Unit Test, kita dapat memantau bagian / baris mana saja yang dijalanin dan mana saja yang tidak.

image

Fitur ini sangat berguna dalam memprediksi code program yang sering dijalankan sehingga kita dapat melakukan penyesuaian yang tepat pada code kita.

3. Code Analysis

Tidaklah jarang kita melihat developer yang menulis source code yang tidak mengikuti aturan yang benar, tidak konsisten / standard, performa yang rendah, serta code yang asal jadi.

Hal - hal seperti itu bisa menjadi mimpi buruk bagi developer lainnya yang membaca karena susah dimengerti. Juga akan berimplikasi buruk bagi seluruh project karena menghasilkan aplikasi yang "asal jadi" tetapi tidak tangguh.

 image

Code Analysis memiliki kemampuan untuk "memaksa" developer untuk mengikuti kaidah penulisan code yang benar berdasarkan sejumlah kategori yang Anda. Tidak hanya itu, Code Analysis menyarankan kita untuk memperbaiki code program kita diberbagai sisi seperti design dan performance.

Selain dari aturan / anjuran default yang telah disediakan, kita juga dapat membuat sendiri aturan secara custom.

4. Code Metrics

Code Metrics memungkinkan kita untuk menilai source code yang kita tulis dengan beberapa taraf pengukuran sebagai berikut:

  • Lines of code
  • Class Coupling
  • Depth of Inheritance
  • Cyclomatic Complexity
  • Maintainability Index

image

5. Code Profiling

Code Profiling memungkinkan kita untuk melihat lebih dalam bagian (fungsi, class, project) mana saja yang mengkonsumsi waktu yang paling lama. Hal ini dapat membantu kita untuk memeriksa sebenarnya bagian program kita yang mana yang sebenarnya membuat performa aplikasi kita menjadi lambat.

Terdapat dua metode profiling, yaitu:

  • Sampling

Sampling adalah teknik yang mengambil / merekam performa data pada aplikasi dalam interval tertentu. Data yang dikoleksi lebih sedikit daripada Instrumentation.

image

  • Instrumentation

Instrumentation adalah teknik dengan menyelidiki code kita untuk memperoleh fungsi - fungsi yang terdapat pada program kita.

image

Secara singkat, teknik Sampling lebih general sedangkan Instrumentation lebih spesifik. Code Profiling akan memberikan kita laporan konsumsi waktu dan resource pada program mana saja secara detil.

Share this post: | | | |
Published Sunday, October 19, 2008 10:18 PM by Wely
Filed under:

Comments

No Comments
Powered by Community Server (Commercial Edition), by Telligent Systems