Verification: Var olan bir yazılım istenilen ve belirtilen özelliklere uyumlu olup olmadığını kontrol etmektir.Yazılımı geliştirici tarafından yapılan ve Üretim evrenlerinde verification gerçekleştirilir. En bilinin adıyla Specification software olarak adlandırılır.En genel haliyle Geliştirici ürünü doğru Kodladı mı? Geliştirdi mi? sorusunun cevabını aranmaktadır. Süreç-yönlüdür.Gereksinimleri ve ihtiyaçları belirtilen ürünün tamamlanan evreleri önceki evreleri aşamaları sırasında kurulmuş bir biri içersinde uyumlumudur diye bakılmaktadır.
Validation:Müşteri odaklıdır. Müşterinin beklentilerinin karşılanıp karşılanmadığını kontrol eder.En genele haliyle Geliştirici yaptığı ürünün müşteri için doğru olup olmadığı sorusunun cevabını aramaktadır.
Üretim-yönlüdür.Ürünün hazır olan tamamlanan evreleri aşamaları arasında kullanıcının ihtiyaçlarına cevap veriyor mu? diye bakılmaktadır.
Burada genel olarak takip edilen yol şeklindedir.Şemayı ele alıp bunları tek tek birbirleriyle karşılaştırmalısınız.
Bakım & Onarım (maintenance ): Yazılımı veya uygulamayı tekrar tekrar güncellemek veya düzenlemek demektir.
Her zaman daha Az çaba için Verification & Velidation Önemlidir.
Yazılım Geliştirme maliyet tarafından bakıldığı zaman
Yazılım Life-Cycle Maliyeti
Bütün yazılım geliştirme aşmalarının %60 civarında Maintenance yani Bakım & Onarım olarak çaba gösterilmektedir. Bunların dağılımları
%21 Düzenleyici (Corrective Maintenance)
%25 Adaptasyon (Adaptive Maintenance)
%50 Eksiksiz (Perfective Maintenance)
%4 Koruyucu (Preventive Maintanence) Bakım & onarım şeklinde geçmektedir.
Velidation & Verification teknikleri:
2 ayrılır
1-) Statik V&V: Bir yazılımı çalıştırmadan (Execute) önce bilgilerin toplanmasıdır.
Peki Bunlar neler olabilir diye bakalım.
Life-Cycle : Reviews, İnspections,Wolkhtrough
Statik analiz biçimsel verification dır. Yalnızca yazılım geliştirmelerde güvenlik ve emniyeti sağlar.
2-) Dinamik V&V: Bir yazılımın Çalıştırıldığı (Execute) edildiği anda bilgilerin toparlanmasıdır.Yani burada artık sizin elinizde çalışan (run) eden bir kod vardır. Burada yapabileceğiniz iki tane işlem vardır. Bunlardan birisi Testing diğeri ise DebugingŞimdi birazda Life-Cycle’a bakalım.
İspection: Bir takım tarafından denetilir ve uygulanır. Yazılım geliştirmenin belirli evrelerinde ürünü yazılımı incelerler. Bu aşamada neler yapılabilir? SRS, Tasarım Dizayn, kodlama yapılabilinir. Genelde dört veya beş kişiden oluşurlar.İnspaection takımının en önemli özelliklerinden biri Check-List kullanarak dosya içerisindeki hataları problemleri bulmaya ve denetlemeye çalışır.
Review: Bir dosyanın değerlendirilmesi sırasında geliştirme standartlarının kolayca yönetilmesi ve İspatları, açıklamaları ile yönetimini sağlar. Belirlenen ve başlatılan amaçlara göre geliştirme süreci yürütülmeye başlar. Review in genel amacı daha az teknik konular daha çok Specifications ve standartlara göre ürünü değerlendirmektir.Tasarım dizayn ve geliştirme gereksinimlerini kusursuz bir şekilde garantiye almaktır.
Walkhtroughs: Genel amacı hataları belirlemek ve belgelemektir. Geliştiricinin uygulama sırasındaki tahmini hataları değildir. Walkhtroughs diğer statik V&V tekniklerine göre daz az biçimseldir. Walkhtroughs takımına rehberlik etmesi için bir Check-List ve diğer takımların çalışma dosyalarının raporlarını kullanmazlar.
İnspection süreç aşamaları:
Plan: Sade moderator sorumluluğunda gerçekleşir ve çalışan ürüne uygulanır.(work product )
Gözden Geçirme (Overview): İsteğe bağlı olarak oluşturulur.
Hazırlanma(Preparation): Takım üyelerinin kendi başlarına çalışmalarını gerektirir.
Hatalarla Karşılaşma (Meeting): Bütün programın her hatası tartışılır. Final hata listesi oluşturulur.
Takip etmek (Follow-Up): çalışan proje doğrulanır.
Yazılımı Test etmenin önemi:
İlk olarak bu soruyu kendinize sorup cevaplamaya çalışın eğer kafanızda birşeyler oluşmadıysa aşağıdaki nedenleri okuduktan sonra soruyu tekrar cevaplamaya çalışınız.
1-) Yapılan testin başarasın dan harcanan zamanından test sürecinin kalitesinin hesaplanması
2-) Life-Cycle test tekniklerini kullanarak hata göçlerinin önlenmesi
3-) yazılımda uygun test tool kullanımları
4-) Test profesyonel bir disiplin kendini geliştirmiş bilgi ve becerisi ileri düzeydeki vasiflı elemanlara ihtiyaç duyar.Burada aranan asıl cevaplar. Yazılım sürecinin ne kadar süreceği? Yazılımın nasıl yapılması gerektiğinin kararının verilmesi? Test sürecinde uygulanacak strategilerin neler olduğuna? Doğru strateji ile doğru insan gibi soruların çözümü önem taşımaktadır.
Unutmamak gerekir ki En iyi yazılım istenileni en az hatayla en iyi yapandır.
Software Engineering.
Categories
- vb (10)
- visual basic (10)
- Glassfish (9)
- java (8)
- Software engineering (5)
- pardus (4)
- C++ (3)
- Canım İstedi (3)
- OpenSolaris (3)
- jdk (3)
- Database (2)
- Mim (2)
- BackTrack (1)
- Basit Dos Komutları (1)
- Binary Tree Traversals (1)
- Dim (1)
- Hakkımda (1)
- Java öğren (1)
- Larry Ellison (1)
- Msn (1)
- Pardus geliştircileri toplantısı (1)
- Programlama Dilleri (1)
- Ramazan Bayramı (1)
- Steve Jobs (1)
- Streaming (1)
- VritualBox (1)
- Windows (1)
- film (1)
- merkez bankası (1)
- parallel Computing (1)
- virüs (1)
- xml (1)
- yazılım mühendisliği (1)
Blog Archive
Links
14:38
Etiketler: Software engineering
Kaydol:
Kayıt Yorumları (Atom)
0 yorum:
Yorum Gönder