Bilgisayar Mühendisliği Çalışma Alanları Nelerdir?

Bu yazımda, Bilgisayar Mühendisliğinin faaliyet gösterdiği alanlara değineceğiz. Mezun olan bir kişi hangi meslekleri yapabilir, kısaca özetleyeceğiz. Hem bilgisayar mühendisliğini meslek olarak seçmeyi düşünen üniversite adayları, hem de hali hazırda bir Bilgisayar Mühendisliği okuyan öğrencilerin bölüm bittikten sonra iş hayatına hangi alanda atılacakları konusunda fikir verecektir.

Bilindiği gibi Bilgisayar Mühendisliği bilim dali kendi alanıyla ilgili temel bilgileri vererek sizi mezun eder. Hangi alanda uzmanlaşacağınız size bağlıdır. Sizin mezun olduktan hangi alanda çalışmaktan zevk alıyorsanız o alana yönelirsiniz. Tabi bütün alanlar konusunda bilgi sahibi olursanız işiniz kolaylaşır. Aşağıdaki bazı alanları ilk defa da duyabilirsiniz.

Adli Bilişim (Computer Forensics): Birçok adli vakada artık bilişim teknolojisinden yararlanılmaktadır. Delillerin toplanması, saklanması, analiz edilmesi ve bir sonuca varılması konusunda çalışmalar yapan bilim dalıdır. Olay yerinde alınan parmak izlerinden tutun da, bir suçlunun sabit diskinden sildiği verilerin kurtarılması ve tespiti vb. birçok olayda Adli Bilişim önemli bir alan olarak karşımıza çıkmaktadır. Aşağıdaki birçok alanla iş birliği yapabilir. örneğin görüntü işleme teknikleri ve yapay zeka ile bulanık çekilen bir resmin gerçekte hangi kişiye benzediği tahmin edilebilir.


 
Biyoenformatik (Bioinformatics): Aşağıdaki şekilde görüldüğü gibi Bilgisayar Bilimleri, İstatistik, Kimya, Biyoloji, Mühendislik, Biyokimya gibi birçok farklı disiplinin yer aldığı bir alandır. Tabi ki bütün bu bilim dalllarının hepsine hakim olmak mümkün değildir, o alanın uzmanları ile bilgisyar mühendisleri birlikte çalışırlar. Biyolojik bilgilerin saklanması için veritabanlarının oluşturulması, gerekli sorgulama ve analizlerin yapılabilmesi için gerekli altyapının oluşturuması sürecini kapsar. Nükleotit Dizi Veritabanlarının Kullanılması, Protein ve Özelleştirilmiş Sıra Veritabanlarının Kullanılması, DNA Dizisi ile Çalışma, Tek Protein Dizisi ile Çalışma, Dizi Veritabanları üzerinde benzerlik çalışmalari, İki Diziyi Karşılaştırma, Üç boyutlu Protein Yapıları ile Çalışma, RNA ile Çalışma, Pilogenetik Ağaçlar Oluşturma gibi konular sayılabilir. 


Biyometri (Biometric): İnsanların fiziksel ve davranışsal özelliklerini inceleyerek kimlik saptama üzere ilgili yazılımların geliştirilmesi ve otomatik olarak tanınması ile ilgilenen bilim dalıdır. Örneğin kişinin yüz, parmak ve retina bilgilerinin taranarak bilgisayar ortamına aktarılması bir çip veya akıllı kart içinde depolanakarak kişinin kimliğinin tespit edilmesi vb. çalışmalar biyometri alanına girer. Diğer bir örnek olarak ilerleyen yıllarda artık banka kartı taşımayacağız, bankamatik ekranına kısa bir süre bakacağız, sistem retinamızdan bizi tanıyarak hesap bilgilerimizi getirecek, böylece hiç kart kullanmadan bankacılık işlemlerimizi yapabileceğiz. Artık hastanelerde çalışanlar imza atmıyor, işyerine geldiklerinde parmak izlerini okutup işyerine giriş yapıyorlar, böylece bir personelin işine zamanında gelip gelmediği hemen kontrol edileviliyor. Bilim kurgu filimlerinden gördüğümüz birçok olay artık gerçekleşiyor.


Bulanık Mantık (Fuzzy Logic) Azerbeycanlı bilim adamı Prof. Dr. Lütfi Zadeh tarafından geliştirilen bilim dalı. Klasik mantıkta, 1 ve 0 vardır, yani ya doğrudur(1) ya yanlış(0). Örneğin bir çamaşır ya kirlidir(0), ya temiz(1). Bulanık mantıkta ise 1 ve 0 arasındaki sayılar da vardır. Yani bir çamaşır 0.7 oranında temiz, 0.3 oranında kirli olabilir. Bu bilgiye göre hareket eden bulanık mantık kullanan çamaşır makinesi, ne kadar deterjan, ne kadar sıcak su kullanacağına ve çamaşırın temiz olması için ne kadar çalışması gerektiğine karar verebilir.

İşte bulanık mantık; çamaşır makinesi, mikrodalga fırınlar, kameralardan, endüstriyel süreç kontrollerine, medikal aletlere, karar-destek sistemlerine, portfolyo seçimine kadar birçok alanda kullanılıyor. Aşağıdaki örnekte ise bir arabanın frenleme sisteminde bulanık mantık kullanımı açıklanıyor. Sistem kendi kendine karar vererek frenleme yapıyor. İşi bu kadar özetledik ama Bulanık Kümeler, Bulanıklaştırma, Bulanık Kurallar vb. birçok detay var, daha detaylı olarak verdiğim referanstan okuyabilirsiniz.


 
Bulut Bilişim (Cloud Computing)  İnternetin gelişmesiyle birlikte yazılım ve donanım kaynaklarının daha etkin kullanımı önemli bir konu haline geldi. İnternete bağlanan tüm cihazların ortak bir yapıda  kullanılmasını sağlayan, kaynakları "kullanıldığın kadar öde" prensibiyle hayata geçiren bir sistemdir. Günümüzde, İnternet tabanlı bilişim hizmetlerinin genel adı haline gelmiştir. Şirketlere eseneklik, hızlılık ve maliyet açısından avatajlar sağlamaktadır. Örneğin bir şirket sunucu yatırımı yapıp 5 senede bir donanım ücreti vermek istemeyebilir, bunun yerine tüm yazılımlarını ve verilerini bulut sistemi sunan bir yapıda tutar. Tüm şirket çalışanları internet üzerinden, istedikleri her yerden sisteme ulaşabilirler.

Bugün fotoğraflarımızı bile Google Drive, Apple ICloud sisteminde tutuyoruz. Amazon AWS Bulut sistemi, Microsoft Azure sistemi üzerinde verileri tutmanın yanında Makine Öğrenmesi algoritmalarını dahi veriler üzerinde kullanıp analizler elde edebiliyoruz.


Büyük Data (Big Data) İnsanoğlunun ürettiği veri yıldan yıla artıyor. Günlük hayatta insanlar sosyal medyadaki paylaşımları ile bile byük hacimlerde veriler üretiyorlar. İşte bu büyük hacimde verinin saklanarak analiz edilmesi, sonuçlar türetilmesi meydana gelebilecek olaylar ve sonuçları altında daha fazla kontrol sağlamaktadır. Örneğin sosyal medya paylaşımlarından bir ülkedeki insanların hangi yemeklerden hoşlandıkları, hangi ülkeleri sevdikleri, siyasi eğilimleri vb. birçok bilgiye ulaşılabilir. Diğer bir örnek olarak bir marketin satış veritabanı incelenerek, o bölgedeki müşterilerin alış veriş sepeti eğilimleri analiz edilebilir. 

Veriyi bilgiye dönüştürmek ve bu bilgiyi depolayarak analiz etmek, devletlerin, şirketlerin karar verme süreçlerini bile etkilemektedir. Bir veritabanı yönetim sisteminde ilişkisel veritabanı üzerinde raporlar alarak istenilen sonuçları üretmek mümkündür, fakat büyük veri ile analiz edilerek öngörülmeyen başka ilişkiler de görülebilir. Büyük veride 5V'den bahsedilir. 

Variety(Çeşitlilik): Farklı kaynaklardan gelen veri çeşitli biçimlerde olabilir. Yapısal olabilir de olmayabilir de.Sürekli akan dinamik bir veri olabilir, örneğin Instagram'da paylaşılan fotoğraflar gibi. Statik bir veri de olabilir.  Çeşitli ortamlardan gelen verinin işlenerek ortak bir formata dönüştürüldükten sonra işlenmesi mümkün olabilir.

Volume(Hacim): Veri çok büyük hacimlerde olabilir. Örneğin Facebook günlük 30 Petabyte veriyi depolar ve işler. Google, günlük olarak 20.000 Terabyte veriyi işler. Dijital dünyada bugün 2.7 Zettabyte verinin oluştuğu tahmin edilmektedir.

Velocity(Hız): Veri çok hızlı şekilde üretilebilir, örneğin kredi kartı işlemleri gözlenerek, hangi işlemin hileli olduğuna karar verilerek milisaniyeler içinde karar verilmesi gerekebilir. Yine borsa işlemlerini düşündüğünüzde şirketlerin hisseleri milsaniyeler içinde değer değiştiriyor, analiz etme karar verme(AL-SAT emirleri) işlemlerinin çok hızlı olması gerekiyor.

Verification(Doğrulama): Bazı kaynaklarda veracity olarak da geçer, hemen hemen aynı anlama gelir. Büyük miktarda verinin doğruluğu önemlidir. Birçok biçimde olan verinin doğruluğu ve kalitesi de daha az kontrol edilebilir durumdadır. Örneğin atılan büyük miktarda tweet'in hangisinin ilgili hashtag'in mesaj içeriğiyle, kısaltmalarla aynı olup olmadığının tespiti zordur.

Value(Değer): Elde edilen sonuçların ilgili kuruma kattığı değer önemlidir. Büyük miktarda veri bir değere dönüşmedikçe anlamı olmaz. Bu nedenle 5V'nin en önemlisi Value yani değerdir.



 
Canlandırma Animasyon (Animations) Animasyon, herhangi bir nesneye hareket verme anlamına gelir. Bilgisayar yardımıyla animasyon ve bilgisayar tarafından üretilmiş animasyon olmak üzere animasyon iki farklı kategoriye ayrılır. Film veya video şeklinde sunulabilir. Animasyonun arkasında yatan temel fikir, daha önce kaydedilmiş resimleri birbiri ardına belli bir hızda geçirerek, insan gözünün bunları sürekli bir harekrtmiş gibi yorumlamasıdır. Amimasyon ile ölmüş resimler canlandırılır. Animasyonun birçok uygulama alanı vardır, bilgisayar destekli tasarım, Eğelence, Reklam, Oyunlar, Eğitim, E-ticaret, Bilimsel Görselleştirme gibi. Örneğin bugün birçok TV kanalında gördüğümüz reklamlar animasyonu 3D-Max, Cinema 4D gibi programlar ile hazırlanmaktadır. Yine filmlerde gördüğümüz arabaların patlama, yanma sahneleri animasyonla yapılmaktadır.



Altı tane animasyon tekniğinden literatürde bahsedilmektedir.
Geleneksel Animasyon: Geleneksel olarak tüm animasyon el ile hazırlanır. Animasyondaki tüm çerçeveler(frameler) teker teker el ile çizilir. Saniyede 24 çerçeve oynatılır ve böylece film oluşur.

Anahtar Çerçeve(Keyframing): Bu teknikte sanatçı ana çerçeveler bir hikaye tahtası(storyboard) üzerinde çizer. Ana çerçevelerin arasındaki hareket geçişlerini bilgisayar doldurur. Adobe Flash ile animasyon derslerinde, Flash'ın sağladığı bir tuval üzerinde ilk önce basit bir topun düşüşünü keyframe tekniği ile canlandırıyorduk, topun yukarıdaki resmi bir anahtar çerçeve, topun yerdeki görüntüsü bir anahtar çerçeve olarak veriyorduk, Flash bunları birleştiriyordu.


Prosedürel Animasyon: Nesneler bir prosedüre göre, bir kurallar kümesine göre hareket ederler. Animatör, başlangıç kurallarını ve özel kuralları tanımlayarak animasyonu başlatır. Kurallar, matematiksel denklemlerden oluşan gerçek dünyadaki fiziksel olaylar.

Davranışsal Animasyon: Bu teknikte, otonom karakterler kendi hareketlerini belirlerler. Bu karakterlere kendi doğaçlama aktivitelerini uydurmalarına izin verir. Animatörleri de karakterlerin her hareketini detaylıca uğraşma zorluğundan kurtarır.



Performans tabanlı: Motion Capture yani hareket yakalama tekniği olarak da adlandırılan bu teknikte, insana veya hayvana manyetik veya vizyon tabanlı sensörler takılarak üç boyutta hareketleri gözlenir. Bilgisayar bu veriyi kullanarak nesneleri hareket ettirir. Bu teknoloji spor oyunlarında kullanılmaktadır, gerçek atletlerin hareketleri kaydedilerek oyunlar hazırlanmaktadır.



Fiziksel Tabanlı: Anahtar çerçeve veya hareket yakalama gibi olmayan, simülasyonun fizik kurallarını kullanarak resimlere ve diğer nesnelere hareket ürettiği animasyon türüdür.
 
Dil İşleyiciler (Natural Language Processing)

Gömülü Sistemler (Embedded Systems)

Görüntü İşleme (Image Processing)


İnsan-Bilgisayar Etkileşimi (Human-Computer Interaction)

Karar Destek Sistemleri (Decision Support Systems)

Kuantum Bilgisayarı (Quantum Computers)

Paralel ve Dağıtık Sistemler (Parallel and Distributed Systems)

Programlama Dilleri (Programming Languages)

Robotik (Robotics)

Sanal Gerçeklik (Virtual Reality)

Sembolik Hesaplama (Symbolic Computation)


Ses İşleme (Signal Processing, Sound Processing)

Sonlu Elemanlar Analizi (Finite Element Analysis): Sonlu Elemanlar Metodu adı verilen nümerik analiz tekniği kullanılarak fiziksel olguların simülasyonunun gerçekleştirilmesidir. Örneğin bir uçak yapılmadan önce bilgisayar ortamında tüm kanat yapısı, gövdesi, motoru, her bir parçası bilgisayar üzerinde tasarlanır ve analizler yapılır. Mühendisler böylelikle fiziksel prototiplerin sayısını azaltarak, tasarımdaki bileşenleri optimize edip, tecrübelenerek ürünleri daha hızlı geliştirmek için bu bilim dalını kullanır.

Matematiği detaylı olarak bilmek, fiziksel olguları iyi incelemek, örneğin bir sıvının akışını, ısısal geçişi, dalga yayılımını, biyolojik hücrelerin büyümesini modelleyebilmek bu bilim dalı ile yapılan çalışmalara örnek verilebilir. Kısmı Diferansiyel Denklemler gibi sayısal kullanarak bu işlemlerin hepsi modellenebilir, bu işlemi de bilgisayarlara yaptırırız. Eskiden bu karmaşık hesapları elle yaparlardı, artık endüstri, bilgisayar teknolojisini kullanarak kolayca yapabiliyor.




Veri Madenciliği (Data Mining) Hazırlanıyor

Veritabanları (Database) Hazırlanıyor

Yapay Öğrenme (Artificial Learning) Hazırlanıyor

Yapay Zeka (Arificial Intelligence) Hazırlanıyor



KAYNAKLAR

ULAKBİM Sayfası
http://www.uak.gov.tr/duyuru/2016N_BilimAlanlariAnahtarKelimeler_140416.pdf

Sonlu Elemanlar Analizi
https://www.simscale.com/docs/content/simwiki/fea/whatisfea.html

Bulanık Mantık
https://www.youtube.com/watch?v=rln_kZbYaWc
https://www.mathworks.com/help/fuzzy/what-is-fuzzy-logic.html


Büyük Veri
https://www.researchgate.net/publication/321050765_Exploring_Techniques_of_Improving_Security_and_Privacy_in_Big_Data

https://www.linkedin.com/pulse/20140306073407-64875646-big-data-the-5-vs-everyone-must-know/

Animasyon
https://www.tutorialspoint.com/computer_graphics/computer_animation.htm

Biyoenformatik
https://hmt.es/Bioinformatics%20for%20Dummies%202nd%20Ed.pdf



NOT: Bu yazıdaki bilgiler kaynaklardan bizzat çevrilerek alınmıştır, izinsiz kopyalanması telif haklarına aykırıdır.

Başarılar ve iyi günler dilerim,
Oğuzhan TAŞ,
27 Haziran 2018 Bookmark and Share