YZM Yazılım Doğrulama ve Geçerlileme

Slides:



Advertisements
Benzer bir sunumlar
Sinan Doğan, Esra Beyoğlu
Advertisements

/ Tel: (216) Ayrıntılı bilgi için lütfen bize ulaşınız. / Tel: (216)
Sistem Analizi ve Planlama
GETTİNG THE GAMEPLAY WORKİNG (Oyun Mekaniğinin Hayata Geçirilmesi)
DERSİN AMACI: - Çeşitli öğretim teknolojilerinin özellikleri, öğretim süreçlerindeki yeri ve kullanımı, öğretim teknolojileri yoluyla kendi branşınızla.
MODÜL 4 Organizasyon.
Sanal Çalışmanın Üçüncü Dalgası
Bilgi Teknolojisinin Temel Kavramları
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.
BELGELEME Ian Sommerville, “Software Documentation”,
İŞ SAĞLIĞI VE GÜVENLİĞİ
Proje yönetiminde başarının yeni formülü. Daha başarılı projeler Daha ekonomik çözümler Daha özelleşmiş hizmetler için… Neden ?
Sanayi Ar-Ge Proje Destek Başurusu Hazırlama Becerileri Geliştirme Çalıştayı ArGe_Projesi_Hazirlama_Calistayi (061110)
İŞ GÜVENLİĞİ UZMANLARININ GÖREV YETKİ VE SORUMLULUKLARI
Güvenlik Raporlama Sistemi (GRS)
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
SÜREÇ YÖNETİMİ Dr. Selami ERARSLAN İstanbul 2011.
AR-GE, İNOVASYON ve ENDÜSTRİYEL UYGULAMA
9.Sınıf Tıbbi Etik ve Meslek Tarihi
TKY 405 TOPLAM KALİTE YÖNETİMİ CROSBY’ NİN KALİTEYE BAKIŞ AÇISI
Takımlar Neden Bu Kadar Popüler Oldu? Onlarca yıl önce W. L. Gore, Volvo ve General Foods gibi firmalar, üretim aşamalarına takımları da dâhil.
Sistem Geliştirme Sistemin tanımı. Sistemin Temel özellikleri
OHSAS YÖNETİM SİSTEMİ TANIMLAR
Yazılım Proje Yönetimi
YZM Yazılım Doğrulama ve Geçerlileme
Patlayıcı Ortamlar ve Tahliye
Hazırlayan:Emin BORANDAĞ
FMEA Failure Mode and Effects Analysis-Hata Türü ve Etkileri Analizi
BİLİŞİM TEKNOLOJİLERİ
Bilişim Sistemleri Mühendisliği nedir? Neden ihtiyaç vardır?
BİLİŞİM TEKNOLOJİLERİ ALANI
Hazırlayan:Emin BORANDAĞ. 4. BÖLÜM: Yazılımları Teknik İnceleme.
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
SANAYİ DEVRİMİ Sanayi Devrimi ya da Endüstri Devrimi, Avrupa'da 18. ve 19. yüzyıllarda yeni buluşların üretime olan etkisi ve buhar gücüyle çalışan makinelerin.
YZM Yazılım Doğrulama ve Geçerlileme
İŞ KALİTESİ ve MALİYET İLİŞKİLERİ
ASİMETRİK ŞİFRELEME ALGORİTMALARINDA ANAHTAR DEĞİŞİM SİSTEMLERİ
ALİ FINDIK Galatasaray Ünİversİtesİ 2015
İŞÇİ SAĞLIĞI VE İŞ GÜVENLİĞİ
ISO/TS 16949:2009 (Hafta 9) ISO 9001:2008’E GÖRE FARKLAR.
KOBİ’LERE YÖNELİK TEMEL İŞ SAĞLIĞI VE GÜVENLİĞİ EĞİTİMİ İÇİN
Bilgi Teknolojisinin Temel Kavramları
Bize en çok sorulan soru: Ekip Nakliyat neden yalnız ve yalnız,Türkiye - İtalya - Türkiye arasında taşıma yapan bir kuruluştur? Bize hep bu sorulur. İş.
Veri Tabanı Programcılığı
METALURJİ VE MALZEME MÜHENDİSLİĞİNE GİRİŞ
Kalite Yönetimi Genel Tanımlar.
ŞEKİL 13.1 “Temel Dönüşüm” “İmalat Şirketine Yönelik Süreç”
KALİTE YÖNETİM SİSTEMİ
Bölümün Amacı Bu bölüm, bilişim teknolojisinin evrimini incelemektedir. Bölüm, örgütsel işlemlere uygulanan bilişim teknolojisi sistemlerine göz atarak.
Havacılıkta Emniyetle İlgili Faktörler
SİSTEM VE YAZILIM Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. Yazılım, bilgisayar sistemlerinin bir bileşeni.
Proje Oluşturma ve Yönetimi
YENİ TÜRK TİCARET KANUNU SÜRECİNDE YOL HARİTASI Hazırlayan: Recep Aşır Temmuz 2012.
GAZ VE TESİSATI TEKNOLOJİSİ PROGRAMI BİLGİLERİ. Amaç ve Hedefler Amaç: Gelişen teknolojiye ve piyasaya uyumlu, temel bilgilerle donatılmış, karşılaştığı.
TOPLAM KALİTE YÖNETİMİ
TÜBİTAK 25 Ekim 2013 AKILLI SAYAÇLAR KORUMA PROFİLİ TÜBİTAK BİLGEM Ortak Kriterler Test Merkezi (OKTEM) Neslihan GÜLER 1.
BÖLÜM 11 DEĞERLENDİRME. BÖLÜM 11 DEĞERLENDİRME.
Bilgisayar Mühendisliğindeki Yeri
Yazılım Mühendisliği YYurtaY. Ekip çalışması
Sistem Analizi ve Tasarımı
Nesne Tabanlı Yazılım Geliştirme Bora Güngören Portakal Teknoloji EMO Ankara Şubesi
MALİ DENETİME GİRİŞ.
KİM 116 Laboratuvar Güvenliği Prof. Dr
ISO 9001:2015 standardı – 8. Maddenin Tanıtımı
SAĞLIK KURUMLARINDA KARAR VERME YÖNTEMLERİ
Problem Çözme Yaklaşımları
Prof. Dr. Ali Yazıcı TOBB Ekonomi ve Teknoloji Üniversitesi
Yazılım Mühendisliği Temel Süreçler - Sistem Analizi
Yazılım Mühendisliği Temel Süreçler – PLANLAMA II
NİÇİN ÇALIŞIYORUZ AMACIMIZ NE HAYATTA KALMAK İMKANLARIMIZ DAHİLİNDE
Sunum transkripti:

YZM 320 - Yazılım Doğrulama ve Geçerlileme Hazırlayan:Emin BORANDAĞ

Test Dokümanında neler olmalıdır? Test planı Kalite hedefleri, kaynak ihtiyacı Yöntemler Test durumları Giriş ve beklenen çıktıları. Hata raporları Örneğin, Bugzilla web tabanlı bug tracker. Kullanılan Test araçları ve otomasyon Ölçümleri, istatistik ve özetleri Çözümlenmemiş hata sayısı, bir hata, vb tamir süresi

Yazılım Proje Çalışanları Proje yöneticileri Programı yönetmek, kritik kararları vermek, ürüne ait yazılımları belirle. Yazılım mimarları, sistem mühendisleri Tasarım, yazılım, programcılar ile yakın bir çalışma Programcılar, geliştiriciler, kodlayıcılar Hata düzeltme, kod yazma Test, kalite güvence personeli olmalı Hataları tespit, hataları belgele, hataları takip, çözümleme ile ilgili ilerlemeyi takip Konfigürasyon yöneticileri Paketleme versiyon oluşturma, belgeler in yazımı

Yazılım Geliştirme Yaşam döngüleri Code and Fix Waterfall Spiral

Hangi konulara baktık… Yazılım Test uzmanının görevleri nelerdir? Yazılımda test hangi aşamalarda olmalı? Yazılım geliştirmenin en önemli safhası nedir? Test dokümanı nasıl olmalıdır? Yazılım geliştirme yaşam döngüleri nelerdir?

2.Bölüm Yazılım Testine Giriş

Alıntı Bilimsel bir modelin rasyonel olması, o modelin doğru olduğu sonucunu içermez. Bilim bazen kaotik bir yol izleyebilir.

Yazılım ve Güvenliği Kritik Uygulamalar Güvenliğin önemli olduğu pek çok yerde(Hataya tahammülün olmadığı yada çok az olduğu yerlerde), “safety-critical” güvenlik açısından kritik yazılımlar kullanmaktayız. Eğer bu yazılımlar doğru olarak çalışmaz ise çok büyük sıkıntılarla karşılaşa biliriz. Nükleer reaktörler Uçuş kontrol sistemleri X-ray makinelerde yazılım kontrolörleri

Yazılım ve Güvenliği Kritik Uygulamalar Güvenlik öncelikli uygulamalarda Kapsamlı testler, Kod incelemesi ve yazılım geliştirme yöntemleri daha titizlikle uygulanmalıdır. Şu ana kadar yapılan güvenlik öncelikli yazılımlardaki hata oranları diğer yazılımlara oranla daha düşüktür. Fakat Teknolojik olarak ve ekonomik olarak bu tarz yazılımları oluşturmak zordur.

Buhar motorları kısa tarihi İskenderiye’de Heron, 60 MS buhar gücünü kullanmayı denedi. Thomas Savery ilk buhar gücü ile çalışan motoru üretti. 16-17 YY. buhar motorlarına olan ilgi arttı. Newcomen 1700 yılında bu motorların yaygın kullanımını için bir silindir ve piston tasarladı. 1786, James Watt büyük Newcomen diye adlandırılan motoru üretti.

Buhar motorları kısa tarihi Bu arada İngiltere’nin kuzeyinde sanayi devrimi ile ilgili büyük bir potansiyel vardı. Watt and Matthew Boulton isimli üreticiler yeni motor tasarımlarını bu bölgede geliştirdiler (Ağır sanayi atılımı). 1800 yılında Watt’ın patent süresi sona erdi ve yüksek basınçlı buhar motorlarını isteyen herkes üretebilecek hale geldi. (HPSEs) İki tasarım geliştirildi. UK & USA Ayrı kondansatörler yerine buharın direk pistonları itebilecek şekilde geliştirilmesi sağlandı.

Buhar motorları kısa tarihi İlk başarılı kullanım buharlı teknelerde oldu. Oldukça başarılı idi. Verimliydi, Ucuzdu. Tekne yolculukları ucuzlamıştı. Ekonominin büyümesini sağlamış ve tekne şirketleri bu işlerden büyük paralar kazanmışlardı. BOOM!!!! Buharlı teknelerdeki yolcular ve mürettabat havaya uçtu. Tekne içerisindeki basınç miktarı olması gereken oranı aştı….

Sorun neydi? Niye böyle oldu? Yeterli eğitimi olmayan kişiler tarafından kullanım. Hızlı ve ucuz malzeme kullanımı ve üretimi. Kötü eğitimli operatörler. Kötü kalite kontrolü. Niye böyle oldu? Sadece para odaklı olarak üretim yapıldı.

Patlamadan sonra neler oldu? USA’da akademisyenlerden ve mühendislerden oluşan bir grup. Kallite standartları belirlemeye çalıştı. UK’da Watt and Boulton şirketi bir erken uyarı sistemi geliştirdi. Ancak geliştirdikleri bu sistemi kendi buhar motorları sistemine adapte edemediler.

Buhar teknolojisi… Bu teknolojinin zayıf noktası (Aşhil topuğu) kazanların buhar nedeni ile patlaya bilecekleri gerçeği. Kazan teknolojisi buharlı motor teknolojisinin gerisinde kalmış olması. Maliyeti uygun olmayan geliştirme çalışmaları yapılmış.

Süreç içerisinde Yüksek basıncı altında çalışabilen, korozyona ve çürümeye dayanıklı malzeme kullanmaya ne gerek var; Ar-Ge çokta önemli değil.

Sonuç Boom!!! Neden? Buharlı kazanlar patlamaya devam etti. Mühendisler hala yüksek basınç altında kazanların ne şekilde çalışması gerektiğini bilmiyorlardı. Ayrıca tasarım mühendisleri, sistemlerinin kullanımının nasıl olacağı anlamadı: - Yükleme ortamı - Operatör eğitimi - Açgözlülük, aşırı ve güven.

Peki kim suçlandı? Peki kim suçlanmadı? İşciler (Operatörler) Tasarım Mühendisleri

Hükümetin müdahalesi İşler çözümlenecek garantisi verildi. Firmalar denetlenecek denildi. Sonuç? BOOM!!! Sonrasında daha fazla buharlı motor üretildi. 1817 yılında UK’da komisyon kuruldu ve buharlı motorların tehlikeleri araştırıldı. Komite kazanların daha fazla denetlenmesine karar verdi.

Ağır Kayıp Sadece Amerika’da 1816 ile 1848 yılları arasında. 233 Kazan patladı 2562 İnsan öldü 2097 İnsan yaralandı Yaklaşık $3,000,000 maddi kayıp oldu.

Araştırma Araştırma Sonucunda Philadelphia, the Franklin Institute 6 yıl patlamalar ile ilgili araştırma yapılır. USA devleti maddi olarak destekledi. Araştırma Sonucunda Üretimi düzenleyen bir mevzuat komite tarafından onaylandı. Tararım için temel bazı kurallar geliştirildi. Ölenlerin ailelerine tazminatlar verildi.

Toplumun hükümet üzerindeki baskısı arttı. BOOM!!! Patlamalar devam etti. Toplumun hükümet üzerindeki baskısı arttı. Ve mevzuata son şekli verildi! Nihayet, 1852 yılında, ABD kongre vapur kazanları ile ilgili ağır şartlar gerektiren bir yasayı onayladı.Bu mevzuat ağır test şartlarını da içermekeydi. Vapur kazan patlamaları azalmaya başlar! ... ancak güvensiz HPSEs hala lokomotif ve ağır sanayide kullanılıyor.

Daha sert standartları Daha sonra, İngiltere'de parlamento standartları geliştiren bir tasarıyı onaylar. 1905 yılında, ölümlerin sayısı HPSE azalır. 14 Türkiye 383 Amerika Birleşik Devletleri En sonunda, USA üretim ile ilgili standartları detaylandırır ve test işine daha fazla önem veren bir standart oluşturur.

Yazılımlarla olan ilişkisi??? Biz bilgisayar çağındayız artık. Bunların güvenlik açısından kritik yazılımla ne ilişkisi var. Paralelik nedir? (Yazılımlar patlar mı?)

Analogies Buhar motorları teknolojisi kazan geliştirilme teknolojisinin gerisinde kaldı. Yazılım ile olan ilişkisi………………………….....

Ne yapılmalı? Zaman testleri yapılmalı ve iyi mühendislik ilkeleri kullanılmalı: Doğrulama testleri, onaylama testleri yapılmalı. İkili ve üçlü kontrol sistemleri kullanılmalı. Süreçleri durdurmadan süreçler üzerinde kontroller yapılmalı.

Yazılım Mühendisliği Temelleri. Kazan patlamaların nedenleri; çok az bilimsel anlayış vardı. Benzer şekilde, Yazılım mühendisliği disiplini çok yeni ve biz hala temeller üzerinde çalışıyoruz. İyi bir tasarım nedir? Yazılım bileşenlerinin belirleme. Güvenlik kritik sistemler. Formüllerle ve resmi yöntemlerin rolü Doğrulama ve onaylama Sistem evrim

Sorunlar. Bilginin paylaşılmaması (Şirketlerin bilgi paylaşımlarından korkmaları.) Analitik veri yok yada çok az!!! Bilgi teknolojisi çok hızlı ilerliyor. Bunun sonucu pek çok farklı alanda yazılımlar kullanılıyor. (İsterler artıyor karmaşıklık artıyor.) Yazılımları kontrol etmek,değerlendirmek ve geliştirmek için çok kısa bir zamanımız var.

Mühendislik temelleri üzerinde çalışılmalı! Kimse yenilik ve buluşların hayati olduğunu reddetmiyor, ama aynı zamanda mühendislik temeller üzerinde çalışmak gerekir: Temel kuralları, ilkeleri ve yapısı Değerlendirme kriterleri Karşılaştırma yoluyla Teorik sınırlarını ve yeteneklerini belirle Üretim araçlarını belirle Matematiksel modeller kullan ama gerçek dünyada örnekler üzerine kullanılacağını unutma.

Sorgulanan yeni yöntemler. "Örgün yöntemlerde matematik vardır. Doğru matematik yöntemleri süreçleri iyileştirir. Bu nedenle, biçimsel yöntemler yazılım kalitesini arttıracaktır. “ Bu doğru olduğunu net değil! Hangi yöntem ile yazılım geliştirilecek? Uygulayıcıların eğitim? Siyasi konular? Maliyeti? Ölçek? Aracı olgunluk ve uygunluğu? Daha iyi sonuç sistemleri var mı? Güvenli? Daha küçük? Büyük? Daha anlaşılır?

Nedenler Patlamalar için geliştirilen güvenlik özelliği; düzgün bir tasarıma sahip olmadığı ve bilimsel anlayıştan uzak olduğu için işe yaramadı. Proje geliştirilmeden önce detaylı inceleme yapılması gerekir! Bir alanda kullanılan iyi bir fikir başka alanda işe yaramaya bilir.

Yazılım Analojisi. Yazılım analog N-sürümü programlama (NVP) denir: Bizim N tane yazılım ekibimiz var. Her biriside yazılım ile ilgili ihtiyaçları bağımsız olarak kodluyorlar. Her bir yazılım çalıştırılıyor ve bunların her biri bir oy alıyor.

NVP’lerin potansiyel sorunu nedir? Tüm yazılım arızaları tasarım hatalarından kaynaklanmaz. Genellikle, programcılar hataları yanlış yorumlayabilirler. Gereksinimler; genellikle yanlış anlaşılır. Bu nedenle N ekipleri aslında doğru yorumu yapan grup sayıyı genellikle 0 yada 1 dir.

Algoritmayı Kurtarmak için temel olarak yapılması gerekenler. Ortak hataları azaltmaz için algoritmayı parçalar halinde oluştur. Kabul testlerini kodlayan kişi dışında bağımsız başka bir yazılımcıya oluştur. Kodlama standartları belirle.

Hatalara Karşı Hata toleransı = Kullanıcının rastgele bulduğu hatalardan ibaret olsun(Kodlayıcı yada test sorumlusu bulduğu bir hatayı göz ardı etmesin) Buharlı motorları üreten mühendisler çok ağır masayı saatlerinde çalışıyorlardı(Onlarca sorun ortaya çıktı). Bu nedenle yazılım oluşturmada masayı saatleri belirle(Örnek Extreme Programming pratiği haftada40 Saat). Yazılım mühendisinin proje bilgisi çok iyi olmalı.Oluşabilecek sıkıntıları erkenden fark edip ekibini kurtarmalı.

Güvenli yazılım geliştirilmesinin temel adımı. Tehlikeleri erkenden fark et ve önlem al (Eğer yangından koruyorsan yangına dayanıklı materyal kullan.) Dezavantajı maliyet,zaman Tehlike meydana geldiğinde var olan prosedürleri uygula eğer yok ise proje ekibi ile prosedürleri oluştur. Varsa deneyimlerden yararlanıp pratikleri uygula.(Her bir sistemin ihtiyaçları ve gereksinimleri farklı olduğunu unutma) Dezavantajı Risk,maliyet,zaman,performans

Hangi konulara baktık… Yazılım doğrulaması ile buhar motorları arasında bir tarihsel analoji yaptık. Güvenliğin önde olduğu yazılımlar ve özelliklerini inceledik. Yazılım güvenliğine giriş yaptık. Algoritma kurtarmak için yapılanlara baktık.