Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, yazılım testi konusunda bilgilendirici bir eğitim içeriğidir. Konuşmacı, yazılım testinin tarihsel gelişiminden başlayarak günümüzdeki önemine kadar kapsamlı bir anlatım sunmaktadır.
- Video, yazılım testinin tanımı ve amacını açıklayarak başlıyor, ardından test sürecinin aşamalarını detaylandırıyor. Daha sonra farklı test türleri (entegrasyon testi, kullanıcı kabul testi, bakım testi, operasyonel test) ve testin neden gerekli olduğu açıklanıyor. Son bölümde ise hataların ve arızaların oluşma sebepleri ve bunların maliyetleri ele alınıyor. Video, yazılım geliştirme sürecinde testin önemi ve doğru test stratejilerinin nasıl oluşturulması gerektiği konusunda kapsamlı bilgiler sunuyor.
- 00:08Testin Evrimsel Gelişimi
- Testin tarihi, yaşayan bütün canlıların tarihi ile özdeşleştirilebilir ve evrimsel gelişimi sağlayan merak duygusunun bir sonraki aşamasıdır.
- İnsanoglu, zekasıyla diğer türlerin önüne geçerek testi kendi risklerini yönetmek için kullanılacak bir araç olarak geliştirmiştir.
- Günümüzde yazılım testi, başımıza gelebilecek kötü durumların önceden tespiti için daha da önem kazanmaktadır.
- 01:03Yazılım Testinin Tanımı ve Süreci
- Yazılım testi, yazılım hatalarını bulma amaçlı olarak bir programın veya uygulamanın çalıştırılma sürecidir.
- Test sadece test koşumu işleminden ibaret değildir, test öncesi ve sonrasında planlama, kontrol, test senaryoları tasarlama, sonuçları kontrol etme gibi işlemler de vardır.
- Bu işlemler yazılım geliştirme hayat döngüsü boyunca yayılmıştır ve hataları daha ucuza çözebilmek için mümkün olduğunca erken test etmek önemlidir.
- 02:58Testin Amaçları
- Testin ilk amacı ürünün belirlenmiş gereksinimleri sağlayıp sağlamadığını kontrol etmektir.
- İkinci amaç ürünün amacına uygunluğunu göstermektir, örneğin bir saat doğru saati gösterebilir ancak müşterinin istediği ürün duvar saati ise kol saati istenen amaca yeterince hizmet edemeyecektir.
- Üçüncü amaç hataların tespitidir, hataları bulmak operasyonel kullanımda oluşabilecek riskleri daha iyi anlama konusunda yardım ederken, onları onarmak ürün kalitesini artırır.
- 05:05Farklı Test Seviyeleri ve Amaçları
- Entegrasyon testinde amaç mümkün olan en fazla sayıda arızayı ortaya çıkarmak iken, kullanıcı kabul testinde amaç yazılımın gereksinimleri karşılaması konusunda güven elde etmektir.
- Bakım testi genellikle yazılımda yapılan iyileştirme ve değişikliklerin yeni bir hataya yol açıp açmadığını ortaya çıkarmak için yapılır.
- Operasyonel test sırasında ise amaç güvenilirlik ve elverişlilik gibi yazılım özelliklerini denetlemek olabilir.
- 05:57Hata Ayıklama ve Test Arasındaki Fark
- Hata ayıklama ve test farklı kavramlardır; dinamik test hataların neden olduğu arızaları gösterebilirken, hata ayıklama arızanın sebebini bulan, analiz eden ve ortadan kaldıran bir yazılım geliştirme aktivitesidir.
- Düzeltme yapıldıktan sonra test uzmanı tarafından gerçekleştirilen tekrar testi, düzeltmenin arızayı giderip gidermediğinden emin olmak için yapılır.
- Bu aktivitede genellikle test uzmanları testi yapar ve arızayı raporlar, yazılımcılar ise arızaya sebep olan hatayı yazılım içerisinden ayıklar.
- 06:33Testin Gerekliliği
- Test gereklidir çünkü insan mutlaka hata yapar, bu hataların bazen ucuz bazen ise çok pahalı sonuçları olabilir.
- Ürettiğimiz her şeyde kusur olabileceğini varsayıp kendi ürettiklerimizi kontrol etmeliyiz, ancak insanın kendi hatasını görememe kusuru da mevcuttur.
- Bu yüzden mümkün olduğu kadar bizden bağımsız birisinin bu kontrolü gerçekleştirmesi, yapılan kontrolün etkinliğini artıracaktır.
- 07:13Risk ve Hatalar
- Yazılım sistemleri birçok alanda yaşamın ayrılmaz bir parçasıdır ve gün geçtikçe yazılıma olan ihtiyaç artmaktadır.
- Karşılaşılan problemlerin hepsi aynı seviyede bir risk oluşturmamaktadır, bu risk seviyesi yazılımın bağlamıyla yakından ilişkilidir.
- Her riskin bir oluşma olasılığı ve oluştuğunda yol açacağı problemin mali bir değeri vardır, bu bilgiler ışığında etki analizi ve stratejiler oluşturulabilir.
- 08:01Hataların Oluşma Sebepleri
- Geliştirme sırasında yapılan bir insan hatası, programın ya da dokümanın kendisinde hatanın kusur ya da yazılım hatası oluşmamasına sebep olur.
- Kodda bir hata olması durumunda sistem yapması gereken işlemi yerine getirmede başarısız olur veya yapmaması gereken bir şey yapar, bu da arızaya neden olur.
- Hataların oluşma sebebi insanların yanılabilmesi, zaman baskısı, karmaşık kodlar, altyapı karmaşıklığı, değişen teknolojiler ve birçok sistemin etkileşimi olabilir.
- 09:56Hataların Tespiti ve Çözümü
- Bir hata oluşturulduğu geliştirme fazına ne kadar yakın zamanda bulunursa o kadar az maliyetli olarak çözülebilir.
- Tasarım aşamasında gerçekleşen bir hata, ürün üretiminin bu hatalı tasarıma göre yapılmasına yol açar, test aşamasında bu tip hatalar tespit edilebilir.
- Aksi takdirde müşteriye hatalı ürünün sunulmasına yol açar ve düzeltilmesi oldukça maliyetli olacaktır.