vt tasarimi ve modelleme

24
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.

Upload: radha

Post on 05-Jan-2016

98 views

Category:

Documents


0 download

DESCRIPTION

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. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: VT TASARIMI ve MODELLEME

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.

Page 2: VT TASARIMI ve MODELLEME

VT TASARIMISüreç İşlem Sonuç

Kavramsal ‘Niçin’ temelli düşünün. Kullanıcı gereksinim listeleri size yol gösterecektir.

Müşterinin ne istediğini onun açısında bakarak ortaya koyun.

Mantıksal Model ‘Ne’ temelli düşünün. Müşteri isteklerinden anlayacağınız bir modele geçiş yapın. Veritabanı tasarımı ile ilgili bilimsel kuralları dikkate alın.

Teknik çalışanlar için bilimsel temelli ele alınan ve yeniden düzenleme ile son hali verilmiş ara proje

Fiziksel Model ‘Nasıl’ temelli düşünün. Bir önceki seviyede elde ettiğiniz bilimsel temelli projeyi hayata geçirme konusunda yapacaklarınızı sıralayın.

Gerçek anlamda veritabanının nasıl olacağı ile ilgili sonuç projesi

Gerçekleme Sonuç projesine yapılanları uygulayın

Projenin veritabanı seviyesinin tamamlanması

Page 3: VT TASARIMI ve MODELLEME

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 (Entity Relationship Modelling)– UML (Unified Modelling Language)

Page 4: VT TASARIMI ve MODELLEME

ERM (Entity Relationship Modelling)

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.

Page 5: VT TASARIMI ve MODELLEME

ERM - Öğeleri

Üç farklı öğesi mevcuttur;Varlık (entity)

Nitelik (attribute)

İlişki/bağıntı

Page 6: VT TASARIMI ve MODELLEME

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.

Page 7: VT TASARIMI ve MODELLEME

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.)

Page 8: VT TASARIMI ve MODELLEME

ERM - Aşamaları

Bağıntı türleri:(1:1)

(1:n)

(n:m)

kadin evlilik erkek(1,1) (1,1)

(1:1)

kadin annelik cocuk(1,n) (1,1)

(1:n)

ogrenci alır ders(n,m) (n,m)

(n:m)

Page 9: VT TASARIMI ve MODELLEME

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)

Page 10: VT TASARIMI ve MODELLEME

ERM - Aşamaları

4. Kavramsal bir ER diyagramı oluşturulur Örnek 1:

UrunKod

Urun

ListeFiyatSatisKuru UrunAd

Urun-Reyon Reyon

ReyonAd

ReyonKod

Page 11: VT TASARIMI ve MODELLEME

ERM - Aşamaları

Örnek 2:

magaza

peronsel

urun

gorev

basTarih

bitTarih

calisir

yapar

alır

basTarih

bitTarih

maas

EgitDuzey

SicilNo

AdSoyad

satilir

UrunKod

BirimAd

bitTarih

basTarih

MagNo AdresAdbasTarih

bitTarih

(n,m)

(n,m)

(n,m)

Page 12: VT TASARIMI ve MODELLEME

ERM - Aşamaları

Kavramsal bir ER diyagramında kümeleme ve genellemeKü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.

Page 13: VT TASARIMI ve MODELLEME

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

Page 14: VT TASARIMI ve MODELLEME

Fiziksel Model

Teorilere dayanarak tasarlanan veritabanının gerçek ortamda yer almak üzere

şekillendirilmesidir.(ayrıntılar ilerleyen derslerde verilecek)

Page 15: VT TASARIMI ve MODELLEME

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– …– …

Page 16: VT TASARIMI ve MODELLEME

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

Page 17: VT TASARIMI ve MODELLEME

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.

– …– …

Page 18: VT TASARIMI ve MODELLEME

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.

Page 19: VT TASARIMI ve MODELLEME

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!)

Page 20: VT TASARIMI ve MODELLEME

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.

Page 21: VT TASARIMI ve MODELLEME

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

Page 22: VT TASARIMI ve MODELLEME

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İ)

Page 23: VT TASARIMI ve MODELLEME

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.

Page 24: VT TASARIMI ve MODELLEME

GÖREV

Bir öğrenci otomasyonu VT tasarımı