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

tonta@hacettepe.edu.tr

Released: 30 Kasım 2006