Yazılım Mühendisliği Bölüm - 6 Gerçekleştirim

Slides:



Advertisements
Benzer bir sunumlar
NESNEYE YÖNELİK PROGRAMLAMA Temel Kavramlar
Advertisements

Yazılım Mühendisliği Bölüm - 4 Sistem Analizi
Sistem Analizi ve Planlama
UML Unified Modeling Language
Veri ve Veri Yapıları Genel olarak bilgisayarlar.
Problemi Çözme Adımları
Bölüm 2 C Dilinin Temelleri
Bilgi Teknolojisinin Temel Kavramları
VERİ TABANI YÖNETİMİ Ders 11: PL/SQL’e Giriş
ALGORİTMA ÖRNEKLERİ Programlamaya Giriş
4 Kontrol Yapıları: 1.Bölüm.
Yazılım Mühendisliği Bölüm - 7 Yazılım Doğrulama ve Geçerleme
Yazılım Mühendisliği Bölüm - 5 Tasarım
Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği
BELGELEME Ian Sommerville, “Software Documentation”,
TEMEL BİLGİSAYAR BİLİMLERİ
SQL de Değişken Tanımlama
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
BPR151 ALGORİTMA VE PROGRAMLAMA - I
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 3: Döngüler
Bölüm 3 – Yapısal Programlama
T-SQL-2.Konu Akış Kontrolleri.
Yapısal Program Geliştirme – if, if-else
NESNEYE YÖNELİK PROGRAMLAMANIN TEMEL İLKELERİ GENEL BİR BAKIŞ
Nesneye Dayalı Programlama
Yazılım Mühendisliği Bölüm - 2 Yazılım Geliştirme Yaşam Döngüsü
Veri Yapıları ve Algoritmalar
NESNEYE DAYALI PROGRAMLAMA
Yazılım Gelişimi. Donanım gelişimine paralel olarak süren yazılım gelişimi, son on yılda kayda değer bir ivmelenme ile bilgisayarları, herhangi bir uzmanlık.
VERİ TABANI VE VERİ TOPLAMA YÖNTEMLERİ
Algoritmalar (Algoritms)
Görsel Programlama Dr. Muhammet Balcılar
İŞLETİM SİSTEMLERİ Öğr. Gör. S.Serkan TAN.
Akış Kontrol Mekanizmaları
yunus.hacettepe.edu.tr/~tonta/courses/spring2008/bby208/
BTP102 VERİTABANI YÖNETİM SİSTEMLERİ 1
NESNEYE-YÖNELİK PROGRAMLAMA
Quest Atlantis Dünya Üzerine Yayılmış Çok-Kullanıcılı Çevrim-İçi Eğitsel Bir Bilgisayar Oyununun Teknik Yapısı.
© 2002 by Prentice Hall 1 David M. Kroenke Database Processing Eighth Edition Chapter 1 Introduction to Database Processing.
Proje Konuları.
Ana Programlama Dillerinin Evrimi
Veri Yapıları ve Algoritmaları ders_1
BTP102 VERİTABANI YÖNETİM SİSTEMLERİ 1
Veri Tabanı Tasarım Süreci
Microsoft Office Access
SQL’ e Giriş Uzm. Murat YAZICI.
Bilgi Teknolojisinin Temel Kavramları
Programlama Dilleri Visual Basic C# C++ Pascal Delphi.
VERİ KAYNAKLARI YÖNETİMİ 5. ÜNİTE. GİRİŞ Bilgi sisteminin öğelerinden biride “veri yönetimidir”. Geleneksel yada çağdaş, birinci yada ikinci elden derlenen.
Yapısal Tasarım Araçları
YAPISAL PROGRAMLAMA KAVRAMI
Anlamsal Web’de Bilginin Depolanması için Bir Yaklaşım: Oracle Performans Değerlendirmesi Emine Sezer & Okan Bursa & Özgü Can Ege Üniversitesi.
ÖTÖ 451 Okul Yönetiminde Bilgisayar Uygulamaları R. Orçun Madran.
NOT: Bu slayt üzerindeki resmi değiştirmek için resmi seçin ve silin. Ardından, kendi resminizi eklemek için yer tutucudaki Resimler simgesini tıklatın.
Yapısal Tasarım Araçları
Bilgisayar Mühendisliğindeki Yeri
Sistem Analizi ve Tasarımı
Programlamaya Giriş-I Bölüm-1. Algoritma Algoritma günlük yaşamımızda yaptığımız işler sırasında sıklıkla kullandığımız bir yöntemdir. Algoritma, bir.
Ders 6: Yazılım Gerçekleştirme
Ders 4: Sistem Çözümleme
YMT312 Yazılım Tasarım ve Mimarisi
BSM208 PROGRAMLAMA DİLLERİNİN PRENSİPLERİ
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
Excel’de VBA Programlama (Visual Basic Application)
Problem Çözme Yaklaşımları
Bilgisayar Bilimi Problem Çözme Süreci-2.
Yazılım Mühendisliği Temel Süreçler – PLANLAMA II
Dünya Üzerine Yayılmış Çok-Kullanıcılı Çevrim-İçi Eğitsel
Hastane Bilgi Sistemlerinde Veri Madenciliği
Sunum transkripti:

Yazılım Mühendisliği Bölüm - 6 Gerçekleştirim Yrd.Doç.Dr. Güray YILMAZ Mayıs 2007 Yazılım Mühendisliği Yönetimi

Giriş Tasarım sonucu üretilen süreç ve veri tabanının fiziksel yapısını içeren fiziksel modelin bilgisayar ortamında çalışan yazılım biçimine dönüştürülmesi çalışmasıdır. Her şeyden önce bir yazılım geliştirme ortamı seçilmelidir (programlama dili, veri tabanı yönetim sistemi, yazılım geliştirme araçları (CASE)). Kaynak kodların belirli bir standartta üretilmesi düzeltme için faydalıdır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Programlama Dilleri Geliştirilecek Uygulamaya Göre Programlama Dilleri seçilmelidir. Veri İşleme Yoğunluklu Uygulamalar Cobol, Görsel Programlama Dilleri ve Veri Tabanları Hesaplama Yoğun Uygulamalar Fortran C Paralel Fortran ve C Süreç ağırlıklı uygulamalar Assembly Sistem programlamaya yönelik uygulamalar Yapay Zeka Uygulamaları Lisp Prolog Yazılım Mühendisliği Yönetimi Güray YILMAZ

VTYS dosya yapısından farkı Katalog Bilgisi, Veri Sözlüğü Varlığı Veri Soyutlama Kullanıcıdan verinin saklanması konusundaki detayları gizleyerek veri soyutlamasının sağlanması Program-veri, program-işlem bağımsızlığı Geleneksel Dosya işleme yöntemlerinde veri dosyalarının yapısı bu dosyalara erişen programların içine gömülmüşlerdir. Bu sebeple değiştirmek zor. Birden çok kullanıcı desteği Birden fazla işlem arası paylaşım Yazılım Mühendisliği Yönetimi Güray YILMAZ

Veri Modelleri Fiziksel veri modelleri verinin bilgisayarda nasıl saklandığının detayları ile ilgili kavramları sağlar. Yüksek Düzey Veri Modelleri Varlık: Veri tabanında saklanan, gerçek dünyadan bir nesne veya kavramdır (proje, işçi). Özellik: Varlığı anlatan bir özelliği gösterir (işçinin adı, ücreti). İlişki: Birden fazla varlık arasındaki ilişkidir (işçi ve proje arasındaki çalışma ilişkisi). Yazılım Mühendisliği Yönetimi Güray YILMAZ

Şemalar Herhangi bir veri modelinde veri tabanının tanımlaması ile kendisini ayırmak önemlidir. Veri tabanının tanımlanması, veri tabanı şeması veya meta-veri olarak adlandırılır. Veri tabanı şeması tasarım sırasında belirlenir ve fazla değişmesi beklenmez. Yazılım Mühendisliği Yönetimi Güray YILMAZ

VTYS Mimarisi VTYS mimarisi üç seviyede tanımlanabilir. İçsel Düzey: Veri tabanının fiziksel saklama yapısını açıklar. Kavramsal Düzey: Kavramsal şema içerir ve kullanıcılar için veritabanının yapısını açıklar. Dışsal Düzey: Dış şemalar ve kullanıcı görüşlerini içerir. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Veritabanı Dilleri ve Arabirimleri Veri tabanı tasarımı tamamlandıktan sonra bir VTYS seçilir. VTYS Dilleri Veri Tanımlama Dili Kavramsal şemaları tanımlamak üzere kullanılır. Saklama Tanımlama Dili İşsel şemayı tanımlamak üzere kullanılır. Görüş Tanımlama Dili Dışsal şemayı tanımlamak için kullanılır. Veri İşleme Dili Veri tabanı oluşturulduktan sonra veri eklemek, değiştirmek ve silmek için kullanılır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

VTYS nin Sınıflandırılması Sınıflandırmalar kullanılan Veri Modeline göre yapılır. İlişkisel Model: Veri tabanı tablo yığınından oluşmuştur. Her bir tablo bir dosya olarak saklanabilir. Ağ Modeli: Veriyi kayıt ve küme tipleri olarak gösterir. Hiyerarşik Model: Veri ağaç yapısında gösterilir. Nesne Yönelimli Model: Veri tabanı nesneler, özellikleri ve işlemleri biçiminde gösterilir. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Hazır Program Kütüphaneleri Hemen hemen tüm programlama platformlarının kendilerine özgü hazır kütüphaneleri bulunmaktadır. Pascal *.tpu C *.h Java *.jar Günümüzde bu kütüphanelerin temin edilmesi internet üzerinden oldukça kolaydır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

CASE Araç ve Ortamları Günümüzde bilgisayar destekli yazılım geliştirme ortamları oldukça gelişmiştir. CASE araçları yazılım geliştirme sürecinin her aşamasında üretilen bilgi ya da belgelerin bilgisayar ortamında saklanmasına ve bu yolla kolay erişilebilir ve yönetilebilir olmasına olanak sağlar. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Kodlama Stili Hangi platformda geliştirilirse geliştirilsin yazılımın belirli bir düzende kodlanması, yazılımın yaşam döngüsü açısından önem kazanmaktadır. Etkin kod yazılım stili için kullanılan yöntemler: Açıklama Satırları Kod Yazım Düzeni Anlamlı İsimlendirme Yapısal Programlama Yapıları Yazılım Mühendisliği Yönetimi Güray YILMAZ

Açıklama Satırları Modülün başlangıcına Kodlama Stili Açıklama Satırları Modülün başlangıcına genel amaç, işlevi desteklenen platformlar, eksikler, düzeltilen yanlışlıklar gibi genel bilgilendirici açıklamaları yapılır Aynı zamanda modülün kritik bölümleri vurgulanarak açıklanır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Kodlama Stili Kod Biçimlemesi Programın okunabilirliğini artırmak ve anlaşılabilirliğini kolaylaştırmak amacıyla açıklama satırlarının kullanımının yanı sıra, belirli bir kod yazım düzeninin de kullanılması gerekmektedir. for i:=1 to 50 do begin i:=i+1; end; // Kötü kodlanmış for i:=1 to 50 do // iyi kodlanmış begin i:=i+1; end; Yazılım Mühendisliği Yönetimi Güray YILMAZ

Kodlama Stili Anlamlı İsimlendirme Kullanılan tanımlayıcıların (değişken adları, dosya adları, veri tabanı tablo adları, fonksiyon adları, yordam adları gibi) anlamlı olarak isimlendirilmeleri anlaşılabilirliği büyük ölçüde etkilemektedir. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Yapısal programlama Yapıları Kodlama Stili Yapısal programlama Yapıları Yapısal programlama yapıları temelde içinde goto komutlarının bulunmadığı, tek giriş ve tek çıkışlı öbeklerden oluşan yapılardır. Bunlar temelde; Ardışıl işlem yapıları, Koşullu işlem yapıları, Döngü yapıları. Teorik olarak herhangi bir bilgisayar programının sadece bu yapılar kullanılarak yazılabileceği kanıtlanmıştır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Program Karmaşıklığı Program karmaşıklığı konusunda çeşitli modeller geliştirilmiştir. Bunların en eskisi ve yol göstericisi McCabe tarafından 1976 yılında geliştirilen modeldir. Bunun için önce programın akış diyagramına dönüştürülmesi, sonra da karmaşıklık ölçütünün hesaplanması gerekmektedir. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Akış Diyagramına Dönüştürme Program Karmaşıklığı Akış Diyagramına Dönüştürme Bir ya da birden fazla ardışık işlem If-Then işlemi If-Then-Else işlemi Case işlemi Yazılım Mühendisliği Yönetimi Güray YILMAZ

Akış Diyagramına Dönüştürme (2) Program Karmaşıklığı Akış Diyagramına Dönüştürme (2) While Döngüsü Repeat Döngüsü Yazılım Mühendisliği Yönetimi Güray YILMAZ

McCabe Karmaşıklık Ölçütü Program Karmaşıklığı McCabe Karmaşıklık Ölçütü V(G)= k – d + 2p K: Diyagramdaki kenar çizgi sayısı D: Diyagramdaki düğüm sayısı P: programdaki bileşen sayısı (ana program ve ilgili alt program sayısını göstermektedir. Alt program kullanılmadı ise p=1, 3 alt program kullanıldı ise p=4 tür) Örnek: Şekil 6.5 Yazılım Mühendisliği Yönetimi Güray YILMAZ

Olağandışı durum Çözümleme Olağandışı durum: Bir programın çalışmasının, geçersiz ya da yanlı veri oluşumu ya da başka nedenlerle istenmeyen bir biçimde sonlanmasına neden olan durumdur. Genelde kabul edilen; program işletiminin sonlandırılmasının bütünüyle program denetiminde olmasıdır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Kod Gözden Geçirme Bir gazetede hiç bir yazı editörün onayı alınmadan basılamayacağı gibi, kod gözden geçirme olmadan da yazılım sistemi geliştirilemez. Kod gözden geçirme ile program sınama işlemleri birbirlerinden farklıdır. Kod gözden geçirme, programın kaynak kodu üzerinde yapılan bir işlemdir ve bu işlemlerde program hatalarının %3-5‘lik bir kısımı yakalanabilmektedir. Yazılım Mühendisliği Yönetimi Güray YILMAZ