Ünite 8: Sistem Tasarımı

Giriş

Sistem gereksinimlerini karşılayacak olan birkaç “sistem temin etme stratejisini” değerlendirip, hangi stratejinin uygulanacağına karar verilmesi, tasarımda önemli bir başlangıç aşamasıdır.

Sistem sıfırdan oluşturulabilir, satın alınıp ihtiyaca göre özelleştirilebilir veya dışarıdan temin edilebilir. Proje ekibi, her bir alternatifi hayata geçirilebilirlik anlamında değerlendirmelidir.

Analiz aşamasında belirlenen işlevsel olmayan iş gereksinimleri, sistemin mimari tasarımını şekillendirecek sistem gereksinimlerini etkilemektedir. Sistemin nasıl oluşturulacağına dair göz önünde bulundurulması gerekenler; işletim, performans, güvenlik, kültür ve politikadır.

Kullanıcının, sistem ile etkileşiminin de tasarlanması gerekir. Sistemin girdi ve çıktıları, bir plan ya da yol haritası doğrultusunda tasarlanır. Arayüzü dikkate alarak yapılan tasarım kararları, arayüz tasarımı olarak adlandırılan tasarım belgeleri biçiminde düzenlenir.

Tasarım fazı sonunda, sistemin gerçeklenmesinde kullanılacak olan, fiziksel süreç modelleri, fiziksel veri modelleri, mimari tasarım, donanım ve yazılım özellikleri, arayüz tasarımı, veritabanı tasarımı ve program tasarımını kapsayan belge elde edilir.

Sistem Tasarım Yaklaşımları

Sistem tasarımında kullanılan birçok strateji ve teknik bulunmaktadır.

Model Güdümlü Yaklaşımlar

Yeni bir sistemin teknik ve gerçekleme açısından belgelenmesi amacıyla sistem modellerinin çizimine vurgu yapan sistem tasarım yaklaşımıdır. Model güdümlü analizde geliştirilen mantıksal modeller kullanılarak model güdümlü tasarım modelleri elde edilir. Sistem tasarım modelleri, yeni sistemin kurulması ve gerçeklemesi için bir tasarı niteliğindedir.

Modern Yapısal Tasarım: Bu yaklaşım, programların boyutu ve karmaşıklığı ile ilgilenilmesine yardımcı olur. Süreç tabanlı bir yaklaşım olan modern yapısal tasarım, sistemin süreçlerini, hiyerarşik olarak yönetilebilir bileşenlere ayırır. Böylece, gerçekleme ve yazılım güncellemesi daha kolay olur. Bu yaklaşım, yukarıdan aşağıya program tasarımı olarak da adlandırılır.

Bilgi Mühendisliği: Bu yaklaşım, bilgi sistemlerinin planlama, analiz ve tasarımı için kullanılan, model güdümlü ve veri merkezli ancak sürece duyarlı bir yaklaşımdır.

Prototipleme: Küçük ölçekli, tamamlanmamış ancak sistemin çalışan bir örneğidir. Tasarımcı ve kullanıcı arasında yakın bir çalışma ilişkisini gerektiren yinelemeli bir süreçtir. Geleneksel fiziksel tasarımda, analistler tarafından girdiler, çıktılar, veritabanlarının yerleşimini ya da yapısını gösteren resimler, diyalog ve yordamların akışı çizilir. Bu tasarımlar, öngörülememiş gereksinimler neticesinde hatalara açık olan ve zaman alan bir süreçte gerçekleştirilir.

Nesne Tabanlı Tasarım: Bu yaklaşım, en yeni tasarım stratejisidir. Bu yaklaşımda, veri ve işlem gibi kavram ayrımı ortadan kaldırılır. Bilgi sisteminin problem çözümü, nesnelere dağıtılır.

Hızlı Uygulama Geliştirme

Bu yaklaşım, sistem geliştirmeyi hızlandırmak için, bazı tekniklerin bir arada kullanılmasını sağlar. Veri güdümlü bilgi mühendisliği gibi yapısal teknikler, prototipleme ve ortak uygulama geliştirme teknikleri ile birlikte kullanılmaktadır. Kullanıcı gereksinimlerini tanımlamak ve nihai tasarımı elde etmek üzere, yapısal teknikler ve prototiplemenin etkileşimli kullanımı söz konusudur. Yapısal teknikler kullanılarak, geliştirici öncelikle iş gereksinimlerinin veri ve süreç modellerini oluşturur. Daha sonra prototipler, analist ve kullanıcıların gereksinimlerini doğrulamalarına ve süreç ile veri modellerini resmî olarak düzeltmelerine yardım eder.

Ortak Uygulama Geliştirme

Bu yaklaşımda, sistem sahipleri, kullanıcıları, tasarımcıları ve kurucularının geliştirme sürecine katılımları üzerine odaklanılır. Sistem tasarımı için ortak uygulama geliştirme oturumları esnasında, tasarımcılar birkaç tam gün süren atölye çalışmalarında yönetici rolünü üstlenir. Bu atölye çalışmalarında, farklı tasarım konuları ele alınır.

Sistem Temin Alternatifleri

Tasarım aşamasına kadar yapılan çalışmalar, sistemin proje ekibi tarafından tasarlanıp, geliştirilip, uygulanacağı düşünülerek yapılmıştır. Ancak birçok projede, sistem yazılımının bir kısmı ya da tamamı dış tedarikçilerden sağlanmaktadır. Bu tercihin yapılması organizas- yonlar için daha avantajlı olabilir. Bununla birlikte, bu seçeneğin tercih edilmesi, bu noktaya kadar yapılan çalışmaların yok sayılacağı anlamına gelmez. Analiz aşaması hâlâ, projenin başarısı için çok önemlidir. Bu aşamada, kullanıcı ve iş gereksinimleri belirlenmiş, tanımlanmış ve netleştirilmiştir.

Kurum İçi geliştirme

Kurum, yeni sistemi sıfırdan kurmak isteyebilir. Bazı durumlarda ise bu tercihin yapıl-ması kaçınılmazdır. Yeni sistem, ciddi sistem mühendisliği gerektirecek derecede, önemli olabilir ve çeşitli zorluklar içerebilir. Bu durumda, geliştiriciler proje gereksinimlerini karşılayabilecek hazır paket bir çözüm bulamazlar. Kurum içinde geliştirmek tek uygun seçenektir. Sistemi kurum içi sıfırdan geliştirmenin birçok riskleri vardır. Projenin başarılacağının bir garantisi yoktur. Sistem geliştiriciler diğer projelerde çalışmak üzere görevlendirilebilir. Teknik engeller, projede gecikmeye neden olabilir. Sistem kullanıcıları, uzayan zaman çizelgesinden dolayı tahammül gösteremeyebilir.

Ticari Paket Yazılım Alımı

Birçok iş ihtiyacı, sadece bir işletme için geçerli değildir. Bundan dolayı da bu ihtiyaçları giderecek paket yazılımlar ticari olarak satılmaktadır. Organizasyonlar da kendi çözümlerini oluşturmak yerine, bu ticari yazılımları satın almayı tercih edebilmektedir. Paket yazılımlar, yükleme yöneticisi gibi küçük bir fonksiyon aracından, kurumsal kaynak planlama (ERP) uygulamaları gibi büyük ölçekli sistemlere kadar geniş yelpazede olabilmektedir. Ancak büyük ölçekli yazılımların kurulumu, küçük uygulama paketlerinin kurulumuna göre daha zordur. aket yazılım almak, kurum içi geliştirmeye göre daha kolaydır. Ancak paket yazılım temini için de başlangıçta yapılan analizlerden faydalanılabilir. Satın alınacak paket yazılım için, ayrıntılı gereksinimler analiz aşamasında tanımlanmış olur. İşletme, satın alacağı paket yazılımda nelerin olması gerektiğini bilir. Böylece ihtiyaçlarına, en uygun alım tercihini yapabilir.

Hizmet Alımı

En az kurum içi kaynak gerektiren sistem temin alternatifi, hizmet alımıdır. Hizmet alımı, sistemin oluşturulması ya da temini için dış tedarikçi, geliştirici ya da hizmet sağlayıcıya işin verilmesidir. Hizmet alımı sağlayan işletmeler, uy- gulama hizmet sağlayıcıları olarak adlandırılmakta, yazılım uygulamaları ya da yazılımla ilgili hizmetleri internet üzerinden sunmaktadırlar. Yazılım teminindeki bu yaklaşımda, hizmet sağlayıcıların yazılım uygulamasına ev sahipliği yapıp yönetmesi söz konusudur. Sahip oldukları, yönettikleri ve bakımını yaptıkları sunucular üzerinde bu yazılımlar çalıştırılmaktadır.

Hizmet alımı sağlayan işletmeler, müşterilerinin ihtiyaçları doğrultusunda onlara özel uygulamalar da geliştirmektedir. İşletmenin, sistemi geliştirecek birilerini bulmasının da birçok faydası olabilir. Hizmet alımı sağlayan işletmeler, teknolojide deneyimlidir, daha çok kaynakları vardır ve deneyimli programcılara sahiptir.

Sistem Mimarisi ve Modelleme

Mimari tasarımın amacı, bilgi sisteminin yazılım bileşenlerinin sistemin donanım cihazlarına nasıl tahsis edileceğinin belirlenmesidir.

Mimari Tasarım Bileşenleri

Bir bilgi sisteminin ana mimari bileşenleri, yazılım ve donanımdır. Bütün yazılım sistemleri, dört temel fonksiyonu yerine getirir. Bunlardan ilki veri depolamadır. Çoğu bilgi sistemi, depolamak ve yeniden kullanmak üzere veriye ihtiyaç duyar. Bu veri, küçük bir dosyada ya da büyük veritabanlarında kaydedilebilir. Bunlar, veri ilişki diyagramlarında belgelenen veri varlıklarıdır. İkinci fonksiyon, veri erişim mantığıdır. Bu, veriye erişim için gereken işlemlerdir. Yapısal Sorgu Dilinde (SQLStructured Query Language), veritabanı sorguları bu fonksiyonu oluşturur. Üçüncü fonksiyon, uygulama mantığıdır. Veri akış diyagramları, kullanım durum’ları ve fonksiyonel gereksinimleri kapsayan belgelerdeki mantık olarak tanımlanabilir. Dördüncü fonksiyon, sunum mantığıdır. Kullanıcı komutlarının alınması ve bilginin kullanıcıya gösterimini kapsar (kullanıcı arayüzü). Sistemin donanımı ise üç temel bileşenden oluşur. Bunlar; istemci bilgisayarlar, sunucu bilgisayarlar ve bunların bağlantısını sağlayan ağ yapısıdır.

Uygulama Mimarisi

Mimari tasarım bir dizi kararın verilmesini gerektirir. Bu kararlardan biri, bilgi sisteminin merkezi mi yoksa dağıtık mı yapılacağıdır. Günümüzde birçok çağdaş sistem, ağ üzerinden dağıtık olarak oluşturulmaktadır. Ağ üzerinden depolanan verinin dağıtımı da karar verilmesi gereken bir konudur. Veritabanları, ağ üzerinde dağıtık ya da birden fazla kopyalı, müşteri/sunucu ya da ağ hesaplama örüntüsünde olabilir. Bütün yazılım kurum içinde geliştiriliyorsa gerçekleme teknolojisi seçiminde hangi programlama dili ve araçların kullanılacağı da seçilmelidir.

Kullanıcı Arayüz Tasarımı

Kullanıcı arayüz tasarımı, kullanıcının sistemle etkileşimini ve sistemin kabul ettiği ve ürettiği girdi ve çıktıları tanımlar. Böylece, kullanıcı arayüz üç temel yapı içerir.

Bunlardan ilki, gezinim mekanizmasıdır. Kullanıcı, sisteme talimatlar verir ve ne yapması gerektiğini söyler (örneğin; düğmeler, menüler vb.).

İkincisi, girdi mekanizmasıdır. Sistem bilgiler alır (örneğin, yeni müşteri eklemek için formlar gibi).

Üçüncüsü, çıktı mekanizmasıdır. Sistem, kullanıcıya ya da diğer sistemlere bilgi sağlar (örneğin; raporlar, web sayfaları vb.). Tüm bunlar, kavramsal olarak ayrık olmasına rağmen, aslında iç içelerdir.

Yerleşim planı: Kullanıcı arayüz tasarımının ilk prensibi, ekran form ve raporun yerleşim planı ile ilgilidir. Yerleşim planı, ekran ya da belge alanının düzenini belirtmektedir. Kişisel bilgisayarlar için geliştirilen birçok yazılım, Microso ya da Macintosh standartlarını izler. Bu yaklaşımda, ekran üç ana alana bölünür. En üst alan, kullanıcıya sistemde gezinim sağlar. Orta alan, kullanıcının çalışmalarını göstermek içindir. En alt alan, kullanıcının yaptıkları ile ilgili durum bilgisi içerir.

İçerik bilinci: Kullanıcı, her zaman sistemde neyin nerede olduğunu ve hangi bilginin gösterileceğinin bilincinde olmalıdır.

Estetik: Arayüzler tasarlanırken göze hoş gelecek şekilde olmalıdır. Ancak sanatsal objeler ile doldurulmamalıdır.

Kullanıcı deneyimleri: Kullanıcı deneyimi, arayüz tasarlanırken kullanıcının bilgisayar bilgi düzeyinin göz önünde tutulmasını ifade eder. Bir bilgisayar sistemi, deneyimli olan ve olmayan insanlar tarafından kullanılabilmektedir. Arayüz her iki tip kullanıcı için tasarlanmalıdır.

Tutarlılık: Tasarımda, sistemin daha basit olarak kullanılabilmesi için belki de en önemli faktördür. Kullanıcının ne olacağını kestirebilmesi gerekir. Şöyle ki kullanıcı sistemin bir bölümü ile etkileşim kurduğunda, kalan bölümleri ile nasıl etkileşim kuracağını da bilir. Aynı sistemin bütün parçaları, aynı şekilde çalışır.

Kullanıcı çabasını azaltma: Arayüz, kullanıcının işlerini tamamlamak için ihtiyaç duyduğu çaba miktarını en aza indirecek biçimde tasarlanmalıdır. Kullanıcı, en az sayıda fare tıklaması ya da klavye kullanımı ile bir noktadan diğerine erişebilmelidir.

Gezinim Tasarımı

Gezinim bileşenleri, kullanıcının eylemlerinin başarı ya da başarısızlık durumu ile ilgili mesaj gösterir. Gezinim sisteminin amacı, sistem kullanımını olabildiğince kolaylaştırmaktır.

Hataların önlenmesi: İlk prensip, kullanıcının hata yapmasını engellemektir. Kullanıcı hataları, zaman kaybına ve düş kırıklığına neden olur. Sıklıkla karşılaşılan hatalar, kullanıcının sistemi kullanmaktan vazgeçmesine neden olabilir. Hataları azaltmak için, komutlar ile eylemlere uygun etiketlemelerin yapılması ve sunulan seçeneklerin sınırlandırılması gerekir.

Hata telafisini basitleştirmek: Kullanıcı, mutlaka hata yapacaktır. Sistem, kolayca bu hatayı düzeltme imkânı sunmalıdır. Sistem “geri al” düğmesine sahip olabilir ve bu düğme ile hatalı işlem öncesine dönülebilir.

Tutarlı gramer düzeni kullanmak: Dil bilgisi düzeninin seçilmesi önemli bir karardır. Birçok komut, kullanıcıdan nesneyi (dosya, kayıt, kelime vb.) ve nesne üzerinde gerçekleştirilen eylemi (kopyala, sil vb.) belirtmesini gerektirir. Arayüz, önce nesne sonra eylem seçimi ya da önce eylem sonra nesne seçimini gerektirebilir.

Gezinim Kontrol Türleri

Kullanıcı arayüzlerini kontrol etmek üzere kullanılan geleneksel donanım ögeleri, klavye ve işaretleme cihazlarıdır. Son zamanlarda ses tanıma sistemleri de bu amaçla kullanılmaya başlanmıştır.

Diller: Kullanıcı, özel bir bilgisayar dilinde komut girişi yapabilir. Örneğin, Unix ve SQL özel komut dilleri kullanır.

Menüler: Çok genel bir sistem gezinim türü, menülerdir. Menüler, seçenekleri kullanıcıya düzenlenmiş fonksiyonel gruplar olarak sunar. Kullanıcı, menüde yer alan seçeneklere tıklayarak ya da seçenekle ilişkilendirilen kısayolu tuşlayarak kolayca işlem yürütebilir.

Doğrudan yönetim: Bu kontrol türü ile kullanıcı, komut girişini doğrudan arayüz nesneleri üzerinde çalışarak gerçekleştirir. Örneğin, Microsoft Word programında, bir nesnenin üzerine tıklanıp, kenarlarından çekilerek boyutunun değiştirilmesi ya da dosya gezgininde bir dosyanın bir dizinden diğerine fare ile taşınması gibi.

Girdi Tasarımı

Girdi mekanizmaları, sisteme veri girişini kolaylaştırır. Girdi denildiği zaman, genellikle klavye ve fare gibi girdi cihazları akla gelmektedir. Ancak, girdi bu cihazlara gelmeden çok önce başlar. İş verilerini bilgisayara girmek üze- re, sistem analistleri kaynak belgelerini, girdi ekranlarını, veriyi bilgisayara aktarmak için metot ve yordam tasarlamak zorundadır. Çevrimiçi ve toplu işlem, uygun olarak kullanılır. Girdileri sisteme aktarmak üzere iki genel yaklaşım kullanılır: Çevrimiçi işleme ve toplu işleme. Çevrimiçi işleme ya da başka bir ifadeyle hareket işleme, her bir girdi kaleminin (müşteri siparişi gibi) sisteme ayrı ayrı girilmesidir. Veri, kaynağında tutulur. Veri elektronik formatta, kaynağında ya da mümkün olduğunca kaynağına yakın tutulur. Birçok iş sürecinde, hâlâ bilgisayara aktarılan bilgiler aynı zamanda kâğıt formlarda da tutulmaktadır. Günümüzde birçok hareket işleme sistemi, veriyi kaynağından almak üzere geliştirilmektedir. Hiç kimsenin formdaki bilgileri yazmasını gerektirmeden, özel cihazlarla otomatik olarak veri sisteme aktarılabilmektedir. Klavye tuşlamaları azaltılır. Bir başka önemli prensip, klavye tuşlamalarının azaltılmasıdır. Tuşlamalar, zaman kaybına ve maliyet artışına neden olmaktadır. Sistem, kullanıcıdan mümkün olduğunca az bilgi girmesini istemelidir. Sistem girdiyi, veritabanından çekmek ve hesaplama yapmak gibi farklı yollardan temin etmelidir.

Girdi Türleri

Girdi yapılacak veri alanları, grafik kullanıcı arayüzdeki form üzerine yerleştirilir. Bu alanlar, veri girişinde kullanılır.

Metin Kutusu ; adından da anlaşılacağı gibi, metin girmek için kullanılır. Bunlar, sabit boyutta olabileceği gibi, kaydırma yapılabilecek şekilde sanal olarak sınırsız metin uzunluğu da olabilir.

Sayı Kutuları ; sayıların girilmesi için kullanılır. Bazı yazılımlarda, girilen değer otomatik olarak biçimlendirilebilmektedir. Örneğin, 10 girdiğinizde yazılım bu değeri 10.00TL olarak biçimlendirmektedir.

Seçim Kutusu ; kullanıcının önceden tanımlı olan bir listeden bir değer seçmesini sağlamaktadır. Seçenekler, anlamlı bir düzende tutulur.

Seçme Kutusu (Check Box); seçeneklerin tam listesini sunar ve her bir seçeneğin önünde kare kutu vardır.

Seçenek Düğmesi (Radio button); birden çok seçenek arasından sadece birinin seçilebileceği seçenek listesidir. Her bir seçeneğin önünde daire bulunur. Seçeneklerden sadece birinin seçilebileceği durumda kullanılabilir.

Ekranda Liste Kutusu (On-screen list box); bir kutu içerisinde seçeneklerin listesini sunar. Seçme kutusu ya da seçenek düğmesi için yeterli yer olmadığında kullanılır.

Açılır Liste Kutusu (Drop-down list box); seçilen seçeneği bir satır kutuda gösterir. Bu satır altında, bir liste açılır. Bu listeden yapılan seçim, tek satır kutuya düşer.

Bileşik Kutu (Combo Box); açılır liste kutusunun özel bir türüdür. Kaydırılan listeden seçilebileceği gibi, kullanıcıya klavyeden yazma imkânı da sunar. Deneyimli kullanıcılar için kısayol sağlar.

Kaydırma Çubuğu , -dikey ya da yatay- (Scroll Bar); bir sayı seçmek için, kaydırma çubuğu bulunan bir grafik ölçektir. Geniş sürekli bir ölçekte, yaklaşık bir sayısal değer girmek için kullanılır. Kaydırma, hassas olarak bir sayı seçmek istendiğinde, kullanıcı için güçlüğe neden olabilir.

Girdi Doğrulama

Sisteme girilen bütün verilerin doğruluğunun onaylanması gerekir.

  • Tamlık Kontrolü; gereken bütün verilerin girilmesini temin eder.
  • Biçim Kontrolü; girilen verinin doğru tipte ve biçimde olmasını temin eder.
  • Aralık Kontrolü ; sayısal verinin doğru minimum ve maksimum değerler arasında olmasını temin eder.
  • Tutarlılık Kontrolü ; veri kombinasyonunun geçerli olduğundan emin olunmasını sağlar. Veri alanları birbirleriyle ilişkilidir.
  • Veritabanı Kontrolü; verinin, veritabanı ile karşılaştırılarak doğruluğundan emin olunmasını sağlar.

Çıktı tasarımı

Çıktılar, sistem tarafından üretilen raporlardır. Ekranda, kâğıt üzerinde ya da daha farklı ortamlardan kullanıcıya sunulur.

Basılı Çıktı: Bilgisayar çıktısı için en yaygın ortam kâğıttır.

Ekran Çıktısı: Bilgisayar çıktıları için en çok gelişen ortam, bilginin çevrimiçi olarak gösterildiği bilgisayar ekranıdır. Ekran çıktısı, sistem kullanıcısına bilgiye uygun erişim imkânı sunmaktadır. Ancak bilgi ekranda geçicidir. Bilgi ekrandan kaldırıldığında, kullanıcının tekrar görüntülemesine kadar kaybolur.

Çoklu ortam: Çoklu ortam terimi, sayı, kod ve kelimeler gibi geleneksel biçim dışında sunulan bilgiyi tanımlar. Bu bilgi, grafikler, ses ve video içerebilir. Çoklu ortam çıktılarının kullanımı bilgi sistem uygulamalarının internete geçişi ile artmıştır.

Elektronik Posta (e-posta): Elektronik posta, modern iş dünyasında bir çıktı tipi olarak kullanılmaktadır. Yeni bilgi sistemlerinin, e-posta üzerinden çıktı üretme imkânı bulunması beklenmektedir.

Köprüler (Hyperlinks): Günümüzde birçok çıktı, web tabanlı olarak sunulmaktadır. Birçok veritabanı ve tüketici sipariş sistemleri, web desteğine sahiptir. Web bağlantıları, kullanıcının kayıt listelerine erişmesine, ilgilendiği kaydı aramasına ve farklı düzeylerde ayrıntılı bilgiye erişmesine imkân vermektedir.

Veritabanı Tasarımı

Uygulama sistemlerinin kullandığı, temelde iki tip veri depolama biçimi vardır: Dosyalar ve veritabanları. Ayrıca, her bir depolama biçiminin çok sayıda türü vardır. Örneğin, veritabanları nesne tabanlı ya da ilişkisel olabilir. Her bir tip, belirli özelliklere sahiptir ve belli koşullarda tercih edilebilir.

Veritabanı Kavramları

Alanlar (Fields): Bu kavram hem dosyalar hem de veritabanları için ortaktır. Alan bir dosya ya da veritabanında depolanan en küçük anlamlı veri birimidir.

Birincil anahtar , değeri sadece bir kaydı belirten alandır. İkincil anahtar, veritabanı için alternatif bir belirteçtir. Yabancı anahtar, bir veri tabanındaki farklı bir dosyanın kaydını işaret eder. Tanımlayıcı alan, veri depolayan bir başka alandır.

Kayıtlar (Records): Kayıtlar, önceden tanımlanan biçimde düzenlenmiş alanlardan oluşur. Kayıtlar da dosya ve veritabanları için ortak kullanılan bir kavramdır.

Dosyalar ve Tablolar: Benzer kayıtlar, dosya olarak düzenlenebilir. Veritabanı sistemlerinde, bir dosya tablo olarak adlandırılır. Bir tablo, bir dosyaya denk olan ilişkisel veritabanıdır.

Veritabanları: Bir veritabanı, gruplanmış bilgiler topluluğudur. Bu bilgiler bir şekilde, birbirleri ile ilişkilidir.

Veri Mimarisi; veritabanı ortamında, veri bir iş kaynağıdır. Bilgi sistemleri, bilgisayar programcılarına sunulmak ve son kullanıcıların esnek bir şekilde veriye erişimini sağlamak üzere bu kaynak üzerine kurulmaktadır.

Veritabanı mimarisi ; veritabanı teknolojilerini belirtir. Bu teknolojileri, veritabanı motoru, veritabanı kullanım araçları, analiz ve tasarım için CASE araçları, veritabanı uygulama geliştirme araçlarını içerir.

Veritabanı yönetim sistemi (VTYS); özel bir bilgisayar yazılımıdır. Veritabanını, oluş- turmak, erişmek, kontrol etmek ve yönetmek için kullanılır. Bu yazılımın çekirdeğini, ve- ritabanı motoru oluşturur. Motor, aldığı belirli komutlara karşılık veritabanın yapılarını oluşturulması ve sonrasında, veritabanındaki kayıtların oluşturulması, okunması, güncellenmesi ve silinmesi işlemlerini yürütür.

İlişkisel VTYS’ler günümüzde uygulama geliştirme için, en yaygın kullanılan veritaba- nı türüdür. Makine etkinliği düşük olmasına rağmen, geliştirme açısından bu veritabanı ile çalışmak çok kolaydır. İlişkisel veritabanları, veriyi bir dizi iki boyutlu tablolar olarak oluşturmaktadır.