250 likes | 606 Views
VT TASARIMI ve MODELLEME. Yard . Doç.Dr . Cihad DEMİRLİ Sunu içeriği kaynağı: Gözüdeli , Y.(2010) Yazılımcılar için SQL Server 2008 R2 & Veri Tabanı Programlama, SeçkinYay . , Ankara. VT TASARIMI. Kavram Model.
E N D
VT TASARIMI ve MODELLEME Yard.Doç.Dr. Cihad DEMİRLİ Sunu içeriği kaynağı: Gözüdeli, Y.(2010) Yazılımcılar için SQL Server 2008 R2 & Veri Tabanı Programlama, SeçkinYay. , Ankara.
Kavram Model Saha analizi neticesinde temel gereksinimleri doğru biçimde yansıtan kavramsal modeldir. Birçok yöntemi söz konusudur; • ORM (Object-Role Modelling) • ERM (EntityRelationshipModelling) • UML (UnifiedModellingLanguage)
ERM (EntityRelationshipModelling) Varlık - Bağıntı modelleme ilişkisel veritabanı teoreminin ilk zamanlarından bu yana kullanılmaktadır. Diğer tüm modellere temel teşkil etmiştir.
ERM - Öğeleri Üç farklı öğesi mevcuttur; Varlık (entity) Nitelik (attribute) İlişki/bağıntı
ERM - Aşamaları 1. Gereksinimler göz önüne alınarak varlık, nitelik ve ilişkiler tayin edilir. Ana varlık: Bir veri tabanında veri tabanının etrafında inşa edildiği temel veri topluluğudur. Her veri tabanında ana varlık olmayabilir. Birden fazla ana varlık olabilir. Örn.: Mağaza VT • Bir ürünün bir satırında yer alacak yapıya ürün varlığı denir. • Ürün varlığının nitelikleri olacaktır (fiyatı,adı,markası, satış kuru vs) Bir sonraki aşamada (mantıksal) her bir varlık tablo, nitelik de sütun olarak ele alınacak.
ERM - Aşamaları 2. Bağılılıklar ve kısıtlayıcılar tayin edilir Örn.: Mağaza VT • Ürün ve reyon varlıkları arasında bir bağlantı söz konusudur (cardinality). • Bağlılık bir ER diyagramındaki varlıkların birbiri ile ilişkilerinin tayininde önemlidir. Her bir ürün birden fazla reyonda olabilir. (ürün tarafından da reyon tarafından da birden fazla bağlılık olacaktır) Her bir ürün sadece bir reyona dahil olabilir. (her reyonda birden fazla ürün yer alırken, bir ürün sadece bir reyonda yer alıyorsa, bağıntıdan söz edilmez. bunun yerine reyon, ürünün bir niteliğidir denir.)
ERM - Aşamaları Bağıntı türleri: (1:1) (1:n) (n:m) alır annelik evlilik (1,1) (1,n) (n,m) (1,1) (n,m) (1,1) kadin ogrenci kadin erkek cocuk ders (1:1) (1:n) (n:m)
ERM - Aşamaları 3. Genel tipler ve özel tipler tayin edilir Örn.: Mağaza VT • Bazen ela alınan veritabanı sistemi genel ve özel varlıklar barındırıyor olabilir. Mağaza çalışanları, müşteriler ve tedarikçiler için bir bağıntı defteri oluşturulabilir. Çalışanlar (ad, soyad, maaş bilgisi ….) Müşteriler (ad,soyad, toplam puan ….) Tedarikçiler (ad, soyad, vade …) ad, soyad … genel bilgi / diğerleri özel bilgi ad, soyad … bilgileri kisi varlığı içerisinde tutulur (genel tip) özelleşmiş bilgiler calisan, musteri, tedarikci varlık içerisinde tutulur (özel tip)
ERM - Aşamaları 4. Kavramsal bir ER diyagramı oluşturulur Örnek 1: ReyonKod UrunKod Urun-Reyon Reyon Urun SatisKuru ListeFiyat UrunAd ReyonAd
ERM - Aşamaları maas basTarih Örnek 2: basTarih bitTarih alır bitTarih basTarih SicilNo calisir bitTarih peronsel (n,m) magaza EgitDuzey satilir (n,m) AdSoyad (n,m) yapar urun UrunKod MagNo Ad Adres basTarih gorev bitTarih Ad Birim
ERM - Aşamaları Kavramsal bir ER diyagramında kümeleme ve genelleme Kümeleme: İki ya da daha çok varlık kümesi arasında diğerlerine göre semantik (anlamsal) olarak birbirlerine yönelik yakınlık varsa kümeleme işlemi yapılır. Genelleme: Birbirinden farklı özellikler gösteren varlıklar bir genellemeye tabi tutularak alt düzey varlık kümesi oluşturulur ve bir üst düzey varlık kümesine bağlanır. Bu bağıntıya ISA bağıntısı denir.
Mantıksal Model • Başlangıç olarak ER diyagramı oluşturulur. • Bir önceki slaytta gösterilmiştir • Platform ve fiziksel plan bağımsız veritipleri kullanılır. • Bir VTYS özgü tiplerden kaçınılır • Doğruluk açısından plan gözden geçirilir. • Tasarımın tüm aşamaları gözden geçirilmelidir
Fiziksel Model Teorilere dayanarak tasarlanan veritabanının gerçek ortamda yer almak üzere şekillendirilmesidir. (ayrıntılar ilerleyen derslerde verilecek)
ER Diyagramı ile Mantıksal Model Oluşturmak 1. Projede yer alacak varlıklar belirlenir (e-ticaret web uygulaması) • Ürünler • Müşteriler • Faturalar-Siparişler • Markalar • Kategoriler • Ürünler hakkında müşteri fikirleri • Alışveriş sepeti • … • …
ER Diyagramı ile Mantıksal Model Oluşturmak 2. Her varlık için bir tablo tanımlanır • Bir nesneye ait veriler satır olarak tutulur • Birincil anahtar içermelidir • Kendine ait bir anahtar varsa eklenir • Kendine ait bir anahtar yoksa ardışık ve tekrarlanmayan bir numara eklenir
ER Diyagramı ile Mantıksal Model Oluşturmak 3. Her bir nesnenin uygulamada gerekli olacak varlığı bir sütun olarak tabloya eklenir (e-ticaret web uygulaması) • Ürün tablosunda; UrunKodu,UrunAdı, Marka, Fiyat .. bilgileri tutulur • Müşteri tablosunda; Ad, SoyAd, Tel, Eposta, Sifre, Adres, .. bilgileri tutulur. (eposta bilgisi tekil) • Sipariş tablosunda; (siparisverenin) Eposta, UrunKod (siparisedilen) .. bilgileri tutulur. • … • …
ER Diyagramı ile Mantıksal Model Oluşturmak 4. Bir kısım nitelikleri aynı olan varlıklar belirlenir (e-ticaret web uygulaması) • Genel ve özel ilişkisi ile varlıklar birleştirilir (mümkünse) • Çalışanlar ile müşterilerin; ad, soyad, telefon gibi bilgileri kisi tablosunda tutulabilir.
ER Diyagramı ile Mantıksal Model Oluşturmak 5. Tekrarlayan varlık nitelikleri belirlenir (e-ticaret web uygulaması) • Normalizasyon (anahtar alana bağlı olmayan bilgilere dikkat!)
ER Diyagramı ile Mantıksal Model Oluşturmak 6. Nesnelerin nitelikleri göz önüne alınarak arasındaki ilişkiler tanımlanır (e-ticaret web uygulaması) • Nesne listesi tablo listesi gibidir • İlişkiler belirlenir (ilişkideki türleri belirleyin; bir, çok…) • Sepete müşteriler ürün atar. Bir sepet bir müşteriye aittir. Her müşterinin sepeti olabilir. Bir müşteri sepetinden birden fazla ürün olabilir. • Siparişi müşteriler verir. Bir sipariş bir müşteriye aittir. Bir siparişte birden fazla ürün yer alabilir.siparişte yer alan her bir ürünün kaç adet olduğu, satış anında fiyatının ne olduğu, üstünde tanımlı bir indirim varsa ne kadar olduğu tutulmalıdır.
ER Diyagramı ile Mantıksal Model Oluşturmak 7. Aday anahtarı belirleyin (e-ticaret web uygulaması) • Bir varlığa ait aynı biçimdeki ayırt edici bir tekilleştiricidir • Bir varlık için birden fazla aday anahtar olabilir • Müşteri varlığı • TC Kimlik No • Eposta • Cep Telefonu • Aday anahtarlardan biri birincil anahtar diğerleri alternatif anahtar olarak tayin edilir
ER Diyagramı ile Mantıksal Model Oluşturmak 8. Nitelik kısıtlamaları tayin edilir (e-ticaret web uygulaması) • RDMS aracılığıyla veri girişleri ile ilgili birçok durum denetlenebilir. • Denetlemelerde kısıtlayıcılar kullanmak işi kolaylaştırır. • Bütünlük kısıtlamaları: VT’nin tutarlı bir bütün olması için; eksik, yanlış ya da çelişen verinin VT’de tanımlanmaması adına ortaya konulan her türlü kısıtlamalardır. • Anlamsal bütünlük kısıtlamaları: Sistem analizinde veritabanında uyulması gereken kuralların ifadesidir. ABK genellikle veritabanı programcıları tarafından ya da uygulama programı programcıları tarafından yazılan arayüzlerle kontrol edilirler. • Örn. Bir sipariş geldiğinde, sipariş tarihi olarak bir değer verilmediyse VTYS o günün tarihi versin denilebilir. Fatura adresi boş olamaz denerek bu alanın boş olmaması gerektiği VT seviyesinde garantilenebilir. • Referans bütünlük kısıtlamaları: Bir ilişkideki bazı niteliklerin alabileceği değerlerin bir başka ilişkideki var olan bazı niteliklerin sahip oldukları değerlerle sınırlandırılmasıdır. • Alan kısıtlamaları: 1. derece – alan tipleri, 2. derece – değer alanları, 3. derece – NULL değeri kısıtlamaları (ARAŞTIRMA ÖDEVİ)
ER Diyagramı ile Mantıksal Model Oluşturmak 9. Özel güvenlik gerektiren nitelikler tayin edilir (e-ticaret web uygulaması) Müşteri şifresi vd özel bilgiler VT seviyesinde tayin edilip çeşitli yöntemlerle (sertifikalar ve açık-kapalı anahtar mimarileri gibi) gizleme yoluna gidilir.
GÖREV Bir öğrenci otomasyonu VT tasarımı