• Sonuç bulunamadı

Bilgisayar Yazılımlarının GeliĢtirilmesinde Dikkate Alınması Gereken Bilgiler

2. KAYNAK ARAġTIRMASI

2.3. Bilgisayar Yazılımlarının GeliĢtirilmesinde Dikkate Alınması Gereken Bilgiler

Yazılım, değiĢik ve çeĢitli görevler yapma amaçlı tasarlanmıĢ elektronik araçların, birbirleriyle haberleĢebilmesini ve uyumunu sağlayarak, görevlerini ya da kullanılabilirliklerini geliĢtirmeye yarayan makine komutlarıdır. Bir baĢka deyiĢle var olan bir problemi çözmek amacıyla bilgisayar dili kullanılarak oluĢturulmuĢ anlamlı ifadeler bütünüdür.

Yazılım olmaksızın bir bilgisayar sistemi, bir takım elektronik kartlar, kablolar ve mekanik bazı parçalardan ibaret bir cihazdır. Bir bilgisayar sistemi, üzerine iĢletim sistemi ve onun üzerine de diğer yazılımların yüklenmesi ve çalıĢtırılmasından sonra gerekli iĢlevleri yerine getirebilmektedir ( http://tr.wikipedia.org/wiki/Bilgisayar_ yazilimi)

Bilgisayar yazılımları genel olarak sistem yazılımları (System Software) ve uygulama yazılımları (Application Software) olmak üzere 2 grupta incelenebilir. Sistem yazılımları, bilgisayarın kendisinin iĢletilmesini sağlayan, iĢletim sistemi, derleyiciler(yazılım programında, yazılan programı makine diline çeviren program) çeĢitli donatılar gibi yazılımlardır. Uygulama yazılımları, bu kullanıcıların iĢlerine çözüm sağlayan örneğin çek, senet, stok kontrol, bordro, kütüphane kayıtlarını tutan programlar, bankalardaki müĢterilerin para hesaplarını tutan programlar, çeĢitli mühendislik problemlerin çözümünde kullanılan yazılımlar v.s. dir.

Programlama, bilgisayarın donanımına nasıl davranacağını anlatan, bilgisayara yön veren komutlar, kelimeler, aritmetik iĢlemler kısaca her Ģeydir. Diğer bir tanım olarak programlama, bilgisayar programlarının yazılması, test edilmesi ve bakımının yapılması sürecine verilen isimdir. Programlama, bir programlama dilinde yapılır. Bu programlama dili Java ve C# gibi nesneye dayalı bir dil olabileceği gibi C, assembly ve bazı durumlarda makine dili de olabilir. Yazılan kaynak kodu genellikle bir derleyici ve bağlayıcı yardımıyla belirli bir sistemde çalıĢtırılabilir hale getirilir. Ayrıca kaynak kodu, bir yorumlayıcı yardımıyla derlemeye gerek duyulmadan satır satır çalıĢtırılabilir. Derleyici, yazılan programları okuyup içerisinde mantıksal veya yazınsal hatalar olup olmadığını bulan, bulduğu hataları kullanıcıya göstererek programın düzeltilmesine yardım eden bir platformdur. Bunun yanında derleyici, yazılan kodda bir hata yoksa programı çalıĢtırıp sonucunu gösteren, ayrıca çeĢidine göre pek çok baĢka özelliği barındırabilen (bir değiĢkenin üzerine mouse ile gelindiğinde değiĢkenin özelliklerini gösterme, fonksiyonun üzerine gelindiğinde kod içerisinde fonksiyonu bulup yazıldığı satıra gidebilme, kodların daha kolay okunabilmesi için etiketler yardımıyla kodları toparlayacak bölgeler oluĢturabilme...) birer platformdur. Programcılar genelde programlamayı gerçek hayata benzetirler. Bir program yazmak veya bir problemi çözmek için öncelikle komutları unutmak ve çözümü gerçek hayatta yapıyormuĢ gibi düĢünmek gerekir. Komutlar sadece araçtır (http://www.frmtr.com/bilgisayar- bilgileri,2009).

2.3.1. Veri tabanı yönetim sistemleri

Veri tabanı yönetim sistemi(VTYS), yeni veritabanları oluĢturmak, veri tabanını düzenlemek, geliĢtirmek ve bakımını yapmak gibi çeĢitli karmaĢık iĢlemlerin gerçekleĢtirildiği birden fazla programdan oluĢmuĢ bir yazılım sistemidir. Veri tabanı yönetim sistemi, kullanıcı ile veri tabanı arasında bir arabirim oluĢturur ve veri tabanına her türlü eriĢimi sağlar. Veri tabanı ile ilgili bazı tanımlar aĢağıda listelenmiĢtir. Bunlar: i) Veri Tabanı Sistemi: veri tabanlarını kurmayı, oluĢturmayı, tanımlamayı, iĢletmeyi ve kullanmayı sağlayan programlar topluluğudur. Veri tabanı yönetim sistemi(VTYS) veya Database Management System(DBMS) olarak ta bilinir. Eğer söz konusu veri tabanları yapısı iliĢkisel yapıda ise, veri tabanı sistemi, iliĢkisel veri tabanı sistemi olarak adlandırılır. (Relational Database Management System).

ii) Veri tabanının tanımlanması: Veri tabanını oluĢturan verilerin tip ve uzunluklarının belirlenmesidir.

iii) Veri tabanının oluĢturulması: Veri için yer belirlenmesi ve saklama ortamına verilerin yüklenmesini ifade eder.

iv) Veri tabanı üzerinde iĢlem yapmak: Belirli bir veri üzerinde sorgulama yapma, meydana gelen değiĢiklikleri yansıtmak için veri tabanının güncellenmesi ve rapor üretilmesi gibi iĢlemleri temsil eder.

v) Verinin bakım ve sürekliliği: Veri tabanına yeni kayıt eklemek, eskileri çağırmak ve gerekli düzenleme, düzeltme ve silme iĢlemlerini yapmak gibi iĢlemlerin gerçekleĢtirilmesini ifade eder. Veri tabanı yönetim sistemi aynı zamanda verinin geri çağrılabilmesini de sağlar.

vi) Veri tabanını geniĢletme: Kayıtlara yeni veri eklemek ve yeni kayıtlar oluĢturmak gibi iĢlemleri ifade eder.

Bir veri tabanından beklenen özellikler, verileri koruması, onlara eriĢilmesini sağlaması ve baĢka verilerle iliĢkilendirilmesi gibi temel iĢlemleri yapabilmesidir. Veri tabanı kullanarak verilerden daha kolay yararlanılabilir, istenilen verilere çok kolay eriĢilebilir, çeĢitli sorunların çözümünde yardımcı olacak yeni bilgiler üretilebilir.

En önemlisi veriler bir merkezde toplanabilir, herkesin bu verilere yetkileri ölçüsünde eriĢmesi, düzeltmesi, silmesi veya görmesi sağlanabilir. Böylece veri giriĢinde ve veriye eriĢimde etkinlik ve güvenirlilik sağlanır.

Veri tabanı kullanıldığı zaman, bir kurulaĢa ait tüm operasyonel veriler merkezi bir yerde ve merkezi kontrol altında tutulmuĢ olur.

Bir veritabanı üzerinde birden fazla veri tabanı bileĢeni vardır; bu bileĢenler, saklanmak istenen ham bilginin belli bir formatta alınarak, veri haline gelmesi iĢleminde etkin rol oynarlar.

Veri tabanı yönetim sistemi programları, fiziksel hafızayı ve veri tiplerini kullanıcılar adına Ģekillendirip denetleyen ve kullanıcılarına standart bir SQL arayüzü sağlayarak onların dosya yapıları, veri yapısı, fiziksel hafıza gibi sorunlarla ilgilenmek yerine veri giriĢ-çıkıĢı için uygun arayüzler geliĢtirmelerine olanak sağlayan yazılımlardır. VTYS‟de kullanıcılar, roller ve gruplar vardır ve bunlar verileri tutmak üzere birçok türde nesne ve bu nesnelere eriĢimleri düzenleme görevi yaparlar. Her bir kullanıcının veri tabanı yöneticisi tarafından yapılan tanımlanmıĢ belirli hakları vardır. Bu haklar verilebilir, verilmiĢ haklar artırılabilir, kısıtlanabilir veya silinebilir. Örneğin

bir tablo ya da programı bir kullanıcı kullanabiliyorken bir baĢkasının hakları kaldırılabilir veya kısıtlanabilir.

Veri tabanı yönetim sistemleri hiyerarĢik ve iliĢkisel olmak üzere iki alt bölümde sınıflandırılmaktadır. Takip edilen bölümde hiyerarĢik ve iliĢkisel veritabanına ait tanımlamalar verilmiĢtir.

HiyerarĢik veri tabanları için kullanılan ilk modeldir. Bu veri tabanı tipi, ana bilgisayar ortamında çalıĢan yazılımlar tarafından kullanılmaktadır. IBM tarafından çıkarılan IMS bu türde en çok kullanılan yazılımdır. HiyerarĢik model, bir ağaç yapısına benzer. Model dahilindeki herhangi bir düğüm, altındaki n sayıda düğüme bağlanırken, kendisinin üstünde ancak bir düğüme bağlanabilir. HiyerarĢik yapının en tepesindeki düğüm noktasına kök denir ve bu düğümün sadece bağımlı düğümleri bulunur. Bu veri yapısını gösteren grafiğe de hiyerarĢik tanım ağacı denir. HiyerarĢik bir veri yapısı ve tanım ağacı ġekil 2.7‘de verildiği gibi bir veri modeli oluĢturur.

ġekil 2.7. Bir Ģirketin yönetim kademesinin hiyerarĢik yapısı

HiyerarĢik modelin PC ortamına uyarlanmıĢ bir veritabanı yönetim sistemi Ģekli bulunmamaktadır. Bu kısımda iliĢkisel veri modelini esas alan iliĢkisel veritabanları önemli bir yer tutmaktadır.

ĠliĢkisel veritabanı mantığı 1970 yılında Dr. Edgar F. Codd tarafından yazılan A Relational Model of Data for Large Shared Data Banks adlı makalede ortaya atılmıĢtır. Bu makalede Codd(1970); iliĢkisel mantığı tanıtarak, gerçek hayattaki nesnelerin tablo olarak nasıl ifade edilebileceğini, bunların nasıl kullanılabileceğini anlatmıĢtır. ĠliĢkisel sözcüğü veritabanında yer alan herhangi bir kaydın tek bir konu hakkında ve sadece o konuyla ilgili bilgileri içermesi gerektiğini ifade eder. ĠliĢkisel veritabanlarındaki yapıda veriler tablolar halinde saklanır. Tablolar alanlardan (fields) ve alanlardaki kayıtlardan (records) oluĢur. Bir tablodaki alanlar esas anahtar (primary key) olarak tanımlanabilirler. Kayıtlar ise tanımlanan anahtara göre sıralanırlar. Tablolar arasındaki iliĢkiler belirtilir ve bunlar matematiksel iliĢkilerle (bağıntı) temsil edilir. Bu iliĢkiler iki

tabloda da ortak bulunan alanlar aracılığıyla sağlanır. Ayrıca iki farklı konuyla ilgili bilgiler, mesela teklifler ve o teklife ait kalem bilgileri (döviz fiyatı, döviz kuru vs.), iliĢkili veri değerlerine bağlı bir bütün olarak yönetilebilir (ġekil 2.8). Örnek vermek gerekirse, verilen her teklifin firma adı ve firma adresini saklamak gereksiz olur. Bir teklif numarası gibi bir alan oluĢturularak buna ait bilgileri kalem bilgilerinin bulunduğu tabloda tutulursa ve bunları birbirine bağlanırsa gereksiz kalabalıktan kurtulmuĢ oluruz. ĠliĢkisel veritabanları verinin hızlı geri alınımını sağlamasıyla birlikte daha birçok özelliğe sahiptir.( http://e-bergi.com/2008/Ekim/Iliskisel-Veritabanlari 30.11.2012).

ġekil 2.8. Örnek bir iliĢkisel veri tabanı diyagramı.

2.3.2.Veri tabanı yönetim sistemi programları

Yazılımlarda kullanılan veritabanı yönetim sistemleri programları aĢağıda tanımlanmıĢtır.

i) MS SQL Server: Microsoft firması tarafından geliĢtirilen, bir orta ve büyük ölçekli Veri Tabanı Yönetim Sistemidir. ANSI SQL‟e eklentiler yazmak için T-SQL‟i destekler.

ii) Oracle: Daha çok yüksek ölçekli uygulamalarda tercih edilen bir Veri Tabanı Yönetim Sistemidir. ANSI SQL‟e eklentiler yapmak için PL-SQL adlı dil geliĢtirilmiĢtir.

iii) Sybase: Bir orta ve büyük ölçekli Veri Tabanı Yönetim Sistemidir. ANSI SQL‘e eklentiler yazmak için T-SQL komutlarını destekler. Ülkemizde daha çok bankacılık ve kamusal alanlarda tercih edilmektedir.

iv) Informix: Bir orta ve büyük ölçekli Veri Tabanı Yönetim Sistemidir.

v) MySQL: Genellikle unix-linux temelli web uygulamalarında tercih edilen bir Veri Tabanı Yönetim Sistemidir. Açık kod (open source) bir yazılımdır. Küçük-orta ölçeklidir.

vi) Postrage SQL:Bu da mysql gibi açık kod bir Veri Tabanı Yönetim Sistemidir.

vii) MS Access: Çoklu kullanıcı desteği yoktur. iĢletim sisteminin sağladığı güvenlik seçeneklerini kullanır. Bunun yanında belli sayıda kayda kadar.(1 milyon civarı) yada belli bir boyutun (yaklaĢık 25 MB) altına kadar bir sorun çıkarmadan kullanılabilecek bir küçük ölçekli Veri Tabanı Yönetim Sistemidir.

Benzer Belgeler