Elektrik Mühendisliği · Sayı 387 · 1992 / 3
GÖRÜŞ VE ÖNERİLER
Bilgisayar, yazılım ve internet Görüş ve değerlendirme
- Yıl
- 1992
- Sayfa
- 30
- Okuma süresi
- 69 dk
- Görüntülenme
- 0
Konu
Bilgisayar, yazılım ve internet
İlgili: Mühendislik mesleği, meslek hakları ve istihdam
Anahtar kelimeler
- yazılım belgelendirme
- ASELSAN
- yazılım tasarımı
- kalite güvence
- DOD 2167A
- yazılım mühendisliği
Özet
Yazılım ürünlerinin tanımlanması, tasarımı, kodlanması, sınanması ve belgelendirilmesi süreçlerinin önemi ele alınarak, kalite ve güvenilirlik için standartlara uyulması gerektiği, ASELSAN'ın bu konudaki uygulamaları örnek verilerek anlatılmaktadır.
Tam metin
Metin PDF'ten otomatik çıkarılmıştır; tablo, şekil ve formüller eksik ya da hatalı olabilir. Özgün dizgi için PDF'e bakın.
Y AZILIM ÜRÜNÜNÜN TANIMLANMASI VE ÜRETİLMESİ
1.1 BELGELENDİRME
Y AZİLİM ÜRÜNLERİNDE dokümantasyon çok önemli bir yer tutmaktadır. Bu doküman larda kullanıcıya getirilen yenilikler, kolaylıklar açık bir dille anlatılmalı, kullanıcı dokümanlar da her soruya cevap bulabilmelidir. Şirket için de kalacak dokümanlarda ise ayrıntıya girme den ürünün üst düzey tasarım ve yaz.ıim yapısı anlatılmalı, tasarım sürekliliği gözetil melidir.
biliriz: analiz, tasarım, planlama, kod yazılımı, entegrasyon, test ve bakım. Her belge bir sonraki aşama için büyük bir bilgi potansiyeli oluşturmaktadır. Yazılımın güncelliğini koruya bilmesi, varlığını sürdürebilmesi, yeni isteklere cevap verebilmesi bu belgelerin düzenli ola rak tutulmasına bağlıdır. Böylece, kolay ve güvenilir bir yazılım ürünü ortaya çıkar.
Belgelerin hazırlanmasında izlenecek yolun da çok iyi tanımlanması gerekmektedir. Bu ta nımlamada uluslararası standartlardan fayda lanılmalıdır. Bunun sonucu, yazılım ürünü ev rensel bir nitelik kazanır. Daha sonra, bu belgelerin yazılımın içeriğine ve uygulama alanına göre uyarlanması gerekmektedir.
YAZILIM ÛRÛNÛNÛN TANIMLANMASI, üretilmesi ve hatta kullanılması aşamasında belgelendirme özel bir önem taşımaktadır. Bu sayede yazılım bir çok kişinin kullanabileceği, ileride değişen isteklere göre tekrar adapte edilebilecek veya bir kısmı bir başka ürün için de tekrar kullanılabilecek bir ürün haline gelir.
Yazılım üretilmeden önce yazılımdan bekle nen işlevlerin tanımlanması ve bu tanımlama nın herhangi bir belirsizliğe yol açmadan ya pılması gerekmektedir. Tanımlanan bu işlevler Yazılım Gereksinim özelikleri adını verebileceğimiz bir dokümanda belgelendiril melidir.
Yazılım üretilirken Yazılım Gereksinim Özel likleri dokümanındaki özellikleri karşılayacak şekilde tasarlanmalı ve tasarım Yazılım Tasa rım Dokümanında bekjelendirilmelidir. Bu do küman içeriği o kapsamda olmalıdır ki, daha sonra bu yazılım üzerinde bir diğer kişi veya grup istenilen değişiklikleri yapabilmelidir.
Yazılım kullanıcıya yönelik olarak da bekje lendirilmelidir. Bunlar arasında kullanıcı kıla vuzları, operatör kılavuzları sayılabilir.
GELİŞEN TEKNOLOJİYE paralel ola rak yazılımın önemi gün geçtikçe daha ön plana çıkmaktadır. Artık donanımla rın bile programlanabilir olduğu günü müzde, bir sistemin tanımı ve tarifi ister istemez büyük bölümü oluşturan yazı lım kısımlarının işlevlerine yönelik ol maktadır. Bir yazılım projesinde, en önemli kısım işlevlerin ve beklentilerin doğru ve tutarlı olarak tanımlanabilmesi ola rak ortaya çıkmaktadır. Bu tanımın yeterliliği doğrudan ürünün maliyetini, kalitesini, sonra dan değiştirilebilir (maintainable) olmasını et kilemektedir. Aynı öneme sahip bir diğer konu da ürünün belgelendirilmesidir. Tanımlamada ve tasarımda uyulacak belgelendirme stan dartları ise bütünlüğün korunmasını ve işlev lerin, kodun anlaşılabilir yazılabilmesini getire
BİR Y AZILIM ÜRÜNÜ geliştirirken uygulan ması gereken en temel noktalardan birisi de o yazılım ürününün belgelendirilmesidir. Belge lendirme işlemi, yazılım ürününün gelişmesine paralel olarak yürütülmelidir. Yani, yazılımın her aşamasında o aşamayı içeren bir belge hazırlanmalıdır. Bu aşamaları şöyle sıralaya
387 E L E K T R İ K M MM MÜHENDİSLİĞİ 1 4 1
Yanlım geliştirme süreci boyunca,
çektir. Bu nedenle yazılım ürününün, her aşa mada yeterli düzeyde belgelendirilmesi gerek lidir. İşlevlerin belirlenmesi, tasarım, test ve kalite kontrolü, entegrasyon ve üretim aşama ları için belgelendi/ilebilen, yeterli düzeyde do kümanları hazırlanabihn yazılım ürünleri ölü doğmayacak ve yaşam süreleri uzun olacak tır.
geliştirme
planında
öngörülen BATI ÜLKELERİNDE ÜRETİLEN yazılım larla birlikte ayrıntılı açıklama içeren bir el ki belgeler, her tabı sunulmaktadır. Ülkemizde bu konuda ye terli ciddiyet yoktur. Yazılım üreticilerinin, aşama sonrası kullanım kitaplarının yazılımların bir parçası üretilmeli, olduğu gerçeğini bilmeleri gerekir.
denetlenmen
Ayrıca, devletin de bu konuda düzenlemeler getirmesi gerekir. Örnek olarak, hiçbir yazılı
mın el kitabı olmadan piyasaya sunulamaya cağı gibi.
düzeltilmelidir.
GÜNÜMÜZDE YAZILIM geliştirme olabildi ğince karmaşık/aşmış ve bunun sonucu da ar tan yazılım geliştirme sonrası bakım maliyet leri olmuştur. Bu maliyetleri düşük tutabilmenin ve geliştirilmiş olan yazılımın ya şamını daha sağlıklı olarak tutabilmenin ka nımca en doğru yolu yazılımı gerektiği şekilde belgelendirmektir. Yazılım belgelendirilmesi işi aslında yazılım geliştirme yaşam sürecinin ayrılmaz ve bütünleyici bir parçası olmalıdır. Yazılım geliştirme süreci boyunca, Yazılım geliştirme planında öngörülen belgeler, her aşama sonrası üretilmeli, denetlenmen ve dü zeltilmelidir. Kuşkusuz sözkonusu işlemler ya zılım geliştirme maliyetini arttıracak, süreyi de uzatacaktır. Bu konuda ASELSAN'da önemli bir yol alınmıştır ve belgelendirmeye dayalı yazılım geliştirme benimsenmiştir.
1.2. TASARIM İLKELERİ
AVRUPA TOPLULUĞU içinde bilişim sis temlerinde yazılım faktörü toplam maliyetin 1980'de %45'ini kapsarken, 9O'lı yıllarda bu fi gür %80'e ulaşmıştır.
Günümüzde yazılım faktörünü her projede görmek mümkündür. Teknolojik gelişimi sür dürecek ürünlerin gerçekleşmesi yazılımın doğru bir şekilde kullanılması, geliştirilmesi ve denetimine bağlıdır.
BELİRLİ BİR YAZIUM ürününün tasarlan ması bir dizi ön çalışmayı gerektirmektedir.
Programın yazılacağı konuda önceden oluş muş talepleri incelemek, konuya ilişkin gelen teklifleri değerlendirmek, varolan yazılımlarda ki kullanıcı problemlerini takip etmek, konu hakkındaki yeni gelişmeleri öğrenmek, progra mı üzerinde koşacağı donanımdan ve hatta işletim sisteminden mümkün olduğu kadar ba ğımsız hale getirmek, yazılımın hızı ve çalışa bileceği minimum bellek kapasitesi gibi para metreleri önceden değerlendirip önem sırasını saptamak ve buna göre algoritma geliştirmek, gelecekte yapılacak değişikliklere ve ekleme lere uygun, modüler yapıda program tasaria mak, programın yazılacağı dili esnek ve yara tıcılığa açık diller arasından seçmek, tasarlanan yazılımın istenilen standartlarda olabilmesi için uygulanması gereken çalışma lardır.
Y AZILIM ÜRÜNLERİNDE performansı ve güvenilirlik yanında kullanım ve müşteri istek lerine uygunluk gibi unsurlar giderek önem ka zanmakta, yazılım ürünlerinin boyutu büyü mekte ve karmaşıklaşmaktadır. Bunun getirdiği sorunların üstesinden gelmek için de S/W Teknolojisi, tasarım ilkeleri ve olanakları, bunun yanında geliştirme prosesi iyileştirilme ye çalışılmaktadır. S/W ürünlerinin bir sıçrama yapabilmesi ise tıpkı H/W IC'Ier gibi S/W IC'Ieri mümkün kılan teknoloji ilerlemeleri sa yesinde olacaktır.
A A*% 387 E L E K T R İ K
IHâL
BİR YAZIUM ÛRÛNÛNÛN üretilmesi, bu konuya yakınlığı olan ve olmayan pek çok kimse tarafından yalnızca ya da daha çok "Kodlama" olarak algılanır. Bu doğru değildir. Yazılım ürünü tanımlanması ve üretilmesi bir kaç aşamadan oluşur ve bunların hepsi önemlidir.
Tanımlama için öncelikle gereksinimler ek siksiz toplanmalı ve değerlendirilmelidir.
Gereksinimlerden yararlanılarak yazılım ürününün işlevsel özellikleri belirienir. Belirie nen bu özellikler, bilgisayar ortamına aktarıla rak, ürünün sistem tasarımı gerçekleştirilir. Sistem tasarımında, yazılım ürününün termi nolojisi, ürün oluşturacak bölümlerin işlevsel tanımları, veri girişi, veri saklama, erişim ve paylaşım yöntemleri ile ürünü destekleyecek yayınlar ve standartlar saptanır ve belgelenir.
Tasarımdan sonra, önceden saptanan prog
ramlama yöntemleri/dilleri kullanılarak, ürünün
kodlanması aşamasına geçilir. Kodlamada,
ürünün ayrı program birimlerinden ya da alt
programlardan oluşmasına dikkat edilir. Her
program birimi ya da altprogramın tek bir işle
vi olmalı ve başında işlevi ile ilgili bil
gi yer almalıdır. Kodlamada da
«s
uygun ve standart bir belgele
me yöntemi kullanılmalıdır, f
Kodlama işleminin ar
dından sınama işlemi ya
pılır. Sınama, iki aşama
da gerçekleştirilir, önce,
program birimleri sına
nır. Bu sınamada, prog
ram biriminin, tasarımın
da tanımlanan işlevlerini
eksiksiz gerçekleştirmesi
ne ve kullanıcı arabiriminin
e
(ekran tasaramları, iletiler,
yönergeler, yardım gibi..) stan
dart olmasına dikkat edilmelidir.
Sınamanın ikinci aşaması sistem sınaması
dır. Bu aşamada, yazılım ürünü yayınlarıyla
birlikte bir bütün olarak sınanır. Yazılım ürünü
nün yayınlarıyla tutarlı olması önemlidir. Ya
zılım ürününde, hatadan sakınma ve korun
ma,
doğrulama yöntemlerinin de
kullanılmasına özen gösterilmelidir.
Belgelendirmeyle ilgili olarak, yazılım ürünü nün kullanıcıyı destekleyen yayınları olmalı dır. Ayrıca, ürünün geliştirme aşamalarını içe ren yayınlarının da olmasında yarar vardır.
YAZILIM, kazandığı öneme paralel olarak gittikçe daha karmaşık ve fazla satır sayısına sahip hale gelmektedir. Bu durumda boyuta bağlı olarak çeşitli sayıda kişinin bir arada ko ordineli olarak çalışmasını gerektiren yazılım tasarımının bazı ilkelere bağlı olmadan başa rıya ulaştırılabilmesi düşünülemez. Dolayısı ile çeşitli düzeylerde ilkelerin önceden ortaya konulması ve bunlara uyulmasının de netlenmesi önemli bir zorunluluktur. Bu ilkeler; proje veya firma bazında olabile ceği gibi analiz, tasarım, kodlama veya test düzeylerinde kuralları da içermeli dir.
HIZLA GELİŞEN YAZILIM ve dona ——
mm teknolojisi nedeni ile yazılım
üretiminde kullanılmak üzere
bir çok yöntem, yönerge ve
standart geliştirilmiştir. Bu
gelişim içinde, gerek as
keri gerekse sivil proje
ler konusunda çalı
şan
ASELSAN
Bilgisayar Hizmetleri
ve Yazılım Müdürlü
ğü, zaman içinde ya
zılım geliştirme konu
sunda
varolan
yaklaşımları özümse
yerek, özelleştirmiştir
ve ASELSAN içinde kul
lanılabilir standartlar, yö
nergeler ve yöntemler oluştur
muştur. Askeri projelerinde
zorlaması ile DOD 2167A standartı incelen
miş ve ASELSAN'da kullanılmak üzere uygu
lanmıştır. Ortaya konulan bu yöntem, yönerge
ve standartlar bir projede uygulanmış, halen
gündemde olan bir diğer projede de uygulan
maktadır.
387 E L E K T R İ K J y l / ) MÜHENDİSLİĞİ | 4 ü
Geleceğin bilgi
1.3. KALİTE, PERFORMANS, GÜVENİLİRLİK
toplumunun gereksinimlerini karşılayabilmek, yazılım teknolojisinin ürün yazılımları
SANAY İ ÜRÜNLERİ ne kadar iyi test edilir se edilsinler, kullanım sırasında bazı problem lerin çıktığı çok görülen bir olaydır. Yazılım alanında bu problemler kullanıcı hatalarından kaynaklanabildiği gibi, tasarımdan da olabil mektedir. O yüzden yazılım üreten şirketlerin çok iyi bir problem raporlama yapısı kurmaları gerekmektedir.
ve bunlara ait
yazılım destek sistemleri için geliştirilmesine bağlıdır.
BİR YAZILIM ÜRÜNÜNÜN kalite, perfor mans ve güvenilirliği belgelendirme ve tasa rım ilkeleri ile yakından ilgili olduğu gibi kulla nılan altyapı, geliştirme sistemi, metodolojiler ve insan kalitesine de doğrudan bağlıdır. Bu parametrelerin düzeyi yazılımın uygulama ala nı ile doğrudan ilgilidir ve ürünün maliyetini, geliştirme süresini doğrudan etkiler.
1.4 UYUM SINAMASI, BİÇİMSEL BETİMLEME TEKNİKLERİ
Yazılım üretimi için de aynı durum sözkonu sudur. Üretim ile ilgili problemler tümleştirme testinde görülmekte, üretimin ve testin tekrarı gerekmektedir.
Tanımlama ile ilgili problemlerin minimuma indirilmesi için tanımlamalarda netlik, otomatik kontrol ve dönüşüm imkanı sağlayan formal betimleme tekniklerine dayalı dillerin kullanıl ması (Specification Description Language, Message Sequence Chart, vb.) yoluna gidil melidir.
Yazılım üretimi ile ilgili problemlerin üretim safhasında saptanabilmesi için de formal be timleme tekniklerine dayalı dillerin gücünün "object oriented" teknikler kullanılarak genişle tilmesi ile elde edilen diller (Objective C, C++, vb.) seçilmelidir. Bu diller kavramların model lenmesi yolu ile prototiplerin üzerinde test yapma imkanı sağlamakta, böylece problem lerin saptanması ve çözümü tümleştirme tes tinden önce gerçekleşebilmektedir.
Geleceğin bilgi toplumunun gereksinimlerini karşılayabilmek, yazılım teknolojisinin ürün yazılımları ve bunlara ait yazılım destek sis temleri için geliştirilmesine bağlıdır.
ARABACKDĞLU
DONANIM VE Y AZILIM teknolojilerindeki gelişmelerin ve gereksinimlerin sürekli birbirini beslemesi sonucunda günümüz toplumundaki kullanılan her tür üründe yazılımın ağırlığının giderek arttığını görmekteyiz. Reklamların "akıllı" ürünler ile dolup taşmasına neden olan bu eğilimin geleceğin bilgi toplumunun gerek sinimleri paralelinde giderek hız kazanacağın dan şüphe yoktur. Bu nedenle özellikle yük sek teknoloji gerektiren ürünlerde ürün yazılımlarının tanımlanması ve üretiminde kul lanılan yöntemlerin yeniden ele alınması gere ği duyulmaktadır.
Geleneksel olarak ürün yazılımları ile ilgili gereksinimlerin tanımlanmasında doğal diller kullanılmaktadır. Tanımlamalardaki hata ve/ veya eksikler ancak tümleştirme testinde sap tanabilmekte, bu safhada gerekli düzeltmenin yapılması ise zaman kaybına ve maliyet artı şına neden olmaktadır.
YAZILIM ÜRÜNLERİNİN belirlenmesi, tasa rım ilkeleri, testing, formal tanımlama gibi ko nularda yurdumuzda bilgi birikimi bulunma maktadır. Bazı kuruluşlarda bu tür çalışmalar yapılıyorsa da bunu genellemek mümkün de ğildir. Bu konularda bazı standartların saptan ması ve yeni geliştirilecek ürünlere uygulan ması ileride yapılması beklenen yazılım ürünlerinin geliştirilmesinde yararlı olacaktır.
TÜM TEKNOLOJİ ALANLARINDA olduğu gibi yazılım üretiminde de kuramsal gelişme ler, uygulama ve özellikle de ticari uygulama ların beş on yıl önünde gitmektedir. Örneğin, yapısal programlama 1970'lerin başında irde lendi, bugün ticari uygulamalarda zorunlu; nesne yönelimi, 1980'lerde ortaya atıldı, pa zarda egemenlik kurması yakındır...
Gerçekleştirilen yazılım ürününün, istenene ne ölçüde uyduğu, konuyla igilenenlerin hep
kaygıyla üzerinde durduğu ve çözümü bir tür lü kesinliğe kavuşturulamayan bir sorundur. Özünde yazılım kullanıcısıyla üreticisi arasın daki iletişimin niteliğine bağlı olan uyum soru nu, bu iletişimde kullanılan dil ne ölçüde anla şılır, tekanlamlı ve yetenekli olursa o ölçüde çözülebilecektir. Başka bir deyişle kullanıcı, istemlerini ne denli açık, belirgin, eksiksiz, tu tarlı ve yanlış anlaşılmayacak biçimde ortaya koyarsa, üreticinin doğru iş yapması o denli kolaylaşır. Ancak bir dilin zenginliği ve yetkinli ği çoğu kez bağlam bağımlılığı, çok anlamlılık, vurgulama ya da bir kavramı karşılayan bir den fazla sözcüğün varlığı gibi özelliklerle bir likte ortaya çıkmaktadır.
Günlük iletişimde kullanılan doğal diller (ör., Türkçe, İngilizce, vb.), çoğu kez yazılım ge reklerinin ortaya konmasında yinelemelere, tutarsızlıklara ve kaçınılamayan çok anlamlı lıklara yol açabilmektedirler. İşte bu nedenler le, bilgisayar komutlarını anlaşılır biçimde or taya koymaya yarayan programlama dilleri gibi, kullanıcının yazılım istemlerini belirtmek te yararlanması için ortaya atılan Biçimsel Betimleme Dilleri (Formal Description Langua ges) ya da teknikleri, bir yandan yazılım üreti min, diğer yandan ise uyum sınamanın olmaz sa olmaz öğesi konumuna adaydır. Bugün, "ciddi olarak" yazılım üretimi yapan bir kurulu şun, belirtim ve tasarım aşamalarında bu bi çimsel yöntem ve araçlardan birini kullanma ması düşünülemez.
1970'li yıllarda genel yazılım uygulamaları, 1980'li yıllarda gerçek zamanda çalışan özel nitelikli uygulamalar ve iletişim sistemleri gibi birçok değişik alanı hedefleyen çok çeşitli Bi çimsel Betimleme yöntemi ortaya atılmış ve belli ölçülerde kabul görmüşse de günümüzde bu alandaki öneri, araştırma ve geliştirme ça lışmaları yoğun biçimde sürmektedir.
MİKROELEKTRONİĞE DAYALI İLETİŞİM ve bilgisayar teknolojilerinde yer alan baş döndürücü gelişmeler şu sorunu ortaya çıkar dı: sürekli değişen bir teknolojik ortamda ve çok sayıda üreticinin cihazlarını içeren bir bil gisayarlı sayısal iletişim sisteminde sözkonu su cihazların beraberce çalışabilmesi nasıl sağlanacaktır? Bu sorunun geçmiş benzerle rinden farkı bu cihazları birbirlerine bağlayan
arabirimlerin tanımının fiziksel tanımlardan (örneğin 0 volt 5 volt arasında gerilim çıktısı üreten bir cihaz gibi) çok daha karmaşık man tıksal tanımlara dönüşmüş olması, örneğin OSI (Öpen System Interconnection) modelin de session katmanının hangi servisi sağlaya cağı üzerine geliştirilen standart, örneğin ES TELLE betimleme dilinde yaklaşık 25 sayfalık bir biçimsel tanımı (daha doğrusu tanım prog ramını) gerektiriyor!
Biçimsel betimleme teknikleri özellikle kar maşık dağılımlı sistemlerin yazılım üretiminde şu işlevle» görebiliyor:
1) Arabirim standartlarının bir üst düzey ya zılım olarak hazırlanabilmesi için sözkonusu biçimsel dilin kullanılması.
2) Üst düzey yazılımından gerçek kul lanılacak yazılımlara kadar inen belirtim ayrıntılandırması (spec'ıficat'ıon refine ment) basamaklarının yani yazılım üreti minin otomotikleştirilmesi (en yoğun araştırma bu alanda).
3) Üretilen yazılımlara varış metodolo jisinde her aynntılandırma basamağında bir önceki basamak ile mantıksal tutarlı lığı sağlayan sınamanın yapılabilmes, """*"* ve böylece son yazılım ürünün güvenilirliğinin ve üretim veriminin artması.
4) Bugünkü varılmış tekniklerin gerçekçi bir sistem üzerinde ancak kısmi doğruluk sonuç larını garanti edebilmesi nedeni ile üretilen ya zılımın standartlara uyumunu sağlayacak test yöntemlerinin yarı otomatik olarak üretilebil mesi, yani uyum sınamasında biçimsel teknik lerin kullanılması.
5) Yazılım üzerinde yapılacak değişikliklerin (version change, maintenance) üst düzeydeki belirtimde yer alması ile beklenmeyen dolaylı hatalara yol açılmamasının sağlanması.
6) Bir yazılımın üretilimesinden önce üretici ile müşterinin yazılımdan istenilen işlevler ko nusunda üzerinde görüş birliğine varabile cekleri formal (biçimsel belirtim) ya da ya n formal bir dokümanın üretilebilmesi. Bu doküman, üretim öncesi anlaşmanın sağ lanması ile yazılım üretiminin maliyetini azal tabiliyor.
Biçimsel betimleme teknikleri olarak bilinen alan, yazılım teknolojilerinin gerek kuramsal
387 E L fc" K T R I K MÜHENDİSLİĞİ
Y AZILIM ÜRETİMİ VE
KULLANIMINDA ÇALIŞACAKLARIN
TANIMLANMASI VE BU KİŞİLERİN EĞİTİLMESİ
Ustdüzey tasarımcıyı yazılımın kendisinden biraz soyutlayıp, konuyu her açıdan elit bakış açısı ile ele alan bir insan olarak tanımlamak
gerek uygulama yönünden en Heri sayılacak dallarından biridir. Bu nedenle de bu araştır ma alanının ürünleri yakın bir gelecekte kar maşık yazılım üretiminin katma değerini katla yacak güce sahiptir. Türkiye'deki ileri teknoloji firmaları (iletişim ve askeri elektronik alanlarındaki firmalar) dünya piyasalarında re kabet etmedikleri için bu konu üzerine yete rince eğilmek gereğini şkndiSk duymamakta dırlar.
1.5 BENZERİ BAŞKACA KONULAR
GÜNÜMÜZ YAZILIM TOPLULUĞUNUN çokça konuştuğu konulardan birisi de Nesnel Kökenli Yazılım geliştirmedir. Bu konuda he nüz var olan bütün belirsizliklere karşın, aka demik olarak yapılan çalışmalarla birlikte, en düstride ve yazılım geliştirme evlerinde birçok deneyimler gerçekleşmektedir. Nesnel Köken li yazılım geliştirme konusuna üniversitelerin, yazılım geliştirme sektörünün ve endüstrinin değişik yaklaşımları vardır ve bu yaklaşımlar da ya daha Nesnel Kökenli yazılım geliştirme öncesi deneyimlerden ya da Nesnel Kökenli yazılım geliştirme deneyimlerinden kaynaklan maktadır.
2.1 ÜST DÜZEY TASARIMCIUĞI, AY RINTILI TASARIMCIUK
DÜNY ADAKİ KÜLTÜREL VE SOSY AL ge lişmelere paralel olarak ortaya çıkan birtakım ihtiyaçlar çeşitli alanlarda ama özellikle tekno loji alanında yeni fikirlerin ve bunları takip eden yeni uygulamaların doğmasına sebep olmaktadır. Yine günümüzde, teknolojinin ulaştığı ivme sayesinde ortaya atılan yeni bir fitlin uygulama alanı bulup pratik bir ürün ola rak markete sunulması sadece birkaç yıl al maktadır. Ve bu ürünlerin hemen hemen hep sinde yazılım, temel öğelerden biri olarak bulunmaktadır.
Bu fikrin ortaya çıkıp, bunun bir yazılım ürü nü olarak meydana getirilmesine kadar olan süreç bir bütün olarak ele alındığında ortaya çıkan panaroma şu şekilde özetlenebilir:
1) Fikrin ortaya çıkması,
2) Bu fikrin değerlendirilip, ilgili alanda uygu lama düşüncesinin olgunlaşması,
3) Değerlendirilen fikrin ayrıntılı olarak ince lenip ilgili ürüne nasıl uygulanacağının ortaya konması,
4) Ayrıntılı olarak ortaya çıkmış olan yapıyı yazılıma dönüştürmek,
5) Ortaya çıkan yazılımın test edilmesi ve
6) Müşteri ve/veya üretici firma tarafından kullanımı.
Ortaya konan ham bir fikrin yazılım ürünü olarak ortaya çıkmasına kadar geçen sürecin en başında bu fikrin alınıp pratiğe uygunluğu nun tartışıldığı süreç bulunmaktadır. Bu sü reçte yer alan insanlar da üst düzey tasarımcı grubunu oluşturmaktadır. Görüşümce, üst dü zey tasarımcıyı sadece tanımında yer alan tasarımcı" kelimesi ile değerlendirmemek ge rekir. Üst düzey tasarımcıyı, bu yazının ilk pa ragrafında da vurgulamaya çalıştığım gibi, ko nunun bütününden, fikrin kendisinden ayrı tutamayız. Diğer bir deyişle üst düzey tasa rımcıyı yazılımın kendisinden biraz soyutlayıp, konuyu her açıdan elit bakış açısı ile ele alan bir insan olarak tanımlamak gerekir. Genelde
•i AC »7 E L E K T R İ K
14D MÜHENDISLIĞI
üst düzey tasarımcıyı yazılımın içinde düşün mek istememe rağmen, tanımladığım eleman tipine karşılık gelen bir seçenek sunulmadığı için tanımı böyle sunmak gereğini duyduğumu ve bunu bir eksiklik olarak değerlendirdiğimi bildirmeden geçemeyeceğim.
Bu tip insanın yetişmesine gelince. Bu alan da bir eğitim verilemeyeceği açıktır. Çünkü üst düzey tasarımcı bir noktada ilgili alandaki ilk insandır. Bu konuda bir eğitim, alt yapıda verilemeyeceğine göre üst yapıya yönelmek gerekir. Y ani, bir şekilde o tanıma uygun va sıfları kazanmış insanlara yönelmek gerekir. Bu kişiler akademik kariyerlerini ilgili alanlarda sürdürüp, bu alanlarda çeşitli proje çalışmala rında bulunan veya yazılım sanatı ile ilgili ko nunun alt basamaklarından başlayarak alan larına pratik olarak hakim olmuş kişilerdir. Bu tanım içinde yer alan insanların normal aktivi telerinin bir bölümü eğitim olarak algılanabilir. Buna örnek olarak da bu insanların, uluslara rası standart koyucu kuruluşların çalışmaların da yer almaları veya aynı alanda çalışan diğer kuruluşlarla temaslarda bulunup, görüş alış verişinde bulunmaları verilebilir.
Bir fikrin üst düzeyde ele alınıp değerlendi rilmesinden sonra bunun uygulama haline ge tilmesine karar verilirse, bunun ürüne uygula nabilirliği ana hatlarıyla belirtilmeli ve uygulamanın nasıl yapılması gerektiği kalın çizgilerle özetlenmelidir. Bundan sonra sıra ayrıntılı tasarımcıya gelir.
Elinizde bir ürün var. Bu ürünün geliştiril mesi iki yönde olabilir. Y a ürünün bütününü etkileyen bir iyileştirmeye gidilir, ya da ortaya çıkan yeni fikirlerin uygulamaya dökülmesi sözkonusudur. Her iki durumda da yapılacak çalışmanın tüm hatları ile ortaya konması ge rekir. Ayrıntılı tasarımcının tanımı da burada yatmaktadır. Birkaçyüz satırlık bir yazılım ha zırlarken, belki ana hatları dışında fazla dü şünmeden kodlamaya geçilebilir. Ama bunun adına yazılım demek nerdeyse imkansızdır. Projenin boyutları yüzlerce kez büyütüldüğün de durumun vahameti daha da açık olarak or taya çıkar. Kodlamaya geçilmeden önce yapı lacak ayrıntılı tasarımın boyutları son derece geniş tutulacaktır. Bu noktada projenin gerek tirdiği bütün yapı, tüm ilişkiler, kullanılacak kavramlar açık olarak, ayrıntısı ile ortaya ko nacaktır. Bütün bunları yapabilmesi için ayrın tılı tasarımı yapan kişilerin ürüne son derece
hakim olmaları gerekir. Bu insanlar da konuya son derece hakim, fakat konuya yaklaşımları özellikle spesifik bir ürün açısından olan in sanlardır. Bunların eğitilmesi tabii olarak za man içinde "on job" training olarak gerçekle şecektir.
Artık sıra kodlamaya gelmiştir. Bu aşamada çalışacak insanlardan beklenecek en önemli şey ürünlerini tanımalarıdır. Zaten bu nokta dan itibaren çalışan tüm grupların özel olarak çalıştıkları ürüne veya ürünün boyutları çok büyükse, özel olarak ilgilendikleri ürün parça sına hakim olmaları beklenmelidir. Programcı denilen grup ayrıntılı olarak ortaya konan is tekleri o yazılım projesi açısından ürüne en iyi şekilde uygulayabilmek için ürünü tanımak ya nında yazılım felsefesine hakim olması bek lenmelidir. Bu tip elemanın çıkış noktası bugün için üniversitelerimizin neredeyse müspet bilimlerle ilgili tüm branşlarıdır. Elbetteki özellikle yazılım alanında üni versite eğitimi görmüş elemanların varlı ğı, yazılıma teknik olarak yakın olmaları açısından pozitif bir puandır, ancak so nuçta yazılım bir matematiksel zeka oyunudur. Ve herkese açık olmalıdır.
Y azılım projesinin kodlama aşamasını __ da geçtiniz. Şimdi sıra bir yazılım proje < sinin en önemli aşamalarından biri olan ama nedense genellikle pek önemsenmeyen kıs mına, test etmeye gelmiştir. Bir yazılım proje sinin test etmek sadece istenenin yapılıp ya pılmadığını test etmek değildir. Beklenmeyen durumların değerlendirilmesi ve test edilmesi gerekir. Okul yıllarında yazılan birkaç satırlık programlarda bile son derece doğruymuş gibi gözüken mantıkların koşturulduğunda nasıl büyük hatalar verdiği unutulmamalıdır. Y azı lım ile ilgili tüm kitapların ilk sayfalarında y azı lımın birinci kuralı gibi ortaya konan "hatasız program yazılamaz" düşüncesi özellikle hacim açısından çok büyük olup zamanı kısıtlı proje lerde daha da büyük bir önem taşımaktadır. (Piyasa koşullarında da her zaman zaman kı sıtlaması vardır.) Dolayısıyla, bu düşünceden 'L yola çıkılarak teste büyük önem verilmesi ve ™ bu iş için ürüne olduğu kadar test araçlarına hakim elemanların kullanılması gerekir. Bu eleman küçük ölçekli bir çalışmada program cının kendisi de olabilir. Ancak çok büyük öl çekli bir projede özel olarak yetiştirilmiş ele manlar bulundurulmalıdır. Bu konuda üniversitelerin eğitim programlarına bir veya
387 E L E K T R İ K M M f
| Hl
iki dönemlik dersler koymak şu an için olmasa bile yakın gelecekte Türkiye'de yazılım alanın da büyük gelişmeler olduğu takdirde gerekli olacaktır. Şimdilik ihtiyacı olan kuruluşlar bu tip elemanları kendi bünyelerinde eğitmek du rumundadır.
Test, bir yazılım ürününün gerçek anlamda markete sunulmasından önceki en önemli sü reçtir. Burada saptanan hatalar programlama sürecine in put olarak geri dönecektir. Sonun da, ürünün piyasaya çıkabilmesi için gerekli olan şartları sağladığına inanıldığında, kullanı cıların hizmetine sunulacaktır. Bu aşamada kullanıcı grubu kavramı ortaya çıkmaktadır. Genellikle ürünü satın alan kuruluş dahilinde bu ürünün günlük kullanımını gerçekleştiren insanlar olarak tanımlayabileceğimiz bu grup elemanların kaynağı yine üniversitelerin ilgili alanlarından mezun olanlar olacaktır. Bu in sanların belli bir ürünün kullanımında uzman laşması gerektiğinden o ürünün kullanımı ile ilgili olarak ürünü gerçekleştiren kuruluş tara fından eğitime tabi tutulmalıdır. Bu hususta ayrıca yine ürünü gerçekleştiren firma tarafın da gerekli dokümanın, kullanıcı kılavuzlarının sağlanması gerekir.
Aynntlı tasarımcılık aşaması ise ilkine göre daha değişik disiplinler gerektiren ve kodiama süresini ve ürünün kalitesini belirleyen bir sü reci oluşturur.
Her iki aşamada çalışacak kişilerin metodo lojiler, analiz ve tasarım yöntemleri gibi konu larda konulmuş kurallar ve kriterleri de öğre necek ve özümseyecek şekilde eğitilmeleri başarılı ürünlerin kısa sürede ortaya konulma sında önemli bir faktör oluşturacaktır.
ÖZELLİKLE ÜST DÜZEY TASARIMCILIĞI kavramı üzerinde durmak istiyorum. Sizin ko nunuzun ana başlığında da görülmekte oldu ğu gibi, siz kendinizi tamamen yazılımla sınır lamakta mısınız? Yani bir "System Design" diyebileceğimiz bir faaliyette rol almak duru munda mısınız? Yoksa "System Design" ça lışması sonucunda, tamamen (100%) yazılım ağırlıklı çalışmalar tanımlandıktan sonra mı devreye giriyorsunuz?
"System Design" yapan ekip mesela Tele komünikasyonda şebeke mimarisi, işaretleş mesi ve CCITT, ETSI gibi örgütlerin çalışma larından haberdar olmak, onları yorumlamak ve ne yapılması gerektiğine karar vermek du rumundadır.
Elbette bu çalışmaların sonucunda, yazılı mın da üst düzey ve ayrıntılı tasarımı gerek mektedir. Herhalde en akılcı çözüm, yazılım daki üst düzey tasarım ekibini "System Design" ekibi ile birlikte çalıştırmak olsa ge rek.
YAZILIM GELİŞTİRME yaşam döngüsünde en temel kısmı üst düzey tasarımcılığı oluştur maktadır. Bu aşama genellikle hızlı geçilmek te, yapı ve veri akış analizleri ile vakit geçir meden kaba bir tanımlama ile diğer aşamalara geçilmektedir. Halbuki sonuçta olu şacak ürün için bu önemli aşamada yeterli ça lışma yapılmalı, tasarımı yönlendirecek belge ler hazırlanmalıdır.
1) YAZILIMLA UĞRAŞANLAR, hangi sevi yede olurlarsa olsunlar, şunu hissetmelidirler: Dünyanın en karmaşık yazılımı gerçekte çok gelişmiş bir OYUNCAKlan başka bir şey de ğildir. Bu sözümle yazılımın DETERMİNİST tabiatının altını çizmek istiyorum. Ne kadar karmaşık olursa olsun, her bilgisayar progra mı, çıktısı bütünüyle girdisi tarafından kontrol edilen bir kara kutu (veya bir FONKSİYON) olarak görülebilir.
148 387 E L E K T R İ K MÜHENDİSLİĞİ
in put
output
output = f (input)
Bütün mesele, hiç atlamadan bütün girdileri saptamak ve yazılımın gerçekleştirdiği fonksi yonunun ne olduğunu açığa çıkarmaktır.
Basit görünen bu konunun üzerinde duruyo rum. Çünkü yazılımla uğraşan birçok kişinin başkaları (özellikle de yabancı memleketler deki yabancı şirketler) tarafından yazılan programlara esrarlı, içine girilemez konular olarak baktığını, birçoklarının da aksine, ne ol duğunu tam anlamadan, noktasal bir incele meden sonra (belki de daha derin bir incele meyi imkansız gördüklerinden) bir programı değiştirebilecekleri kanısında olduklarını dü şünüyorum.
2) İyi bir yazılım üretmek için, ille de üniver site mezunu olmak gerekmediğine, düşünce yapısının (METOT VE DİSİPLİN) en önemli faktör olduğuna inanıyorum. Bu söylediğim bilhassa küçük ve orta boy yazılımlar için ge çerli. Bu tip yazılımlarda, sözünü ettiğim özel liklere sahip bir tek kişi (bu çok küçük bir grup da olabilir) üst düzey tasarım aşamasından kodlamaya kadar, yazılımın her adımını ger çekleştirebilir.
Grup ne kadar büyürse, grup içindeki koordi nasyonu sağlamak o kadar güçleşecektir. Bir örnek vermek gerekirse, 5 kişinin 20 ayda bi tireceği bir yazılımı, 10 kişi 10 ayda değil, 15 ayda (belki daha bile uzun bir zamanda) biti recektir. Yazılımın kalitesinin daha kötü olma sı da rahatlıkla beklenebilir.
3) Program yazılımcılığının üstünde ayrıntılı tasarımcılık, üst düzey tasarımcılığı gibi ko numların varlığını, ancak çok büyük şirketler de, başka çare kalmadığı için başvurulan bir çözüm olarak görüyorum. Bu durumda bile, ayrıntılı tasarımcılar ve üst düzey tasarımcılar mutlaka çekirdekten yetişmiş olmalı ve yapıl ması için önlerine iş koydukları alt seviye çalı şanların (program yazanlar) pratikte karşılaş tıkları zorlukları mutlaka yaşamış olmalılar. Unutulmamalıdır ki, sonuçta çalışacak olan program üst düzey tasarımcının ta sarımı değil, alt seviye programcı tara fından yazılan kodun bizzat kendisidir. Her durumda, üst seviye tasarımcılar ürettikleri tasarımı bizzat önlerine alıp, en alt seviyeye kadar inebilme yeteneği ne sahip olmak zorundadırlar.
Yazılım, her seviyede çalışan kişiler tarafından biraz mühendislik bilgisi, ama —— daha çok sağlam bir düşünce yapısı gerekti ren bir SANAT olarak algılanmalıdır.
Büyük çaplı yazılımlarda da, çalışmayı ger çekleştirecek grubun mümkün olduğu kadar KÜÇÜK tutulması gerektiği kanısındayım.
2.2 PROGRAM Y AZILIMCI LIĞI, PROGRAMCILIK
Y AZILIM FİZİKSEL ÖZELLİKLER içerme yen, insan fikirlerinin ifade edildiği bir üründür. Yazılım mühendisliği ise yazılım karakteristik lerini yansıtan kavram ve teorilere dayalı, yeni bir mühendislik disiplinidir. Bu disiplinde esas alınan, insanın akılla ilgili faaliyetleri (intelli gent human activities) ve bunların bilgisayar mimarisi ile olan bağlantı ilkeleridir. Gelenek sel yazılımcılıkta kalite ve verimlilik, yazılım mühendisinin kapasitesi ile sınırlı kalmaktadır. Günümüzde ise yazılımın kalite ve verimliliğini insan kapasitesinin sınırlarının ötesinde arttı rabilmek amacıyla, tıpkı malzeme üretiminde olduğu gibi, yazılım üretim otomasyonu için kurallar geliştirilmiştir.
Yazılım artık bireyin değil, bir ekibin ürünü
Yazılım üretiminin endüstriyel bir üretim süreci olarak değerlendiril mesi ve devletin de bu üretimin kârlılığı için gerekli yasal
olmakta ve çoğu yazılım projesi değişik yete nek ve becerilere gereksinim duymaktadır. Bu da giderek yazılımın çeşitli alanlarında uz manlaşmayı gerektirmektedir. Yazılım tekno lojisindeki ilerlemeye paralel olarak eğitimin de güncelleştirilmesi, temel eğitim ve uzman lık eğitimlerinin kapsamlarının yenilenmesi zorunlu olmaktadır.
Bu kapsamda değişik bilgisayar sistemleri nin özellikleri tanıtılmalı, çeşitli düzeylerdeki bilgisayar dilleri kullanım alanları açısından kı yaslanmalı, hata arındırma teknikleri ile yazı lım kalite, performans ve güvenilirlik unsurları ele alınmalıdır. Değişik yazılım alanlarının ge rektirdiği teorik ve uygulamalı eğitim verilmeli dir.
düzenlemelere
gitmesi
PROGRAM YAZICILIĞI, kimileri tarafından çok önemli, kimileri tarafından ise daha az önemli bulunur. Sonuçta hedeflenen üründe çalışacak olan "şey" programcıların yazmış ol duklarıdır. Bu nedenle de çok önemlidir.
Ancak tasarım etabında verilen kararlar yanlışsa, programcının yapmış olduğu bizi doğruya götüremez. Bu nedenle de program cılık tasarımcılığa göre ikinci derece önemli gözükmektedir.
2.3 TESTÇJÜK
Y AZİLİM TESTİ GENELDE, üzerinde çalı şacağı fiziksel sistemle beraber yapılmaktadır (eğer PC'de çalışan bir muhasebe programı değilse). Bu nedenle test kadrosunun daha önce tanımlandığı gibi Sistem seviyesinde bilgili olması gereklidir.
2.4 KULLLANICIUK let ÖZEL
PİYASAYA VERİLEN YAZILIMLARIN pa keti üzerinde, kullanıcının hangi düzeyde bilgi ye ihtiyacı olduğunu belirten işaretler konul ması yararlıdır. Bu uygulama sadece Türkiye için değil dünya için de geçerlidir. (Otellerin yıldız sayıları gibi bir derecelendirme olabilir) örnek olarak, oyunlar hemen hemen hiçbir bilgi gerektirmez. Buna mukabil bazı paketler hiç olmazsa işletim sistemini bilmeyi gerektirir, vb.
Y AY GIN OLARAK BİLGİSAY AR kullanımı na geçerken, önce kullanıcıların; eğitim sevi yeleri, bilgisayara olan alışkanlıkları ve kulla nım amaçları belirlenerek gereken eğitimin verilmesi, çeşitli yazılımlardan alınan verimi daha üst seviyelere çıkaracaktır.
Ticari amaçlarla hazırlanmış olan paket programlarda sürekli yapılan versbn değişik likleri, temel eğitiminde noksanları bulunan kullanıcılar için sorunlar yaratmakta ve kulla nılan paket programdan tam kapasite ile ya rarlanılmamasına neden olmaktadır.
150 387 E L E K T R İ K MÜHENDİSLİĞİ
Y AZILIM SANAY İNİN DURUMU VE SORUNLARI
3.1 GÜNÜMÜZ BÜY ÜK SANAY İ ŞİRKETLERİNİN Y APİSİ İÇİNDE Y AZİLİM ÜRETİMİ
ÜLKEMİZDE Y AZİLİM SANAY İNİN kurul ması ve geliştirilmesi için büyük sanayi şirket lerinin konuya ilgi göstermeleri ve gerekli yatı rımı yapmaları, gelecekte sıkıntıya düşmemekte ve çağı yakalayabilmek için ge rekli görünmektedir. Çünkü, bu şirketlerin üretimlerinin çeşitli aşamalarında bilgisayara, dolayısıyla yazılıma duyacakları gereksinimin gittikçe artacağını kestirmek hiç de güç değil dir. Belirli standartlarda üretilen donanım dışa lım yoluyla sağlanabilir. Buna karşın donanı mı kullanıcının hizmetine sunacak yazılım araçlarının dışalım yoluyla sağlanabilmesi her zaman olanaklı değildir. Dışardan sağlanan yazılımın Türkiye'de etkin bir şekilde kullanıl mamasının nedenlerinden biri dH farklılığıdır. Ayrıca, çeşitli üretim, otomasyon, kontrol, eği tim işlemlerinde uygulanan yol ve yöntem farklılıkları da dış ülkelerde üretilen yazılımları bizim kendi yapımıza uydurmamızı zorlaştır maktadır.
Yazılım üretiminin endüstriyel bir üretim sü reci olarak değerlendirilmesi ve devletin de bu üretimin kârlılığı için gerekli yasal düzenleme lere gitmesi gerekir. Bir başka deyişle, yazılı mın da endüstriyel bir ürün olduğunun kabul edilmesi, herhangi bir endüstri ürünü gibi pa zartanabilmesi ve üreticilerin ürünleri üzerin deki yasal haklarının korunması gerekir. Kü çük yazılım şirketlerinin devletin gerekli düzenlemeleri yapabilmesi için bir baskı gru bu oluşturamadıklan görülmektedir. Bu konu larda büyük sanayi şirketlerimizin öncülük et mesi devletin de bu alandaki sorunlara daha fazla ilgi göstermesini sağlayacaktır.
Sanayi kuruluşlarımızın oluşturacağı yazı lım bölümlerinin hem kendi kullanımları hem de iç ve dış piyasalar için üretim yapabilmesi olanaklıdır. Bunun için çok büyük yatırımlar gerekmemektedir. Gittikçe ucuzlayan dona nım ve yetişmiş insan gücü iyi kullanıldığında başarılı olunamaması için hiçbir neden yoktur.
ASKERİ SİSTEMLERDE Yazılım Geliştirme ve Uygulamadaki Problemler
Yazılım geliştirme sürecinde yazılıma gere ken önemin verilmemesi, yetersiz doküman tasyon, ihtiyaçların tanımlanamaması, stan dartların belirlenmemiş olması gbi problemler gözlenmektedir. Ancak hemen belirtilmesi ge reken bir husus bu problemlerin sadece aske ri yazılımlara özgü olmadığı, genelde yaşandı ğıdır.
Standartlara uygun tariflenmiş, tasarımlan
mış, geliştirilmiş, test edilmiş, kalite güvenliği
sağlanmış ve bütün bu süreçlerde doküman
tasyonun tam olarak yapılmış olduğu bir
sistemin maliyeti, idame masraflarının
geliştirme masraflarından çok daha yük
sek olduğu göz önüne alındığında, daha
ucuza gelecektir. Ancak ihtiyaç sahbi
makamların sadece geliştirme maliyetle
rine göre karar vermesi sonucu idamesi
mümkün olmayan ve sonuçta kullanıla
mayan sistemlere sahip olması ve bu
nun yol açabileceği kayıplar çok büyük
miktarlara ulaşmaktadır.
—
ÖNERİLER
Türkiye'de askeri yazılım teknolojisi son yıl larda gelişmekte olmasına rağmen henüz ol ması gereken düzeye ulaşamamıştır. Silahlı Kuvvetlerin ihtiyaçlarının teknolojik gelişmele rin en büyük itici gücü olduğu daha önce de belirtilmiştir. Ancak bu ihtiyaçların. Silahlı Kuv vetler Ûniversite Endüstri işbirliğiyle sağlana bileceği, batıdaki örneklerle kanıtlanmıştır. Ni tekim ABD'de özellide Ûnh/erske Endüstri işbirliğinin bu ülkeyi teknolojik olarak bugünkü konumuna getirdiği herkes tarafından kabul edilen bir gerçektir. Arzulanan düzeye gelebil mek için Devlet, TSK, Üniversite ve endüstri kuruluşlarınca alınması gereken önlemlerin en kısa zamanda gerçekleştirilmesi bu süre cin kısaltılması ve ulusal savunma sistemleri mizde bağımsız olmamız açısından gereklidir. Alınması gereken önlemleri sadece yazılıma yönelik olarak düşünmemek, askeri yazılımın askeri sistemlerin bir parçası olduğunu göz önüne alarak, bir bütünün içinde görmek gere kir.
387 E L E K T R İ K 4 £ 4 MÜHENDİSLİĞİ 1 0 1
•••]—•
Üniversitelerin güçlendirilmesi
Araştırma Geliştirme programlarının belir lenmesi
Eğitim programlarında düzenlemeler
Üniversite Endüstri işbirliğinin sağlanması
Ortak geliştirme programları
Kaynak israfını önlemek
Standartların belirlenmesi
İhtiyaçların tanımlanması
Teşvik tedbirlerinin en kısa zamanda belirle nip uygulanması gibi önlemlerin bu çerçevede alınması ge rekli görülmektedir.
TÜRKİY E BAZI ÇEVRELERCE sık tekrar edildiği gibi yazılım sanayinde önemli bir kay nak yahut, avantaja sahip değildir. Bunun ne deni, konuyla ilgili eğitim kurumlarının (bilgi sayar bölümlerinin) görece azlığı ve olan kararındaki pek çoğunun gerek öğretim kad roları gerek teçhizat açısından yetersizliğidir. Türkiye'nin eğer varsa, bir avantajı gelişkin sayılabilecek bir sayısal iletişim şebekesine sahip olması ve bu ve benzeri alanlarda üre tim yapan birkaç büyük şirketin biri kimleridir. Bu avan tajın uluslararası düzeyde kullanıla bilmesi için ilgili eği tim kurumlarına yatırım yapılması ve sözkonusu şir ketleri dış piyasala ra itecek siyasi perspektifin ve ka rarlılığın gerçekleş mesidir. İç piyasaya yönelik yazılım sa nayi de ancak böy le dış perspektifli bir altyapı üzerinde sıçrama yaparak yeşerebilir.
152 387 E L E K T R İ K MÜHENDİSLİĞİ
GÜNÜMÜZDE "YAZIUM" ya da "Yazılım ile çalışan sistemler" üreten firmaların temel problemleri yazılımın yatırım ve bakım mali yetlerinin saptanması, kontrol altında tutulma sı ve optimize edilmesidir. Bu nedenle amaca uygun bir tasarım ortamı ve kontrol süreçleri gereklidir. Ancak bunlar tek başlarına yeterli değildir. Geliştirilen yazılımın mimarisi de kul lanım amacı ile uygun olmalıdır.
ASELSAN İÇİNDE Y AZILIM üretimi
ASELSAN, Banka Alarm Sistemi, Otoyol Ücret Toplama Sistemi, Otoyol Acil Yardım Sistemi gibi bilgisayar denetimli sistemler ge liştirmiştir. Bu tür sistemlerin ortak özelliği sa dece yazılımdan oluşmayıp (örneğin bir mu hasabe yazılımı gibi), birçok donanım ile birlikte iç içe çalışmaları ve genellikle de birta kım uzak akıllı birimleri bir merkezden denet leme işlevine sahip olmalarıdır. Bu nedenle, geliştirilen yazılımın birçok dış donanım ya da yazılım elemanı ile arayüzü, yazılım geliştirme planlaması, yazılım entegrasyon ve testi gibi konularda sorunlar yaratmaktadır. Sözkonu su sorun yönetim yapısı matris olan ASEL SAN içerisinde değişik boyutlar kazanmakta dır.
3.2 TEMSİLCİLİK Y OLUY LA BİLGİSAY AR PAZARLAMASI Y APAN ŞİRKETLERDE Y AZIUM ÜRETİMİ
TEMSİLCİLİK YOLU İLE bilgisayar pazaria ması yapan şirketlerde yazılım üretiminin söz konusu olması doğrusu beni şaşırttı. Ben bil gisayar ve yazılım pazarlaması ile yazılım üretiminin birbirinden çok farklı konular oldu ğunu, bu tip şirketlerin yazılım üretimi yapma larının uzak bir ihtimal olduğunu düşünüyo rum. Temsilciliğini yaptıkları yabancı şirketler, bunların gerçek anlamda ve kendilerine, Tür kiye pazarlanyla kısıtlı bile olsa, rakip olacak biçimde yazılım üretimi yapmalarına hiçbr za man sıcak bakmayacaklar ve kendi açıların dan haklı olarak engelleyeceklerdir, (ihtiyaç duyulan yazılımın hazır verilmesi gibi).
3.3 SALT Y AZIUM ÜRETİMİ Y APAN KÜÇÜK VE ORTA ÖLÇEKU ŞİRKETLERİN OLUŞTURDUĞU Y ERÜ Y AZIUM SANAY İNİN NEDEN BUGÜNE DEĞİN Y ETERLİ DÜZEY DE OLUŞAMADIĞI VE ÇÖZÜM ÖNERİLERİ
Y AZIUM SANAY İNİN gelişebilmesi için ko nusunda uzmanlaşmış yazılımcılardan ya da araştırmacılardan oluşacak yazılım gruplarına ihtiyaç vardır. Bu gruplar değişik yazılım ko nularında araştırma yapılması, piyasayİ ve bi limsel kuruluşlara destek verilme»/ va%>ıi ya zılımlar geliştirilmesi üzerinde M ş a r a k yazılım sektörünün gelişmesine katkılp bula nabilirler. Özel sektörün ve üniversitelerin yar dımıyla bu grupları bir çatı altında toplayan bir kurum (enstitü, dernek,...) kurulabilir
si. Bu durum sanayicilerin ürünlerine daha faz la yatırım yapmalarını önlemiştir. Ve hatta glo bal düzeye çıkmayı da engellemiştir. Bu konu da şunlar söylenebilir:
Potansiyel müşteriler, uzun süre yazılım alı mında tereddüt göstermişlerdir. Bunda ciddi ürünlerin daha başlangıçta ortaya çıkmaması nın payı vardır.
Büyük organizasyonlar, küçük yazılım kuru luşlarını desteklememişlerdir.
C) özellikle küçük yazılım üreticileri, pazar lamaya profesyonel önemi vermemişlerdir.
D) Dünyadaki diğer yazılım şirketleri ile tek nik anlaşmalara girilmesi çok gecikmiştir.
E) Türkiye'deki kanunlar bu sanayicileri teş vik etmeye yetmemiştir. Kanunsuz çoğaltma konusu çözüme kavuştuğu takdirde, Tür kiye'deki bu sanayi kolu çok daha hızlı gelişecektir.
YAZILIM ÜRETİMİNDE veya geliştirilmesin de en önemli unsur yetişmiş insan gücüdür. Şu anda üniversite ve yüksekokullarımızdan yeterli sayıda eleman yetişememektedir. Eğiti min daha yaygın olması, üniversite ve yüksek okullardan daha nitelikli elemanların yetişme si, yazılım üretimi için en önemli konudur.
Y ERLİ Y AZIUM SANAY İ bugününden çok daha ileri durumda olmalıydı. Çünkü genel şartlar böyle bir sonucu gerektiriyor. Eğitilmiş insan sayısı yeterli düzeyde, bilgisayar parkı da yeterli düzeyde. Şu halde neden başarı bi ze gelmemiş?
A) Üretilen yazılımlarda standart, norm ve kalite denetiminin genellikle olmayışı. Bu du rum Türkiye'de tereddütlere yolaçmış ve gü vensizlik yaratmıştır. Şimdi bunu düzeltmek çok zor olmaktadır. Oysa dünya ile birlikte ha reket edilerek. "USER FRIENDLY" "ICONS" "BENCH TESTS" ve benzeri kavramlarla da ha önceden tanışıp, uygulamaya geçilmeliydi. Bu konuda faz kaybedilmiştir.
B) Pazarın sanayicileri FEASIBLE bir dü zeyde desteklememesi. Başka bir deyişle, pa zar hacminin batıya göre daha yavaş gelişme
BENİM GÖRÜŞÜM, yazılımın, tabiatı itibariyle küçük gruplar tarafından yapıl ması gerektiğidir; dolayısıyla ağırlık kü çük ve orta çaplı şirketlerde olmalıdır (en çok birkaç yüz mühendisin çalıştığı şirketler). Başka bir deyişle, Türkiye'de büyük çaplı yazı lım şirketlerinin olmaması bence endişe yara tacak bir durum değildir. Bu şirketlerde dina mizm önde gelen unsur olarak görülmelidir. Çalışanlar kendilerini günün belirli saatleri ara sında iş gören insanlar olarak değil, hareket serbestisi ve bağımsız karar verebilme olana ğı yüksek, sürekli çalışan kişiler olarak görme lidir. Yönetici kademelerinde bulananlar, çalı şanların net sonuçlarına göre değerlendirme yapmalı, yazılım konusunda, modası geçmiş tutumlar bırakılmalıdır. Çalışanlara tanınan bu kolaylıklar dolayısıyla artan dinamizmin bir so nucu olarak, görevini hakkıyla yapamayanla rın işten uzaklaştırılmaları, yerlerine yeni ele manlar alınması, işten uzaklaştırılanların başka şirketlerde kendilerine daha uygun işler bulmaları bir rutin olarak ortaya çıkacaktır.
Bu tutum, ebette tek başına yerli yazılım sa nayinin problemlerine çözüm olmaya yetme yecektir. Bu konuda devletin de bazı katkıları beklenebilir ki, bunu 6. soruya verdiğim cevap ta belirteceğim.
387 E L E K T R İ K 4 | o MÜHENDİSLİĞİ I O O
Oysa, yazılım 3.4 YAZıLıM SANAYININ YURTDıŞıNA üretebilmek ÇA | L M A S I
M. Danış UNVERDI
için gerekli ^ ^ • • " M . zafer DOKUZOĞLU
olan en önemli Y AZILIM SEKTÖRÜ fazla bir yatırım yap mayı gerektirmeden ürün üretebilecek ve dışa unsurlar açılabilecek bir sektör olmasına rağmen Türk
Türkiye'de
yazılım sektörü bu imkandan yeteri kadar fay dalanmamaktadır.
zaten Hannover'deki CeBIT92 fuarında Türk fir
bulunmaktadır.
ması olarak sadece iki firma katılmışken, Yu nanistan'dan 13, Bağımsız Devletler Toplulu
Bunlar, varolan ğu'ndan 20, Bulgaristan'dan 5,
Macaristan'dan 7 firmanın katılmış olduğu donanım gözlenmiştir. Eski Ooğu bloğu ülke firmaları
yatırımı,
nın da ürünlerini sergilemekte olduğu gözlen miştir. Doğu bbku ülkelerinin örneğin "Optical
yetişmiş Character Recognition'' konusunda ilerlemiş oldukları gözlenmiştir.
eleman ve
Türk firmalarının kendilerine hedef platform beyin gücüdür. seçmeleri (PC, Macintosh, VAX, IBM vb.) ve bu platformlarda geliştirebilecekleri ve yurtdı
Yani altyapı şında rekabet edebilecekleri uygulamaları
hazır seçmeleri gerekmektedir.
durumdadır.
Firmalar yazılım sektöründe başarılı olabile ceklerini kanıtladıkları takdirde devletten de
teşvik alacakları kesindir.
YAZILIM ÜRÜNÜNÜ diğer ticari ürünlerden ayırmak doğru olmaz. Bu nedenle yerli üretici si korunan ürünler gibi yazılımın da yerli üretici sinin ithal yazılımlara karşı korunması gerekir. Nasıl otomobil ithalatı için koruyucu fonlar mev cut, aynı fonlar yazılım ürünleri için de sözkonu su olabilir. Yazılım en düstrimizin dış dünyayla rekabet edebilecek dü zeye gelebilmesi için, geliştirilmesi planlanan tüm endüstri sektörleri mize uygulanan yöntem lerin aynısı bu günümüz ve geleceğin sektörüne de uygulanmalıdır. Dışa açılma bu prosesin son larında ancak gündeme gelebilir.
Y AZILIM SANAY İNİN yurt dışına açılması konuğuna gelince, bu çok arzulanan gelişme nin ancak iç pazara hakim olunduktan sonra, gerçek boyutlarıyla gündeme gelebileceğini düşünüyorum.
3.5 BENZERİ BAŞKA KONULAR
Ouııııl AZİZOĞLU
TÜRKİYE'DE YAZILIM ÜRETEN küçük ve orta ölçekli işletmelerin en büyük sorunu, dev let desteğinin, diğer sanayii dallarında olduğu kadar bu alanda görülmemesi, hatta öneminin ve var olan beyin gücünün tam olarak kavran mamış olmasıdır. Böylece donanım alanında olduğu gibi yazılım alanında da dışa bağımlı lık sürmektedir.
Oysa, yazılım üretebilmek için gerekli olan en önemli unsurlar Türkiye'de zaten bulun maktadır. Bunlar, varolan donanım yatırımı, yetişmiş eleman ve beyin gücüdür. Yani altya pı hazır durumdadır. Sadece yapılacak bir miktar yazılım yatırımı ile (yazılım üretmek için gerekli tool'lar) ve KOSGEB gibi bir devlet kuruluşunun organizasyonu doğrultusunda Türkiye'de yazılım üretimi başlatılabilecektir.
Ayrıca, DEC, SUN, HP, IBM, MICROSOFT vb. gi bi, dünya bilgisayar piya sasını elinde tutan büyük şirketlerden de destek alı nabilir.
Kamil ÖZÇIKMAK
Y AZILIM ÜRETİMİ kla sik anlamda üretilen mal, hizmet üretimi kavramla rından biraz değişiklik göstermekle birlikte, yazı lım üretimi diğer klasik mal ve hizmet üretiminde olduğu gibi üreten ve tü keten olarak iki önemli ilgi grubunu içerir. Bu yazım
154 387 E L E K T R İ K MÜHENDİSLİĞİ
da yazılım tüketicisi olarak yazılım sanayinin bugünkü durumunu irdeleyeceğim.
Yazılım tüketicileri iki ana grupta ele alınabi lir:
1 Bir işi yapmak için ne istediğini iyi bilen yazılım şartnamesi yazabilecek bu şartname ye uygunluğunu kontrol edebilecek bilgi biriki mi olan tüketiciler.
2 Gereksinimi olduğu yazılımı tam olarak tanımlayamayan, yeterli bilgi birikimi olmayan bu nedenle benzeri sorunları olan yakınındaki tüketicilerin izlediği yolu veya yazılımı satın alan tüketici grubu.
2. tip tüketicilerin aldıkları yazılımları genel amaçlı olduğu için bu yazılımları özel amaçla rı için geliştirmek, ayarlamalar yapmak duru munda kalmaktadır. Bu tür tüketiciler için yazı lım hakkında yeterli doküman ve eğitim desteği sağlanmalıdır. Bunlar ilk başta maliye ti artıran unsurlar olmakla birlikte, orta ve uzun vadede pazarı büyüteceği için yazılım üreticilerinin yararına olacaktır.
Yazılım tüketicileri açısından bir başka önemli husus yazılımların taşınabilirliği ve di ğer yazılımlarla iletişim kurabilme özelliğinin bulunmasıdır. Bu durum yazılım üreticilerinin açık sistem OSI ilkelerini benimsemesi ile ola sıdır.
Sonuç olarak yazılım üreticileri;
1) Yazılım tüketicilerinin yaptığı yatırımın efektif olabilmesi için tüketiciyi koruma, bilgi lendirme yükümlülükleri vardır. Ürettikleri ve/ veya sattıkları yazılım ürününe yeterli teknik, bilgi, doküman ve eğitim desteğini sürdürmeli dirler. Bu nokta en az mükemmelliği kadar önemlidir.
2) Yazılım üreticileri ürettikleri yazılımı gü venirlilik, kullanılabilirlik ve açık sistemlere uy gunluğu bakımından test yöntemleri geliştirip bunları yazılım tüketicilerine bildirmelidirler.
3) Üretilen yazılımların işletim sistemlerin den olabildiğince bağımsız taşınabilir olması na özen göstermelidirler.
cezalandınlmamaktadır. Böyle şirketler, feda karca ürünleri Türkiye'ye ithal etmekte, tanıt makta, fakat kanunsuz çoğaltma yüzünden çabalarının sonuçlarını alamamaktadırlar. Bu düzenlemelerin çabuk ve etkili bir şekilde ye niden ele alınması gerekmektedir. Bu, bizim medeni dünyaya kabulümüz için ayrıca bir gerekliliktir. Bu alan sadece fikir ve sanat eserleri başlığı altında ele alınmamalıdır. Ya zılım başlı başına bir olgudur. Ve kendine öz gü düzenlemeler gerektirmektedir.
TÜRK Y AZIUM SANAY İNİN (yazılımı Sis tem'den ayrı tutmak biraz güç) arzu edilen ye re gelebilmesi için aşağıdaki çözümleri önereceğim. Bu çözümlerin hepsinin ay nı anda (paralel) uygulanmasında yarar vardır.
a) Üniversite Lise Ortaokul (?) aşama larında itibaren, öğrencilere "System" kavramının ve yazılımın gerektirdiği mantık kurallarının ve özgüvenin aşılan ması, b) Türkiye'nin yapmak zorunda olduğu —— atılımın devletin resmi bir politikası haline geti rilmesi, maddi ve manevi açıdan desteklen mesi, c) Şirketlerimizin özgün tasarımlarda bulun maya özendirilmeleri. Ancak burada sınırın nerede olacağına çok iyi karar vermek gerek lidir. Tekerleği yeniden keşfetmek yerine mevcudu iyi anlayıp daha iyisini hedeflemeli yiz.
d) "Amaca uygun" hazırlanmış lisans anlaş maları ile , ilerlemiş ülkelerin "know how"larının Türkiye'ye kazandırılması.
YURTDIŞINDA YAZILIM PAKETİ üreten fir maların Türkiye'de temsilciliğini yapan pazar lama şirketleri çok garip bir durumdadır. Türki ye'de kopya yapılması yeterince
Ticari
uygulama
yazılım YERLİ YAZIUM endüstrisinin bugünkü sektöründe yer durumu ve sorunları.
almaya çalışan Türkiye'de yazılım geliştirmeli miyiz?
bir firmanın Bu sorunun yanıtı büyük oranda ticaridir.
Yazılım nerede kullanılacaktır, neler beklen yaşadığı ana mektedir, kullanılması için ne kadar acele edil
darboğazlardan
mektedir, kaç defa kullanılacaktır, yazılımın kapsamı nedir, prototipinin hazırlanması için
birisi, bilgi kaç adam aylık bir çalışma gerekmektedir, yurtdışında geliştirilmiş rakipleri var mıdır, bu biriktirme rakipler amaca ne kadar uymaktadır ve ftatları
mühendisliği
nedir? Bu sorulara verilecek cevaplar, yazılım geliştirmenin oluriuğunu saptayacaktır. Belli
çalışmasının altı bir alan için olumsuz çıkan bu olurluk analizi
ay ile iki yıl
bir başka alanda olumlu çıkabilir. Bu anlamda,
arasında konu bir arz ve talep
meselesidir.
<
değişen bir
zaman süresi
Ticari Uygulama Yazı lımları
gerektirmesidir. Ticari uygulama yazı
lım sektöründe yazılım
üreten ve pazarlayabi
len firmaların sayısı ol
dukça azdır. Bu firmalar
dan sektöre hakim
durumda olan bellibaşlı
olanlarının bile yaklaşık
olarak beş veya yedi yıl
lık bir geçmişleri vardır.
Personel kadroları ge
nellikle on ile otuz ara
sında değişmektedir.
Nadir durumlarda yüze
kadar ulaşabilmektedir. Aralarında yoğun bir
rekabet ortamı vardır. Hemen hepsi korsanlı
ğa karşı, anahtar diokot, cari çıkışlara takılan
lan dn kilit benzeri birtakım tedbirlerie kendi
lerini korumaktadır.
Ticari uygulama yazılım sektörünün bugün kü yapısı, teknik düzeyi oldukça yüksek per sonele gereksinim duyması nedeniyle, istih dam kapasitesini arttırmaya pek uygun görünmemektedir. İçinde bulunulan rekabet ortamı, fiatların belli bir tavanın üstüne çıka maması, müşterinin genellikle bir makinasının olmaması ve yazılımı kullanabilmek için önce
bu makinayı satın almak durumunda olması, müşterinin sürekli, anında, ve mutlaka kaliteli servis hizmeti beklemesi istihdam sorunlarının kaynağını oluşturmaktadır. Müşteri firma ilişki lerinde genellikle donanım servis personeli eksikliği yoğun olarak hissedilmektedir, fakat bu gruptaki servis personeli donanım firmaları tarafından istihdam edilmektedir.
Bu noktada donanım ve yazılım firmaları arasındaki ilişkilerden de kısaca bahsedilebi lir. Donanım satışı ile uğraşan firmaların he men hepsi bayilik sistemi ile belli başlı ticari yazılım firmalarının ürünlerini pazarlamakta dırlar, yani bu anlamda, müşteri ile satış anın da ilk ilişkiyi kuran bir yazılım firması değil, bir donanım firmasıdır. Buna karşılık, en belli başlı donanım firmalarının bile sattıkları yazılı mın değil kullanılması, fakat kurulması, yani, kullanıma hazır hale geti rilmesi donanım firması elindeki kopyalanabilir tür deki kelime işlem, veri ta ban gibi birtakım paket ya zılımları satılan makinaya kurarak teslim etmektedir. Böyle bir ortamda yeni ku rulan küçük boyutlu bir ya zılım firmasının birkaç kişi lik personel kadrosuyla bile olsa ayakta durabilme si ve ürünlerini pazarlaya bilmesi oldukça zor görün mektedir.
Mühendislik Uygulama Yazılımları
Özelliklerinden dolayı bu sektörü ticari uygulama yazılım sektöründen ayrı olarak düşünmek belki da ha yararlı olacaktır.
Mühendisim uygulama yazılımlarında genel likle inşaat sektöründe ümit verici gelişmeler görülmektedir. Bu sektörde, çok detaylı ve ge niş kapasitede dış kaynaklı yazılım potansiyeli vardır. Bu yazılımlar genellikle belli donanım firmaları tarafından ithal edilerek pazarian maktadır. Bu konuda da satış sonrası teknik hizmetlerin yeterli olarak verilip verilmediği bir sorudur. Yazılımın ithal kaynaklı olması, yeril yazılım sektörüne bir katkı mı yoksa engelle me mi getirdiği sorusunu gündeme getirmek tedir.
Mühendislik uygulama yazılımlarında bilgi
• 4 r # ? 387 E L E K T R İ K
İ O O MÜHENDİSLİĞİ
biriktirme mühendisliği için harcanan zaman süresi, ticari uygulama yazılımlarına göre çok daha fazla olabilmektedir. On yıllık bir çalışma sonunda hala tam olarak geliştirilememiş mü hendistik yazılım örnekleri az değildir. Bu nok tada yazılım geliştirme durumunda olan firma nın ne kadar süre ile ve kim tarafından ve neler beklenilerek destekleneceği cevaplan ması gereken önemli bir sorudur. Bugünkü durumda, başarılı olan birkaç firma geçmişte ya ana uğraşı alanı dışında elde ettiği ticari bir rant ile bu işe girmiş, ya da üniversite devlet kuruluşları gibi birtakım dış kuruluşlarda yazı lımın ana çekirdeğini oluşturduktan sonra tica ri piyasaya açılabilmişlerdir. Sonuç olarak, bu firmaların çoğunun bilgi biriktirme mühendisli ği süresini müşterilerine fatura edebildikleri söylenemez.
Mühendistik uygulama yazılımlarında gerek tirdiği bilgi birikimi adam ay hacminden dolayı maliyetler oldukça yüksektir. Kullanılması ge reken makina genellikle, ticari uygulama yazı lımlarındaki kullanılanlara göre daha iyi teknik özelliklere sahiptir ve daha pahalıdır. Bu sek törde de yazılım fiatları konusuda, özellikle yazılım ithalatı nedeniyle bir üst limit vardır.
Donanım firmalarının mühendisi* uygulama yazılımları konusunda ticari uygulama yazı lımlarına göre çok daha fazla duyarsız dav randıktan söylenebilir. Bu duyarsızlık geniş öl çüde, sektörde kullanılan yazılımların genellikle yurt dışı kaynaklı olmasından, buna karşılık yurt içindeki talebin de oldukça dar ol masından kaynaklanmaktadır. Konunun mü hendislik bilgi bircimi gerektirmesi, donanım firmalarının konudan uzak olmaları, bu ölçü lerde detaylı teknik bir yazılım için müşteriye karşı sorumlu olmaktan kaçınmak istemeleri bu sektörde çatışmak isteyen yazılım firmala rının ana darboğazını oluşturmaktadır.
Mühendislik uygulama yazılımı sektöründe ayakta durabilen firmaların istihdam ettkleri personel sayısının ticari uygulama yazılım fir malarına göre çok daha az olduğu görülmek tedir. Böyle firmaların en konusuda bile yeter li yazılım personeli ve bilgi birikimine sahip oldukları söylenemez. Bir problem çıkması durumunda, bu konuda sunulabilen servis, müşteri ile bayilik yapılan yazılım firması ara sında bir ilişki kurulmasının sağlanmasından ibarettir. Donanım firmasının ana çalışma ala nının, temelde donanım ürünleri satmak ve
bunların servisini sağlamak olduğu düşünülür se, yazılım hizmetleri konusundaki zayıflıkları nı bir noktada beki anlayışla karşılamak müm kündür, fakat sonuçta müşterinin yazılım donanım birlikteliğinden, yani ortak çalışma sından, donanımının yazılma uyumundan ge nellikle pek mutlu olmadığı, istek ve şikayetle rine yeterii etkinlikte ve hızda bir yanıt alamadığı, satış sonrasında sahipsiz bir şekil de ortada kaldığı da bir gerçektir.
Ticari uygulama yazılım sektöründe yaşanı lan bir diğer sorun da konunun uygulama ala nında mesleki deneyim gerektirmesi, buna karşılık yazılım geliştirme durumunda olan personelin bu deneyimden genellikle yoksun olmasıdır. Başarılı bir uygulama, muhasebe, bankacılık, belediyedir, finansman, vergi mevzuatı, stok ve personel yönetimi, hu kuk gibi alt sektörlerden birinde uzmanla şılmasını gerektirmektedir. Meslekten bir uzman ile bir yazılım geliştirme personeli arasındaki bilgi iletişiminde kullanılan yöntem genellikle, "Knowledge Enginee ring" olarak tanımlanan bilgi biriktirme mühendisliğidir. Bu nedenle, sektörde hem uygulama alanında hem de bu uy gulamayı profesyonel düzeyde bir yazılı ma aktarabilecek düzeyde kadrolara ge —— reksinim vardır. Bu tür bir yerli işgücü kaynağının ise zengin olduğunu söylemek zor dur.
Bu aşamada yaşanılan temel zoriuk, uygula ma alanında deneyim sahibi olan uzmanın ge nellikle donanım veya yazılım sektöründen uzak olmasından kaynaklanmaktadır. Yani, kinci tür personelin yazılım geliştirme çalışma larına katılabilmeleri genetikle mümkün olma maktadır. Bu nedenle, uygulamalardaki ana itici güç, genetikle konuya girmek için ticari gayret ve irade gösteren yazılım firmalarından oluşmaktadır.
Ticari uygulama yazılım sektöründe yer al maya çalışan bir firmanın yaşadığı ana darbo ğazlardan birisi, bilgi birktirme mühendisliği çalışmasının akı ay ile ki yıl arasında değişen bir zaman süresi gerekt'ırmesidir. Bu süre, ye ni kurulan bir yazılım firması için oldukça uzun bir süredir ve başlangıç yatırımını yapmak, herhangi bir karşılık almadan çalışmak ve per sonel istihdam etmek anlamındadır. Bu darbo ğazı günümüze kadar sadece bellibaşlı birkaç firma aşabilmiştir. Bu firmaların şu andaki iş
387 E L E K T R İ K 4 £ 7 M Ü H E N D İ S L İ Ğ İ | £) #
hacimleri, personel sayıları, yazılımın güveni lirliği, kullanım el kitaplarının düzeyi, satış sonrası sunulan servis hizmetlerinin düzeyi gi derek yükselmektedir. Fakat tekrarlamakta fayda vardır ki böyle firmalar sayılıdır ve yeni kurulan küçük çaplı yazılım geliştirme firmala rının bu firmalar karşısındaki rekabet şansları oldukça azdır. Bu durumda küçük çaplı firma lar da daha çok danışmanlık statüsü içinde, daha ufak ve kısa süreli bilgi birikimi mühen disliği gerektiren küçük ve lokal uygulamalara girmektedirler.
Makina Hatlarının uygulanan ticari yazılım fi atının çok üstünde olması da sektörün bir başka darboğazını oluşturmaktadır. Bir müş teri, satın aldığı bir makinanın değerinin ge nellikle dörtte biri ile onda biri arasında deği şen bir bedel karşılığında istediği bir yazılımı alabilmektedir. Çoğu durumda, bu yazılım do nanım firması tarafından donanımın teslimi anında makina ile birlikte verilmektedir. Yurt dışı kaynaklı bir yazılım kullanılması duru munda ise bu bedelin bile ödenmesine gerek kalmamakta, bellibaşlılarmda bile direkt ola rak yazılım geliştirme ile uğraşan personel sa yısı bir veya ikiyi geçmemektedir. Bu sektörde gereksinim duyulan yazılım geliştirme perso neli genellikle sonradan yazılım konusuna gir miş uzman mühendislerdir. Ticari uygulama yazılım sektöründe pek görülmeyen bu du rum, bu sektörde bilgi biriktirme mühendisliği nin çok daha zor olmasından, fazla zaman ve işgücü gerektirmesinden kaynaklanmaktadır. Bu sektördeki firmalar, gerek varlıklarını de vam ettirebilmek ve gerekse uyguladıkları ya zılımların daha üst düzeyde makinalar gerek tirmesi nedeniyle, makina ve kart düzeyinde donanım satışına da girmek zorunda kalmış lardır.
derleyici, editör, bellek yönetici, bellek arttırıcı, veri tabanı yönetimi, işletim sistemi, gibi temel yazılımlardır ve hemen hemen tamamı yurtdı şı kaynaklıdır. Destek verecek devlet kuruluşu bu konuda bir destek yazılım arşivi oluşturma lıdır.
Yerii yazılım teriminden ne anlaşılması ge rektiği açıklığa kavuşturulmalıdır. Bu konuda ana çizgi yerii yazılım kullanıcılardan alınacak geribesleme, yani yansımadır. Müşteri kimdir? Ne kadar bedel ödemeye hazırdır gibi sorular sektör bazında ve anketlerle incelenmelidir.
Yazılım ithalatından korkulmamalıdır. Özel l'ıkle devlet tarafından yapılacak tüm yazılım yatırımlarında mutlaka bir olurluk analizi yapıl malı, yatırımın hangi uygulama sektörü için yapıldığı, finansmanın ne kadar bir süre için de ve ne şekilde geri döneceği saptanmaya çalışılmalıdır.
Uzun zaman gerektiren, özellikle mühendis lik uygulama yazılımı geliştirme projeleri için öncelikle bir pazar araştırması yapılmalı ve aynı konudaki yurtdışı kaynaklı yazılımların fi atları, yurtiçinde uyarlanabilene özellikleri ince lenmelidir.
Yazılım telif hakları yasası mutlaka çıkarıl malıdır. Yazılım geliştiren bir kimse, bir an lamda bir sanat eseri ile aynı emek yoğunluk ta eser üreten bir çalışandır. Bu insanın emeği mutlaka koruma altına alınmalıdır. Bir bilgisayardan bir yazılımı, başka bir kuruluşta ki bir başka bilgisayara kopyalamanın bir ara bayı çalmak kadar suç olduğu bilinci yerleşti rilmelidir.
Neler Yapılabilir?
Yerli yazılım sektörünün gelişmesi nin sağlanabilmesi için neler yapılabi lir? Bu soruya devlet kuruluşları ve firmalar açısından iki yönden bakıla bilir.
Devlet desteği olarak yazılım geliş tirilen kuruluşlara kredi verilmesinden çok, destek yazılımlar sağlanması daha gerçekçi bir yaklaşım olarak gö rünmektedir. Burada destek yazılım lar, firmanın yazılım geliştirme çalış malarında gereksinim duyduğu,
158 387 E L E K T R İ K MÜHENDİSLİĞİ
İHTİY AÇ DUY ULAN BİR yazılımın nasıl bu lunacağı, hangi şirketlerin bu konuyla ilgili ça lıştıkları, ihtiyaçların nasıl belirleneceği konu larında danışmanlık yapacak bağımsız kuruluşların olmaması kullanıcılar açısından çok büyük zorluklar oluşturmaktadır.
Yazılım şirketlerinin sayısı her .geçen gün artmaktadır. Hangi konularda faaliyet göster diklerini takip etmek mümkün değildir. Bu ko nuda yazılım firmalarının katılımıyla yapılacak bir çalışma ile kullanıcılara yol gösterecek bir yapının oluşturulması gerekmektedir.
Y AZILIM SANAY İİNİN ULUSAL EKONOMİDEKİ Y ERİ
4.4 STANDARTLAR
TÜRKİY E BİLİŞİM ÇAĞINI yakalamak zo rundadır. Bu nedenle yazılımda sanayileşme ve standardizasyon kaçınılmazdır. Gerek ithal gerek Türkiye'de üretilen ürünlerde dünya standartlarıyla uyumlu olma koşulu ve stan dart ürün ve arabirimlerle ulaşılan dünyaya pencereleri açılan geniş amaçlı veri bankaları nın oluşumu ürünlere dünya pazarında yarışa bilecek bir kalite getirecektir. Ancak bu şekilde Türkiye'de dünya pazarıyla uyumlu bir yazılım sanayi oluşur.
BU KONUDAKİ en önemli eksikliklerden bi ri, yazılım ürünleri standartlarının ortaya ko nulmaması, bekjehnmemesidir. Bu durum ya zılım ürünlerinin kalite kontrolü ile yakından ilgilidir. Standartlar olmadığı için, yazılım kali tesini ölçmek mümkün olmamaktadır.
Türkiye'de yazılım endüstrisini geliştirmek, hatasız yazılımlar üretmek ve dünya yazılım sektöründe rekabet edebilmek için en kısa za manda bu konu ele alınmalıdır.
4.5 TELİF HAKLARI
DOKUZOĞLU
TELİF HAKLARINA uyulması konusunda yurdumuzda gerekli özen gösterilmemektedir. Örneğin senelerce müzisyenler bu konudan yakınmışlar ve kısmen de olsa bandrol uygu laması ile bu konuya çözüm bulmuşlardır. Ya zılımda bandrol uygulanması gibi konular bü rokrasiyi artıracak verimi düşürecek uygulamalardır. Fakat anlaşılan odur ki insan larımızı telif haklarına saygılı olacak şekilde eğitinceye dek bu veya benzer uygulamaların yazılım sektöründe de uygulanması gerekebi lecektir.
Yazılımın kopyalanması sorunu ülkemizde yazılım sektörünün gelişmesine engel olan en büyük sorundur. Bu sorun çözüme kavuşturul madıkça yazılım sektörü gelişmeyecektir.
BİLGİSA YAR PROGRAMLARI, Fikir ve Sa nat Eserleri kanunu çerçevesinde, net ve spe sifik olarak korunmamaktadır. Diğer fikir ve sanat eserlerine göre, Bilgisayar programları esas niteliği olarak bazı farklılıkları içermekte dir. Bunlara örnek olarak; bir bilgisayar prog ramını edinen kimsenin o programı kullanmak için çoğaltmak zorunda olması veya bilgisayar programlarının kullanıcının ihtiyaçlarına göre özelleştirilmesinin dolayısıyla eser üzerinde değişiklik yapmaya müsade edilmesi gibi as lında diğer fikir ve sanat eserlerinde olmayan kimi farklı nitelikler söylenebilir. Edindiğimiz bir kitabı kullanmak için çoğaltmamız veya üzerinde değişiklik yapmamız gerek mez. Bu türde özelliklerin kanunda yer alması ile bilgisayar programlarının telif hakları korunmuş olabilir.
Ülkemizde yazılım korsanlığının düze yi yabancı yazılımlarda %90, oyun yazı lımlarında %100, yerli üretilen yazılım larda ise %30 civarındadır. Korsan kullanım düzeyinin yüksekliği yazılım sektörünce yapılacak yatırımları ve ül kemizde daha çok yazılım üretilmesini engellemektedir. Ülkede yazılım sektörünün sağlıklı bir şekilde varolabilmesi, gelişmesi te mel olarak bilgisayar programlarının telif hak ları ile hem kanunda hem de uygulamada sıkı koruma altına alınması ile başlar. Daha sonra ki tedbirlerden biri ise sektörün devlet teşvikle ri ile geliştirilmesidir. Diğer ülkelerde görüldü ğü üzere, kanunla korunuyor olsa bile korsanlık düzeyi sıfıra indirilemez, genellikle %10 düzeyinde korsanlık kanuna rağmen var olacaktır. Bu ise yazılım kullanıcılarının eğitim ve bilinç düzeyi ile ilgilidir. Kullanıcıların çeşitli tekniklerle ve kampanyalar ile eğitilmesi, bu %10'u daha aşağılara çeker.
Yabancı orijinli yazılımların kopyalarının ül kemizde bir bedel ödemeden yaygın olarak kullanılıyor olması beki ilk bakışta, yurt dışına döviz kaybı olarak görülebilir, ancak daha ay rıntılı düşünüldüğünde yabancı yazılımların bedelsiz olarak piyasada var oluşu, yerli alter natiflerine karşı bir üstünlük sağlayacak yerli yazılım geliştirilmesini dolayısıyla bu sektörü baltalar. Bu fikri güçlendirmek için şu söylene bilir, yazılım kullanımları para ödemeden edi nebilecekleri yabancı yazılımı, para ödeyerek
387 E L E K T R İ K
Jl A
\O\3
Bllglslyar olayını henüz sindireme diğimizi, hala gelişme İçerisinde olduğumu
edinecekleri yerli yazılıma tercih ederler, bu yazılım kullanıcısı açısından çok ekonomik bir gerçektir. Yazılım korsanlığının diğer bir etkisi ise, kullanıcıları etkileyen olumsuzluklardır. Korsanlık nedeniyle yeterli adetlerde yazılım satamayan firmalar mali nedenlerle yeterli dü zeyde teknik destek ve eğitim verecek örgüt lenmeye gidememektedir. Bir yazılımı yasal yollardan edinmişte olsanız, yeterli teknik des tek ve eğitim veya diğer satış sonrası hizmet leri alamama riskiniz bulunmaktadır. Son ana lizde korsanlığın önlenmesi kullanıcıların da işine yarayacaktır.
zu da görüyoruz
Yazılım işinin çekici ve kârlı bir iş haline gel mesi, kullanıma sunulan yazılımlarda ürün çe şitliliğini artıracak bu ise kullanıcıların edinebi lecekleri yazılım opsiyonlarını çoğaltacaktır.
yaşadığımız Yazılım ürünlerinin telif hakları ile uluslara rası standartta korunması umudu ile...
gerçekler de
ortada.
Kişiler kullanacak ları her yazılım ürünü İçin satın alma yoluna gidecek olsalar bunun altından
DIŞARIY A Y ILDA MİLY ONLARCA dolar yazılım ücreti ödediğimiz düşünülürse, gerekli insan kaynağımız olan yurdumuzda daha aktif politikalarla bu akışı azaltıp tersine bile çevire biliriz. Bunun için atılacak adımlardan ilki, bel ki de en önemlisi insanlarımızın yazılıma para vermeyi öğrenmeleri. Bunun içinde daha sağ lıklı ve kontrollü telif hakları yasa ve uygula maları gerekli. Yazacağı yazılımın satın alın mayacağını, kopyalanıp dağılacağını düşünen hiçbir yazılımcı yurdumuzda program yazma yacaktır. Yurdumuzda daha emekleme aşa masında olan bu sektör, geç olmadan stan dartlaşması sağlanmalı, belki de bakanlık seviyesinde olmasada daha alt seviyelerde devlet kademesinde üzerine eğilinmelkJir.
kalkamazlar, dolayısıyla 4.7. BENZERİ BAŞKACA KONULAR
bilgisayar ve
getirdikleri
de bu ölçüde YAZILIMIN EKONOMİMİZ için gerekliliği
geniş bir kesime yayılamaz.
Bilgisayarlar daha güçlü duruma gelip fiyat ları da tersine daha da düştükçe, ürün tasarı mından silah sistemlerini kontrole kadar bir çok alanda kullanılmaya başlanmışlardır. Fa
160 387 E L E K T R İ K MÜHENDİSLİĞİ
kat, bu işleri asıl mümkün kılan yazılımdır ve önemi de gittikçe artmaktadır, örneğin, 1950'lerde Amerikan Savunma Bölümü (US DoD), yeni sistemler edinmek için hazırladığı bütçenin %80'ini donanıma ayırırken, bugün bu oranı yazılım için kullanmaktadır. Artık DoD senede 10 milyar doları yazılım için har cıyor duruma gelmiştir (1). öte yandan, eski den Japonya'da yazılım kodu yazmak düşük prestijli bir işken, bugün çoğu Japon şirketleri (örneğin, Sony) 21'inci yüzyılı hedef alan önemli yazılım geliştirme programları başlat mışlardır (2).
örneklerden anlaşılacağı gibi, yazılım geliş miş Ökelerde önemli bir sektör konumuna gel miştir. Bu gelişmeye ve var olan rekabete bağlı olarak şirketler, yabancı ülkelerden ele man transfer etmeye ya da yazılım işini düşük ücretle yine bu dış üyelerdeki (örneğin Rusya ve Çin'deki) insanlara yaptırmaktadırlar. Bu iş için fazla bir yatırım yapmaları da gerekme mektedir. Böylece, ürünlerini daha ucuza mal edip, pazar şanslarını da artırmaktadırlar. Ay nı zamanda, işi yapanlar da ülkelerinde eski ye oranla daha çok kazanmaktadırlar.
Eğer ekonomik olarak güçlenmek, gelişmiş ülkelerle hiç olmazsa bazı alanlarda rekabet edebilmek ve bunları da bir an önce gerçek leştirmek istiyorsak, yazılım bu amaçlar için iyi bir seçimdir. Çünkü sanayinin çoğu dalı dışa bağımlı büyük yatırımlar gerektirmez. Birkaç bilgisayar ve insanın olduğu bir büroda dahi önemli yazılımlar gerçekleştirilebilir. Burada, bizim asıl üzerinde durmamız gereken faktör, insandır. İşin donanım kısmıyla da ikjilenilebi lir. Fakat, bugün dünyanın batısından doğusu na çoğu ülkesinde, birçok firma tarafından, hem de çok ucuza bilgisayar donanımı üretil mektedir. Eğer gelecekte donanım konusunda bir standart, uyum sağlanırsa (ki bugün bu ba zı türlerde vardır), benzer ürünü daha ucuza mal edemedikten sonra üretmenin pek bir an lamı yoktur. Yine de her olasılığı düşünerek bu konuda da bir bilgi birikimimiz olmalıdır.
En önemli faktör olan insan konusunda ise hiç de azımsanmayacak bir potansiyele sahi biz. Yapılması gereken yazılım konusunda bu insanların üniversiteden de önce yönlendiril mesi ve eğitilmesidir. Ayrıca, gereken araçlar asıl değerlerinden çok daha ucuza bu insanla ra verilmelidir. Nasıl turizmle uğraşanlara ara zi tahsisi (ya da kiralanması), ucuz kredi veril mesi gibi işler yapılıyorsa, benzer kolaylıkların yazılım sektöründe çalışanlara da gösterilme si gerekir. Bu sayede, iç piyasaya yönelik ya zılım üretirken, dış piyasaya da ilk önce bura daki isim yapmış şirketler adına yazılım üreterek açılabiliriz (tabii direkt olarak da ken di ürünlerimizi satabiliriz). Yapılan bilgi alışve rişi ve kazanılan tecrübeden sonra, biz de dünya yazılım piyasasında söz sahibi olabili riz.
HER ÜRÜNDE OLDUĞU GİBİ, oluşturulan yazılımlarda da verilen emek ve harcanan ça banın karşılığının olması ve yerine ulaşması gerektiği inancındayım. Ancak bu konuya ge reken önemi vermediğimiz de bir gerçek.
Diğer yandan, bikjisiyar olayını henüz sindi remediğimizi, hala gelişme içerisinde olduğu muzu da görüyoruz ve yaşadığımız gerçekler de ortada. Kişiler kullanacakları her yazılım ürünü için satın alma yoluna gidecek olsalar bunun altından kalkamazlar, dolayısıyla bilgi sayar ve getirdikleri de bu ölçüde geniş bir ke sime yayılamaz. Bir de gelişimin bir parçası olan üniversiteleri düşünelim. Yazılım sanayiinde yer alacak insanlar teme eğitimlerini bu kurumlarda alıyor. Mal yetersizlik içinde olan üniversiteler ist bu eğitim için gerekli ortamı yaratmakta şu anda bile kaynak sıkıntısı çekiyorlar.
Çok fazla sermaye istemeyen ve ge rektirdiği sermayenin de karşılığını kat kat çıkaran bu sektörde bedellendirme daha gerçekçi olarak yapılmalı, özellikle _ _ _ derleyiciler gibi yazılım geliştirmeyi des tekleyecek türdeki ürünlerde bazı kolaylıklar sağlanmalı, ünivrsiteler için özel çözümler dü şünülmeli ve pek tabii ki bunların yanında ya zılım sahibinin de hakları mutlaka korunmalı.
Bu arada, ulusal savunmamız için gerekli askeri sistemin etkinliği artık yazılıma da çok bağlıdır Bunu da yabancılar yerine bizim yaz mamız zorunludur. Bu da yazılıma neden önem vermemiz gerektiğini gösteren bir baş ka konudur.
Herkes üzerine düşeni yaparsa, kısa sürede yatırımı az, getirişi yüksek bir başka bacasız sanayiye daha sahip olmamamız için hiçbir neden yoktur. Böylece ekonomimize büyük bir katkı da gerçekleşecektir.
Kaynaklar:
1)EDN, 17 Ağustos 1989. 2) Fortune, 17 Haziran 1991
Y AZILIMIN Y ARINKİ GÖRÜNÜMÜ
5.1. BDY M ARAÇLARI (BİLGİSAY AR DESTEKLİ Y AZILIM MÜHENDİSLİĞİ)
CASE (Computer AkJed Softvvare Enginee ring) araçları bir bilgi işlem merkezinin var oluş nedeni olan uygulamaların geliştirilmesi ve bakımının yapılmasında üretkenliği arttır maktadır. Bu nedenle ekonomik önemleri bü yüktür. Bir uygulama geliştirme projesinin ta sarım aşamasından test aşamasına kadar geçirdiği tüm evrelerde kullanılabilen çeşitli CASE yazılımları bulunmaktadır. Bunun yanı sıra CASE araçları, var olan uygulamaların iyileştirilmesinde de kullanılabilmektedirler. Genel olarak bakıldığında CASE araçları uy gulama geliştirme sürecinde geleneksel prog ramcı işlevlerinin bir kısmını yüklenmekte ve giderek özel eğitim/deneyim gerektirmeksizin kullanılır hale gelmektedir. Ancak, çok çeşitli yazılım firmaları tarafından geliştirilen CASE araçlarının oldukça fazla sayıda ve bu aşama da henüz entegre olmadığını da gözlemekte yiz. Oysa CASE araçlarından esas yarar, bu araçların bireysel değil entegre (bütünleşik) kullanılması sonucu sağlanabilir. Bu nedenle Tool IntegratJon" özenle üzerinde durulması gereken bir diğer konudur.
YAZILIM GELİŞTİRMENİN geleceği, dizge çözümleyicisinin bilgisayar ekranında geliştir diği uygulamanın otomatik olarak işletilebilir koda dönüştürülmesini sağlayan CASE teknoloji sine doğru yol almaktadır. CASE araçları, yazılım geliştirme yaşam döngü sünün çeşitli aşamaların da birçok işlemi otomatik leştirerek ve dizge geliştiricileri arasında ide al iletişim ortamı kurarak, yazılımın daha kısa süre de, daha dikkatli ve daha az maliyetle geliştirilmesi ni sağlar. CASE araçları nın geliştirilmesinde, kod lama aşamasının daha az sürede gerçekleştirilmesi
162 387 E L E K T R İ K MÜHENDİSLİĞİ
asıl hedef değildir. Hedef, kodun tasarım bilgi sine doğrudan bağlı olmasını sağlamaktadır. Böylece, ileride yapılacak bakım işlemleri kay nak kod üzerinde değil doğrudan tasarım ta nımlamaları üzerinde yapılabilecektir.
Piyasadaki CASE araçlarının, metodoloji sı nırlamaları, yönetim zorlukları ve belgeleme yetersizliği gibi nedenlerle verimliliklerinin ta mamını göstermemeleri, günümüzde kulla nımlarının daha hızlı artmasını engellemiştir. Yeni tasarlanan CASE araçları, özellikle son yıllarda popülerliği ve kullanımı oldukça yay gınlaşan nesneye dayalı yazılım geliştirme metodolojisi temel almaktadır. Nesneye dayalı yaklaşımda, bütün paylaşılan veri alanlarının nesneler arası ileti gönderme ile ortadan kal dırılması, nesnenin nitelik ve metodlannın ilgili nesne dışındaki bütün program elemanların dan saklanması, veri ve işlemi çok iyi bir ara birim düzeneği ile gruplayarak modüleriiği sağlaması, onu diğer yazılım geliştirme meto dolojilerine karşı üstün kılar. Nesne mekaniz ması, gerçek dünya nesneleri ve ilişkilerinin doğrudan bilgisayar gösterimlerine dönüştü rülmesi için doğal bir yol sağlar.
Sonuç olarak, yazılım geliştirmedeki sorun lar, tasarımın yaratılmasını hızlandıracak bir nesneye dayalı dizge tasarım dili etrafında bir çok araçları bütünleştirerek, statik hataları bu lan, eniyilemeyi sağlamak için dinamik olarak tasarımın benzetimini yapan, tasarımı belge leyen, yazılım kodunu otomatik olarak üreten ve klasik veri türleri yanında görüntü, ses, me tin gibi yeni kuşak uygulamaların gereksediği veri türlerini de destekleyen iş istasyonları için geliştirilmiş CASE ortamları ile ortadan kaldırı labilecektir.
GÜNÜMÜZ Y AZILIM geliştirme ortamından beklenen özellikler gitgide artmaktadır. Bu or tamlarda her kullanıcıya ayrı işlemci gücü ve rebilmek ve gerektiği anda ekleme yapabil mek, aynı anda aynı kullanıcıdan kodlama, belgeleme, ürün izleme ve set işlevlerini yürü tebilmek, kaynak dosya ve versyon yönetimi yapabilmek ve kullanıcıları dinamik olarak projelere dağıtabilmek en önemli konulardır. Bu isteklerin karşılanması için entegre ve çok amaçlı yazılım geliştirme ortamlarından yarar lanmak gerekir.
5.2 GÜVENLİK
5.3. Y APAY US VE UZMAN SİSTEMLER
BİLGİSAYAR DÜNYASINDA güvenlik ge reksinimi ve buna uygun hizmetler çeşitlene rek artmaktadır. Authentication (Kullanıcı Kim liği Denetimi), Acces Control (Erişim Denetimi), Confidential'ıty (Gizlilik) ve Data In tegrity (Bilgi Bütünlüğü) alanlarında merkezi işlemci ve çevre birimleri güvenliğini sağlama amaçlı güvenlik hizmetleri artarak kullanılmak tadır. Tap, disk, vb. çeşitli korunmuş kaynak lara erişim yetkisi denetimi, kullanıcı kimliği belirleme ve doğrulama, şifreleme, vb. bu hiz metlere bazı örneklerdir.
Gelecek dönemlerde, bilgisayar güvenliği alanındaki olası gelişmelerin, merkezi işlemci ler ve çevre birimlerine ek olarak, özellikle uzak kullanıcı gruplarının erişimi ile değişik mimarilerdeki sistemlerin birbirleriyle iletişimi boyunca ağ güvenliğinin sağlanması alanla rında ortaya çıkması beklenmektedir.
OSI Ağ Güvenliği konusunda çalışma yürü ten, IBM'in de üyesi olduğu Stantartlar Organi zasyonları (ISO, CCITT ECMA, ANSI, NSA SDNS, MAP/TOP...) şu ana OSI (Öpen System Interconnect) tabakalarının bazılarını kapsayan standartları geliştirmiş durumdadır lar. Hatta, daha ileri seviyede, tabakalara öz gü olmayan güvenlik mekanizmalarını oluştur mayı amaçlayan bir güvenlik mimarisi tanımlanmıştır. Geleceğe yönelik olarak yürü tülen çalışmaların kapsamı içinde şu güvenlik mekanizmalarını saymak mümkündür:
Encipherment (Şifreleme)
Digital Signature (Sayısal İmza)
Access Control (Erişim Denetimi)
Data Integrhy (Bilgi Bütünlüğü)
Authentication Exchange (Kimlik Dene tim bilgileri Değişimi)
Routing Control (Yönlendirme Denetimi)
Notarization (Onaylama)
KARMAŞIK PROBLEM çözme, mantık yü rütme, planlama, algılama, öğrenme, gibi in san düşünüş ve davranışına ilişkin fonksiyon ların incelenmesinde kullanılan tekniklerden artık, bilgisayarlara benzer özellikler kazandı rabilmek için de yararlanılmaktadır. Tümüyle insan beyninin özellikleri olan bu fonksiyonla rın bilgisayar programlarına yansıtılmasına yönelik çalışmalar, yapay us başlığı altında geniş bir yelpazede bilgisayar projelerine ya yılmış bulunmaktadır. Yapay us yelpazesi, do ğal dil işlemden görüntü işleme, öğrenebilir program yazımından robot üretimine ka dar pek çok araştırma sahasını kapsa maktadır.
Belli konularda uzmanlaşmış kişilerin bilgi birikimini ve karar verme mekaniz malarını bilgisayar ortamında yaşatmayı amaçlayan uzman sistemle, günümüzde kullanım alanı en yaygın olan yapay us uygulamalarıdır. Uzman sistemler saye sinde belirli uzmanlık alanlarında karşı laşılan günlük problemlerin çözümlerine artık bilgisayarlar yön vermektedir.
Yapay us çalışmaları, dünya çapında birçok üniversite ve araştırma labarotuvarında artan bir hızla gerçekleştirilmektedir. Tüm bu çalış maların amacı, çevresindekileri algılayan, al gıladıklarına doğru tepkiler vererek hareket eden, insanlarla kendi dillerinde iletişim kuran, başarılı ve başarısız deneyimlerinden ders alan, kısacası "akıllı" olabilen bilgisayarı yarat maktır. Geleceğin düşünen robotlarına herge çen gün biraz daha yaklaştığımızı düşünür sek, ileride okul sıralarında çocuklarımıza "akıllı" bilgisayarların ders vereceklerini dü şünmek bir fantazi olmaktan çıkacaktır.
5.5. BENZERİ BAŞKACA KONULAR
HİZMETTEN BAĞIMSIZ YAPI (Bir yazılım "Bilim Kurgu" Denemesi)
Bugün yazılımın "gerçek zaman" uygulamalı en yoğun kullanım alanı şüphesiz iletişimdir.
387 E L E K T R İ K 4 / » o MÜHENDİSLİĞİ | Q j
Bunda, gelişimin canlı varlıkların en temel ge Bu görüş doğrultusunda 1969 1975 yılları ara
reksinimlerinden biri olması yanında (solunum sında çalışmalarını sürdüren CCITT çalışma
bUe bir Bet'tşhn olayıdır), özeSkle insanlığın grupları, 1976 yılında SDL (Specrfication and
gelişiminde oynadığı sosyo ekonomk toplum Description Language) adı altında bir standart sal rol de büyüktür. Buradan hareketle, son ortaya çıkarmıştır. SDL'in 1980 ve 1984 yılla
yirmi yılda fetişimin ne dent yazılım bağımlı rındaki uyarlamalarını takben 1988 yılında za
olduğu ve yazılımın temeBnde de keSmenin manın ortaya çıkardığı ihtiyaçlara göre deği
sözlük anlamıyla iletişimin bulunduğu dkkate şen uyarlaması SDL88, CCITT tarafından*
alınarak BİLİŞİM İLETİŞİM ikilisinin ayrılmaz CCITT Recommendation Z 100: SpecificaHon
bir bütün olması kaçınılmazdır.
and Description Language SDL, Annexes A F
Burada hemen bir çağnşım ve buna bağlı to Z. 100,1988* olarak resmen yayınlanmıştır.
bir benzeşim üzerinde durmakta yarar görüyo SDL, gelişme süreci içerisinde araştırma ku
rum: Evrenin bXnen en akıllı varlığı olan insa rumlarının, telekom idarelerinin ve üretici kuru
noğlu bugüne kadar gerçekleştirdiği her şeyi, luşların katkılarıyla uluslararası bir işbirliğinin
bütün çabalara rağmen henüz sırrı tam olarak sonucu ortaya çıkmıştır. Başlıca telekomüni
çözülmemiş beynin denetiminde diğer organ kasyon sistemlerinin tanımlanmasında kullanı
larını da kuManarak gerçekleştirmiştir. Beyin, lan SDL aynı zamanda sonlu durum makinala
tüm bu karmaşık işlemleri yaparken kapasite rı He modellenebilen herhangi bir gerçek
sinin maksimum %25lni kuşanmakta ve baş zaman sisteminin tanımlanmasında da kullanı
lıkta geçen "Hizmetten Bağımsız Yapı" çerçe labilir.
vesinde yukarıda bahsettiğimiz "BİLİŞİM İLETİŞİM" işlevinin en mükemmel örneğini
SOL:
vermektedir.
özellikleriyle tanımlama manasına gelen
İşte bugün, yazılım alanında ulaşılmaya ça 'specification* deyimi, bir bilginin iki kişi ara lışılan da süperbUgisayar alanından iletişim sında zihinlerde soru işareti bırakmayacak şe alanına kadar, adını "yapay us" koyduğumuz kilde aktarılması için kullanılmaktadır. Teleko beyni taklit etme çabasıdır. Zira beynin herkes münikasyon sistemlerinin gün geçtikçe tarafından kabul gören en önemli özeliği, öğ karmaşık hale gelmesi bu teknoloji üzerine ku renme işlevi ve öğrendiğini kuşanmadaki es rulu sistemlerin tanımlanmasında yeni dillere nekliğidir. "Hizmetten bağımsız yapı" dan söz olan ihtiyacı ortaya çıkarmıştır. Çünkü doğal ederken söylemek ıstetBğkn de budur. Yanı, dillerle yapılan sistem tanımlamaları ki uç ara fizyolojik yapısı değişmeden her türiü etkiye sında karışıklıklara neden olmaktadır; doğal kendi kapasitesi çerçevesinde en "akıla" tep dillerde bir cümleye bazı durumlarda birden kiyi verme, bunu yaparken de tüm birikimini fazla yorum getirilebilir. Tanımlama dillerinde kullanabilme özeMiği Bu özeUği sağlayacak amaç taraflar arasında bir fikrin, bilginin net, yazılımların geSştiriknesi ile yakın gelecekte açık, seçik ve kesin bir şekilde aktarılmasını her alanda akıKı yapılar gündeme gelecek sağlamaktır. Telekomünikasyon sistemleri gibi (İletişimde "Akıllı Şebeke" gtoi) ve bu bağlam büyük, karmaşık ve günden güne geliştirilen da yapay us çalışmaları çerçevesinde tüm iş sistemlerde ise böyle bir dilin kullanılması ar levsel yapıların "Hizmetten Bağımsız" ve sa tık kaçınılmaz hale gelmiştir..
dece yazılım ile "BİLİŞİM" yapısı değişen
SDL ile bir sistemin fonksiyonel davranışı
"Evrensel Yapıya (Evrensel Yapay Us) doğru uygulamadan bağımsız olarak tanımlanabilir.
geBşimi söz konusu olacaktır.
Yani verilen bir SDL tanımlamasından dona
nım ve yazılım yönünden iki farklı sistem ger
çekleştirilebilir
TARİHÇE:
SON Y İRMİ Y IL İÇİNDE telekomünikasyon sistemleri elektro mekanfc yapıdan bilgisayar kontrollü yapıya doğru evrim geçirmişlerdir. Bu zaman dilimi içerisinde ortaya çıkan tele komünikasyon sistemlerinin fonksiyonel dav ranışlarının tanımlanması ihtiyacı CCÜTnin 1968 yılındaki toplantısında ortaya atılmıştır.
SDL bir sistemi çeşitli ayrıntı seviyelerinde tanımlamayı mümkün kılmaktadır. Bunun en önemli uygulaması PTT idareleriyle üretici ku ruluşlar arasında ortaya çıkmaktadır. Günü müzde PTT idareleri kullanıcılara çok çeşitli hizmetler sunabilmektedir. İdareler kullanıcıla ra sundukları bu hizmetleri üretici kuruluşlar dan aldıkları sistemler ile gerçekleştirmektedir ler.
Sonuç olarak PTTIer şebeklerini kurarken veya genişletirken ne istediklerini tam olarak üretici firmalara iletmek durumunda, üretici fir malar ise geliştirdikleri ürünlerin fonksiyonel özelliklerini karşı tarafa net bir şekilde anlat mak durumundadırlar. Bu şekilde sistemler PTT idarelerince daha iyi analiz edilebilirler. Tarafların anlaşılamaması sorunu ancak kural lı bir dilin kullanılması ile giderilebilir. Böylece PTT idareleri ile üretici firmalar arasında istek ve tekliflerin sağlıklı olarak iletimi için SDL gibi kurallı bir dilin kullanılması zorunluluğu ortaya çıkmaktadır.
Tipik uygulama alanlarına örnek olarak tele fon, telex, veri anahtarlama, sinyalleşme sis temlerinin veri protokolleri ile karşılıklı etkile şimleri verilebilir, özellikle Y üklenmiş Program Kontrollü (SPC, Stored Programme Control led) anahtarlama sistemleri göz önüne alındı ğında çağrı işleme (çağrı ele alma, yönlendir me v.b.), bakım ve hata giderimi (alarm, otomatik hata giderimi, sistem konfigürasyonu v.b.) sistem kontrolü gibi fonksiyonlar SDL ile kağıda dökülebilmektedir. Ayrıca CCITTnin yapmış olduğu önerilerde protokollerin tanım lanması SDL ile yapılmaktadır.
Y ukarıda bahsedilenler ışığında SDL başlıca iki gruba seslenmektedir. Birinci grup, bir siste mi tanımlayan aktif kullanıcılar, idareler, diğeri ise SDL ile yapılmış dokümanları okuyan sis tem tasarımcıları, üretici firmalardır. Sonuç ola rak tüm PTT idareleri ve üretici kuruluşlar ulus lararası tanımlama ve anlatım dilini kullanarak birbirleri arasında standart bir haberleşme or tamı yaratmaktadır.
Bir sistemin gerçekleştirilmesinde toplam za manın çok büyük bir kısmı tasarım aşamasın da ve bunu takip eden süreçte olası tasarım hatalarının düzeltilmesi için harcanmaktadır. SDL gibi standart tanımlama dilleriyle yapılan tasarımlarda çalışma gruplarının birbirleri ara sındaki haberleşme sorunları minumuma indiği için bu zamandan büyük ölçüde tasarruf edil mektedir.
Y azılım Formları:
SDL'in aynı model üzerine kurulmuş iki farklı şekli vardır. Bunlardan ilki standart birtakım semboller üzerine kurulan SDL/GR (Grafiksel gösterim), diğeri ise SDL/PR1 (Cümlelerle gös terimdir.
Birinciyi oluşturan grafiksel anlatımın daha kolay anlaşılabilir olma avantajı vardır. Başlan gıçta SDL/PR SDL dokümanlarının bilgisayara aktarımı esnasında kullanılmak üzere düşünül
müştü. Çünkü o zamanlar bilgisayara grafiksel
olarak veri girişi yapabilmek oldukça zordu. An
cak daha sonraları grafit terminallerinin geliş
mesi ve yaygın olarak kullanılmaya başlanma
sıyla bu sorun ortadan kafcmıştır. Günümüzde
PCler ve grafik iş istasyonlarında çalışabilen
SDL*yi (CCITT SDL 88) destekleyen programlar
bulunmaktadır. Bunlardan bazıları kuruluşlarca
kendi kullanımları için geliştirilmiş (AT & T. Sie
mens) bazıları da ticari amaçla üretilmiştir (Te
lesoft SDT). Bu programlar yardımıyla dokü
manlar
hazırianabilmekte,
tasarlanan
sistemlerin simülasyonları yapılabilmekte ve
hatta kaynak programlar üretilebilmektedir.
Sonuç:
Tüm bu anlatılanlar ışığında, SDL tanımlama ve anlatım diline duyulan ihtiyacın nedenleri aşağıdaki şekilde özetlenebilir.
1. SDL, CCITT tarafından tasarlanmış ulusla rarası standartlara sahip bir dildir.
2. SDL. özellide birçok paralel işlemin birbi riyle iletişimde bulunduğu karmaşık gerçek za man sistemlerinin tanımlanması için tasarlan mıştır.
3. SDL, grafiksel gösterim özelliğiyle kullanı cılar tarafından kolayca anlaşıtabilmektedir.
4. SDL yapısal bir dildir.
5. Bir sistem SDL ile çok genel bir şekilden çok ayrıntılı bir şekle doğru seviye seviye anla tılabilir.
6. SDL, PTT idarelerinin telekomünikasyon sistemleri siparişinde ve üreticilerin bu sistemle ri sağlamasında eksiksiz bir anlatım getirmekte dir.
7. Kuralsız doğal dillerde ortaya çıkan karma şık yapı, problemin SDL ile herkes tarafından kolayca anlaşılabilir bir şekle dönüştürülmesiyle ortadan kakmaktadır.
Y AZILIMIN Y ARINKİ GÖRÜNÛMÜ'NDE NESNEY E DAY ALI PROGRAMLAMA
5. KUŞAK DİLLERİ DE denen Nesneye Da yalı Programlama dilleri uzun yıllardır bilinmele rine rağmen Dünya'da ve Türkiye'de henüz yaygın olarak kullanılmamaktadır. Nesneye Da yalı Programlama'mn yaygınlaşması için kulla nıcıların bu farklı yaklaşımı benimsemeleri baş ta gelen koşuldur. Ancak yazılım platformalarının da bu geçişi kolaylaştıracak şe kilde daha entegre ve kullanıma yönelik tasar lanmaları gerekmektedir.
J £>C 1 DO
DEVLET BÜROKRASİSİNDE BİR Y ENİDEN Y APILANMA GEREKLİ Mİ?
6.1. BİLİŞİM ETKİNLİKLERİNDE KURUMLAŞMA
GÜNÜMÜZDE BİLGİSAY AR ve iletişim tek nolojileri, başka bir deyişle elektronik ve tüm yönleriyle kullanımı, ekonomik etkinliklerin en önemlilerindendir. Dünyanın en büyük kuru luşları arasında, enerji sektörünün yanısıra bi lişim sektörü kuruluşlarını görmekteyiz. Ülke mizde de, dünyada da bilişim etkinlikleri, ekonomik etkinlikler içinde önemli bir pay oluşturmaktadır.
Bilişimin önemi, birçok ülkede kurulan ilgili bakanlıklarla, hükümet etkinliklerine yansıtıl mış bulunmaktadır. Japonya'da Bilişim bakan
artık "bilişim" çerçevesinde oluşturulmalı ve yürütülmelidir. Bu çerçevede elektronik sana yii, bilgisayar donanımı ve yazılımı projelerinin desteklenmesine, kullanımın yaygınlaşmasına ve özellikle kamu kesimindeki kullanıma eşgü düm sağlanmasına ilişkin hükümet politikaları nın oluşturulması ve yürütülmesi için Bilişim bakanlıgı'nın kurulması Türkiye'den beklendi ği sık sık vurgulanan "yazılım hamlesinin" ger çekleşmesine de katkıda bulunacaktır. Bu ba kanlığın temel işlevleri arasında uluslararası uyumluluğun gözetilmesi, bu amaçla teknolo jik standartların izlenmesi ve en önemlisi olu şumlarına katkıda bulunulması olmalıdır. Ba kanlık bu bakımdan TSE ile yoğun işbirliğini gerçekleştirmelidir.
Teknolojiye, özellikle de bilişim kadar hızlı gelişen bir teknolojiye katkının kişisel ve ko puk kopuk çalışmalarla gerçekleştirilmesi dü şünülemez. Bu katkı örgütlü, destekli, ulusal ve uluslararası düzeyde eşgüdümlenmiş, araştırma, geliştirme, üretim, pazarlama ve özellikle kamusal kullanım yönlerini birlikte planlayıp gerçekleştiren çalışmalarla ortaya çıkabilecektir. Bilişim Bakanlığı bu çalışmala rın çekirdeğini oluşturmalıdır.
lığı, Hindistan'da Elektronik Bakanlığı, Çin Halk Cumhuriyeti'nde Elektronik Sanayii Ba kanlığı, birçok Avrupa ülkesinde ise bilim ve teknoloji bakanlıkları yada genel müdürlükleri bu konuyla ilgili politikaların belirlenmesi ve uygulanması sorumluluğunu taşımaktadır. Bu güne dek ülkemizde ulaştırmanın bir parçası olarak kabul edilegelmiş olan iletişime ve hiç bir hükümet etkinliğinde gereken yeri alama mış, yakın geçmişe kadar gümrüklerde yalnız ca "muhasebe makinası" olarak tanımlanabilen bilgisayarlara ilişkin politikalar
I /?/> 387 E L E K T R İ K
I DO MÜHENDİSLİĞİ
TARİHÇİLER, İLERİDE 20. Yüzyılın ince lenmesini yaparken; Bu Yüzyılın son çeyreğini bilgi çağının başlangıcı, olarak tanımlayacak lardır. 6O'lı yıllardan başlayarak bilgisayarın oluşumunu ve 30 senede yaşanan devrimi dü şünürsek, bu yargıya katılmamak elde değil dir.
Ülkemizde de benzer bir gelişme yaşanmış tır. Orta ve büyük çaplı işletmelerde vazgeçil mez bir unsur olan enformasyon sistemlerinin bir kaç sene içerisinde küçük işletmelerde de kullanılmaya başlanılacağı muhakkaktır.
Ne yazık ki bu kadar hızla benimsediğimiz bu yeni teknoloji ve onu oluşturan kavramların gerektirdiği yeniden yapılanma da, her zaman olduğu gibi gene geç kalmaktayız. Halbuki da ha işin başında iken gelecekte büyük sorunlar yaratabilecek konularda gerekli altyapının ku ruluşuna başlanılmalıdır.
Bir düzene kavuşturulması gereken ve bilgi sayar kullanımı ile doğrudan bağlantılı konu lardan bazıları şunlardır.
1. Hukuksal Düzenlemeler:
Yasalarımızın ve Yönetmeliklerimiz, bu yeni bilgiyi kullanma, saklama, dağıtma sistemleri ni düzenleyecek biçimde gözden geçirilmeli dir. Karşılaşılabilecek sorunlara bir kaç örnek verebiliriz;
a Çalıştığı şirketin bilgisayar kayıtlarından hayati bilgileri silen bir programcı nasıl yargı lanacaktır?
b İş değiştiren bir programcı beraberinde eski şirketinin bilgisayar programlarını kendisi nin geliştirmiş olması nedeni ile götürüp başka bir şirkette kullanabilir mi?
c Bilgisayarlar arası veri iletişiminde elekt ronik faturalar ve irsaliyeler ne zaman geçerli lik kazanacaktır?
2. Bilgi Alışverişini Düzenleyecek Bilişim Standartlarının Saptanması
Bankalarımız, büyük şirketler ile çek/senet bordrolarının elektronik ortamda alışverişine başlamışlardır. Benzeri biçimde maaş ödeme leri de bilgisayar kayıtlarının hesaplara trans fer yolu ile yapılmaktadır. Ne yazık ki bu konu da da bir standartlaşma gereği düşünülmediği için banka sayısı kadar kayıt tipi oluşmuştur ve gün geçtikçe de düzensizlik yaygınlaşacak tır.
Örneklerle kısaca değinmeye çalıştığımız konunun devlette bir sahibinin olması gerekti ği kanısındayız. Gerekli yetkilerle donatılmış bir kuruluş ancak bir bilişim bakanlığı olabilir.
TARIM, SANAY İ, TİCARET vb. gibi bakan lıkların yanı sıra bir Bilişim Bakanlığı ya da benzeri bir yapılanma oluşturulmalı.
Bilgisayar ve iletişim teknolojilerinin geliştiği günümüz dönemi enformasyon çağı olarak ni telendirilebilir. Enformatikteki gelişmelerin zor laması ile iş dünyası, devlet, eğitim ve araştır ma kurumlarında yeniden yapılanma gündeme gelmektedir. Bilgi patlamasından gerekli ve işe yarayan bilgiyi ayıklayabilen ve bununla elde tutulur yararlar sağlayan bilişim sistemlerine sahip ülkeler, yiyecek, üretim, sağlık, eğitim ve doğal kaynakların kullanımı gibi konularda sağladıkları avantaj ile refah toplumuna daha da çok yaklaşmaktadırlar.
Zaman ve kaynak kullanımında çığır açan bu avantajlardan yararlanmak için gerekli olan yapılanmanın bir ölçüde oluşturulmasının ve denetiminin sorumluluğunu taşıması gerekli olan bir oluşuma mutlaka ihtiyaç vardır. Bu amaçla kendi alanlarının gelişiminden sorum lu olan Tarım, Sanayi, Ticaret, v.b. gibi bakan lıkların yanı sıra bir bilişim bakanlığı yada eş değeri bir yapılanmaya mutlaka gidilmelidir.
BİLGİSAY AR UY GULAMALARININ son derece yaygın ve kaçınılmaz olduğu bugün, bilgisayarsız bir ortama göre yapılandırılmış devlet bürokrasisinin yeniden bir yapılanmaya gitme gerekliliği açık bir şekilde ortada dır. Çünkü, şu anda bir çok devlet kuru luşunda bürokrasi, devlet dairelerinde iş yürütme peşinde olan vatandaşları bez diren manuel form akışları ile yürütül mektedir. Bu tip devlet dairelerinde bilgi sayar kullanılsa bile, işler çoğu kez mükerrer olarak yapılmakta, bilgiler ön celikle yıllar önce düzenlenmiş ve ge nellikle hiç bir işlerliği kalmamış formla ra kaydedilmekte ve daha sonra bilgisayara geçirilmektedir. Bilgi sistemi * yapısına geçilirken, mevcut yapı, bilgisayarın etkin kullanımına imkan verecek şekilde yeni den tasarlanacağı yerde, bilgi sistemi mevcut yapıya uydurulmaktadır.
Bu konuya çözüm olarak, hükümette bu ko nuyla ilgili bir bakanlık açmak soruna tam bir çözüm oluşturmayacaktır. Bilişim bakanlığı veya benzer bir ad altında oluşturulan bu ba kanlık aslında bilişim işlevini içlerinde bulun duran diğer bakanlıkların yeniden yapılanma sına etkin bir katkıda bulunmayacaktır. Buna ek olarak, böyle bir bakanlık hükümet politika değişikliklerinden de fazlası ile etkilenecektir. Bu nedenle, konunun en duyarlı çözümü, ola bildiğince özerk ve yaptırım gücü olan bir ens titü kurularak, bilişim işlevleri kontrolünün bu kuruma devredilmesi olacaktır. Türk standart ları Enstitüsü veya Türk Dil kurumu gibi bir statüde çalışacak bu enstitü, Türkiye'de ihti yaç duyulan bilişim sektörü standartlarını be lirlemede ve Devlet bürokrasisinin yürütülme biçimini bilgisayar kullanarak etkin, veri tekrar sız ve daha verimli iş gücü kullanımına imkan sağlayacak bir hale getirmede yararlı olabilir.
387 E L E K T R İ K 4 fiT MÜHENDİSLİĞİ I Ö f
DAHA ÖNCE DE değinildiği gibi, yazılım ta mamen zihinsel bir çalışmadır. Bu nedenle il gililerin zihin güçlerinin tamamını işlerine ayı rabilmeleri için onların kafasını meşgul edecek (gümrük, işçi işveren ilişkisi, çalışma koşulları, vergilendirme, telif hakların v.b.) her türlü konu, devletin oluşturması gereken en üst düzey bir komite (Bakanlık?) tarafından düzenlenmelidir.
Bu konunun devlet tarafından en üst düzey de önem taşıması gerekliliği, devlet için ne demekse, o yapılmalıdır.
destek sağlaması bir hükümet politikasıdır. Hükümetler bu konuda, pazar ekonomisinin kurallarına aykırı düşmek gibi bir komplekse veya kaygıya kapılmamakta, sonucu olarak bu paranın bir şekilde ülke refahının yüksel mesine katkıda bulunacağının hesabını yap maktadırlar. Bu konuda, hükümetin bir başka devlete şartlı yardım olarak verdiği paranın, bu devlet tarafından yapılan bir satın alma ile çalışmış olduğum şirkete geri transfer edildiği ni bizzat gördüm.
Bilhassa, yazılımın henüz canlanma aşama sında olduğu Türkiye örneği ülkelerde devletin gerçek anlamda yazılımla uğraşan şirketlere doğrudan destek vermesini kaçınılmaz görü yorum. Bu konuyla ilgili bir bakanlık kurulması düşüncesine olumlu bakıyorum.
OLDUKÇA UZUN BİR SÜRE yurt dışında okumuş ve çalışmış olmam dolayısıyla, Batı memleketlerinde genelde yüksek teknoloji (Hi tec), özelde de yazılım konusunda çalışmakta olan şirketlere, yaptıkları işin boyutuyla orantı lı olarak devletin doğrudan bir yardım yaptığı nı yakından biliyorum. Doğal olarak, bu yardı mın kaynağı vatandaşlardan toplanan vergilerdin bir başka deyişle vatandaşların yüksek teknoloji ile uğraşan şirketlere parasal
Y AZİLİM ÜRÜNLERİNİN her tür yaşam ak th/itelerini, içine alıp düzenleme, süreç ve so nuçlandırma bakımından etkileyebileceği çok açık yaşanmaktadır. Yazılım ürünleri ve sana yi, yaşamı etkileyen bir yeni kültür olgusudur. Bu kültür olgusu sanayide ve tarımda verimi artırmak, ticarette muhasebenin daha sıhhatli yapılmasını sağlamak ve sanatta güzeli ve iyi yi yakalamada yaratıcılığı geliştirmeyi sağla yan bir toplumsal olaydır. Düzenli işleyebilme si için koruyucu ve bilgi almayı sağlayıcı güvenilir kurumlara ihtiyaç vardır. Bu yüzden bu düzeni sağlayacak bir "BİLİŞİM BAKANLI Ğl'nın kurulması çok yararlı olur.
Bilişim Bakanlığı kurulabileceği gibi, bu ko nuda dernekleşme de yararlı olabilir. Bakanlık ve derneklerden oluşturulan bu kuruluşlar, kullanıcılara yazılım olgusunun geliştirilmesi ve belki de bu güne kadar ihmal edilmiş olan "Bilgisayar Virüs" üne karşı tedbirli olma ve savaşma konusunda yön verebilirler. Ayrıca bu yolla bilgisayar sistemlerinin maliyeti, güm rük sorunları, standartları ve yazılımların telif hakları meselelerine de çözüm getirmek mümkün olabilecektir.
Bu tür kuruluşlar programcılık veya tasarım cılık konusunda insan hayatını kolaylaştırıcı işlevlere ve amaca yönelik çalışmalara ve araştırmalara açık olmalıdır.
168 387 E L E K T R İ K MÜHENDİSLİĞİ
M
AÇIKGÖZ Oktay Aydın
1967yılıC>OTÛBiojsayar Mühendisliği Mezunu. 1989 Bifcent Üniversitesi. Bilgisayar Mühendisliği ve Enformatik Binileri, Y üksek Lisans. ASELSAN MST Grubu BHY M
AKINCI Ender (Dr.)
Telekomünikasyon Y üksek Mühendistği mezunu, Doktora çalışmaten (Fransa) TELETAŞ Santral Ürün Müdürü
ALUÇ, TOlay 1972 r a i Elektrik Fakültesi mezunu. TELETAŞ
ALTAY Müjdat İTÜ Elektrik Mühendisliği Bölümü mezunu. BÛ Biyomedikal Müh. Y üksek lisans. TELETAŞ Orun Araştırma Geliştirme Direktörü.
ARIK Şebnem
1969 yılı İTÜ Fen Mimleri Enstitüsü Kontrol Bigisayar Müh. Master Programı mezunu. BigBayar Y üksek Mühend». TELETAŞ AR GE Direktörlüğü Bilgisayar Destekli Tasarım Bolümü.
ARIKAN Ferhat
1989 y i ı OOTÛ Elektik ve Elektronik Mühendisliği Bfittmü Mezunu. 1982 aynı bolümden Y üksek Lisans. ASELSAN MST Grubu. BigBayar rtzmeten ve Y azdım Müdürlüğü, Y azdım Mühendisi.
ARABACIOĞLU LGûzide
1985 Boğaziçi Üniversitesi Elektrik ve Etoktronik Mühendisliği Bolümü Mezunu. TELETAŞ Santral Müdürlüğü. Orun Müdürlüğü Santral Bölüm Şefi.
ATLJ Selaml
1969 Y ılı OOTÛ Bektrik Mühendisliği Bolümü Mezunu. 1972 Y üksek Lisans. ASELSAN. Mfcrodaiga ve Sistem Teknolojieri Grubu, Bigisayar Hizmetleri ve Y azılım Müdürü
AZİZOGLU M.Cemll
1990 ODTÜ Bigisayar Mühendisliği Bölümü mezunu. ASELSAN Bigisayar Hizmetleri ve Y azılım Müdürlüğü, Y azılım Mühendisi.
BAĞRIAÇIK Y ücel ODTÜ Elektrik ve Etektron* Mühendisliği Bolümü Mezunu. ODTÜ Etektk Elektronit Bolümü Y üksek Lisans Çahşması. PTT AR GE
BAR AY Mehmet (Prof. Dr.) B i e n t ÛniversitBsi, Bilgisayar Mühendisliği Bölümü.
BAY SAN Suat Manchester Technkal Unvershy Mezunu. TELETAŞ Teknoloji, AR GE ve Ürün Y önetimi Genel Müdür Y ardımcısı.
BELGÛL Ahmet
İTÜ Elektrik Mühendisliği Bölümü Mezunu. İTÜ Elektrik Mühendisliği Bölümü Y üksek Lisans. TELETAŞ Y eni Ürün Takdimi ve Y azılım Kalite Temini Müdürü.
BOZOK Selim
1971 Y ılı Robert Kolej Makra Mühendisliği, 1972 Y ılı Vırginia Polytechnic hs t EndOski MOhemMiği M.S. Bölümleri mezunu. PEGA.Ş.Bigi İşlem Müdürü.
CİVELEK Meltem BM Türk ümrted Şirke». Uygulan» Y azılımı Geliştirme Merkezi
ÇMAR Bahadr
BÛ Elektrik, MOhendsiği Bölümü Mezunu, BÜ Bigisayar Mühendeiği Bolümü Y üksek Lisans. DMS AR GE 1. Uluslararası Tasanm Müdürü. TELETAŞ
DEMİREL Baki OOTÛ Bilgisayar MûheraSsliği Bölümü Mezunu. ASELSAN MST Grubu BHY M
DOKUZOGLU M^afer
1982 yılı OOTÛ Elektrik MûhendBİği Bölümü Mezunu. 1985 Aynı Bölüm Y üksek Lisans. ASELSAN MkrodaJga ve Sistem Teknotojieri Grubu. Bigisayar Hnmetteri veY azrtm Müdürlüğü, Şef Mühendis.
ENFtY ECİ Kemal
1989 yth OOTÛ Bigisayar Mühendsiği BoUmO Mezunu. ASELSAN Bigisayar Haneden ve Y azılın Müdürlüğü. Y azrton Mühendsi.
ERGEÇEN Eyüp Türkiye Y azılmalar Biriği Y ürütme Kurulu Başkanı
ERGÜL Gül BM Türk ümrted Şirketi. Çözüm ve rtzmetter Bölümü
ERTEM Çiğdem 1989 OOTÛ Bigisayar Mühendisliği Bölümü mezunu. ASELSAN
GÜVEN Doğan (Dr.)
1986 yılı Hacettepe Üniversitesi Bügşayar Mühendisliği Bölümü Mezunu. Ege Üniversitesi Bigisayar MûhendBİği BoUmü Y üksek Lisans ve Doktora çalışmaları. EGE Üniversitesi, Bilgisayar Mühendisliği Bölümü
GÖKÇE Haluk Digital Equipment Türkiye A.Ş.
GÜLER Gûnay 1967 OOTÛ Elektik ve Elektrot* Mühendisliği Bölümü Mezunu. TELETAŞ. AR GE Direktörlüğü.
İ NAN Kemal (Prof. Dr.) Orta Doğu Teknik Üniversitesi Etektrik Elektron* Mühendisliği Bölümü
KOLAT Aydın BM Türk ümited Şirketi. Çözüm ve Hizmetler Bölümü
KUTLUAY Sina
1963 yılı OOTÛ Elektrik ve Elektronik Mühendisliği Bölümü Mezunu. 1986 yılı Y üksek Lisans. ASELSAN Mkrodakp ve Sistem Teknotojüen Gurubu, Bigisayar Hizmetleri ve Y azılım Müdürlüğü, Şef Mühendis.
ÖZÇIKMAK Kamil
1983 Marmara Üniversitesi Teknik Eğitim Fakültesi EMdrik Baktronik Anabim dalı mezunu. Marmara ÛnversAasi Fen Bimieri Enstitüsü EMdıic EMdronik Ana Bftn Dalı Y üksek Lisans Çalışması. TELETAŞ Etoktronik Bakım Mühendisi
ÖZEL Fatih Mehmet SPEKTRUM Etektror* sahibi PAN ELEKTRONK Ltd. Şti. Genel Müdürü
SARPER Selim 1984 yılı Etektror* Y üksek Mühemfeliği Mezunu (Fransa) TELETAŞ, S 12 Y aziım Departmanı Müdürü.
SİVİKNİlhan 1991 İTÜ Eleklik Elektronik Fak. Kontrol ve Bigisayar bölümü Mezunu. TELETAŞ AR GE Bigisayar Destekli Tasanm Bölümü, Sistem Destek Mühendisi
ŞEKERCİ Mukaddes
1986 yılı İTO Kontrol ve Bigisayar BflUmü Mezunu. TELETAŞ AR GE Bigisayar Destaki Tasanm Sistem Sorumlusu.
TURA N Fulya OOTÛ Etoktk Mühendisliği Mezunu. Ürün AR GE Y aziım Geiştirme Müdürü TELETAŞ
UNCU Oğuz 1987 yılı OOTÛ Bilgisayar Mühendisiği Bolümü mezunu. Aynı bölümde Y üksek Lisans. ASELSAN
UNVERDI M.Danis
MalhematiquesSuperieures.Mathemaliques SpecMes (Lyon Fransa) Ecole PorytBchnique (PaUseau, Fransa) Eooto Nationale Suparieure des Telecommunications (Paris Fransa) TELETAŞ Sistem 12 Sayısal Telefon SantraReri Y azılm BaknBoUmŞefi.
ÜNLÜ Murat
Boğaziçi Üniversitesi Elektrik MühendBSği Bolümü mezunu. TELETAŞ AR GE Sistem Planlama.
UNSAL CavK 1983 yılı Anadolu Üniversitesi, Elektron* Teknkertiği Bölümü Mezunu. TELETAŞ Santral Müdürlüğü
Y ALT Erdal 1976 OOTÛ Elektronik Mühendisliği mezunu. TELETAŞ Y eni Ölçü Düzenleri ve Y azılımlar Bolüm Şefi.
Y AVUZ Hamdi İTÜ Elektrik Mühendisliği Bölümü mezunu. İTÜ Bilgisayar Y üksek Lisans. TELETAŞ Ürün Geüşirme Ortamı Müdürü
Y AZILIM SAY ISINDA Y ER ALAN BAZI TEKNİK TERİMLER
Teknik Terimler bölümümüzde Yazılım özel sayılarımızın ilki olarak hazırladığımız bu sayıdaki kimi yazılarda geçen sözcüklerden seçtiğimiz bir minik derlemeye yer veriyoruz.
S / W : yazılım (softvvare)
H / W : donanım (hardware)
IC : tümleşik devre
SDL : belirtim betimleme dilleri (specification description languages)
FDL : biçimsel betimleme teknikleri (formal description techniques)
OBJECT ORİENTED : nesneye dayalı, nesnel kökenli
OSI : açık dizge bağlantısı (öpen system interconnection)
SYSTEM DESİGN : dizge tasarımı
PC : kişisel bilgisayar (personel computer)
USER FRİENDLY PROGRAM : Kullanımı rahat ve kolay olan program.
OPTİCAL CHARACTER RECOGNİTİON : görsel harf tanıma
ELEKTRİK MÜHENDİSLİĞİ DERGİSİ Adresinize Düzenli Olarak Gönderilmektedir.
LÜTFEN ADRESLERİNİZİ GÜNCELLEŞTİRİNİZ.
ELEKTROMEKANİK KONSTRÜKSİY ON İMALAT PAZARLAMA SANAY İ VE
TICARET LIMITED ŞIRKETI
Y e ni O s t i m S a n a y i Si t e s i
41 . Sokak No. 38
06370 ANKARA
Tel : (4) 385 11 27 PBX Fax: (4) 385 11 29
KABLO TAŞIMA SİSTEMLERİ
MODERN «GÜVENLİ • UZUN ÖMÜRLÜ «EKONOMİK
Sizler için en y e t k i n i
,' EXTRA İNDİRİM
KU PONU
Aynntılı bilgi için Okuyucu Servii Kuponu'ndan (12) numtnyı ijareüeyiniz.