Tasarım Kodlama

Bilgisayar Destekli Yazılım Mühendisliği (CASE – Computer Aided Software Engineering )

Bilgisayar destekli yazılım mühendisliği (CASE), yazılım geliştirmede bilgisayar destekli araç ve yöntemlerin uygulanmasıdır. CASE, yüksek kaliteli ve hatasız bir yazılım sağlamak için kullanılır. CASE, kontrollü ve disiplinli bir yaklaşım sağlar ve tasarımcıların, geliştiricilerin, testçilerin, yöneticilerin ve diğerlerinin geliştirme sırasında proje kilometre taşlarını görmelerine yardımcı olur.

CASE, iş planları, gereksinimler ve tasarım özellikleri gibi projelerle ilgili belgeler için bir depo olarak da yardımcı olabilir. CASE kullanmanın en büyük avantajlarından biri, müşterilerin sürecin bir parçası olarak kalmasını sağladığı için gerçek dünya gereksinimlerini karşılama olasılığı daha yüksek olan nihai ürünün teslim edilmesidir.

CASE, yazılım geliştirmede kullanılan çok çeşitli emek tasarrufu sağlayan araçları göstermektedir. Projeleri organize etmek ve üretkenliği artırmaya yardımcı olmak için bir çerçeve oluşturur. CASE araçları kavramına yıllar önce daha fazla ilgi vardı, ancak araçlar genellikle yazılım geliştiricinin ihtiyaçlarına tepki olarak farklı işlevlere dönüştüğü için bugün daha az ilgi görüyor. CASE kavramı da yayınlandıktan sonra yoğun bir eleştiri aldı.

Bilgisayar Destekli Yazılım Mühendisliği Araçları:

CASE araçlarının temel fikri, yerleşik programların kaliteyi artırmak ve daha iyi sonuçlar sağlamak için gelişen sistemleri analiz etmeye yardımcı olabilmesidir. 1990 boyunca, CASE aracı yazılım sözlüğünün bir parçası oldu ve IBM gibi büyük şirketler yazılım oluşturmaya yardımcı olmak için bu tür araçları kullanıyorlardı.

Bir yazılım geliştirme yaşam döngüsündeki farklı aşamaları ve kilometre taşlarını desteklemek için kullanılan CASE araçlarına çeşitli araçlar dahil edilmiştir ve bunlar CASE araçları olarak adlandırılır.

Bilgisayar Destekli Yazılım Mühendisliği Araçları Türleri:

Diyagram Araçları:

Veri ve sistem süreçlerinin şematik ve grafiksel temsillerine yardımcı olur. Sistem öğelerini, kontrol akışını ve farklı yazılım bileşenleri arasındaki veri akışını ve sistem yapısını resimli bir biçimde temsil eder.
Örneğin, son teknoloji akış şemaları yapmak için Akış Şeması Oluşturucu aracı.

Bilgisayar Ekranı ve Rapor Üreticileri:

Veri gereksinimlerinin ve ilgili ilişkilerin anlaşılmasına yardımcı olur.

Analiz Araçları:

Diyagram ve veri akışında yer alan tutarsız, yanlış özelliklere odaklanır. Gereksinimlerin toplanmasına yardımcı olur, herhangi bir düzensizliği, şemalardaki yanlışlığı, veri fazlalıklarını veya hatalı eksiklikleri otomatik olarak kontrol eder.

Örneğin,

  • (i) Accept 360, Accompa, CaseComplete for requirement analysis. 
     
  • (ii) Visible Analyst for total analysis. 

(i) Gereksinim analizi için 360, Accompa, CaseComplete’ı kabul edin.

(ii) Toplam analiz için Görünür Analist.

Merkez Repository:

Proje yönetimi ile ilgili veri diyagramları, raporlar ve belgeler için tek depolama noktası sağlar.

Dokümantasyon Üreticileri:

Standartlara göre kullanıcı ve teknik dokümantasyon oluşturulmasına yardımcı olur. Teknik kullanıcılar ve son kullanıcılar için dokümanlar oluşturur.

Örneğin, belgeler için Doxygen, DrExplain, Adobe RoboHelp.

Kod Üreticileri:

Tasarımlar, belgeler ve diyagramlar yardımıyla tanımlar dahil olmak üzere kodun otomatik olarak oluşturulmasına yardımcı olur.

CASE yaklaşımının avantajları:

Test etmenin yanı sıra yeniden tasarıma özel önem verildiğinden, bir ürünün beklenen ömrü boyunca servis maliyeti önemli ölçüde azalır.

Geliştirme sürecinde organize bir yaklaşım benimsendiği için ürünün genel kalitesi iyileştirilir.

Bilgisayar destekli yazılım mühendisliği yaklaşımıyla gerçek dünya gereksinimlerini karşılama şansı daha olası ve daha kolaydır.

CASE, yüksek kaliteli ürünlerin geliştirilmesini sağlamaya yardımcı olarak dolaylı olarak bir kuruluşa rekabet avantajı sağlar.

CASE yaklaşımının dezavantajları:

  • Maliyet: Vaka aracını kullanmak çok maliyetlidir. Çoğunlukla küçük ölçekte yazılım geliştirme ile uğraşan firmalar CASE araçlarına yatırım yapmazlar çünkü CASE’in faydalarının yalnızca büyük sistemlerin geliştirilmesinde haklı gösterilebileceğini düşünürler.
  • Öğrenme Eğrisi: Çoğu durumda, programcıların üretkenliği uygulamanın ilk aşamasında düşebilir, çünkü kullanıcının teknolojiyi öğrenmek için zamana ihtiyacı vardır. Birçok danışman, öğrenme eğrisini hızlandırmak ve CASE araçlarının geliştirilmesi ve kullanılması için önemli olabilecek eğitim ve yerinde hizmetler sunar.
  • Araç Karması: Maliyet avantajı sağlamak için uygun bir araç seçimi karışımı oluşturmak önemlidir CASE entegrasyonu ve tüm platformlarda veri entegrasyonu son derece önemlidir.

Yorum yap