İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ"

Transkript

1 İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ AKILLI OTOPARK SİSTEMİ Bitirme Ödevi Burak Çavdar İsmail İlker Ulusoy Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri Danışman : Yard. Doç. Dr. Feza Buzluca Ocak 2014

2 İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ AKILLI OTOPARK SİSTEMİ Bitirme Ödevi Burak Çavdar İsmail İlker Ulusoy Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri Danışman : Yard. Doç. Dr. Feza Buzluca Ocak 2014

3 I Özgünlük Bildirisi 1. Bu çalışmada, başka kaynaklardan yapılan tüm alıntıların, ilgili kaynaklar referans gösterilerek açıkça belirtildiğini, 2. Alıntılar dışındaki bölümlerin, özellikle projenin ana konusunu oluşturan teorik çalışmaların ve yazılım/donanımın benim tarafımdan yapıldığını bildiririm. İstanbul, 2014 Burak Çavdar İsmail İlker Ulusoy

4 II AKILLI OTOPARK SİSTEMİ ( ÖZET ) Dünya nüfusu gün geçtikçe artmaktadır. Bu artış ile birlikte günümüz şehirleri metropollere dönüşmüşlerdir. Metropollerde nüfus artışı diğer şehirlere göre daha fazla görülmektedir çünkü doğal nüfus artışına ek olarak metropoller çeşitli sebeplerden ötürü diğer şehirlerden göç almaktadırlar. Metropollerin en büyük özelliklerinden bir tanesi de buralarda ekonomik ve sosyal faaliyetlerin yüksek olmasıdır. Bu faaliyetler, bir ya da birden kişinin katılımıyla gerçekleşmektedir. Bu faaliyetlerin gerçekleşmesi için bir diğer koşul ise belirli bir alana ihtiyaç duyulmasıdır. Eğer bir faaliyete birden fazla kişi gerçekleştiriyor ve bu faaliyet belirli bir alanda yapılıyorsa, faaliyetin yapıldığı alana toplulukların kullandığı alan diyebiliriz. Bu alanlara örnek ise sergi, kongre merkezleri, konferans salonları, kafeler, alışveriş merkezleri ve sinemalar gösterilebilir. Ayrıca bazı topluluklar tarafından yapılan etkinlikler için yardımcı alanlar gerekebilir. Bekleme salonu, otopark, çocuk oyun alanı gibi yerler yardımcı alanlara örnek teşkil etmektedir. Sergi salonu, hava limanı, kafe gibi toplu alanları incelediğimizde ortak yardımcı alanları otoparklardır. Şehirlerde, artan nüfusa paralel olarak taşıt sayısı da artmaktadır, buna bağlı olarak otoparklara olan ihtiyaç ve talep her geçen gün biraz daha büyümektedir. Bu talepten dolayı otopark bulma ve otopark içerisinde yer bulma sorunu ortaya çıkmıştır. Bu sorun otoparkların efektif olarak kullanılması gerekliliğini doğurmuştur. Efektiflik, araç kullanan insanların kendine en uygun otoparka ve otopark içerisinde en uygun yere en kısa yoldan yönlendirilmesiyle sağlanabilir. Bu çalışmada otoparkların efektif kullanımıyla ilgilenilmektedir. Bu çalışmanın birden fazla amacı vardır. Bu amaçlardan bir tanesi araç kullanıcılarının istedikleri noktaya en yakın otoparkı bulması ve bu otopark içerisinde en uygun alana yönlendirilmesidir. Bir diğeri ise kullanıcıların otoparka gitmeden otopark içerisindeki park alanlarını rezerve edebilmesidir.

5 III SMART CAR PARKING SYSTEM ( SUMMARY ) World population is growing day by day. With this growth cities are turning into metropolises. Populatıon growth in metropolises is faster than small cities because of the migration to the metropolises. One of the most significant properties of metropolises is there are lots of social and economical activities in metropolises. These activities are realized with one or more than one participants. Another constraint to realize these type of activities is to have proper place. Exhibitions, convention centers, auditoriums, cafes, shopping malls and cinemas can be stated as examples to this type of activities. In addition, mostly places which these activities are realized needs some facilities like parking lots, waiting rooms etc. When we examine convention centers, auditoriums etc. we see that almost all of them has parking lots.in cities, the number of vehicle increases proportional to population growth. Because of this increase need and demand to parking lots becomes bigger. Because of this demand problem of finding parking lots and parking place in parking lots emerges. This problem forces us to use parking lots effectively. This work deals with the problem of directing users to parking lots that are close to the location they want to go and most suitable parking place in parking lots. One of the main goals of this work is to allow users to reserve parking places before they go to the parking lots. - There are some necessary theoretical information needed to cope with the problems stated above. Discrete Event Simulation: Discrete event simulation is modeling of a system whose states changes on discrete points in time. Knowledge about statistical distributions such as poisson distribution is crucial to determine event times while dealing with discrete event simulation. A waiting room is needed in simulation to model waiting people for service. Machine to machine (M2M): The technology necessary to enable devices that are connected to network to share information and process these data to make decisions on their own. Ultrasonic censor: In order to decide whether parking place is available or not it is essential to use censors or cameras. İn this work we used ultrasonic sensors to deal with the situation above. Ultrasonic censors measures distance using sound waves. Search Algorithms: Search algorithms can be used for finding the goal state in state space. These algorithms can be classified according their time and space complexity. A-star algorithm can be stated as an example to search algorithms. Usually it is used for finding the shortest path from

6 IV initial node to goal node. It is a very popular algorithm because it is optimal, complete and lower complexity. - After analysis we decided that the system is composed of four major subsystems. Web service, embedded computer, user interface and simulation can be stated as examples. Web service: Web service is used for handling communication between subsystems. Web service provides necessary information to the user interface and embedded system by processing data taken from database. In addition it also takes data from user interface and embedded system then processes this data. After that it writes the processed data to the database. Essential algorithms such as finding shortest path are running on this subsystem. User Interface: User interface supplies the necessary information about parking lots to the user. Moreover user can make reservations, view schema of the parking lot and get directions etc. Embedded System: The main functionality of the embedded system in this project is to process distance data that is received from censor and determines whether the parking place is available or not. After sends a request to the web service. Moreover it process the reservation information that is received from the web service then sends necessary signals to the reservation physical system. Simulation: Simulation application is used for testing the system and visualizing the system while it is running. It is also used for collecting statistical data. - Along the project we worked on both hardware and software knowledge that are main subjects of computer science. We observed that the project, which is suggested to solve problems about parking lots, is managed to provide necessary functionality.

7 V İÇİNDEKİLER 1 GİRİŞ PROJENİN TANIMI VE PLANI Projenin Tanımı Proje Planı Projenin Kapsamı Proje İlişkin Kestirimler Risk Yönetimi Zamanlama Proje Kaynakları Proje Grubu Organizasyonu KURAMSAL BİLGİLER Otopark Benzetimi Ayrık Olay Benzetimi Durum Olay Gelecek Olaylar Listesi Anlık Olay Listesi Rastgele Sayı Üretimi (Girdi Modellemesi) Poisson Dağılımı Üstel Dağılım Düzgün Dağılım Bitiş Durumu Bekleme Odası Kuyruk Yapısı M/M/ M2M(Makineden Makineye İletişim) Makina(Raspberry Pi B) Ses Ötesi Duyarga Web Servis Rest Mimarisi Arama Algoritmaları A* Algoritması ANALİZ VE MODELLEME Analiz Sistem Analizi Gereksinimler Kullanıcı Gereksinimleri Sistem Gereksinimleri Kullanım Vakaları Modelleme Domen Modeli Sistem Benzetim Uygulaması Kullanıcı Arayüz Uygulaması Gömülü Sistem TASARIM, GERÇEKLEME VE TEST Tasarım Benzetim Uygulaması... 20

8 UML Akış Diyagramı Gömülü Sistem Akış Diyagramı Web Servis Mimari Tasarım Veri Tabanı Tasarımı Arayüz uygulaması Mobil arayüz Web arayüz uygulaması Gerçekleme Kullanılan Teknolojiler Kullanılan Yazılım Dilleri Gömülü Sistem Web Servis İsteklerin ele alınması Veri tabanı bağlantısı ve sorgu yapılması Optimum Yer Bulma Algoritması Yol Bulma Algoritması Rezervasyon Algoritması Gün ve/veya saate göre analiz Algoritması Arayüz Uygulaması Otoparkın çizilmesi Bulunulan alan ile seçilen arasında yolun çizilmesi Mobil arayüz Benzetim Uygulaması Test Kullanılabilirlik Testi Yüklenme Testi DENEYSEL SONUÇLAR SONUÇ VE ÖNERİLER KAYNAKLAR VI

9 VII ŞEKİLLER Şekil 2.1 Gannt çizelgesi... 3 Şekil 3.1 Kendall'ın gösterimi... 6 Şekil 3.2 Markov zinciri gösterimi... 6 Şekil 3.3 M2M çalışma prensibi... 7 Şekil 3.4 Web servis çalışma prensibi... 7 Şekil 4.1 Akıllı otopark sistemi analizi... 9 Şekil 4.2 Sistemin domen modeli Şekil 4.4 Arayüz uygulaması taslak ekranları Şekil 4.5 Kullanıcı arayüz uygulaması veri akış diyagramı Şekil 5.1 Benzetim uygulması UML diyagramı Şekil 5.2 Benzetim Uygulaması Akış Diyagramı Şekil 5.4 MVC(Model-View-Controller) Şekil 5.5 Modellerin UML diyagramı Şekil 5.7 ERD Şekil 5.8 Arayüzlerin çalışma prensibi Şekil 5.9 Arayüzün MVC yapısı Şekil 5.10 Kullanılan teknoloji ve araçlar Şekil 5.11 Gömülü sistemin devre şeması Şekil 5.12 Yer çizgesi Şekil 5.13 Otopark gösterimi Şekil 5.14 Yol gösterimi Şekil 5.15 Arayüzün mobil cihazda görünümü... 33

10 1 1 GİRİŞ Artan nüfus ile birlikte büyük şehirlerde yaşayan insanlara özgü sorunlar ortaya çıkmıştır. Bu sorunların temelinde kapasitesi belli olan alanlara aşırı talep olmasıdır. Bu nedenle kapasite fazlası talebin olduğu alanlarda yer bulmak büyük bir sorun haline gelmiştir. Bu sorunun yaşandığı başlıca alanlardan biri ise otoparklardır. Gelişen teknoloji ile birlikte mobil cihazlar gün geçtikçe hayatımızın önemli bir parçası haline gelmiştir. Bu cihazlar sayesinde günlük hayatta karşılaştığımız bir çok probleme kolay ve etkin bir şekilde çözüm bulabilmekteyiz. Mobil cihazlara yüklenen mobil uygulamalar vasıtası ile otopark ve otopark içinde yer bulma probleminin çözülebilmesi mümkündür. Akıllı otopark sisteminin ana problemi ise kullanıcıların mobil cihazlar aracılığıyla en uygun otoparkı bulması ve otopark içindeki boş alan önerisi alabilmesidir. Bu proje sayesinde kullanıcılar zamandan tasarruf sağlarken, otoparklar ise karmaşadan kurtulacaktır. Bu problemin çözülebilmesi için etkin sayıdaki duyargalardan alınan veriler akıllı algoritmalar tarafından işlenmelidir. İşlenen bu verilerin kullanıcılara aktarılması için ise mobil cihazlar kullanılacaktır. Literatür taraması sırasında daha önceden akıllı otopark sistemine benzer projeler yapıldığı saptanmıştır. Akıllı otopark sisteminin diğer projelerden farkı kullanmış olduğu akıllı algoritmalar ve otopark bulma ile otopark içinde yer bulma özelliğinin birleştirmesidir. Bu projelerden bazıları ise; ParkMe Parking[10] uygulaması çevrenizdeki en yakın ve en ucuz otoparkı bulma üzerine gerçeklemiştir. Türkiye de yapılan yazılım olan ParkMe[11] uygulamasında ise çeşitli alışveriş merkezlerindeki otoparklardaki boş yer bulma problemi için gerçeklenmiştir. Raporun genel yapısı şu şekildedir: bölüm ikide projenin tanımı ve planı, bölüm üçte kuramsal bilgiler, dördüncü bölümde ise analiz ve modelleme anlatılmıştır. Rapor, beşinci bölümde projenin gerçekleme aşamaları, altıncı bölümde deneysel sonuçlar ve yedinci bölümde sonuç, öneriler bölümüyle devam etmiştir. Raporun son bölümünde ise proje boyunca yararlanılan kaynaklar verilmiştir.

11 2 2 PROJENİN TANIMI VE PLANI 2.1 Projenin Tanımı Akıllı otopark sistemi projesi otopark benzetimi, veri işleme merkezi, gömülü sistem ve istemci uygulamasından oluşmaktadır. Otopark benzetimi otoparkların modellenmesi, tahmin ve test edilebilmesiyle ilgilenir. Gömülü sistem ise duyargalardan veri alıp veri merkezine iletilmesi ve veri merkezinden gelen bilgilerle fiziksel sistemleri çalıştırmakla sorumludur. Veri işleme merkezi otopark benzetiminden ve gömülü sistemden gelen bilgilerle verilerin kaydedilip işlenmesinden sorumludur. İstemci uygulaması ise kullanıcıların veri işleme merkezinden doğru ve kolay bir şekilde veri almasını sağlar. 2.2 Proje Planı Projenin Kapsamı Projenin gerçeklenebilmesi için kaynak-iş eşleştirmesi optimizasyon problemleri başta olmak üzere; diğer iyileştirme algoritmaları ve yöneylem metotlarına başvurulacaktır Proje İlişkin Kestirimler Projenin süresi tahmini 9 ay olarak belirlenmiştir ve proje 2 kişi tarafından yürütülecektir Risk Yönetimi Projenin kaynaklarının verimli bir şekilde çalışması ve verilen görevi söz konusu kaynağın (insan, cihaz veya veri ) zamanında tamamlayabilmesi en önemli risktir. Aksi takdirde uygun görülen proje planından çıkılarak diğer projeler sekteye uğrayacaktır. Diğer bir risk ise kullanılan elektronik cihazların sorun oluşturabilmesidir. Bu yüzden projede kullanılan malzemeler yedeklenerek kullanılmalıdır Zamanlama Görev Süre Başlangıç Bitiş Akıllı Otopark Sistemi 225 gün Fri Thu Proje konusunun belirlenmesi 1 hafta Fri Thu Projenin benzerlerinin incelenmesi ve analiz edilemesi 1 ay Fri Thu Analiz 1,5 hafta Fri Thu Modelleme 2,5 ay Fri Thu Geliştirme 90 gün Fri Thu Duyarga Benzetimi 1,25 ay Fri Thu Veri Analiz Sistemi 1,25 ay Fri Thu Akıllı Otopark Yönetim Sistemi 2 ay Fri Thu Mobil Uygulama 2 ay Fri Thu Test 1,25 ay Fri Thu Dökümantasyon 225 gün Fri Thu Tablo 2.1 Zamanla tablosu

12 Proje Kaynakları Şekil 2.1 Gannt çizelgesi Projelerin verilerinin tutulacağı bir veri tabanı sunucusu, uygulamaların çalışabilmesi için bir adet uygulama sunucusu, mobil yazılımların çalışacağı akıllı cihazlar, geliştirme ortamları ve test ortamı başlıca gerek duyulacak kaynaklardır. Ayrıca otoparklarda veri alınabilmesi için çeşitlik duyargalar ve bu duyargaların çalışabileceği elektronik kartlar gereklidir Proje Grubu Organizasyonu Proje ekibi 2 kişiden oluşmaktadır ve bu 2 kişi aynı görev ve sorumluluklara sahiptir.

13 3 KURAMSAL BİLGİLER 3.1 Otopark Benzetimi Benzetim gerçek dünyadaki bir sistemin çalışmasının bilgisayar ortamında modellenmesidir. Benzetimlerin bir çok kullanım amacı vardır. Bu amaçlardan bir tanesi de oluşturulan yeni sistemlerin gerçek dünyada test edilmeden önce bilgisayar ortamında test edilmesini sağlamaktır. Bir diğer amaç ise gerçek dünyadaki sistemin çalışmasının görselleştirilebilmesidir. Akıllı Otopark Sistemi projesinde bu iki amaca uygun gerçek hayattaki bir otoparkı modelleyen bir benzetim uygulaması kullanılmalıdır. Bu benzetim uygulamasında kullanılması gereken yapıların kuramsal bilgileri aşağıda açıklanmıştır Ayrık Olay Benzetimi Ayrık olay benzetimi, durum değişkenlerinin sadece ayrık zaman noktalarında değiştiği sistemlerin modellenmesidir[4]. Bir otoparkta park yerlerinin durumunun ayrık zamanlarda değişmesi ve araçların ayrık zamanda gelmesi sebebiyle ayrık olay benzetimi kullanılmalıdır Durum Belirli bir anda sistemi tarif etmek için gerekli olan değişkenlerin topluluğuna durum denir[4]. Durumlar anlık olay listesindeki olayların işlenmesi ile değişir Olay Sistemin durumun değişmesine sebep anlık eylemlerdir. Olaylar sistemin durumuna bağlı olarak yeni olaylar oluşturup gelecek olay listesine eklerler Gelecek Olaylar Listesi İleride gerçekleşmesi istenen olayların gerçekleşeceği zamana göre sıralı olarak tutulduğu liste yapısıdır Anlık Olay Listesi Benzetimin işleme aldığı olayların tutulduğu liste yapısıdır Rastgele Sayı Üretimi (Girdi Modellemesi) Benzetim uygulamasında girdilerin gerçek hayata daha yakın modellenmesi için çeşitli dağılımlar kullanılmalıdır. Örnek olarak araçların geliş aralıklarının modellenmesi için Poisson Dağılımı, araçların otoparktaki kalma süresinin modellenmesi için Üstel Dağılım kullanılmalıdır Poisson Dağılımı Uygulamada tamamen zaman veya mekandan bağımsız rastgele gerçekleşen olayların ele alındığı durumlarda Poisson rastgele değişkenin ortaya çıktığı görülmektedir[1]. Bir otoparka gelen araçların geliş zamanlarının birbirinden bağımsız ve geliş zamanların rastgele olduğu düşünülerek benzetim uygulamasında araçların geliş zamanı modellenirken poisson dağılımı kullanılmalıdır. Dağılımın benzetime uygulanması için poisson olasılık yoğunluk fonksiyonu kullanılmalıdır. 4

14 5 Olasılık yoğunluk fonksiyonu :! Bu fonksiyonu kullanarak rastgele sayı üretimi için Knutt un algoritması kullanılmıştır[5]. algoritma poisson rastgele sayı üretimi : init: L e λ, k 0 ve p 1. do: k k + 1. u [0,1] aralığı içinde rastgele sayı p p u. while p L. return k Üstel Dağılım Tamamen bağımsız ve rastgele olayların arasındaki geçen zamanı modellemek için üstel dağılım kullanılır. Otoparka park eden araçların geliş zamanları ile gidiş zamanları arasındaki süre bağımsız ve rastgele olduğu için üstel dağılım kullanılır. Olasılık yoğunluk fonksiyonu : Bu fonksiyona integrali alınarak kütle dağılım fonksiyonu elde edilir. = 1 Bu fonksiyona ters dönüşüm kuralları uygulanarak rastgele sayı üretim fonksiyonu oluşturulur. ln (1 ) (,) = p : 0 ile 1 arasında rastgele sayı Düzgün Dağılım Maksimum ve minimum değerleri bilinen rastgele olaylar için sayı üretmekte kullanılır. Araç park olayında olay belli bir aralıkta gerçekleştiği için düzgün dağılım kullanılmalıdır. Rastgele üretim Fonksiyonu : (,,) = +( ) a = üst limit, b = alt limit, p = 0 ile 1 arasında rastgele sayı Bitiş Durumu Her benzetim için bir bitişi durumu olmalıdır. Her olay işlenmesi sırasında durum kontrolü yapılarak bitiş durumuna geldiğinde benzetimin bitirilmesi sağlanır. Otopark benzetim uygulaması için bitiş durumu zamanın yirmi dördüncü saate gelmesidir Bekleme Odası Benzetim uygulamasında gelen araçların otopark dolduğunda sıra bekleyebilmesi için bir kuyruk yapısı kullanılarak bekleme odası oluşturulmalıdır.

15 Kuyruk Yapısı Kuyruk, ilk girenin ilk çıktığı özelleşmiş bir bağlı liste veri yapısıdır M/M/1 M(memoryless) dağılımın belleksiz yani bir öncekinden bağımsız olduğunu temsil etmektedir. Ayrıca birinci M geliş zamanları arasındaki sürenin üstel olduğunu, ikinci M ise servis süresinin üstel olduğunu, 1 ise servis sağlayıcısının 1 adet olduğunu ifade etmektedir. Otopark benzetim uygulamasında araçların üstel olarak gelmesi, servis zamanlarının üstel olması ve hizmet sağlayıcının(kapı) 1 tane olması sebebiyle M/M/1 kuyruk yapısı kullanılmalıdır. Şekil 3.1 Kendall'ın gösterimi[8] Servis hizmeti alan kaç araba bulunduğu Şekil 3.2 de görüldüğü gibi sonlu otomat yardımıyla bulunabilir. Şekil 3.2 Markov zinciri gösterimi[8] Eğer λ > μ ise kuyruk dolmaya başlar ve bir noktadan sonra sistem şişer. 3.2 M2M(Makineden Makineye İletişim) Ağa bağlı cihazların kendi aralarında veri paylaşımı yapabilmeleri ve bu bilgiyi işleyerek kendi kendine karar alabilmelerini anlatan teknolojidir. M2M in rolü cihazın iş uygulaması ile iki yönlü olarak bilgi değişimi yapabilmesine imkan tanıyacak koşulları oluşturmaktır [2]. M2M uygulamaları genellikle sağlık, taşımacılık, uzaktan veri aktarımı sistemlerinde kullanılır. M2M sayesinde ucuz maliyetli optimum sonuçlar veren projeler yapılmaktadır. Akıllı otopark sistemi projesinde de park yerlerinin durumu ses ötesi duyargalar yardımıyla anlaşılmaktadır. Duyargadan gelen verilere göre ağ üzerinden sunucuya istekler yapılmaktadır. Sistemin genel yapısı şekilde görülebilir Makina(Raspberry Pi B) Raspberry Pi[6], klavye ve ekran bağlanabilen, ağ bağlantısı kurabilen kredi kartı boyutunda ekonomik bir bilgisayardır. Bir çok elektronik projelerinde bulanabilen ve günümüz bilgisayarların yapabildiği bir çok işlemi yapabilen ve uygulamaları çalıştırabilen küçük yetenekli bir bilgisayardır. Bu projede Raspberry Pi duyargadan gelen verilerin değerlendirilip sunucuya(web servis) istek yapması için kullanılmıştır. Raspberry Pi kullanmamızın sebebi hali hazırda cihazın proje ekibinin elinde bulunmasıdır. Normal şartlar altında daha ekonomik cihazlar kullanılabilir.

16 7 Şekil 3.3 M2M çalışma prensibi Ses Ötesi Duyarga Ses ötesi mesafe ölçüm duyargalarının temel prensibi frekansı yüksek sinyaller yollayarak geri dönüş olup olmadığını kontrol etmektir. Eğer geri dönüş var ise sinyalin gönderilmesi zamanı ile geri dönüş zamanı arasındaki geçen sürenin hesaplanması yardımıyla mesafe ölçümü yapılır. Ses ötesi duyarga olan HC-SR04 duyargası, 15 derece açıyla mesafede cm arasında mesafeyi en fazla 3 mm sapmayla ölçebilmektedir[7]. Akıllı otopark projesinde ses ötesi duyargalarının kullanılmasının amacı park alanlarının durumlarının tespit edilmesidir. 3.3 Web Servis Web servis internete bağlı olan cihazların birbirleriyle belli protokoller üzerinden haberleşmesini sağlayan yapıdır. Web servis mimarilerinden en çok yaygın olanı REST mimarisidir. Şekil 3.4 Web servis çalışma prensibi Rest Mimarisi REST(Representational state transfer) mimarisi 2000 yılında Roy Thomas Fielding tarafından doktora tez sunumunda ortaya atılmıştır. İstemci/sunucu yapısının kurulmasının amacı kullanıcı arayüzü ile veri saklama bölümünü ayırarak kullanıcı arayüzünün farklı platformlar üzerindeki taşınabilirliğini arttırmak ve sunucu bileşenlerini basitleştirerek ölçeklenebilirliği geliştirebilmektir[3]. Çok istemcili yapılarda, istemciler tarafından aynı anda ayna veriyi kontrol etme isteği sebebiyle veri tutarsızlıkları oluşabilmektedir. Veri tabanlı sistemlerde, veri tabanının sadece REST uygulaması tarafından erişilebilmesi ve kontrol edilebilmesi sayesinde veri tutarlılığı sağlanabilmektedir. Ayrıca veri tabanı güvenliği açısından da REST uygulamalarında sadece kullanıcı giriş izni verilmesinin yanında uygulamalara da giriş izni verilebilir. Bu sayede M2M sistemler için cihazlara kullanım izni verilmiş olmaktadır.

17 8 Çalışma prensibi genel olarak istemci tarafından yapılan sorgu ile başlar. Gelen sorgu sunucu tarafından değerlendirilip işleme alınır ve işlem sonucunda istemciye bir yanıt döndürülür. Bu istek ve yanıtlar JSON, XML, WSDL gibi formatlarında olabilir. M2M projesi için trafik kaynağı sınırlı olduğundan JSON kullanılması mantıklı olacaktır. İstemciden sunucuya gelen her istek isteğin anlaşılması için bütün bilgiyi içermelidir. REST mimarisi GET, POST, PUT ve DELETE isteklerinin istemci tarafından yapılmasını sağlar. Akıllı otopark sistemi projesinin temelindeki REST mimarisine sahip web servis uygulamasında sahadaki cihazlardan gelen bilgiler veri tabanına işlenmeli ve mobil cihazların web servisi kullanarak hizmet alması sağlanmalıdır. Son yıllardaki birçok popüler uygulama REST uygulama desteği sağlamaktadır ve dünya üzerindeki diğer istemcilerle bilgilerini paylaşmaktadır. Bu uygulamalardan bir tanesi olan The Google Directions[14] REST uygulaması akıllı otopark projesinde otoparkların harita üzerinde bulunması için kullanılmalıdır Arama Algoritmaları Otopark içinde yer ve yerler arası yol bulmak için arama algoritması kullanılmalıdır A* Algoritması Bu çalışma sırasında en uygun yol bulmak için a-star algoritması kullanılmıştır. A-star algoritması, Peter Hart, Nils Nilsson and Bertram Raphael tarafından 1968 yılında ortaya atılmış bir arama algoritmasıdır. Bu algoritma verilen hedefe toplam yol maliyeti en az olan yolu bulabilmektedir.[13] () = ()+h() g(n) n düğümüne gelinceye kadar gidilen toplam yolun maliyetidir. h(n) ise n düğümünden hedef düğümüne olan tahmini maliyettir. Bu sebeple f(n) başlangıç düğümünden bitiş düğümüne n düğümü üzerinden geçerek gitmenin tahmini maliyetidir. Algoritmanın optimum sonuç bulabilmesi için h(n) fonksiyonun hiç bir n düğümü için gerçek maliyetten daha yüksek bir değer üretmemesi gereklidir(tutarlılık). c(x) fonksiyonu başlangıç düğümünden n düğümüne gelmenin gerçek yol maliyetidir. h() () h(n) fonksiyonu gerçeğe ne kadar yakın bir değer üretirse algoritma o kadar hızlı sonuç bulacaktır. c(x,y) fonksiyonu ise x ten y ye olan gerçek yol maliyetidir. h( ) (, )+h( ) Bu algoritmanın kullanılmasının sebebi alternatif algoritmalara göre karmaşıklığının düşük olması, optimal sonuç bulabilmesi ve complete olmasıdır.

18 9 4 ANALİZ VE MODELLEME 4.1 Analiz Sistem Analizi Şekil 4.1 Akıllı otopark sistemi analizi Sistem temel olarak şekildeki gibi çalışmaktadır. Duyargalardan veriler alınıp, kullanıcılara hizmet sunulmalıdır. Proje 4 ana alt sistemden oluşmaktadır. Bunlar gömülü sistem, benzetim uygulaması web servis ve arayüz uygulamasından oluşmaktadır. Her sistemi ayrı ayrı düşündüğümüzde projenin gerçeklenmesi için sorun olmadığı gözükmektedir. Bu yüzden projenin diğer analiz ve tasarım aşamalarını geçilmiştir Gereksinimler Kullanıcı Gereksinimleri Kullanıcı : - Kendisine en yakın 3 otoparkı bulabilmeli - Otoparkların doluluk durumunu görebilmeli - Kullanıcı otopark içerisinde istediği alana en yakın park yeri önerisini alabilmeli - Seçtiği park yerine en kısa yol tarifini alabilmeli - Kullanıcı park yeri rezervasyonu yapabilmeli Yönetici : - Otopark ve otoparka park alanı, kat, özel alan(kapı, duvar vs.) ekleyebilmeli Sistem Gereksinimleri - Duyarga park yerinin tabanından tavanına olan mesafeyi doğru şekilde ölçebilmelidir. - Gömülü sistem duyargadan aldığı veri ile park yerinin dolu olup olmadığını tespit edebilmelidir. - Gömülü sistem park yeri durumunu web servise iletebilmelidir.

19 10 - Gömülü sistem web servisten park yerinin rezervasyon bilgisini alıp rezervasyon fiziksel sistemini tetikleyebilmelidir(açma/kapama). - Web Servis gömülü sistem ve arayüz uygulamasından verileri alıp veri tabanına kaydedebilmelidir. - Web Servis arayüz uygulamasına ve gömülü sisteme veri tabanından aldığı bilgileri verebilmelidir. - Kullanıcı arayüzünde rezervasyon işlemi yapılabilmelidir. - Kullanıcı arayüzünde otopark ve otoparka ait yol tarifi bulunabilmelidir. - Kullanıcı arayüzünde otoparkların bilgileri(doluluk, fiyat) gösterilebilmelidir. - Kullanıcı arayüzünde otoparkların bilgileri gösterilebilmelidir. - Kullanıcı arayüzünde otoparka ait park yerleri durumlarıyla(dolu, boş, rezerve) birlikte gösterilebilmelidir. - Kullanıcı arayüzünde park yerlerine yol tarifi gösterilebilmedir Kullanım Vakaları Kullanım Vakası 1: Akıllı Otopark Uygulaması ile Otopark Bulma Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı İlgili Kişiler ve İstekleri: - Kullanıcı: Yakınlık ve doluluk açısından kendisine en uygun otoparka bulmak ister. - Otopark Görevlisi: Otoparktaki araç akışını doğru ve hızlı bir biçimde gözlemleyebilmek ister. - Otopark Yöneticisi: Otoparkı sürekli dolu tutabilmek ve kayıtların doğru tutulduğundan emin olmak ister. Önkoşullar: - Kullanıcı Akıllı Otopark uygulamasını akıllı telefonuna indirmiştir veya telefonunda güncel bir tarayıcı bulunmaktadır. - Kullanıcı internet erişimine sahiptir. - Kullanıcı konum bilgisini uygulamayla paylaşmıştır. Vaat Edilenler: - Kullanıcının belirlediği kıstaslara uygun otoparklar listelenmiştir. Ana Akış: 1. Kullanıcı Akıllı Otopark Uygulamasını ve ya tarayıcısından uygulama sitesini açar. 2. Kullanıcı harita üzerinden gitmek istediği yeri işaretler. 3. Kullanıcı Otoparkları Bul tuşuna basar. 4. Akıllı Otopark Uygulaması önerdiği otoparkların listesini görüntüler. Kullanım Vakası 2: Yol Tarifi Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı

20 11 İlgili Kişiler ve İstekleri: - Kullanıcı: Kullanıcı en uygun yol üzerinden seçmiş olduğu otoparka yönlendirilmiştir. Önkoşullar: - Otopark Bulma senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Kullanıcı seçtiği otoparka ait yol tarifini almıştır. Ana Akış: 1. Kullanıcı gitmek istediği otoparkı seçer. 2. Akıllı Otopark Uygulaması kullanıcıya seçtiği otoparkın yol tarifini gösterir. Kullanım Vakası 3: Otopark İçerisinde Konum Bulma Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı Önkoşullar: - Yol Tarifi senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Kullanıcının otoparka nereden gireceği belirlenmiştir. Ana Akış: 1. Kullanıcı, Yerleri Göster tuşuna basar. 2. Akıllı otopark sistemi otoparka ait giriş kapılarını listeler. 3. Kullanıcı, giriş yapacağı kapıyı seçer ve konumunu onaylar. Kullanım Vakası 4: Otopark İçerisinde Yer Bulma Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı İlgili Kişiler ve İstekleri: - Kullanıcı: Kullanıcı otopark içinde kendisi için en uygun olan park yerine yönlendirilmek ister. Önkoşullar: - Otopark İçerisinde Konum Bulma senaryosu başarıyla sonuçlanmıştır.

21 12 Vaat Edilenler: - Kullanıcı kendisine en uygun park yerini bulmuştur. Ana Akış: 1. Akıllı Otopark Uygulaması, otopark şemasını görüntüler. 2. Kullanıcı, yakınına park etmek istediği alanı işaretler ve En Uygun Alanı Bul tuşuna basar. 3. Akıllı Otopark uygulaması, öneriyi görüntüler ve seçilmiş alan olarak kaydeder. Alternatif Akış: Manuel Park Yeri Seçme 1. Kullanıcı, park etmek istediği yeri seçer. 2. Akıllı Otopark Uygulaması seçilen park yerini seçilmiş alan olarak kaydeder. Kullanım Vakası 5: Otopark İçerisinde Yol Tarifi Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı İlgili Kişiler ve İstekleri: - Kullanıcı: Kullanıcı, gitmek istediği park yerine en kısa yoldan gitmek ister. Önkoşullar: - Otopark İçerisinde Yer Bulma Senaryosu senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Kullanıcı, park etmek istediği alana en kısa yol tarifini almıştır. Ana Akış: 1. Kullanıcı Yol Tarifini Göster tuşuna basar. 2. Akıllı Otopark Uygulaması, kullanıcıya yol tarifini gösterir. Kullanım Vakası 6: Otopark Ekleme Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Otopark Yöneticisi İlgili Kişiler ve İstekleri: - Otopark Yöneticisi: En kolay şekilde otopark eklemek ister. Vaat Edilenler: - Otopark Yöneticisi otoparkı başarıyla eklemiştir.

22 13 Ana Akış: 1. Otopark yöneticisi otopark yönetim uygulamasını açar. 2. Otopark yöneticisi kullanıcı adını ve şifresini girer. 3. Otopark yönetim uygulaması menüyü görüntüler. 4. Otopark yöneticisi Otopark Ekle tuşuna basar. 5. Otopark yönetim uygulaması otopark bilgilerini ister. 6. Otopark yöneticisi otopark bilgilerini girer. 7. Bitti tuşuna basar. Kullanım Vakası 7: Park Yeri Ekleme Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Otopark Yöneticisi İlgili Kişiler ve İstekleri: - Otopark Yöneticisi: En kolay şekilde park yerlerini eklemek ister. Önkoşullar: - Otopark Ekleme Senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Otopark Yöneticisi park yerini başarıyla eklemiştir. Ana Akış: 1. Otopark yöneticisi, otopark yönetim uygulamasını açar. 2. Otopark yöneticisi, kullanıcı adını ve şifresini girer. 3. Otopark yönetim uygulaması menüyü görüntüler. 4. Otopark yöneticisi, Otoparklar tuşuna basar. 5. Otopark yönetim uygulaması kayıtlı otoparkları görüntüler. 6. Otopark yöneticisi park yeri eklemek istediği otoparkı seçer. 7. Otopark yönetim uygulaması otoparktaki katları görüntüler. 8. Otopark yöneticisi park yeri eklemek istediği katı seçer. 9. Otopark yönetim uygulaması kattaki bölgeleri görüntüler. 10. Otopark yöneticisi park yeri eklemek istediği bölgeyi seçer. 11. Otopark yönetim uygulaması park yeri bilgilerini ister. 12. Otopark yöneticisi park yeri bilgilerini girer. 13. Otopark yöneticisi, park yerine ait duyargayı seçer. 14. Bitti tuşuna basar. Kullanım Vakası 8: Duyarga ekleme senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Otopark Yöneticisi İlgili Kişiler ve İstekleri: - Otopark Yöneticisi: En kolay şekilde duyarga eklemek ister.

23 14 Önkoşullar: - Otopark Ekleme Senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Otopark Yöneticisi duyargayı başarıyla eklemiştir. Ana Akış: 1. Otopark yöneticisi otopark yönetim uygulamasını açar. 2. Otopark yöneticisi kullanıcı adını ve şifresini girer. 3. Otopark yönetim uygulaması menüyü görüntüler. 4. Otopark yöneticisi Otoparklar tuşuna basar. 5. Otopark yönetim uygulaması kayıtlı otoparkları görüntüler. 6. Otopark yöneticisi duyarga eklemek istediği otoparkı seçer. 7. Otopark yöneticisi Duyarga Ekle tuşuna basar. 8. Otopark yönetim uygulaması duyarga bilgilerini ister. 9. Otopark yöneticisi duyarga bilgilerini girer. 10. Bitti tuşuna basar. Kullanım Vakası 9: Duyarga ile Park Yeri Eşleştirme Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Otopark Yöneticisi İlgili Kişiler ve İstekleri: - Otopark Yöneticisi: En kolay şekilde duyarga ile park yerini eşleştirmek ister. Önkoşullar: - Park Yeri Ekleme Senaryosu ve Duyarga Ekleme Senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Otopark Yöneticisi duyarga ile park yeri eşleştirmesi başarıyla eklemiştir. Ana Akış: 1. Otopark yöneticisi otopark yönetim uygulamasını açar. 2. Otopark yöneticisi kullanıcı adını ve şifresini girer. 3. Otopark yönetim uygulaması menüyü görüntüler. 4. Otopark yöneticisi Otoparklar tuşuna basar. 5. Otopark yönetim uygulaması kayıtlı otoparkları görüntüler. 6. Otopark yöneticisi eştirme yapmak istediği otoparkı seçer. 7. Otopark yönetim uygulamasından Eşleştirme menüsü açılır. 8. Otopark yönetim uygulaması duyarga ve park yeri bilgilerini ister. 9. Otopark yöneticisi duyarga ve park yeri bilgilerini girer. 10. Bitti tuşuna basar.

24 15 Kullanım Vakası 11: Rezervasyon Yapma Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı İlgili Kişiler ve İstekleri: - Kullanıcı, seçtiği park yerini rezerve etmek ister. Önkoşullar: - Park Yeri Bulma Senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Kullanıcı, seçilmiş park yerini rezerve etmiştir. Ana Akış: 1. Kullanıcı, rezerve et tuşuna basar. Kullanım Vakası 12: Rezervasyon Kaldırma Senaryosu Kapsam: Akıllı Otopark Uygulaması Ana Aktör: Kullanıcı İlgili Kişiler ve İstekleri: - Kullanıcı, seçtiği park yerini rezervasyonunu kaldırmak ister. Önkoşullar: - RezervasyonYapma Senaryosu başarıyla sonuçlanmıştır. Vaat Edilenler: - Kullanıcı, seçilmiş park yerini rezerve etmiştir. Ana Akış: 1. Kullanıcı, menüden Rezervasyonlarım tuşuna basar. 2. Akıllı Otopark Uygulaması, kullanıcının rezervasyonlarını görüntüler. 3. Kullanıcı, iptal etmek istediği rezervasyonu seçer ve Rezervasyonu Kaldır tuşuna basar.

25 Modelleme Domen Modeli Sistem Şekil 4.2 Sistemin domen modeli Sistem temel olarak 4 parçadan oluşmaktadır. Bu bileşenler şunlardır; Gömülü Sistem(Makina) Web Servis Arayüz uygulaması Benzetim uygulaması Benzetim Uygulaması Benzetim uygulaması akıllı otopark sisteminin test edilip görselleştirilmesi için gerekli bir uygulamadır. Uygulama temel olarak gerçek hayattaki bir otoparkın bilgisayar ortamında modellemesini sağlar. Sistemin genel yapısı UML diyagramında anlatılmıştır. sanal ses ötesi duyargalar oluşturmaktadır. Bu duyargaların veri alışverişini Şekil 4.3 teki veri akış diyagramında gösterilmiştir. Şekil 4.3 Benzetim uygulaması veri akış diyagramı

26 Kullanıcı Arayüz Uygulaması Kullanıcı arayüz uygulaması, kullanıcıların otoparklarla etkileşime geçip otoparklar üzerinde işlem ve görüntüleme yapmaları için gerekli olan uygulamadır. Kullanıcılar bu uygulama sayesinde; - Gitmek istedikleri yere yakın otoparkları ve bu otoparklara bulundukları konumdan yol tarifi alabilirler. - Listelenen otoparkların doluluk ve yakınlık bilgilerini görüntüleyebilirler - Seçtikleri otopark içinde bulunduğu konumu bulabilirler. - Seçtikleri otopark içinde yerleri görüntüleyebilirler, kendilerine en uygun yer önerisi isteyebilir ve seçilen yere otopark içinde yol tarifi alabilirler. - Seçtikleri yeri rezerve edebilir ve bu rezervasyonu kaldırabilirler. Şekil 4.4 Arayüz uygulaması taslak ekranları

27 Şekil 4.5 Kullanıcı arayüz uygulaması veri akış diyagramı 18

28 Gömülü Sistem Gömülü Sistem temel olarak duyargadan aldığı mesafe bilgisini işleyerek kontrol ettiği park yerinin dolu olup olmadığını belirleyerek web servise bu bilgiyi gönderir. Ayrıca kontrol ettiği park yerinin rezerve edilip edilmediğini belirler. Eğer rezerve durumunda değişiklik olursa Rezerve Fiziksel Sistemini gerekli şekilde tetikler. Şekil 4.6 Gömülü sistem veri akış diyagramı

29 20 5 TASARIM, GERÇEKLEME VE TEST 5.1 Tasarım Benzetim Uygulaması Benzetim uygulaması nesne tabanlı yazılım tasarıma uygun olarak tasarlandı. Benzetim uygulamasının yapım amacına uygun olarak yazılan algoritmanın akış diyagramını Şekil 5.1 deki gibidir UML Şekil 5.1 Benzetim uygulması UML diyagramı

30 Akış Diyagramı Şekil 5.2 Benzetim Uygulaması Akış Diyagramı

31 Gömülü Sistem Akış Diyagramı Şekil 5.3 Gömülü sistem akış diyagramı

32 Web Servis Mimari Tasarım Web servis mimarisi MVC(Model View Controller) yapısı kullanılarak REST mimarisine uygun olarak tasarlandı. Bu mimari sayesinde birden fazla istemciden gelen isteklerin sorun yaratması ve direk veri tabanına bağlanılmasından oluşacak veri tutarsızlığı engellendi. Şekil 5.4 MVC(Model-View-Controller) Web servis mimarisi tasarlanırken veri tabanındaki her ana tabloya karşılık bir model nesnesi(data Access Object) oluşturuldu. Şekil 5.5 Modellerin UML diyagramı Kullanıcı istekleri içinse 3 adet ana view nesnesi oluşturuldu. Şekil 5.6 View nesnelerinin UML Diyagramı Her view içinse bir adet controller nesnesi oluşturuldu.

33 Veri Tabanı Tasarımı Uygulamalar için gerekli olan veri tabanı tasarımı ilişkisel olarak yapıldı. Birincil anahtar ve dış anahtarlar verilerin tekrarsız olarak tutulabilmesi için eklendi. Tasarım Şekil 5.7 diyagramında görülebilir. Şekil 5.7 ERD

34 Arayüz uygulaması Arayüz uygulaması farklı istemcilerden istek almaktadır. Bu yüzden istemciler sınıflandırılarak cevap verilmelidir. Akıllı otopark sistemi istemciler için sınıflandırma yaparsak karşımıza temel sınıflandırma ölçütü ekran boyutu çıkmaktadır. Buna göre akıllı otopark sistemi için iki adet arayüz yapılmıştır. Bunlardan biri mobil cihazlar (ekran boyutu 800 piksel den küçük cep telefonu, saat vs.) ve web uygulaması ise bu özelliğin dışında kalan cihazlar için yapılmıştır. Şekil 5.8 Arayüzlerin çalışma prensibi Arayüz uygulaması MVC yapısına uygun olarak tasarlanmıştır. Model nesnesi oluşturulmak yerine, veriler web servis üzerinden alınmakta ve gerekli verileri web servis üzerinden veri tabanı ve fiziksel sistemlere gönderilmektedir Mobil arayüz Şekil 5.9 Arayüzün MVC yapısı Bu arayüz için ekran boyutu temel olarak tasarlanmıştır. Ekrandaki nesnelerin en fazla boyutu 800 piksel olmalı ve tasarım esnek yapılarak farklı mobil cihaz boyutları için de çalışabilmesi sağlanmıştır Web arayüz uygulaması Bu arayüz içinse 800 piksel ve daha fazla ekran çözünürlüğüne sahip cihazlar(masaüstü ve dizüstü bilgisayar, tablet) baz alınarak yapılmıştır. Bu uygulama yapılırken tarayıcı esnekliğine sahip olması sağlanmıştır.

35 Gerçekleme Akıllı otopark sistemi projesinin gerçekleme kısmı 4 ana konudan oluşmaktadır. Başlangıçta gömülü sistemin temel çalışma sisteminin ve fiziksel sistemlerle iletişim kurması için gerçeklemenin nasıl yapıldığı anlatılacaktır. Sonrasında sistemlerin birbirleriyle iletişim kurup veri tabanını kullanması için gereken web servisin ve verilerin kullanıcılara sunulması için gereken arayüzün nasıl gerçeklendiği ele alınacaktır. Son olarak test ve görselleştirmek için gerekli olan benzetim uygulamasının gerçekleme aşamaları sunulacaktır Kullanılan Teknolojiler Web servisin ve arayüzün ayağa kalkması için gerekli olan sunucu yazılımı Unix tabanlı Ubuntu işletim sistemi, gömülü sistemin(raspberry Pi) Unix tabanlı Raspbian işletim sistemi kullanılmıştır. Yazılım geliştirmesi aşamasında geliştirme ortamı olarak Eclipse ve MySQL Workbench kullanılmıştır. Web servis yazılımı için JAX-RS Java kütüphanesi, web servisin diğer sistem nesneleri ile iletişimi ise JSON ve web servis için gerekli olan veri tabanı içinse MySQL kullanılmıştır. Arayüzde tasarım için CSS ve HTML5, grafiklerin nesnelerinin çizilebilmesi için KinectJS, web servisle iletişim kurmak için JQuery, ve genel mimarisi içinse Primefaces java anaçatısı kullanılmıştır. Son olarak javascriptleri test etmek için Chrome internet tarayıcı kullanılmıştır. Gömülü sistemin duyargalarla ve web servis ile veri alışverişi yapabilmesi için Python dili ve kütüphaneleri kullanılmıştır. Şekil 5.10 Kullanılan teknoloji ve araçlar Kullanılan Yazılım Dilleri - Benzetim, arayüz ve web servis için Java dili kullanılmıştır. - Arayüz için ayrıca HTML5 ve JavaScript diller kullanılmıştır. - Gömülü sistemde ise Python kullanılmıştır. - Veri tabanı için SQL dili kullanılmıştır.

36 Gömülü Sistem Gömülü sistemin çalıştığı elektronik kart ARM işlemcisine sahiptir. Bu işlemci yapısına uygun olan ve Unix tabanlı Raspbian işletim sistemi kartın üzerine yüklenmiştir. Bu işletim sistemi üzerinde Python derleyicisi varsayılan olarak bulunmaktadır. Bu yüzden yazılım için Python dili seçilmiştir. Ses ötesi duyarga ile mesafe ölçümü[9] //portları ayarla trigger <- 1 echo <- 2 //trigger e false yap Port(trigger) <- FALSE //modülü aktifleştir sleep(0.5) //10 mikrosaniye TRUE gönder Port(trigger) <- TRUE sleep( ) Port(trigger) <- FALSE //sinyalin baslangic zamanini al start_time <- current_time while (Port(echo) equal 0) start_time = current_time //sinyalin bitiş zamanını al stop_time <- current_time while (Port(echo) equal 1) stop_time = current_time //zaman farkını bul different_time <- stop_time - stop_time //zamanı ses hızıyla carp (34320 cm/s ses hızı) distance <- different_time*34320 //sinyal gidip geldiği için 2 ye böl ve uzaklığı bul distance <- distance/2 Uyarı ışığı ve rezervasyon fiziksel sistemi açma/kapama giris <- 1 // kapama Port(giris) <- FALSE // açma Port(giris) <- TRUE Web servise istek yap(python) //kütüphaneyi ekle import urllib2 // İstek yapılcak adresi ekle req =urllib2.request(' // adrese istek gönder res = urllib2.urlopen(req) // geri dönüş değerini yazdır print res.read

37 28 Kartın üzerinde 17 adet giriş/çıkış birimi(general Purpose Input/Output), 2 adet 5V, 1 adet 3.3V, 3 adet ground bulunmaktadır. Sistemde bir adet duyarga, bir adet uyarı ışığı ve bir adet rezervasyon fiziksel sistemi bulunduğunda 4 adet GPIO, 1 adet 5V ve 1 adet grounda ihtiyaç vardır. Sistemdeki nesne sayısı artıp n olduğunda serileştirme yapmak için!" # () adet daha GPIO kullanılmalıdır. Devre şeması Şekil 5.11de gösterilmiştir. Şekil 5.11 Gömülü sistemin devre şeması Sistemin düzgün olarak çalışabilmesi için R1 < R2 < 2*R1 koşulu sağlanmalıdır Web Servis Akıllı otopark sisteminde alt sistemler arası iletişim kurmak için web servis gerçeklenmiştir. Web servis veri tabanından aldığı verileri işleyerek gömülü sistem ve arayüzün hizmetine sunar. Ayrıca web servis arayüzden ve gömülü sistemden aldığı veriyi işleyerek veri tabanına kaydetmektedir. Web servisin temel fonksiyonları ise optimum yer bulma, kullanıcıların nerede olduklarını bulma, istenilen yeri bulma, kullanıcıların rezervasyon kayıtlarının sisteme girilmesini sağlama, belirli iki alan arası yol bulma ve otopark alanlarına analiz bilgisi sunmaktır İsteklerin ele alınması Web serviste gelen istekler view katmanında ele alınır. Gelen isteğin türü(get,post), ve gelen parametreler göre uygun view nesnesine ait fonksiyon public class YerView @Produces("application/json") public Yer optimum(@pathparam("param") int yer_id) {. }

38 29 Web servise sunucu_adresi/web_servis/yer/optimum/<parametre> isteği geldiğinde YerView nesnesine ait optimum fonksiyonu çağrılacaktır. Ayrıca yer_id kullanıcıdan gelen <parametre> olacaktır. Ayrıca fonksiyon Yer nesnesi ayrıştırılıp JSON olarak geri dönmektedir. Bu özellikler JAX-RS java kütüphanesi sayesinde gerçeklenmiştir Veri tabanı bağlantısı ve sorgu yapılması Web servis çoğu işlemi veri tabanıyla etkileşim kurarak yapmaktadır. Bunun için veri tabanı bağlantısı için bir nesne tasarlanmıştır. Nesnenin connection fonksiyonu şu şekilde veri tabanı bağlantısı oluşturur. Connection con; con=(connection)drivermanager.getconnection("jdbc:mysql://"+host+":"+port+"/"+dbname+"?u seunicode=true&characterencoding=utf-8",username,password); Veri tabanında ise sorgu şu şekilde yapılmıştır. VeriTabani cs = new VeriTabani(); Connection c = cs.connection(); String query = "SQL SORGU"; PreparedStatement statement = (PreparedStatement) c.preparestatement(query); ResultSet results = statement.executequery(); if(results.next()){ sensor = new Duyarga(results.getInt("sensor_id"), results.getint("sensor_name"),results.getint("otopark_id")); } results.close(); statement.close(); cs.connectionclose(); Optimum Yer Bulma Algoritması Kullanıcıların istedikleri alana en yakın park alanının bulunmasını sağlayan algoritmadır. Yerlere ait liste alır amaç noktasına en uygun yeri geri döner. PROSEDÜR esaplaenyakinyer min <- infnity FOR Yer listesindeki bütün yerler BEGIN d <- euclidiandistance(hedef_yer, denenen_yer) IF (d < min && yer = PARK_ALANI) && denenen_yer dolu değilse && denenen yer rezerve değilse) THEN min <- d yer <- denenen_yer ENDIF ENDFOR PROSEDÜR euclidiandistance Return kökal(üstal(nereden-nereye ağırlık merkezlerinin yatay farkı,2) + üstal((nereden-nerete ağılık merkezlerini dikey farkı),2))) + mutlak(kat_farkı*kat_maliyeti)

39 Yol Bulma Algoritması Yol bulma algoritması belirli iki alanı arasında en kısa yolu bulması için tasarlanmıştır. Algoritma öncelikle bu iki alanın aynı otoparkta bulunup bulunmadığını kontrol eder. Eğer aynı otoparkta ise o otoparka ait tüm yerleri alarak listeye atar. Bu liste yardımıyla Şekil 5.12deki çizge oluşturulur. A* arama algoritması uygun bir heuristic fonksiyonla uygulanarak sonuç bulunur. Algoritma için Giuseppe Scrivano nun astar nesnesi kullanılmıştır[12]. Şekil 5.12 Yer çizgesi - Yer bulma algoritması için Heurisctic(Sezgisel) fonksiyonu PROSEDÜR euclidiandistance Return kökal(üstal(nereden-nereye ağırlık merkezlerinin yatay farkı,2) + üstal((nereden-nerete ağılık merkezlerini dikey farkı),2))) + mutlak(kat_farkı*kat_maliyeti) - Yer bulma algoritması için İzleyen fonksiyonu PROSEDÜR izleyen for çizgedeki bütün düğümleri gez BEGIN düğümden gidilebilecek yerler listesini oluştur ENDFOR

40 Rezervasyon Algoritması PROSEDÜR reserve_et PARAMETRE otopark_id, yer_id, user_id, saat IF seçilen_yer boşsa THEN rezerve bilgisi rezervasyon tablosuna eklenir ELSE print hata_mesajı ENDIF PROSEDÜR rezerve_kaldır PARAMETRE otopark_id, yer_id, user_id, saat IF seçilen_yer boş değilse THEN rezervasyon tablosuna bitiş saati bilgisi girilir ELSE print hata_mesajı ENDIF PROSEDÜR rezervasyon_kontrol FOREACH park_yeri IF rezerve edilmiş yer varsa AND maximum rezervasyon süresi geçmişse THEN rezervasyon tablosuna bitiş saati bilgisini gir Gün ve/veya saate göre analiz Algoritması Bu algoritma kullanılarak otoparkların daha sonraki zaman dilimleri için tahmini olarak doluluk oranının bulunması için tasarlanmıştır. Algoritma verilen gün, saatin 10 dakika ileri/gerisi ve otoparkın doluluk oranını vermektedir. Bu algoritma gerçeklenirken SQL dilinin gruplama ve aralık özelliği kullanılmıştır. PROSEDÜR analiz_yap BEGIN PARAMETRE toplam_yer PARAMETRE gun <- Pazartesi Salı Perşembe Çarşamba Cuma Cumartesi Pazar PARAMETRE baslangic_saati PARAMETRE otopark_id ortalama_saat <- baslangic_saati + 10 yer_listesi <- gun ve ortalama_saati+-10 arasında olan değerleri bul yer_listesi <- yer_deger_listesindeki birden fazla değeri olan yerler için sonuncuları haricindikileri sil dolu_yer <- 0 FOREACH yer_listesindeki tüm elemanlar için BEGIN if elemanın bitis degeri > ortalama_saat + 10 dolu_yer <- dolu_yer + 1 END END END RETURN dolu_yer/toplam_yer Eğer sonuç tüm gün yada daha uzun zaman aralığında bulunmak isteniyorsa algoritma farklı zaman aralıklarında tekrar çalıştırılıp ortalama bulunarak elde edilir.

41 Arayüz Uygulaması Arayüz uygulaması kullanıcıların otoparklarla ilgili işlem yapabilmeleri için tasarlanmış bir uygulamadır. Bu uygulama son kullanıcıların hizmetine sunulacağı için uygulamanın son derece kullanılabilir ve görsel olması gereklidir. Bu yüzden uygulamanın daha görsel ve kullanışlı olması için farklı özellikler için bir çok yeni teknoloji kullanılmıştır. Bu teknolojilerde aşağıdaki başlıklarda anlatılacaktır Otoparkın çizilmesi Akıllı otopark sistemi projesinin temelinde otoparklar bulunmaktadır. Otoparkın çizilmesi için HTML5 in canvas özelliği kullanılmıştır. Bu özelliği daha aktif kullanmak için KinectJS javascript kütüphanesi kullanılmıştır. Ayrıca web servisten bilgi alınıp otoparkın güncellenmesi içinde jquery javascript kütüphanesi kullanılmıştır. Şekil 5.13 Otopark gösterimi - Otoparktaki renklerin alanları YOL DOLU PARK ALANI BOŞ PARK ALANI REZERVE PARK ALANI PARK EDİLEMEZ ALAN(KAPI, DUVAR VS.) BULUNULAN ALAN SEÇİLEN ALAN Tablo 5.1 Otopark renk tablosu

42 Bulunulan alan ile seçilen arasında yolun çizilmesi Seçilen alan(kahverengi) ile seçilen(mavi) arasına yol(sarı) üzerinden kırmızı bir yol çizilir. Bu özellik içinde otoparkın çizilmesinde kullanılan teknolojiler kullanılmıştır. Yol bilgisi ise web servisten gelmektedir. Bulunulan alan ise çerezde(cookie) bulunmaktadır. Seçilen alan ise öneri yada elle seçim şeklinde olabilir Mobil arayüz Şekil 5.14 Yol gösterimi Mobil uygulamada uyumluluk problemi olmaması için jquery Mobile ve Primefaces Mobile kullanılmıştır. Şekil 5.15 Arayüzün mobil cihazda görünümü Benzetim Uygulaması Benzetim uygulaması akıllı otopark sisteminin testi ve görselleştirilmesi için tasarlanmıştır. Ayrıca benzetim uygulaması uzun çalıştırılarak veri toplanmış bu veriler ışığında analiz uygulamasının test edilmesi sağlanmıştır. Uygulama bir otopark için poission dağılımına göre araç gelmesini, otoparka yerleşmesini ve poission dağılımına göre hizmet alıp otoparktan ayrılmasını sağlar. Benzetim uygulaması aynı anda birden fazla benzetim uygulamasının eşzamanlı çalışmasına karşı boş olan yerleri web servis yardımıyla

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ. AKILLI FİYAT ARAMA MOTORU TiLQi.NET

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ. AKILLI FİYAT ARAMA MOTORU TiLQi.NET İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ AKILLI FİYAT ARAMA MOTORU TiLQi.NET Bitirme Ödevi Kadir Kemal Dursun 040000643 Hakan Demirtaş 040000684 Bölüm : Bilgisayar Mühendisliği Anabilim

Detaylı

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER Yazılımı ve Genel Özellikleri Doç.Dr. Cüneyt BAYILMIŞ Kablosuz Ağların Modellemesi ve Analizi 1 OPNET OPNET Modeler, iletişim sistemleri ve

Detaylı

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ. Proje Kaynak Yönetimi

İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ. Proje Kaynak Yönetimi İSTANBUL TEKNİK ÜNİVERSİTESİ BİLGİSAYAR VE BİLİŞİM FAKÜLTESİ Proje Kaynak Yönetimi Bitirme Ödevi Altuğ BAYRAM 040070202 İlhan ADIYAMAN 040070280 Bölüm : Bilgisayar Mühendisliği Anabilim Dalı : Bilgisayar

Detaylı

Dicle Üniversitesi Bilgi İşlem Online Talep Takip Sistemi

Dicle Üniversitesi Bilgi İşlem Online Talep Takip Sistemi Dicle Üniversitesi Bilgi İşlem Online Talep Takip Sistemi Cengiz Coşkun 1, Abdullah Baykal 2 1 Dicle Üniversitesi Bilgi İşlem Daire Başkanlığı, Diyarbakır 2 Dicle Üniversitesi Fen Fakültesi, Matematik

Detaylı

AKILLI TATIL PLANLAMA SISTEMI

AKILLI TATIL PLANLAMA SISTEMI AKILLI TATIL PLANLAMA SISTEMI Istanbul Teknik Üniversitesi Bilgisayar ve Bilişim Fakültesi Bitirme Ödevi Ali Mert Taşkın taskinal@itu.edu.tr Doç. Dr. Feza Buzluca buzluca@itu.edu.tr Ocak 2017 İçerik Giriş

Detaylı

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Android e Giriş. Öğr.Gör. Utku SOBUTAY Android e Giriş Öğr.Gör. Utku SOBUTAY Android İşletim Sistemi Hakkında 2 Google tarafından geliştirilmiştir. Dünyada en çok kullanılan mobil işletim sistemidir. 2018 itibariyle Dünyada Android; %78.65,

Detaylı

T.C KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ

T.C KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ T.C KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ YAZILIM MÜHENDİSLİĞİ PROJE ÖDEVİ SİNEMA BİLET SİSTEMİ PROJE SAHİBİ 2015M10206009 Erdi Şenol İSTANBUL, 2016 Proje Alan Tanımı Günümüzde

Detaylı

Akıllı Satranç Uygulaması HAZIRLAYAN: BERKAY ATAMAN DANIŞMAN: DOÇ. DR. FEZA BUZLUCA

Akıllı Satranç Uygulaması HAZIRLAYAN: BERKAY ATAMAN DANIŞMAN: DOÇ. DR. FEZA BUZLUCA Akıllı Satranç Uygulaması HAZIRLAYAN: BERKAY ATAMAN - 150120037 DANIŞMAN: DOÇ. DR. FEZA BUZLUCA İÇERİK 1. Giriş 2. Analiz 3. Modelleme ve Gerçekleme 4. Yapılan Testler 5. Sonuç 6. Demo 1. GİRİŞ Satranç

Detaylı

Mobil Cihazlardan Web Servis Sunumu

Mobil Cihazlardan Web Servis Sunumu Mobil Cihazlardan Web Servis Sunumu Özlem Özgöbek Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2010 İnternet erişiminin yaygınlaşması ve artık mobil cihazlar üzerinden bile yüksek hızlı veri iletişimine

Detaylı

Yüz Tanımaya Dayalı Uygulamalar. (Özet)

Yüz Tanımaya Dayalı Uygulamalar. (Özet) 4 Yüz Tanımaya Dayalı Uygulamalar (Özet) Günümüzde, teknolojinin gelişmesi ile yüz tanımaya dayalı bir çok yöntem artık uygulama alanı bulabilmekte ve gittikçe de önem kazanmaktadır. Bir çok farklı uygulama

Detaylı

Bilgi Servisleri (IS)

Bilgi Servisleri (IS) Bilgi Servisleri (IS) GRID Kullanıcı Eğitimi Boğaziçi Üniversitesi 2007, İstanbul Emrah AKKOYUN Konu Başlığı Neden ihtiyaç duyulur? Kullanıcılar kimlerdir? Bilgi Servisi türleri MDS ve BDII LDAP Bilgi

Detaylı

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi

Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi Google Web Toolkit ile Öğretim Elemanı Otomasyon Sistemi Mehmet Karakoç Akdeniz Üniversitesi Bilgisayar Bilimleri Araştırma ve Uygulama Merkezi 28.11.2014 inet-tr'14 : GWT AUFaculty Project 1 İçerik Giriş

Detaylı

Rapor Hazırlama Kuralları

Rapor Hazırlama Kuralları Temel Bilgiler 1. Temel Bilgiler Rapor Hazırlama Kuralları Bilgisayar programcılıüı öğrencilerinin hazırlayacakları tüm proje ve bitirme projesiraporlarını bu belgede açıklandığı biçimde hazırlamaları

Detaylı

5651 ve 5070 Sayılı Kanun Tanımlar Yükümlülükler ve Sorumluluklar Logix v2.3 Firewall. Rekare Bilgi Teknolojileri

5651 ve 5070 Sayılı Kanun Tanımlar Yükümlülükler ve Sorumluluklar Logix v2.3 Firewall. Rekare Bilgi Teknolojileri 5651 ve 5070 Sayılı Kanun Tanımlar Yükümlülükler ve Sorumluluklar Logix v2.3 Firewall 5651 Sayılı Kanun Kanunun Tanımı : İnternet Ortamında Yapılan Yayınların Düzenlenmesi ve Bu Yayınlar Yoluyla İşlenen

Detaylı

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ TBIL-40-0 Nesneye Yönelik Sistem Çözümleme ve Tasarım HAZIRLAYAN 22325 Fahri DÖNMEZ DANIŞMAN

Detaylı

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 KONU BAŞLIKLARI 1. Yazılım Mimarisi nedir? 2. Yazılımda Karmaşıklık 3. Üç Katmanlı Mimari nedir? 4. Üç Katmanlı Mimari

Detaylı

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ AD SOYAD: TESLİM TARİHİ: OKUL NO: TESLİM SÜRESİ: 2 hafta ÖDEV NO: 5 1- BANKA

Detaylı

DGridSim Gerçek Zamanlı Veri Grid Simülatörü. Yazılım Tasarımı Dokümanı v 1.0.1 01.08.2011. Mustafa Atanak Sefai Tandoğan Doç. Dr.

DGridSim Gerçek Zamanlı Veri Grid Simülatörü. Yazılım Tasarımı Dokümanı v 1.0.1 01.08.2011. Mustafa Atanak Sefai Tandoğan Doç. Dr. DGridSim Gerçek Zamanlı Veri Grid Simülatörü Yazılım Tasarımı Dokümanı v 1.0.1 01.08.2011 Mustafa Atanak Sefai Tandoğan Doç. Dr. Atakan Doğan 1. Sistem Mimarisi DGridSim katmanlı bir yapı göz önünde bulundurularak

Detaylı

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi Hedefler Veritabanı Yönetimi Bilgisayarların Discovering Keşfi 2010 Computers 2010 Living in a Digital World Dijital Dünyada Yaşamak Veritabanı terimini tanımlamak ve bir veritabanının veri ve bilgi ile

Detaylı

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir. Netsis 3 Netsis 3 Netsis 3, Netsis ERP ürün ailesinin 3. Boyuta taşınmış yeni arayüz ve işlevleriyle karşımıza çıkan yeni yüzüdür. 3. Boyut, Logo ürün ailesi için ortak bir hedefi işaret eder, çünkü yapılan

Detaylı

ARDIŞIL DİYAGRAM YAPI DİYAGRAMI. Sistem Analizi ve Tasarımı Dersi

ARDIŞIL DİYAGRAM YAPI DİYAGRAMI. Sistem Analizi ve Tasarımı Dersi ARDIŞIL DİYAGRAM YAPI DİYAGRAMI Sistem Analizi ve Tasarımı Dersi İçindekiler Ardışıl Diyagram Nedir ve Neden Kullanılır... 3 Ardışıl Diyagram Elemanları... 3 MS Visio ile Ardışıl Diyagram Çizimi... 5 Violet

Detaylı

Rapor Hazırlama Kuralları

Rapor Hazırlama Kuralları Temel Bilgiler 1. Temel Bilgiler Rapor Hazırlama Kuralları Rapor hazırlamada, bu belge ile birlikte bulunan rapor örneği sitili kullanılabilir. Bu kalıp stil seçildiğinde, sayfa düzeni, paragraf yapıları

Detaylı

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan BİLGİ TEKNOLOJİLERİ YÖNETİMİ EĞİTİM MODÜLLERİ Tarih Saat Modül Adı Öğretim Üyesi 01/05/2018 Salı Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan Bu dersin amacı, bilgisayar bilimlerinin temel kavramlarını

Detaylı

9/22/2014 EME 3105 SİSTEM SİMÜLASYONU. Giriş. Tek Kanallı Kuyruk Sistemi. Kuyruk Sistemlerinin Simulasyonu. Simulasyon Örnekleri Ders 2

9/22/2014 EME 3105 SİSTEM SİMÜLASYONU. Giriş. Tek Kanallı Kuyruk Sistemi. Kuyruk Sistemlerinin Simulasyonu. Simulasyon Örnekleri Ders 2 EME 3105 SİSTEM SİMÜLASYONU Simulasyon Örnekleri Ders Giriş Bu derste bilgisayar yardımı olmaksızın çalıştırılabilen birkaç simulasyon örneği verilmiştir. Bu örnekler size sistem simulasyonu metodolojisini

Detaylı

Swing ve JDBC ile Database Erişimi

Swing ve JDBC ile Database Erişimi Swing ve JDBC ile Database Erişimi JDBC API, tablolanmış herhangi bir tür veriye, özellikle İlişkisel Veritabanı, erişim sağlayan bir Java API sidir. JDBC, aşağıda verilen üç etkinliğin gerçekleştirilebileceği

Detaylı

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ MOODLE UZAKTAN ÖĞRETİM SİSTEMİ ÖZET Genel Bilgiler Moodle nedir? Sistem Gereksinimleri Moodle Sisteminin Kurulumu Ders ve kategori eklenmesi Bir dersin sistem özellikleri İstatistikler Sonuç ve öneriler

Detaylı

PAZARTESİ SALI 2015-2016 Ders Programı 1. Öğretim 09.00-09.50 10.00-10.50 11.00-11.50 12.00-12.50 HRT4291 WEB TABANLI CBS GR:11 Ü.GÜMÜŞAY EZ-121 ; D1-129 HRT4291 WEB TABANLI CBS GR:22 Ü.GÜMÜŞAY EZ-121

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama Servlet Üst Düzey Programlama-ders01/ 1 Servlet Nedir? Web sayfaları ilk başlarda durağan bir yapıya sahipti ve kullanıcıdan bilgi alarak işlemler yapmıyordu. Zamanın geçmesiyle kullanıcıya

Detaylı

Bölüm 10: PHP ile Veritabanı Uygulamaları

Bölüm 10: PHP ile Veritabanı Uygulamaları Bölüm 10: PHP ile Veritabanı Uygulamaları -231- Öğr.Gör. Serkan DİŞLİTAŞ 10.1. PHP PHP, platformdan bağımsız sunucu taraflı çalışan betik bir web programlama dilidir. PHP programlama dili ile MySQL, MSSQL,

Detaylı

Öğrencilerin Canlı derslere katılması, * Sisteme giriş

Öğrencilerin Canlı derslere katılması, * Sisteme giriş Öğrencilerin Canlı derslere katılması, * Sisteme giriş Öncelikle bilgisayarlarınızda bulunan internete girmenizi sağlayacak olan tarayıcıyı açmanız gerekmektedir. Hangi tarayıcıyı kullanırsanız kullanın,

Detaylı

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri Veri modelleri, veriler arasında ilişkisel ve sırasal düzeni gösteren kavramsal tanımlardır. Her program en azından bir veri modeline dayanır. Uygun

Detaylı

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf/Y.Y. Ders Saati (T+U+L) Kredi AKTS Veri Tabanı Yönetimi BİM-324 3/II 3+0+0 3 4,5 Dersin Dili Dersin

Detaylı

YZM 3215 İleri Web Programlama

YZM 3215 İleri Web Programlama YZM 3215 İleri Web Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 10 AJAX Bu bölümde; AJAX nedir? AJAX nasıl çalışır?

Detaylı

Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr. Gölhisar Meslek Yüksekokulu

Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr. Gölhisar Meslek Yüksekokulu Öğr.Gör. Gökhan TURAN www.gokhanturan.com.tr Gölhisar Meslek Yüksekokulu Bilgisayarın Yapısı Donanım (Hardware): Bir bilgisayara genel olarak bakıldığında; Kasa, Ekran, Klavye, Fare, Yazıcı, Hoparlör,

Detaylı

GÖRÜNTÜ TABANLI ALGILAMA İLE QUADROTORUN HAREKETLİ BİR CİSMİ TAKİBİ

GÖRÜNTÜ TABANLI ALGILAMA İLE QUADROTORUN HAREKETLİ BİR CİSMİ TAKİBİ GÖRÜNTÜ TABANLI ALGILAMA İLE QUADROTORUN HAREKETLİ BİR CİSMİ TAKİBİ 1 PROJENİN TANIMI Bu projede bir quadrotora, görüntü tabanlı algılama ile hareketli bir nesneyi otonom olarak takip etme özelliği kazandırılmıştır.

Detaylı

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır.

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır. Yazılım Mimarisi 1.Yazılım Mimarisi Nedir? Yazılım mimarisi geliştirilen uygumaların maliyetlerinin azaltılmasında önemli bir yer tutar. Örneğin MVC modeli kullanarak bir uygulama geliştiriyoruz ve arayüz

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS VERİ TABANI BG-313 3/1 3+1+0 3+0,5 5 Dersin Dili : TÜRKÇE Dersin Seviyesi : LİSANS

Detaylı

Basit bir web uygulaması

Basit bir web uygulaması AJAX Ahmet Demirelli ahmetdemirelli@sabanciuniv.edu SCJP 5.0, SCWCD 1.4 Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı 3/20/2007 Sabanci University 1 Ajanda Neden AJAX ihtiyacı AJAX

Detaylı

ProModel ile Modelleme. Benzetim 14. Ders

ProModel ile Modelleme. Benzetim 14. Ders ProModel ile Modelleme Benzetim 14. Ders ProModel Menüleri ProModel temel olarak iki ayrı alandan oluşur, bu alanlar Main Menüler ve Layout Window udur. File menüsü ProModel Menüleri ProModel Menüleri

Detaylı

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2 Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 2116- Veri Yapıları Dersi Proje#2 İkili Arama Ağacı, Heap, Hash Tabloları ve Çizgeler Veriliş Tarihi: 24.04.2018 Son Teslim Tarihi: 25.05.2018

Detaylı

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ DUYARGA AĞLARINDA HABERLEŞME ALGORİTMASI TASARIMI VE TINYOS ÜZERİNDE GERÇEKLEMESİ

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ DUYARGA AĞLARINDA HABERLEŞME ALGORİTMASI TASARIMI VE TINYOS ÜZERİNDE GERÇEKLEMESİ İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ DUYARGA AĞLARINDA HABERLEŞME ALGORİTMASI TASARIMI VE TINYOS ÜZERİNDE GERÇEKLEMESİ Bitirme Ödevi Orçun Ertuğrul 040020324 Mehmet Kaplan 040030013

Detaylı

Kets DocPlace LOGO Entegrasyonu

Kets DocPlace LOGO Entegrasyonu Kets DocPlace LOGO Entegrasyonu Kets DocPlace Kurulumu Öncesinde Yapılması Gereken İşlemler Windows 7, Windows 8, Windows Server 2008 R2, Windows Server 2012 veya daha yeni işletim sistemlerinde Programlar

Detaylı

MONTE CARLO BENZETİMİ

MONTE CARLO BENZETİMİ MONTE CARLO BENZETİMİ U(0,1) rassal değişkenler kullanılarak (zamanın önemli bir rolü olmadığı) stokastik ya da deterministik problemlerin çözümünde kullanılan bir tekniktir. Monte Carlo simülasyonu, genellikle

Detaylı

Kullanıcılar için EGEE ve TR-Grid araçları

Kullanıcılar için EGEE ve TR-Grid araçları Kullanıcılar için EGEE ve TR-Grid araçları ULAKBIM Kullanıcı Eğitimi 2007, Ankara Emrah AKKOYUN Konu Başlığı Denetim ve Yönetim araçları GOCDB SAM GStat RTM TR-Grid PAKITI TR-Grid Ganglia TR-Grid MRTG

Detaylı

Ortam İzleyici Kullanım Kılavuzu

Ortam İzleyici Kullanım Kılavuzu Ortam İzleyici Kullanım Kılavuzu BARAN ELEKTRONİK SİSTEMLERİ SAN. TİC. LTD. ŞTİ İçindekiler Ana Ekran... 2 Mail kurulum Ekranı... 3 Cihaz Ekleme ve Otomatik Tarama Ekranı... 4 Manuel Cihaz Ekleme ve Adlandırma...

Detaylı

Web Uygulamaları Mimarileri ve Güvenliği

Web Uygulamaları Mimarileri ve Güvenliği Web Uygulamaları Mimarileri ve Güvenliği METU CCLUB erbil Karaman başlıklar... Web uygulama mimarileri Uygulama geliştirme ve framework kullanımı Güvenli web uygulamaları için öneriler baslamadan önce...

Detaylı

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek Yeni bir web sitesi tanımlamak, FTP ve Email ayarlarını ayarlamak için yapılması gerekenler Öncelikle Sol Menüden Create Virtual Server(Burdaki Virtual server ifadesi sizi yanıltmasın Reseller gibi düşünün

Detaylı

CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam. Alper UĞUR

CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam. Alper UĞUR CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam Alper UĞUR Yazılım Mimarisi Gereksinim: NE? Mimari : NE+NASIL GEREKSİNİMLER (software architecture) Requirements : WHAT? Architecture : WHAT + HOW?

Detaylı

Demetleme Yönteminin Y 3-Katmanlı Mimari Yapı ile Gerçeklenmesi. eklenmesi. KalacakYer.com

Demetleme Yönteminin Y 3-Katmanlı Mimari Yapı ile Gerçeklenmesi. eklenmesi. KalacakYer.com Demetleme Yönteminin Y 3-Katmanlı Mimari Yapı ile Gerçeklenmesi eklenmesi KalacakYer.com BİTİRME ÖDEVİ Grup Elemanları: Demet NAR 040000660 Neşe e ALYÜZ 040000662 Danış ışman: Yrd. Doç Dr. Feza BUZLUCA

Detaylı

YZM 3215 İleri Web Programlama

YZM 3215 İleri Web Programlama YZM 3215 İleri Web Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 6 AJAX Bu bölümde; AJAX nedir? AJAX nasıl çalışır?

Detaylı

EWD8989 KULLANIM KILAVUZU

EWD8989 KULLANIM KILAVUZU EWD8989 KULLANIM KILAVUZU ÖNEMLİ 1: Saatte kullanılacak kart, Mikro Sim olmalıdır. ÖNEMLİ2: Mikro Sim kartın PIN kodu bir telefon yardımıyla kaldırıldıktan sonra saate takılmalı. Uygulamayı Akıllı Telefonunuza

Detaylı

FABREKA YAZILIM ELEKTRONİK DANIŞMANLIK TİC. LTD. ŞTİ.

FABREKA YAZILIM ELEKTRONİK DANIŞMANLIK TİC. LTD. ŞTİ. FABREKA YAZILIM ELEKTRONİK DANIŞMANLIK TİC. LTD. ŞTİ. VEBIAN V1.5 PERFORMANS ÖNERİLERİ DOKÜMANI 08.02.2015 İçindekiler Amaç ve Kapsam... 2 Performansı Belirleyen Etkenler... 3 Rapor Nasıl Görüntülenir...

Detaylı

MİLLİ SAVUNMA ÜNİVERSİTESİ KARA HARP OKULU DEKANLIĞI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DERS TANITIM BİLGİLERİ

MİLLİ SAVUNMA ÜNİVERSİTESİ KARA HARP OKULU DEKANLIĞI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DERS TANITIM BİLGİLERİ MİLLİ SAVUNMA ÜNİVERSİTESİ KARA HARP OKULU DEKANLIĞI BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS Veritabanı Yönetimi 4 / Bahar (3+0+0)

Detaylı

BENZETİM. Prof.Dr.Berna Dengiz. 4. Ders Modelleme yaklaşımları Benzetim yazılımlarında aranan özellikler M/M/1 Kuyruk Sistemi benzetimi

BENZETİM. Prof.Dr.Berna Dengiz. 4. Ders Modelleme yaklaşımları Benzetim yazılımlarında aranan özellikler M/M/1 Kuyruk Sistemi benzetimi Prof.Dr.Berna Dengiz 4. Ders Modelleme yaklaşımları Benzetim yazılımlarında aranan özellikler M/M/1 Kuyruk Sistemi benzetimi BENZETİM DİLLERİNDE MODELLEME YAKLAŞIMLARI Tüm benzetim dilleri; ya olay-çizelgeleme

Detaylı

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ TDİ111 TÜRKDİLİ 1 1. Dil, diller ve Türk dili 2. Dil bilgisi, sözcük, cümle 3. Kelime Türleri 4. Anlatımın

Detaylı

NESNEYE YÖNELİK TASARIM SÜRECİ

NESNEYE YÖNELİK TASARIM SÜRECİ NESNEYE YÖNELİK TASARIM SÜRECİ GİRİŞ Nasıl? sorusuna yanıt aranır. Nesne modeli: Analizden tasarıma. Doğrudan problem alanı ile ilgili nesnelerden oluşan model, yardımcı nesnelerle zenginleştirilir. Ana

Detaylı

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G. Veritabanı Dersi Teoriden Pratiğe Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G. BÖLÜM 25 Web den Erişim Ortak Geçit Arayüzü Bazı Web Kavramları

Detaylı

İnternet Programcılığı

İnternet Programcılığı 1 PHP le Ver tabanı İşlemler Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

Detaylı

Asp.Net Veritabanı İşlemleri

Asp.Net Veritabanı İşlemleri Asp.Net Veritabanı İşlemleri Asp.Net Veritabanı İşlemleri Birçok uygulamada bilgiler geçici olarak tutulur ve oturum sonlandırıldığında bu bilgiler bellekten silinir. Ancak etkileşimli web sitelerinde

Detaylı

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi

Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi Model Güdümlü Geliştirme ile Gömülü Kaynakların Yönetimi Can Öz EGE ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ BİLGİSAYAR MÜHENDİSLİĞİ A.B.D. 1 İçerik Kaynak Yönetimi Problemi Kaynak Yönetimi Modellemesinin

Detaylı

MAM ENERJİ ENSTİTÜSÜ ANKARA

MAM ENERJİ ENSTİTÜSÜ ANKARA Güç Sistemleri Planlaması için Elektrik Şebekelerinin Coğrafi Haritalar Üzerinde Görselleştirilmesi Simulation of Electrical Networks on Geographic Maps for Power System Planning Mehmet DEMİRCİOĞLU Araştırmacı

Detaylı

IOT NEDİR? Bölüm 1. Internet of Things ekosistemi altında donanım, programlama, veri tabanı, veri analizi gibi alt yapılar yer almaktadır.

IOT NEDİR? Bölüm 1. Internet of Things ekosistemi altında donanım, programlama, veri tabanı, veri analizi gibi alt yapılar yer almaktadır. Bölüm 1 IOT NEDİR? Yazılım alanında yapılan çalışmalar teknolojide yaşanan gelişmelerle birlikte artık donanım sektörü ile iç içe girmiştir. Günümüzde üretilmekte olan her bir donanıma yazılım entegre

Detaylı

ÜRETİM SÜREÇLERİNİ GÖZLEMLEMEK VE KONTROL ETMEK İÇİN KABLOSUZ ÇÖZÜM

ÜRETİM SÜREÇLERİNİ GÖZLEMLEMEK VE KONTROL ETMEK İÇİN KABLOSUZ ÇÖZÜM NETWORKER GÖZLEMLEME SİSTEMİ ÜRETİM SÜREÇLERİNİ GÖZLEMLEMEK VE KONTROL ETMEK İÇİN KABLOSUZ ÇÖZÜM Her tür makinene de kullanılabilir Kullanıcının bilgisayarına ilave bir yazılım yüklenmesi gerekmiyor Bağımsız

Detaylı

BMÜ-421 Benzetim ve Modelleme Kesikli Olay Benzetimi. İlhan AYDIN

BMÜ-421 Benzetim ve Modelleme Kesikli Olay Benzetimi. İlhan AYDIN BMÜ-421 Benzetim ve Modelleme Kesikli Olay Benzetimi İlhan AYDIN KESİKLİ-OLAY BENZETİMİ Kesikli olay benzetimi, durum değişkenlerinin zaman içinde belirli noktalarda değiştiği sistemlerin modellenmesi

Detaylı

DSİ kapsamında oluşturulan dağınık durumdaki verilerinin düzenlenmesi, yeniden tasarlanarak tek bir coğrafi veri tabanı ortamında toplanması,

DSİ kapsamında oluşturulan dağınık durumdaki verilerinin düzenlenmesi, yeniden tasarlanarak tek bir coğrafi veri tabanı ortamında toplanması, Projenin Amacı DSİ Genel Müdürlüğünde, Bölge Vaziyet Planı çalışmaları kapsamında üretilen ve mevcut DSİ faaliyetlerini içeren CBS veri setleri ile CBS Veritabanının incelenerek yine mevcut CBS donanım,

Detaylı

GİRDİALIMI. Sistemin işleyişinde gereksinim duyulan verilerin sisteme girişinin yapılabilmesi için öncelikle toplanmaları gerekmektedir.

GİRDİALIMI. Sistemin işleyişinde gereksinim duyulan verilerin sisteme girişinin yapılabilmesi için öncelikle toplanmaları gerekmektedir. GİRDİ TASARIMI GİRDİ TASARIMI Geliştirilenyazılımın güvenilir ve geçerli bir yazılım olabilmesi iyi bir girdi tasarımı ile olanaklıdır. Diğer taraftan geliştirilen yazılımlar için kullanışlılık sahip olunması

Detaylı

VERİ TABANI UYGULAMALARI

VERİ TABANI UYGULAMALARI VERİ TABANI UYGULAMALARI VERİ TABANI NEDİR? Bir konuyla ilgili çok sayıda verinin tutulmasına, depolanmasına ve belli bir mantık içerisinde gruplara ayrılmasına veri tabanı denir. Veri tabanı programları;

Detaylı

EĞİTİMDE BİLGİSAYAR UYGULAMALARI. Yrd. Doç. Dr. Halil Ersoy

EĞİTİMDE BİLGİSAYAR UYGULAMALARI. Yrd. Doç. Dr. Halil Ersoy EĞİTİMDE BİLGİSAYAR UYGULAMALARI Yrd. Doç. Dr. Halil Ersoy Sunum İçeriği Bilgisayar Nedir? Eğitim ve Öğretimde Bilgisayar Kullanımı Bilgisayar Destekli Öğretim ve Türleri Yönetimde Bilgisayar Kullanımı

Detaylı

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir? Sınıf Diyagramları Sınıf diyagramı statik bir diyagramdır. Bir uygulamanın statik görünümünü temsil eder. Sınıf diyagramı sadece bir sistemin farklı yönlerini görselleştirmek, açıklamak ve belgelemek için

Detaylı

ÖZGÜR YAZILIMLAR İLE J2EE

ÖZGÜR YAZILIMLAR İLE J2EE ÖZGÜR YAZILIMLAR İLE J2EE Buğra Çakır bugra@ibrahimcakir.com Seminer İçeriği 1. İki ve üç katmanlı yazılım mimarileri 2. Java ve J2EE platformu 3. Özgür yazılımlar ile J2EE 4. Eclipse, Lomboz ve JBoss

Detaylı

RESTORAN Sistemi AKINSOFT BÖLGE BAYİ

RESTORAN Sistemi AKINSOFT BÖLGE BAYİ RESTORAN Sistemi WOLVOX Restaurant Programı, Restaurant, kafe, bar, otel, spa ve bilardo salonlarında adisyonları takip etmek için kullanabilirsiniz R T S B İ L G İ S A Y A R L E V E N T - İ S T A N B

Detaylı

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1 Web Formlar ve Sayfalar Arasında Bilgi Gönderme BATML İnternet Programcılığı 1 Bazı web sitelerinde sayfalar arasında bilgi veya değişken göndermek gerekebilir. Gönderilen bu bilgi kullanıcı adı ve şifre

Detaylı

JavaServerFaces. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu

JavaServerFaces. Ahmet Demirelli. SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu JavaServerFaces Ahmet Demirelli SCJP 5.0, SCWCD 1.4 ahmetdemirelli@sabanciuniv.edu Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı Seminerleri 2008 Hakkımızda SabancıÜniversitesi BT Yüksek

Detaylı

NB Macro Kullanımı Hakkında Genel Bilgiler

NB Macro Kullanımı Hakkında Genel Bilgiler NB Macro Kullanımı Hakkında Genel Bilgiler Genel Bilgi Makro Nasıl Eklenir? NB Ekranlarda Genel Makro Mantığı Makro Nasıl Çağrılır? Örnek Makro Projesi Genel Bilgi Makro, gelişmiş bir HMI kontrol metodudur.

Detaylı

PLC (Programlanabilir Kontrol Cihazı) TABANLI SİSTEMLERİN İNTERNET ÜZERİNDEN İZLENMESİ

PLC (Programlanabilir Kontrol Cihazı) TABANLI SİSTEMLERİN İNTERNET ÜZERİNDEN İZLENMESİ PLC (Programlanabilir Kontrol Cihazı) TABANLI SİSTEMLERİN İNTERNET ÜZERİNDEN İZLENMESİ Derya Birant, Alp Kut Dokuz Eylül Üniversitesi Bilgisayar Mühendisliği Bölümü İÇERİK Giriş PLC nedir? PLC lerin Uygulama

Detaylı

OMNET++ 4.2.2. Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

OMNET++ 4.2.2. Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü OMNET++ 4.2.2 Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları OMNET++ OMNET++ (Objective Modular Network Testbed in C++), nesneye yönelik (objectoriented)

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 11-14 May. 2014 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları

Detaylı

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların bilgilerini saklamalarına, program yüklemelerine izin

Detaylı

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6 ix Yazılım Nedir? 2 Yazılımın Tarihçesi 3 Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5 Yazılımın Önemi 6 Yazılımcı (Programcı) Kimdir? 8 Yazılımcı Olmak 9 Adım Adım Yazılımcılık 9 Uzman

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ DOKTORA DERS PROGRAMI (Lisanstan gelenler için)

BİLGİSAYAR MÜHENDİSLİĞİ DOKTORA DERS PROGRAMI (Lisanstan gelenler için) BİLGİSAYAR MÜHENDİSLİĞİ DOKTORA DERS PROGRAMI (Lisanstan gelenler için) HAZIRLIK PROGRAMI COME 27 İleri Nesneye Yönelik Programlama 5 COME 21 Veri Yapıları ve Algoritmalar COME 22 COME 1 COME 1 COME 411

Detaylı

Hızlı ve Güvenli Vale Hizmeti

Hızlı ve Güvenli Vale Hizmeti Hızlı ve Güvenli Vale Hizmeti Social Media Hızlı ve Güvenli Vale Hizmeti!!! ValeApp Vale işletmeleri ve mobil kullanıcılar için geliştirilmiş araç park etme, çağırma ve ödeme süreçlerini hızlı ve güvenli

Detaylı

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Internet ve Bilgi Teknolojileri (BİL 309) Dersi

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Internet ve Bilgi Teknolojileri (BİL 309) Dersi Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Internet ve Bilgi Teknolojileri (BİL 309) Dersi GENEL DERS BİLGİLERİ Öğretim Elemanı Ofis : MUH 312 : Öğr. Gör. Dr. T.Tugay BİLGİN Ofis Saatleri : Pazartesi:

Detaylı

VERİ TABANI UYGULAMALARI

VERİ TABANI UYGULAMALARI V. Ünite VERİ TABANI UYGULAMALARI A. BAŞLANGIÇ B. BİR VERİ TABANI YARATMA C. FORMLARIN KULLANIMI D. BİLGİYE ERİŞİM E. RAPORLAMA 127 A BAŞLANGIÇ Konuya Hazırlık 1. Veri tabanı programları hangi amaç için

Detaylı

Arayüz Geliştirme Dokümantasyonu

Arayüz Geliştirme Dokümantasyonu Arayüz Geliştirme Dokümantasyonu Proje: İş: Müşteri: Nosab Web Sitesi Arayüz Geliştirme Aeronorm Index 1. Sayfalar 2. Renk Paleti 3. Tipografi 4. Kutu Modeli 5. Bileşenler 6. Kod ve Sayfa Yapısı 7. Responsive

Detaylı

Grid Bilgi Sistemleri (Grid Information Systems)

Grid Bilgi Sistemleri (Grid Information Systems) Grid Bilgi Sistemleri (Grid Information Systems) TR-Grid Kullanıcı Eğitimi (9-10 Temmuz 2007) Hakan Bayındır Bu Sunumda Grid Bilgi Sistemleri glite Bilgi Sistemi GLUE Şeması Grid Elemanları LCG Bilgi Sistemi

Detaylı

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ Amaçlar 1. TCP protokolünün öğrenilmesi 2. Ağ programlamada kullanacağımız sistem komutlarının öğrenilmesi 3. Ağ programlamanın kavranması TCP ile veri alışverişi

Detaylı

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş Yard. Doç. Dr. Alper Kürşat Uysal Bilgisayar Mühendisliği Bölümü akuysal@anadolu.edu.tr Ders Web Sayfası: http://ceng.anadolu.edu.tr/ders.aspx?dersid=101

Detaylı

KONTAKSĐ. Bitirme Ödevi. Metin Kaplan 040020377 Ferhat Karakoç 040000606. Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri

KONTAKSĐ. Bitirme Ödevi. Metin Kaplan 040020377 Ferhat Karakoç 040000606. Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri ĐSTANBUL TEKNĐK ÜNĐVERSĐTESĐ ELEKTRĐK-ELEKTRONĐK FAKÜLTESĐ KONTAKSĐ Bitirme Ödevi Metin Kaplan 040020377 Ferhat Karakoç 040000606 Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri Danışman

Detaylı

Coslat Monitor (Raporcu)

Coslat Monitor (Raporcu) Coslat Monitor (Raporcu) Coslat Monitor, Coslat Firewall, Hotspot ve Mirror uygulamalarında oluşturulan zaman damgalı kayıtların analiz edilmesini ve raporlanmasını sağlayan uygulamadır. Coslat Monitor

Detaylı

IPACK LADDER. Arayüz Dökümantasyonu

IPACK LADDER. Arayüz Dökümantasyonu IPACK LADDER Arayüz Dökümantasyonu I. Giriş Bu dökümantasyon IPack Ladder yazılımının arayüz kullanımını, kullanılan model ile ilişkilerini ve işlevsel açıklamaları kapsamak üzere hazırlanmıştır. II. Dökümantasyon

Detaylı

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları License c 2002-2016 T. Uyar, Ş. Öğüdücü Veri Tabanı Sistemleri Giriş You are free to: Share copy and redistribute the material in any medium or format Adapt remix, transform, and build upon the material

Detaylı

UZAKTAN EĞİTİM MERKEZİ

UZAKTAN EĞİTİM MERKEZİ ÜNİTE 2 VERİ TABANI İÇİNDEKİLER Veri Tabanı Veri Tabanı İle İlgili Temel Kavramlar Tablo Alan Sorgu Veri Tabanı Yapısı BAYBURT ÜNİVERSİTESİ UZAKTAN EĞİTİM MERKEZİ BİLGİSAYAR II HEDEFLER Veri tabanı kavramını

Detaylı

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ULAŞIM ROTASI BELİRLEME YARDIMCISI

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ULAŞIM ROTASI BELİRLEME YARDIMCISI İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ULAŞIM ROTASI BELİRLEME YARDIMCISI Bitirme Ödevi Pınar Cana 040010417 Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri Danışman

Detaylı

Veritabanı Uygulamaları Tasarımı

Veritabanı Uygulamaları Tasarımı Veritabanı Uygulamaları Tasarımı Veri Tabanı Veritabanı yada ingilizce database kavramı, verilerin belirli bir düzene göre depolandığı sistemlere verilen genel bir isimdir. Günümüzde özel veya kamu kuruluşların

Detaylı

Başlangıç Ayarları. www.trippersoft.com

Başlangıç Ayarları. www.trippersoft.com Başlangıç Ayarları www.trippersoft.com Tripper > Kullanıcı Ayarları 1 LOGO Sys de TRİPPER kullanacaklar için birer kullanıcı açıyoruz. (Bu kullanıcıların her biri için LOGO programı içinde SATIŞ ELEMANI

Detaylı

YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ İNTİBAK ÇİZELGESİ 2010-2011 1.SINIF / GÜZ DÖNEMİ

YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ İNTİBAK ÇİZELGESİ 2010-2011 1.SINIF / GÜZ DÖNEMİ YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ İNTİBAK ÇİZELGESİ 2010-2011 1.SINIF / GÜZ DÖNEMİ Bu ders 1. Sınıf güz döneminden 2. Sınıf güz dönemine alınmıştır. gerektiği halde alamayan öğrenciler 2010-2011 öğretim yılı

Detaylı

Veritabanı. Ders 2 VERİTABANI

Veritabanı. Ders 2 VERİTABANI Veritabanı Veritabanı Nedir? Birbiri ile ilişkili verilerin bir arada uzun süreli bulundurulmasıdır. Veritabanı bazen Veritabanı Yönetim sistemi veya Veritabanı Sistemi yerine de kullanılır. Gerçek dünyanın

Detaylı

Süreç Yönetimi. Logo

Süreç Yönetimi. Logo Süreç Yönetimi Logo Kasım 2013 SÜREÇ YÖNETİMİ Süreç belirlenen bir amaca ulaşmak için gerçekleştirilen faaliyetler bütünüdür. Örn; Sistemde kayıtlı personellerinize doğum günü kutlama maili gönderme, Deneme

Detaylı

Temel Bilgi Teknlolojileri 1. Ders notları 5. Öğr.Gör. Hüseyin Bilal MACİT 2017

Temel Bilgi Teknlolojileri 1. Ders notları 5. Öğr.Gör. Hüseyin Bilal MACİT 2017 Temel Bilgi Teknlolojileri 1 Ders notları 5 Öğr.Gör. Hüseyin Bilal MACİT 2017 Windows işletim sistemi Kullanıcıya grafik arabirimler ve görsel iletilerle yaklaşarak, yazılımları çalıştırmak, komut vermek

Detaylı

Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ

Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ Leader in Safe City Technologies Güvenli Şehir Teknolojileri Yönetim Sistemi olan Ekin Red Eagle (OS) şehirdeki tüm sistemler ile iletişim

Detaylı