http://yunus.hacettepe.edu.tr/~tonta/courses/fall2006/bby309/bby309-2006-final-project.htm
H.Ü. Bilgi
ve Belge Yönetimi Bölümü
BBY309 Veri Tabanı Yönetim Sistemleri (Güz
2006) Yaşar Tonta
DÖNEM PROJESİ:
KİTABEVİ VERİ TABANI
(20 puan; teslim tarihi 28 Aralık
2006 09:30 a.m.)
Diyelim ki, küçük bir
kitabeviniz var ve kitap satışı yapıyorsunuz. Şirket olarak müşteri
siparişlerinin kayıtlarını tutmak ve bunun için basit bir veri tabanı
tasarlamak istiyorsunuz. Her siparişle ilgili en az şu bilgileri tutmaya karar
veriyorsunuz: Müşteri adı, adresi ve diğer bilgiler; Kitap bilgileri (adı,
yazarı, yayıncısı, yayın yılı, ISBN’si, stoktaki kopya sayısı vs.) ve Sipariş
bilgileri (sipariş tarihi, sipariş sayısı vs.). Veri tabanını basit tutmaya,
karmaşık senaryolar geliştirmemeye çalışın. Örneğin, böyle bir kitabevinde bir
müşterinin farklı zamanlarda kitap siparişi yapabileceğini, hatta bir siparişte
birden fazla kitap bulunabileceğini düşünün. Geliştirdiğiniz senaryo ve
tasarladığınız veri tabanı için gerekli tablo (varlık) sayısını sınırlı tutmaya
çalışın (örneğin, 4-6 tablo yeterli). Veri girişine ve belirli ölçütlere göre
sorgulama yapılabilmesine, rapor yarartılabilmesine olanak veren bir veri
tabanı tasarlayınız.
Aşağıdaki görevleri
tamamlayınız:
1. Bu uygulama için IDEF1X notasyonunun
kullanarak bir ER diyagramı çiziniz. Her varlık için alan adları,
anahtar alan, ilişki türü (1:1, 1:N, M:N) ve her ilişki türüylr ilgili yapısal
sınırlamalar tanımlanmalıdır. Belirtilmemiş gerekirlikleri not ediniz.
Tanımlamanın tam olması için gerekirse uygun varsayımlarda bulununuz.
2. İlk
adımda geliştirdiğiniz IDEF1X diyagramı için MS Access kullanarak bir veri
tabanı yaratınız ve bu veri tabanını size ait dizin altında kaydediniz.
3. Yarattığınız veri tabanındaki tablolara veri giriniz. Bu projenin
amacı veri girmek değil. Bu nedenle her tabloda 10 ile 20
arasında kayıt oması yeterli. Önemli olan tasarladığınız veri tabanının
yeteneklerini gösterecek kadar veri girmiş olmak.
4. Tanımladığınız
tablolar için veri giriş ekranları yaratınız ve kaydediniz. Varsayılan ekran
formatını kullanmayınız.
5. Beş
SQL sorgusu yaratınız ve bu sorguların yanıtlarını veri tabanından alınız. Sorgular tanımladığınız tablolardan yanıtlanmalı
ve veri tabanınızın en gelişmiş yeteneklerini sergilemelidir. Bu nedenle bazı sorgu
sonuçlarının birden fazla tablodan gelmesi beklenir. SQL sorgu sonuçlarını
kendi dizininiz altında kaydediniz. Sorgu adları sorgunun ne olduğu
anlaşılabilecek biçimde ayrıntılı olarak verilmelidir. (“Sorgu1” diye kaydetmek
yerine örneğin, “Son Bir Hafta İçinde Sipariş Veren Müşterilerin Adresleri”
diye adlandırınız..)
6. Rapor
yaratıcısını kullanarak bir rapor yaratınız. Rapor verileri yarattığınız tablolardan ya da sorgulardan gelmelidir.
Rapor adı raporun ne olduğu anlaşılabilecek biçimde ayrıntılı olarak
verilmelidir. (“Rapor1” diye kaydetmek yerine örneğin, “Son Bir Hafta İçinde
Sipariş Veren Müşterilerin Adresleri” diye adlandırınız..)
7. Veri tabanının güçlü ve zayıf yönlerini değerlendiriniz. Aynı uygulama
için yeniden veri tabanı tasarlayacak olsaydınız bu sefer neleri farklı
yapardınız?
Tablolar, veri giriş
ekranları, sorgular ve raporu kendi dizininiz altında kaydetmelisniz. MS Word
kullanarak belirlediğiniz sorunları ve çözüm önerilerini içeren ayrı bir
rapor yazmalısınız. Bu raporda, tasarımınızın güçlü ve zayıf yönlerini
tartışmalısınız. Hazırladığınız raporu kendi dizininiz altında kaydediniz.
Geliştirdiğiniz IDEF1X diyagramı da aynı dizin altında kaydedilmelidir.
NOTLANDIRMA
Notlandırma önerdiğiniz
çözümün kalitesine, IDEF1X diyagramının önerilen çözümü yansıtıp yansıtmadığına
(40 puan), veri tabanına (tablolar, veri giriş ekranları, SQL soruları, rapor
yaratıcısı) (40 puan) ve rapora (20 puan) bağlıdır.
Veri tabanı MS Access
kullanılarak yaratılmalıdır. Yaratılan veri tabanının çözüm olarak önerilen
veri tabanına uymasını sağlayın (ana ve yabancı anahtarları, özellikleri ve
sınırlamaları belirtiniz). Tasarımda yer alan bütün tablolar yaratılmalı ve bu
tablolara veri girilmelidir. SQL sorguları yaratılmalı ve bu sorgular kolayca
anlaşılabilmelidir (sorgunun ne yapması gerektiğini Word ile hazırlayacağınız
veri tabanı raporunda belirtiniz). Rapor yaratınız ve rapor yaratıcısının
özelliklerini kullanarak raporunuzu güzelleştiriniz (örneğin, başlıklar
ekleyin, farklı puntolar kullanın, vs.) (40 puan).
Veri tabanı raporu MS Word
kullanarak yazılmalıdır. “Şu tabloları yarattım, bunu yaptım, şunu yaptım”
gibi ifadeler içeren prosedürel bir rapor yazmayınız. Raporda, önerdiğiniz
çözümün ve yarattığınız veri tabanının avantaj ve dezavantajlarını tartışınız.
Örneğin, daha fazla zamanınız olsa ne yapardınız? Neyi daha iyi yapardınız?
Mevcut veri tabanı nerelerde aksıyor? Bu aksaklık nasıl düzeltilebilir? (20
puan)
Unutmayın, bu veri
tabanını farklı şekillerde tasarlamak mümkündür. Yani, tek doğru tasarım diye
birşey yok. Bu bakımdan,
varsayımlarınızı, tasarımı tamamlamak için eklemek durumunda kaldığınız tabloları
vs. ayrıca belirtiniz. Ayrıntılı ve karmaşık tasarımlardan kaçınınız. Basit bir
tasarımı tercih ediniz.
Kolay gelsin..
Yaşar Tonta
Released: 30 Kasım 2006