karabuk unıversıty computer engıneerıng %100 englısh programme

advertisement
KARABUK UNIVERSITY
COMPUTER ENGINEERING
%100 ENGLISH PROGRAMME
CME226
DATABASE MANAMENT SYSTEM
2012-2013 SPRING SEMESTERS
PROJECTS
ASSIST. PROF. DR. ILHAMI MUHARREM ORAK
Ödev teslimi: Ödevler 22 Mayıs 2013 günü derste teslim edilecektir. Ödevi yapan kişiler
dökümanlarıyla birlikte derse gelecekler ve projelerini anlatacaklardır.
A. TÜM ÖDEVLERE AİT:
1. B Grubunda belirtilen veritabanı problemlerinden biri seçilerek; problemi temsil
edecek olan ilişkisel veritabanı tasarlanacaktır. Ödevler 2 kişilik gruplar halinde
dağıtılacaktır.
2. Yapılan veritabanı tasarımına ait E-R diyagramı çizilmeli, varlıklar arasındaki ilişkiler bu
diyagramlarda gösterilmelidir.
3. Tablolarda “Normalizasyon” yapılmalı ve normalizasyon aşamaları gösterilmelidir.
4. Oluşturulan tablolardaki alan adları, bu alanların veri yapıları (char, string, int…) ve
varsa sınırlılıkları (birincil, yabancı anahtarlar…) gösterilmelidir.
5. Derste işlenen SQL komutlarına ait sorgular yapılmalı ve sorguların ilişkisel cebir
karşılıkları gösterilmelidir. (Bu sorgular en az iki tablonun birleştirilmesi sonucu elde
edilen karmaşık sorgular olmalıdır)
6. Veritabanı ve kullanıcı arasında iletişim için bir ara yüz tasarlanacaktır.
7. Tablo, ara yüz, sorgu tasarımlarının nasıl gerçekleştirildiği adım adım gösterilmelidir.
8. 2-7 maddeleri yazılı doküman halinde ödevle birlikte teslim edilecektir.
9. Teslim tarihi en geç 22 Mayıs 2013’dir. (Final sınavından önceki son hafta.)
10. Projenizi sadece Oracle ile gerçekleştirebilir ve ara yüzü kendi belirlediğiniz bir
yöntemle yapabilirsiniz (Masaüstü veya web arayüz).
B. PROJE KONULARI
S.1. Aşağıdaki çizim birçok bölümü bulunan bir kurumun Personel Veri Tabanı’nda
yer alması istenilen veri ve bağıntıların sıradüzensel gösterimidir.
Çizime ek olarak, veri tabanı ile ilgili aşağıdaki açıklamalar verilmektedir.



Her personel en çok bir projede çalışır; bir projede birçok personel
çalışabilir.
Bir personel bir görevi en çok bir kez yürütür.
Her personel bir odada çalışır; bir odada birden çok personel çalışabilir.
Veri tabanında bulunması istenilen nitelikler aşağıda sıralanmaktadır.
 Her bölümün numarası, adı ve bütçesi.
 Her personelin sicil numarası, adı, soyadı, ve çalıştığı projenin numarası.
 Her projenin numarası, adı ve bütçesi.
 Her görevin numarası ve adı.
 Her personelin yürüttüğü her görevin başlangıç ve bitiş tarihleri.
 Bir personelin bir görevi yürütürken, hangi tarihler arasında ne kadar ücret
aldığı.
 Her odanın numarası, bulunduğu kat ve metre kare cinsinden alanı.
 Her telefonun numarası ve türü (kurum içi, şehir içi, şehirler arası,
uluslararası)
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Veri Tabanı'nın varlık-bağıntı çizeneğini
oluşturunuz.
S.2. Birçok satış mağazası bulunan bir kurumda satış mağazalarına, çalışan
personele ve satılan malzemelere ilişkin verileri, geçmişten günümüze zaman
boyutunda içeren bir Market Veri Tabanı oluşturulmak isteniyor. Veri tabanında,
örneğin, bir personelin bugünkü görevi ve ücreti yanında, eski tüm görev ve ücret
bilgilerinin, tarihleriyle birlikte bulunması isteniyor.
Veri tabanında yer alacak veri ve bağıntılar aşağıda sıralanmaktadır.







Her mağazanın numarası, adı, adresi, açıldığı (kurulduğu) tarih, kapandığı
tarih (eğer mağaza kapanmamışsa bu niteliğin değeri "null" olacaktır).
Her personelin sicil numarası, adı, soyadı ve eğitim düzeyi (bu bilgiler zaman
içinde değişmiyor).
Her personelin hangi tarihler arasında hangi mağazada çalıştığı (belirli bir
anda bir personel bir mağazada çalışıyor; ancak zaman içinde personelin
çalıştığı mağaza bir veya birçok kez değişebiliyor).
Bir personel bir mağazada çalışırken, hangi tarihler arasında hangi görevi
yürüttüğü (her personel belirli bir anda yalnız bir görev yürütüyor).
Her personelin hangi tarihler arasında ne kadar ücret aldığı (personelin
ücreti çalıştığı mağaza ve yürüttüğü görevden bağımsızdır).
Satılan her ürünün kodu, adı, birimi (bu bilgiler de zaman içinde değişmiyor)
ve satışı yapan personel bilgisi.
Her ürünün hangi mağazada hangi tarihler arasında satıldığı (belirli bir anda
bir mağazada birçok ürün satılabilirken bir ürün de birçok mağazada
satılabiliyor. Bu bilgiler zaman içinde değişebiliyor. Örneğin bir ürün bir
mağazada belirli bir süre satıldıktan sonra, belirli bir süre satılmaması, sonra
yeniden satılmaya başlanması ve bu sürecin tekrarlanması mümkün
olabiliyor).
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Veri Tabanı'nın varlık-bağıntı çizeneğini
oluşturunuz.
S.3. Türkiye genelinde kurulacak Kamu Çalışanları Sağlık Veri Tabanı’nda aşağıdaki
veri ve bağıntıların yer alması isteniyor.

Kamu kurumlarının numaraları, adları ve adresleri.










Kamu hastanelerinin numaraları ve türleri (her kamu hastanesi bir kamu
kurumudur).
Kamu hastanelerindeki hasta muayene odalarının numaraları (hastane
içinde biricik) ve yerleri.
Kamu personelinin sicil numarası, ad, soyad. cinsiyet, görev ve çalıştığı
kurum verileri. Her personelin bir ve yalnız bir kurumda çalıştığı
varsayılmaktadır.
Doktorların sicil numaraları ve uzmanlıkları. Her doktor bir kamu çalışanıdır.
Her kamu çalışanı gibi her doktor da bir kamu kurumunda çalışır; ancak
doktorun çalıştığı kurum bir hastane olmak zorundadır.
Hastalık kodları, adları ve türleri.
İlaçların kodları, adları, türleri ve birim fiyatları.
Hastalara verilen randevularla ilgili veriler: hangi hastaya, hangi doktor
tarafından, hangi tarih ve saatte, hangi odada randevu verildiği. Hasta
muayenelerinin doktorun çalıştığı hastanede yapıldığı, bir hastanın aynı ya
da farklı doktorlardan birçok kez randevu alabildiği, aynı gün ve saatte bir
doktorun en çok bir hastaya randevu verdiği varsayılmaktadır. Bir hastanın
aynı gün ve saatte en çok bir doktor için randevu alması kısıtlanmalıdır.
Muayene verileri: hangi hastanın, hangi doktor tarafından, hangi tarih vc
saatte, hangi odada muayene edildiği. Randevularla muayeneler arasındaki
bağıntı bire-bir değildir. Genelde her randevunun karşılığı bir muayene
vardır. Ancak hasta gelmediği için bazı randevuların karşılığı muayene
olmayabilmektedir. Acil durumlarda ise randevusuz hastalar muayene
edilebilmektedir. Bir doktorun aynı gün ve saatte en çok bir hastayı muayene
ettiği varsayılmaktadır.
Hastalık tanısı (teşhis) verileri: hangi muayenede hangi hastaya hangi
hastalık tanısı/tamları konulduğu. Hastalık tanısı sadece muayenede
konulabiliyor. Bir muayenede doktor tarafından hastaya sıfır, bir ya da
birçok hastalık tanısı konulabiliyor.
Verilen ilaç verileri: hangi muayenede hangi hastaya hangi ilaçların hangi
miktarlarda verildiği. Bir muayenede doktorun hastaya bir ya da birçok ilaç
verebileceği gibi hiç ilaç vermeyebileceği de varsayılmaktadır.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Kamu Çalışanları Sağlık Veri Tabanı’nın
varlık-bağıntı çizeneğini oluşturunuz.
S.4. Bir otelde kullanılmak üzere aşağıdaki açıklamalara uygun, gereksinimleri
karşılayan bir Otel Veri Tabanı tasarlamanız isteniyor.




Otelde odalar vardır. Her odanın numarası, yatak sayısı ve gecelik fiyat
verileri bulunmaktadır.
Otelde belirli hizmetler (gömlek yıkama, gömlek ütüleme, elbise ütüleme,
..vb) ve oda servisleri (çay, kahve, ..vb) verilmektedir. Bunların her birinin
belirli bir adı ve ücreti vardır.
Otelin lokantasında yenilip içilen belirli yemekler ve içecekler; bunların her
birinin adı ve ücreti vardır.
Otel odalarında müşteriler kalır. Her oda bir müşteriye verilir ve muhasebe
kayıtları bu müşteri için tutulur. Eğer odada birden çok kişi kalırsa,
bunlardan biri müşteri, diğerleri ise müşterinin beraberindekilerdir. Otel
işletmesi için müşterinin adı, soyadı, cinsiyeti ve adresi ile odaya geliş ve
odadan ayrılış tarihlerine ihtiyaç duyulmaktadır. Müşteri beraberindeki
kişilerin her birinin adı ve soyadı ile müşteri ile yakınlık derecesinin de



saklanması gerekmektedir. Ayrıca her odada kalan müşteri için bir hesap
açılması ve odada kalan kişiler tarafından yapılan tüm harcamalarının
hizmetler, oda servisi, yemek ve içecekler vb) bu hesaba yazılması
istenmektedir.
Otelin ilişkili olduğu firmalar (ticari şirketler ve seyahat acenteleri) vardır.
Bunların her biri ile bir anlaşma yapılmıştır. Bu firmaların ad. ve adresleri ile
firmaya anlaşmayla sağlanan indirim oranlarının saklanması gereklidir. Bu
firmalardan her biri için de otelde bir hesap açılır. Odalarda kalan müşteriler
(ve beraberindekiler) bireysel müşteri ya da firma müşterisi olabilir. Bireysel
müşterilerin oda ücretleri de müşteri hesaplarına yazılır. Firma müşterileri
için ise, oda ücretleri, anlaşmadaki oranda indirim yapılarak firma hesabına
yazılır. Firma hesabında ayrıntılar (hangi müşteri ve beraberindeki kaç kişi
için, hangi tarihler arasında ne kadar ücret oluştuğu ve ne kadar indirim
yapıldığı görülecek biçimde) yer alır. Tüm müşterilerin, oda ücreti dışındaki
harcamaları müşteri hesaplarına yazılır.
Recepcion, konferans, düğün vs. gibi organizasyonlar için firma veya
bireysel müşteriler olabilir. Kaç salon kullancakları ve yemek, içecek vs. gibi
diğer hizmetler için detaylar belirtilmelidir. Bu tip organizasyonlarda bireysel
müşterilere de belirli oranda indirim yapılabilir.
Organizyon ve bireysel müşteriler için arzu edilen tarih aralıkları için
rezervasyon ve fiyat detayları saklanmaktadır. Doluluk & boşluk ve uygunluk
bilgileri ışığında rezervasyon yapılmalıdır.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Otel Veri Tabanı'nın varlık-bağıntı
çizeneğini oluşturunuz.
S.5. Elektronik ortamda müşterilerin verdiği siparişleri evlere götüren bir
süpermarket için, aşağıda açıklanan verileri içeren, gereksinimlere uygun, bir
Dağıtım Veri Tabanı tasarlamanız isteniyor.



Müşteri, ürün, araç, sürücü ve masraf verileri kuruluş için temel verileri
oluşturuyor. Müşterilerin numara, ad, soy ad ve adresleri: ürünlerin kod, ad,
tür ve fiyatları; dağıtım için kullanılan araçların plaka numarası, marka ve
modelleri; dağıtımı yapan sürücülerin sicil numarası, adı, soyadı ve yaşı;
göreve çıkan sürücülerin görev süresince yapabilecekleri olası masrafların
kod, ad ve türlerinin veri tabanında bulunması isteniyor.
Müşteriler elektronik ortamda sipariş veriyorlar. Her siparişin hangi müşteri
tarafından, ne zaman verildiği önem taşıyor ve siparişe belirleyici bir numara
veriliyor. Her siparişte bir ya da birçok ürün, değişik miktarlarda yer
alabiliyor. Bu ürünler bir araya getiriliyor, bir koli içine yerleştiriyor ve
üzerine sipariş numarası yazılıyor.
Sipariş verilen ürünlerin yer aldığı kolileri müşterilerin evlerine götürüp
teslim etmek üzere görevler düzenleniyor. Her görev bir sürücü tarafından,
bir araç ile gerçekleştiriliyor ve her görev kapsamında bir ya da birkaç
siparişin teslimi yer alabiliyor. Her göreve belirleyici bir numara veriliyor,
veri tabanında görevin yapıldığı tarih (görev aynı günde başlıyor ve bitiyor)
ile başlangıç ve bitiş zamanlarının bulunması isteniyor. Bir sürücüye, bir
günde, aynı ya da farklı araçlarla birden çok görev verilebiliyor. Bir araç da,
aynı günde, aynı ya da farklı sürücüler tarafından birçok görevde
kullanılabiliyor.


Görev kapsamında yer alan siparişler, eğer müşteri evde bulunursa teslim
ediliyor. Hangi siparişlerin teslimatının yapıldığı ve ne zaman yapıldığının
bilinmesi önem taşıyor.
Bir görev süresince, sürücü belirli masraflar yapabiliyor. Yapılan
masraflardan her birinin miktarı, zamanı ve tutarının veri tabanında yer
alması isteniyor. Masraf örneği olarak lastik tamiri ve benzin alımı
gösterilebilir.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Dağıtım Veri Tabanı'nın varlık- bağıntı
çizeneğini oluşturunuz.
S.6. Aşağıdaki açıklamalar ışığında proje düzeyinde hizmet üreten bir kuruluş için
bir Proje Veri Tabanı tasarlamanız isteniyor.







Veri tabanındaki temel varlık kümesi proje varlık kümesidir, her projenin bir
numarası, adı, başlangıç tarihi, süresi ve bedeli vardır.
Her proje belirli bir müşteri için yapılır. Bu arada bir müşteri için birden çok
proje de yapılabilir. Her müşterinin bir numarası, adı, soyadı ve adresi
vardır.
Her proje ile ilgili işlemler birçok kesime ayrılarak görevler tanımlanır. Bir
proje kapsamında sıfır, bir ya da birçok görev tanımlanabilir. Her görev
yalnız bir proje ile ilgilidir. Görevlerin numaraları, adları, başlangıç tarihleri
ve süreleri vardır.
Her görev belirli bir bölümde yapılır. Bir bölümde birçok görev yapılabilir.
Bölümlerin numaraları ve adları vardır.
Kuruluşta birçok personel çalışmaktadır. Her personelin sicil numarası, adı,
soyadı, unvanı (teknisyen, mühendis, sekreter, sürücü, .. vb) vardır ve her
personel belirli bir bölüme bağlıdır.
Her görevi gerçekleştirmek için belirli sayıda personel atanarak bir görev
takımı oluşturulur. Bir personel birden çok göreve atanabilir. Her personelin
atandığı her görev için bir rolü vardır. Bir görevi gerçekleştirmek için atanan
personelin, görevin yapıldığı bölümün personeli olması zorunlu değildir. Bir
personel, bağlı olduğu bölümden başka bir bölümde yapılan bir göreve de
atanabilir.
Her bölümün bir başkanı, her projenin bir proje yöneticisi, her görevin de bir
görev yöneticisi vardır. Bir personel birçok bölümün başkanı ve/veya birçok
projenin/görevin yöneticisi olabilir.
Yukarıdaki açıklamalar
oluşturunuz.
ışığında
Proje
Veri
Tabanı’nın
varlık-bağıntı
çizeneğini
S.7. Bir elektronik firması ürettiği ürünler, kullandığı bileşenler ve her ürün için
hangi bileşenlerin hangi miktarlarda kullanıldığını gösteren bir Ürün-Bileşen Veri
Tabanı oluşturmak istiyor.


Veri tabanında her bileşenin kodu, adı, tanıtıcı açıklaması, stok miktarı ile
hangi satıcıdan satın alındığı verilerinin bulunması isteniyor. Her bileşen tek
bir satıcıdan satın alınıyor; ancak aynı satıcıdan birden çok bileşen
alınabiliyor.
Her parti alımda aynı bileşenin fiyatı değişebiliyor. Alım zamanına göre ürün
maliyet fiyatı değişkenlik gösterebiliyor. Maliyet fiyatları anlık olarak
gözlenebilmek isteniyor.


Her satıcının numarası, adı, adresi ve telefon numarasının veri tabanında yer
alması isteniyor.
Her ürünün kodu, adı birim fiyatı ve stok miktarı ile bu ürünün üretilmesi için
hangi bileşenlerden kaçar adet gerekli olduğu önem taşıyor.

Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Ürün-Bileşen Veri Tabanı'nın varlık-bağıntı
çizeneğini oluşturunuz.
S.8. Gemi, liman ve gemi adamları (denizciler) ile ilgili bir Deniz Ulaşımı Veri Tabanı
tasarlamanız isteniyor.





Veri tabanında yalnız Türk limanları, bu limanlar arasında sefer yapan Türk
bandıralı gemiler ile bu gemilerde çalışan gemi adamlarına ilişkin veri ve
bağıntılar yer alacaktır. Veri tabanında liman, gemi, ve gemi adamları ile
ilgili kimlik bilgileri (limanın numarası, adı, ..vb.; geminin sicil numarası, adı,
türü, kapasitesi/tonajı, ..vb.; gemi adamının sicil numarası, adı, soyadı,
doğum tarihi, yeterliği, ..vb.) yanında aşağıda özetlenen uygulamaları
gerçekleştirmeyi sağlayacak veri ve bağıntıların da yer alması isteniyor.
Bir limana hangi gemilerin hangi tarih-saatte girdiği ve hangi tarih-saatte
çıktığı bulunabilmeli (liman trafiği).
Bir geminin hangi limanlara ne zaman girdiği ve ne zaman çıktığı
bulunabilmeli (gemi trafiği).
A limanından kalkan bir geminin ilk yanaştığı liman B ise, A ve B limanları
arasındaki bu hareketi geminin AB seferi olarak adlandıralım. Her geminin
her seferinde belirli gemi adamları yer alıyor ve her biri belirli görevleri
(kaptan, çarkçıbaşı, kamarot, ateşçi,...vb.) yürütüyor. Her geminin yaptığı
her seferde hangi gemi adamlarının gemide bulunduğu ve hangi görevleri
yürüttükleri izlenmek isteniyor. Buna göre gemi bir limana uğradığında gemi
adamlarının tümü ya da bir kısmı değişebiliyor ve gemi bir sonraki sefere
çıkarken yeni bir görev ekibi oluşuyor.
Gemi adamlarının yaptıkları görevlerin izlenebilmesi, hangi gemi adamının
hangi tarihler arasında, hangi geminin hangi limanlar arasındaki seferinde
hangi görevi yürüttüğünün bulunabilmesi isteniyor.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Deniz Ulaşımı Veri Tabanı'nın varlık-bağıntı
çizeneğini oluşturunuz.
S.9. Bir uçak tamir-bakım fabrikasına gelen uçaklar üzerinde gerekli incelemeler;
yapılarak her uçak için hangi tamir ya da bakım işleminin gerekli olduğuna karar
veriliyor. Tamir-bakım işlemlerinin neler olduğu ve bunlardan hangilerinin
fabrikada yapılabildiği biliniyor. Her tamir-bakım işlemi bir dizi birim işlemden
(unit-process) oluşuyor. Söz konusu birim-işlemler belirli bir sırada art arda
gerçekleştirildiğinde ilgili tamir-bakım işlemi tamamlanıyor. Her birim-işlem belirli
atölyelerden birinde, belirli bir sürede yapılabiliyor ve birim-işlem yapılırken belirli
malzemeler belirli miktarlarda, belirli olasılıklarla kullanılıyor. Örneğin 4 numaralı
tamir-bakım işlemi 378, 586 ve 749 numaralı birim-işlemlerin yapılmasını
gerektiriyor. 378 sayılı birim-işlem 18, 27, ve 76 numaralı atölyelerin birinde
yapılabiliyor; süresi 5 saattir; gerekli malzemeler ise % 60 olasılıkla 3 adet MT928,
% 80 olasılıkla da 2 adet KT785, % 100 olasılıkla da 4 adet DB346 kodlu
malzemedir.








Fabrikanın verimli çalışmasını sağlamak için bir Uçak Tamir-Bakım Veri Tabam
kurulmak isteniyor. Kurulacak veri tabanının kullanılacağı başlıca
uygulamalar aşağıda yer almaktadır:
Tamir-bakım için fabrikaya gelen bir uçakta hangi tamir-bakım işleminin
yapılması gerektiği belirlendikten sonra, bir karar modeline göre uçağın
kabul edilip edilemeyeceği saptanıyor. Her uçak için gerekli tamir-bakım
işleminin bir tane olduğu varsayılıyor. Kullanılan karar modeli:
Hangi birim-işlemlerin yapılacağını,
Her birim-işlemin süresini, hangi atölyelerde yapılabileceğini ve bu
atölyelerin iş programlarını,
Her birim-işlem için hangi olasılıkla hangi malzemlerin kaçar adet
kullanılacağını, ve bu malzemelerin stok durumlarını,
inceleyerek uçağın fabrikaya kabul edilip edilemeyeceğine karar veriyor.
Fabrikaya kabul edilen her uçak için bir iş programı hazırlanıyor. İş
programında hangi birim-işlemin, hangi atölyede, hangi gün/saate başlayıp
hangi gün/saate biteceği bilgilerinin yer alması isteniyor.
Her uçak üzerinde yapılan birim-işlemlerin izlenmesi; iş programlan ile
gerçekleşimlerin karşılaştırılması ve bir iş programının gerçekleşmesinde
gecikme olduğunda, tüm iş programlarında gerekli düzeltmelerin yapılması.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Uçak Tamir-Bakım Veri Tabanı'nın varlıkbağıntı çizeneğini oluşturunuz.
S.10. Bilgisayar mühendisliği anabilim dalındaki bilimsel yayınlarla ilgili verilerin
yer alacağı bir Bilimsel Yayın Veri Tabanı oluşturulmak isteniyor. Veri tabanında yer
alması istenilen veri ve bağıntılar özet olarak aşağıdakilerdir.







Her bilim dalının (algoritmalar, veri yapıları, işletim sistemleri, ...vb.) kodu
ve adı.
Her yazarın adı, soyadı, mesleği, unvanı ve hangi bilim dallarında uzman
olduğu (her yazar bilgisayar mühendisliği ile ilgili sıfır, bir ya da birçok bilim
dalında uzman olabilir).
Her kitaplığın numarası, adı ve adresi.
Her kitabın numarası, adı, dili, basım yılı, yayıncısı (bir yayınevi, bir kurum,
bir dernek, bir kişi, ...vb.), yazarı/yazarları, hangi kitaplıklarda bulunduğu ve
hangi bilim dalları ile ilgili olduğu (veri tabanında yalnız bilgisayar
mühendisliği ile ilgili kitaplar yer alacağına göre, her kitap bir ya da birçok
bilim dalı ile ilgili olacaktır).
derginin adı, dili ve yayıncısı.
Her dergi sayısının numarası (dergi içinde biricik), yayın yılı, yayın ayı ve
hangi kitaplıklarda bulunduğu.
Her makalenin adı, yazarı/yazarları ve hangi derginin hangi sayısında yer
aldığı (her makalenin tek bir yerde yayınlandığı varsayılıyor).
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Bilimsel Yayın Veri Tabam'nın varlık-bağıntı
çizeneğini oluşturunuz.
S.11. Paket yazılım üreten bir firma için, yazılımlar satışa sunulmadan önceki test
sürümleri ve test çalışmaları ile ilgili verilerin yer alacağı bir Yazılım Veri Tabanı
oluşturulmak isteniyor. Oluşturulacak veri tabanında yer alması -ilenilen veri ve
bağıntılarla ilgili kısa açıklamalar aşağıda yer almaktadır.





Firmada çalışan her teknik personelin numarası, adı ve soyadı, cinsiyeti,
doğum yılı ve ücreti. Firmada çalışan her teknik personel ya geliştirici
(bilgisayar mühendisi) ya da testçi (test görevlisi) olarak görev
yapmaktadır. Veri tabanında her geliştiricin bitirdiği üniversite ve mezuniyet
yılı; her test görevlisinin de uzmanlık alanı bilgisinin yer alması isteniyor.
Geliştiriciler gruplar (yazılım grupları) halinde çalışmaktadırlar. Her yazılım
grubunun bir numarası, bir de adı vardır. Her geliştirici bir ve yalnız bir
yazılım grubunda çalışmaktadır. Testçiler ise bireysel olarak görev
yapmaktadır.
Geliştirilen her yazılımın numarası, adı ve alanı ile hangi yazılım grubu
tarafından geliştirildiği.
Her yazılımın birçok test sürümü bulunuyor. Veri tabanında her test sürümün
sıra numarası ile geliştirme tarihinin bulunması isteniyor.
Yazılımların test çalışmaları testçilere ek olarak özel kullanıcılar (test
kullanıcıları) tarafından yapılıyor. Her test kullanıcısının numarası, adı, ve
adresi bulunuyor. Her yazılımın her sürümünü test etmek üzere belirli sayıda
(0, 1 veya birçok) testçi ile belirli sayıda test kullanıcısı görevlendiriliyor.
Her görevlendirme belirli bir tarihte yapılıyor. Görevlendirilen testçinin ve
test kullanıcısının çalışmalarım tamamladığında bir rapor hazırlayarak ilgili
yazılım grubuna vermesi gerekiyor. Veri tabanında raporun veriliş tarihinin
de bulunması isteniyor.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Yazılım Veri Tabanı’nın varlık-bağıntı
çizeneğini oluşturunuz.
S.12. X AŞ. ürünlerini Web ortamında pazarlayan bir E-ticaret şirketidir. Şirketin
Web ortamında bir ana sayfası, her ürün ana grubu (örneğin Televizyon) için bir
sayfası; her ürün grubu (örneğin LCD Televizyon) için bir sayfası, her ürün
(örneğin TOSHIBA 40XF350 LCD TV) için de bir sayfası bulunuyor. Ürün ana
grupları, ürün grupları ve ürünler arasında sıradüzensel bir yapı vardır.
Şirket için ürün ana grupları, ürün grupları, ürünler ve müşteriler ile müşterilerin
hangi web sayfalarını ziyaret ettikleri ve hangi ürünleri satın aldıklarına ilişkin
aşağıda özetlenen verilerin yer alacağı bir E-Ticaret Veri Tabanı oluşturulmak
isteniyor.







Her ürün ana grubunun numarası (biricik) ve adı.
Her ürün grubunun numarası, adı ve hangi ana grupta yer aldığı. Ürün grubu
numaraları biricik numaralar olmayıp, ürün grubunun ana grup içindeki
sırasını gösteren bir sıra numarasıdır.
Her ürünün kodu (biricik), adı, birimi, modeli, mevcut miktarı, satış fiyatı ile
hangi firma tarafından üretildiği ve hangi ürün grubunda (dolayısıyla hangi
ürün ana grubunda) yer aldığı.
Ürünleri pazarlanan her firmanın numarası (biricik), adı ve ülkesi.
Her müşterinin site üyesi olduğu için üye numarası, üyelik kullanıcı adı,
şifresi ve de adı, soyadı ve adresi,
Her müşterinin hangi Web sayfalarını (ana sayfa, ürün ana grubu sayfaları,
ürün grubu sayfaları ve ürün sayfaları) kaçar kez ziyaret ettiği. Bir müşteri
örneğin X AŞ ana sayfasını 28 kez, Televizyon ana grup sayfasını 15 kez,
Bilgisayar ana grup sayfasını 32 kez...., Televizyon ürün grubu sayfasını 12
kez, .. .vb ziyaret etmiş olabilir.
Her müşterinin satın aldığı her ürün için: bu ürün için kaç kez alım yaptığı ve
toplam kaç adet satın aldığı (bir müşteri örneğin KST23 kodlu üründen

bugüne kadar 3 kez alım yapmış ve 3 alımda toplam 8 adet satın almış
olabilir).
Ürünler için üyelerin yorum yapılabilmesi isteniyor. Yaptıkları yorumlar ürün
sayfasında veya link ürün sayfasında olacaktır. Yorumlar için üye kullanıcı
adı, tarih ve yorum veritabanında saklanacaktır.
Yukarıdaki açıklamalar ışığında X AŞ şirketinin gereksinimlerini karşılayacak
(açıklamalarda yer almayan konular için, gerekiyorsa, uygun varsayımlar yaparak)
E-Ticaret Veri Tabanının varlık-bağıntı çizeneğini oluşturunuz. Varlık- bağıntı
çizeneğinde yalnız ikili bağıntılar yer alsın (üçlü, dörtlü, .. bağıntılar yer almasın).
S.13. Birden çok periyodik yayını (gazete, dergi, gazete eki) bulunan bir medya
Kuruluşunun, yayınlarında yer alan reklamlar ve reklamları veren müşterileri ile
ilgili bilgilerin yer aldığı bir Reklam Veri Tabanı oluşturulmak isteniyor.
Oluşturulacak Veri Tabanı ile ilgili kısa açıklamalar aşağıda yer almaktadır.






Medya kuruluşunun çıkardığı her periyodik yayınının kodu (anahtar), adı,
yayın aralığı (günlük haftalık/aylık), yayının türü (gazete/dergi/gazete eki)
ve yayın bir gazete eki ise hangi gazetenin eki olduğu. Gazete ve dergiler
(asıl yayınlar) için bu son alanın değeri boş olacaktır.
Her yayının basılan (çıkan) her sayısının (örneğinin) numarası, yayın tarihi
ve sayfa sayısı. Her yayının her sayısının basım tarihi birbirinden farklıdır;
başka bir deyişle hiçbir yayın aynı gün birden çok kez basılmamaktadır. Sayı
numarası yayın içinde biriciktir.
Medya kuruluşuna reklam veren her müşterinin kodu (anahtar), adı, adresi
ve türü (kişi/şirket).
Müşteriler tarafından bir ya da birçok yayında, bir ya da birçok kez
yayınlanması istenilen her reklamın kodu (anahtar), reklamın kendisi (grafik
bilgi), orijinal büyüklükteki eni (Cm) ve boyu (Cm).
Her reklamın hangi yayınların neresinde (ön kapak/ön kapak arkası/arka
kapak/arka kapak arkası/iç sayfalar) kaç kez yayınlanmasının istendiği. Bir
reklamın örneğin A gazetesinin arka kapağında 5 kez; aynı gazetenin (A
gazetesinin) iç sayfalarında 10 kez, B ekinin ön kapak arkasında 3 kez, C
dergisinin iç sayfalarında ise 2 kez yayınlanması istenebiliyor.
Her reklamın hangi yayının hangi sayısının, kaç numaralı sayfasında, hangi
büyüklükte
(orijinal
büyüklüğüne
göre
hangi
oranda
büyütülerek/küçültülerek) yer aldığı ve bu yayın için alınacak ücret. I
numaralı sayfa ön kapak, 2 numaralı sayfa ön kapak arkası, en büyük
numaralı sayfa arka kapak, en büyükten bir küçük numaralı sayfa arka
kapak arkası, diğer numaralar ise iç sayfalardır. Bir reklam aynı yayının aynı
sayısında, farklı sayfalarda olmak üzere birden çok kez yer alabiliyor.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Reklam Veri Tabanının varlık- bağıntı
çizeneğini oluşturunuz.
S.14. Bir Test Merkezinde konular, alt konular, hazırlanan sorular, soru yazarları ve
soru denetleyicileri ile ilgili bilgilerin yer aldığı bir Test Veri Tabanı oluşturulmak
isteniyor. Oluşturulacak veri tabanı ile ilgili kısa açıklamalar aşağıda yer
almaktadır.

Konular (tarih, coğrafya, matematik, vb): her konunun numarası (biricik) ve
adı.









Her konunun alt konuları (tarih için: Türk tarihi, Osmanlı tarihi. Kurtuluş
savaşı ve TC tarihi, vb) : her alt konunun numarası ve adı. Alt konu
numaraları konu içinde biricik olan sıra numaralarıdır.
Test merkezinde görev yapan her soru yazarı ve denetleyicinin: TC kimlik
numarası (biricik), adı, soyadı, cinsiyeti ve adresi. Merkezde görevli kişiler
ya soru yazarı ya da denetleyicidir. Soru yazarı olarak öğretmenler,
denetleyici olarak da öğretim üyeleri görev yapmaktadır. Kimlik ve adres
bilgilerine ek olarak veri tabanında soru yazarlarının mezuniyet yılı,
denetleyicilerin de akademik ünvan bilgilerinin bulunması istenmektedir.
Test merkezinde görevli her kişinin uzmanlık alanı (her soru yazarı ve
denetleyici bir ve yalnız bir konuda uzmandır).
Kurslar: her kursun numarası (biricik), adı, başlangıç tarihi ve süresi.
Her soru yazarının hangi kurslara katıldığı ve katıldığı her kursta elde ettiği
başarı. Soru yazarı olabilmek için en az bir kursa katılmak gereklidir.
İsteyenler birden çok kursa da katılabilmektedir.
Üniversiteler: her üniversitenin numarası (biricik) ve adı.
Her denetleyicinin hangi üniversitede çalıştığı.
Sorular: yazılan her test sorusunun numarası (biricik), soru metni, doğru
cevap, zorluk derecesi, yazarı (her soru bir ve yalnız bir soru yazarı
tarafından yazılmaktadır) ve alt konusu (her soru bir ve yalnız bir alt konu
ile ilgilidir).
Yazılan her sorunun hangi denetleyiciler tarafından hangi tarihlerde
denetlendiği ve her denetleyicinin soruyla ilgili görüşü. Soruların
denetlenmeden veri tabanına girilmesi; daha sonra denetimler yapıldıkça da
bu bilgilerin eklenmesi istenmektedir. Her soru en çok 3 denetleyici
tarafından denetlenmektedir.
Yukarıdaki açıklamalar ışığında
gerekiyorsa, uygun varsayımlar
çizeneğini oluşturunuz.
(açıklamalarda
yaparak) Test
yer
Veri
almayan konular için,
Tabanı’nın varlık-bağıntı
S.15. Büyük bir yazılım firmasının yaptığı projeler, çalışan personeli ve kullanılan
dizüstü bilgisayarlara ilişkin verilerin yer aldığı bir Yazılım Projeleri Veri Tabanı
oluşturulmak isteniyor. Oluşturulacak veri tabanı ile ilgili kısa açıklamalar aşağıda
yer almaktadır.





Firmanın yaptığı her projenin bir numarası (biricik), bir adı, başlangıç tarihi,
öngörülen bitiş tarihi ve bedeli vardır.
Firmada çalışan her personelin bir numarası (biricik), adı ve soyadı, cinsiyeti
ve görev unvanı vardır.
Her personel belirli sayıda (0, 1, ya da birçok) projede görev yapmaktadır.
Her projede de belirli sayıda
(0,1, ya
da
birçok)
personel
görev
yapmaktadır.
Çalışanların kullanması için zaman zaman dizüstü bilgisayarlar alınmaktadır.
Alımlar parti parti yapılmaktadır. Bir partide, kaynağı belirli bir projeden
sağlanarak belirli sayıda (1, 2, 3, ...adet) birbirin aynı bilgisayarlar
alınmaktadır. Alınan bilgisayarların tüm özellikleri (marka, model, CPU, AB,
ekran boyutu ve CD) aynı olmaktadır. Her parti alımın hangi projenin
bütçesinden yapıldığı, alman bilgisayarların özellikleri, birim fiyatı ve alım
tarihi saklanmaktadır. Alınan her bilgisayar firma için bir “varlıktır” ve her
bilgisayara biricik bir “demirbaş numarası” verilmektedir.
Çalışanlar, bilgisayar deposuna başvurarak geçici bir süre için dizüstii
bilgisayarları ödünç almaktadır. Her ödünç alma bir çalışana, bir bilgisayarın
belirli bir günde verilip, belirli bir günde geri alınmasıdır. Ödünç alma gün
düzeyinde yapılmakta ve verildiği gün alındığı günden en az bir gün sonra
olmaktadır. Bir çalışan aynı ya da farklı bilgisayarları birçok kez ödünç
alabilmektedir. Ödünç almada “ödünç alma” numarası gibi özel bir numara
kullanılmamaktadır.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Yazılım Projeleri Veri Tabanı’nın varlıkbağıntı çizeneğini oluşturunuz.
S.16. Bir şirketteki bölümler, görevler, personel ve hizmet içi eğitim bilgilerini
içeren bir Eğitim Veri Tabanı oluşturulmak isteniyor. Oluşturulacak veri tabanında
aşağıdaki veri ve bağıntıların yer alması isteniyor.







Şirketteki her bölümün numarası ve adı.
Şirkette yürütülen her görevin (genel müdür, müdür, müdür yardımcısı,
mühendis, sekreter, ..vb) numarası ve adı.
Şirkette çalışan her personelin TC Kimlik Numarası, adı soyadı, eğitimi, işe
başlama tarihi, yürüttüğü görev ve çalıştığı bölüm. Her personel bir bölümde
çalışıyor ve bir görevi yürütüyor. Ancak bir görevi birçok personel
yürütebiliyor; bir bölümde de birçok personel çalışabiliyor.
Hizmet içi eğitim kapsamında tanımlı her kursun numarası, adı ve saat
cinsinden süresi.
Tanımlı her kursun hangi görevler ile ilişkili olduğu. Tanımlı bir kurs birçok
görevle ilişkili olabilirken, bir görevle de birçok kurs ilişkili olabiliyor.
Tanımlı her kursun hangi tarihlerde açıldığı ve hangi personel tarafından
verildiği. Tanımlı her kurs değişik tarihlerde birçok kez açılabiliyor
(verilebiliyor); her verildiğinde ise kursun sorumlusu (öğretmeni) bir
personel oluyor.
Açılan her kursa öğrenci olarak hangi personelin katıldığı ve kurs sonunda
katılan her personelin başarı notunun ne olduğu.
Yukarıdaki açıklamalar ışığında (açıklamalarda yer almayan konular için,
gerekiyorsa, uygun varsayımlar yaparak) Eğitim Veri Tabanı'nın varlık- bağıntı
çizeneğini oluşturunuz.
Download