# V-Model
V-Model, sistem geliştirme sürecindeki karmaşıklığı azaltmak ve süreci daha yönetilebilir hâle getirmek amacıyla geliştirilen kavramsal bir modeldir.Basit çerçevelerden ayrıntılı yaşam döngüsü modellerine ve proje yönetimi araçlarına kadar geniş bir uygulama yelpazesine sahiptir. Yazılım test süreçlerinde, özellikle Uluslararası Yazılım Test Sertifikasyon Kurulu (ISTQB) tarafından tanımlanması sayesinde, uluslararası test topluluklarında açıklayıcı ve esnek bir yapı olarak kabul görmektedir. Literatürde modelin farklı şekillerde tanımlanmış pek çok versiyonu bulunur; bu da modelin standartlaştırılmış bir biçiminin olmadığını ve bağlama göre değişkenlik gösterebildiğini ortaya koyar.
Modelin kullanım biçimleri ülkeden ülkeye farklılık gösterir. Almanya’da geliştirilen versiyon, genellikle PRINCE2 gibi proje yönetimi yöntemleriyle entegre şekilde çalışır. Amerika Birleşik Devletleri’nde kullanılan versiyon ise Alman örneğine kıyasla daha sınırlı bir kapsama sahiptir ve çoğunlukla kamuya yönelik sistem geliştirme süreçlerine uygulanır. İngiltere’de ise V-Model, test süreçlerine daha fazla ağırlık veren, daha ayrıntılı ve doğruluğu önceliklendiren bir yapı olarak benimsenmiştir. Bu farklılıklar, V-Model'in bağlamdan bağımsız şekilde evrensel bir model değil; bulunduğu ortam ve ihtiyaçlara göre şekillenen bir araç olduğunu göstermektedir.


## V-Model konuları.
### Sistem mühendisliği ve doğrulama.
Sistem mühendisliği süreci (SEP: system engineering process), sistem sahibi tarafından sistemin tüm yaşamı boyunca deneyimlediği karmaşık süreçlerin maliyet verimliliğini geliştirmek için bir yol sağlar.
Hedefleri, kullanıcı ihtiyaçlarını ve işlem ortamını test edilebilir sistem gereksinimleriyle ayrıntılı tasarım, geliştirme, durum gereksinimlerinin karşılandığına emin olmak için gerçekleştirimi yapılmış sistemin titiz kabul testi (sistem doğrulama) atanmış hedeflerindeki etkinliğini ölçme (sistem geçerliliği), devam eden işlemler ve bakım onarım, sistem güncelleme tarihi ve nihayet sonlanma ile beraber kullanıcı ihtiyaçlarını tanımlayan işlemler kavramını, hedeflerin genişçe ve erken evrelerinde tanımını içerir. Süreç gereksinim-sürdürülebilir tasarım ve test etmeyi vurgular. Tüm tasarım elemanları ve kabul testleri en azından bir tasarım elemanı ve kabul testi tarafından atanmış olan her bir gereksinimi ve bir veya daha çok sistem gereksinimini takip edebiliyor olmalıdır. Bu gibi kesinlikler gereksiz yere hiçbir şeyin yapılmadığını ve her şeyin gereklilikle tamamlandığından emin olur.


### 2 streams (2 akış).
#### Talimatname akışı.
Uygulama akışı temel de şunları içerir:
  - Kullanıcı gereksinim talimatnamesi
  - Fonksiyonel gereksinim talimatnamesi
  - Tasarım talimatnamesi


#### Test etme akışı.
Test etme akışı genellikle şunları içerir.
  - Kurulum niteliği (IQ)
  - İşlemsel nitelik (OQ)
  - Performans niteliği (PQ)
Geliştirme akışı sistem tipine ve geliştirme kavramına bağımlı olarak özelleştirme, konfigürasyon ve kodlama içerebilir.


## Avantajları.
Diğer sistem geliştirim modellerine karşın V-modelin bu avantajları vardır.
Modelin en dikkat çekici yönlerinden biri, kullanıcıların geliştirme ve bakım süreçlerine aktif olarak katılmasına olanak tanımasıdır. V-Model kapsamında kullanılan değişiklik kontrol sistemleri, gerçekleştirilen her adımın belgelenmesini ve sürecin izlenebilirliğini sağlar. Ayrıca, modelin her adımı için açıkça tanımlanmış iş süreçleri, aktivitelerin nasıl gerçekleştirileceğine dair ayrıntılı rehberler sunar. Bu sayede hem geliştiriciler hem de proje paydaşları için süreç boyunca netlik ve bütünlük sağlanır.


## Sınırları.
Aşağıdaki bakış açıları V-model tarafından içerilmemiştir, ek olarak düzenlenmesi gerekmektedir veya V-Model bunlara göre uyum sağlamalıdır.
  - Hizmetler için kontratların yeri
  - Organizasyon ve operasyonun yürütülmesi, bakım onarımı, tamir ve sistemin sonlanması V-model tarafından kapsanmamıştır. Bununla birlikte planlama ve bu görevler için kavramların hazırlanması V-model de düzenlenmiştir.
  - V-model tüm bir organizasyondan çok bir proje içinde yazılım geliştirmeye hitap eder.