Koutzamanlı Yazılım Bileenleri için Bir Otomatik Dorulama Çerçevesi: VyrdMC

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

Download "Koutzamanlı Yazılım Bileenleri için Bir Otomatik Dorulama Çerçevesi: VyrdMC"

Transkript

1 Koutzamanlı Yazılım Bileenleri için Bir Otomatik Dorulama Çerçevesi: VyrdMC Tayfun ELMAS 1 Serdar TAIRAN 2 1, 2 Koç Üniversitesi, Bilgisayar Mühendislii Bölümü, 34450, Sarıyer-stanbul 1 e-posta: telmas@ku.edu.tr 2 e-posta: stasiran@ku.edu.tr Özet Bu bildiri koutzamanlı yazılım bileenleri için, yapısal test, model denetleme ve çalıma zamanı arıtma (refinement) denetleme aracımız olan Vyrd i birletiren, VyrdMC adında bir çalıma zamanında dorulama çerçevesi sunmaktadır. Yürütme tabanlı bir model denetleyici her bir test senaryosu için tüm i parçacıklarının farklı zamanlamaları ile oluan tüm yürütmeleri olutururken, Vyrd yürütmeleri arıtma ihlallerini tespit etmek için izler. Bu bütünleik yaklaım, çalıma zamanı denetlemenin kapsamasını artırma avantajına sahiptir. Bir yararı da Vyrd in model denetleyicinin çalıma zamanı ortamını ve kod donatma mekanizmasını, yürütmeleri arıtma denetleme sırasında tekrar oluturmak için kullanmasıdır; bu yöntem kodun elle düzenlenmesini gereini ortadan kaldırır. Bildiride çerçeveyi yazılım gelitirme süreci boyunca kullanmanın avantajları da tartıılmaktadır. Abstract This paper presents VyrdMC, a runtime verification framework for concurrent software components that combines structured testing, model checking, and our runtime refinement checker Vyrd. An execution-based model checker explores for each test case all distinct thread interleavings while Vyrd monitors executions for refinement violations. This combined approach has the advantage of improving the coverage of runtime refinement checking. As a side benefit, Vyrd reuses the model checker s runtime environment and instrumentation mechanism for replaying executions for refinement checking which reduces the need for manual annotation. We discuss benefits of using our framework throughout the software development process. 1. Giri Koutzamanlı bileenler pek çok endüstriyel ölçekte yazılım uygulamasında youn olarak kullanılmaktadır. Bu ölçekteki yazılımların dorulanmasının zaman ve kaynak maliyeti, oluabilecek durum uzayının (state-space) büyüklüü ve i parçacıklarının (thread) farklı ekillerde zamanlamaları (scheduling) sonucu ortaya çıkan çok sayıda yürütme nedeniyle yüksektir. Bu bildiri, koutzamanlı yazılımlar için çalıma zamanı dorulama (runtime verification) ve model denetleme (model checking) yöntemlerini birletiren bir dorulama çerçevesi sunmaktadır. Bileen tabanlı bir yazılımda bileenler çevreleri tarafından genel (public) metotları çarılarak eriilir. Koutzamanlı bir ortamda her i parçacıı yapılan ilemin doruluunu yargılamak için kullandıı bir bileenin genel metotlarının görevini atomik olarak yerine getirdiini varsayar. Atomik çalıan metotlar çaıran i parçacıına, metot boyunca bileenin araya baka bir i parçacıına ait ilem girmeden gözlemlendii/güncellendii izlenimi verir. Metotların atomik

2 çalımaları, performansı artırmak amacıyla kod gövdeleri tamamen senkronize edilmeden, yalnızca metot boyunca yerel senkronizasyonlarla salanabilmektedir. Bu ekilde gerçekletirilen metotların atomik olma özellikleri indirgeme (reduction) [1] ve saflık (purity) [2] konusunda yapılan önceki çalımalarla incelenmitir. ndirgeme ve saflık, metodun bu özellii denetlerken metot boyunca ulaılan tüm deikenlerin atomik olarak eriilmesini art koar. Ancak, bu artı salamayan fakat doru çalıan bazı atomik metot gerçekletirimleri için yanlı uyarılar vermektedir. Taıran ve Qadeer arıtmayı (refinement) koutzamanlı bileenler için bir doruluk kriteri olarak önermitir [3]. Arıtma genel olarak yazılım ve donanım sistemlerinin daha soyut bir ekilde betimlenmi modellerinin gerçekletirime doru olarak aktarılıp aktarılmadıını kontrol etmek için tanımlanmıtır. Yazılım için arıtma bir doruluk kriteri olarak, bileenin gerçekletiriminin (implementation) koutzamanlı bir çevredeki her yürütmesine karılık bileenin atomik belirtiminin (specification) bir yürütmesi olmasını art koar. Arıtmayı denetlemek için yürütme-tabanlı model denetleme yöntemleri endüstriyel ölçekte karmaık bileenler için durum uzayının çok büyük olması (state space explosion problemi) ve i parçacıklarının farklı zamanlamaları sonucu çok sayıda farklı yürütme oluabilmesi nedeniyle sınırlı ekilde uygulanabilmektedir. Yalın test yöntemi bu düzeyde karmaık yürütme uzayı olan yazılımlar için yeterli kapsama (coverage) salayamadıı gibi çou durumda test süresince elde edilen kapsamanın miktarı da ölçülememektedir. Çalıma zamanı dorulama yaklaımı yürütmenin testten daha iyi gözlenmesini ve böylece arıtma gibi daha kapsamlı kriterlerin sınanabilmesini salar. Çalıma zamanı dorulama, elde edilen kapsama miktarı bakımından test bazlı yaklaımlar ile etraflı dorulama (exhaustive verification) yöntemlerinin arasında yer almasına ramen, endüstriyel ölçekte bileenlere etkin olarak uygulanabilmektedir. Ancak bu yöntem denetlenecek yürütmeleri oluturmak için bileen üzerinde rasgele metot çarıları yapan test programları kullandıı için testin getirdii yetersiz kapsama problemiyle karı karıya kalmaktadır. Bu bildiride testin kapsamasını artırmak için model denetleyici kullanan bir yaklaım sunulacaktır. Bu yaklaım, yapısal bir test yöntemi, model denetleyici ve daha önce gelitirilen arıtma denetleme aracı Vyrd i [4] içerisinde birletiren bir çerçeveye entegre edilmitir. VyrdMC adını alan çerçeve [5], bileenin koutzaman karakteristiklerini taıyan yürütme izleri (execution trace) oluturmak için yapısal test programları kullanmaktadır. Test birimi tarafından üretilen her bir test senaryosu, i parçacıklarının zamanlaması nedeniyle farklı davranılar sergileyecei için testin çalıması model denetleyici tarafından kontrol edilmekte ve test senaryosunun her çalıması için farklı bir yürütme elde edilmektedir. Bunun sonucu olarak da kapsamada sürekli bir artı salanmaktadır. Vyrd, model denetleyici ile paralel olarak çalıarak üretilen yürütme izlerini arıtma kriterlerine göre denetlemektedir. Testin çalımasının kontrolü yanında model denetleyicinin çalıma zamanı ortamı (runtime environment) Vyrd in gereksinim duyduu bazı görevlerin otomatikletirilmesi amacıyla kullanılmaktadır. Bu görevler (1) test sırasında oluan çalımanın izlenerek ilgili yürütme izinin Vyrd tarafından analiz edilecek biçimde çıkartılması, ve (2) Vyrd in yürütme izini testin çalımasını etkilemeden analiz etmesi için yürütmedeki ilemlerin farklı bileen örnekleri üzerinde tekrar uygulanmasıdır. Bu bildiride VyrdMC nin yazılım gelitirme sürecinin birim test evresine entegre edilmesi ve böylece koutzamanlı bileenlerden oluan uygulamaların koutzamanlı ortamın getirdii sorunların gelitirme aamasında sürekli olarak denetlenmesi önerilmektedir. Bu bildiride anlatılan yöntem ve bu yöntemi otomatikletirmek için yapılan çalımalar bu entegrasyonu programcı açısından

3 kolaylatırmayı hedeflemektedir. Bölüm 2 de dorulama sürecine girecek bileenlerin özelliklerini ve bu bileenler için arıtma kriterlerini tanıtılmaktadır. Bölüm 3 de VyrdMC çerçevesi, içerdii birimler ve Vyrd kullanılarak elde edilen deneyimlerle birlikte ayrıntılı olarak anlatılmaktadır. Bölüm 4 de çerçevenin yazılım sürecine entegre edilmesinin önemi vurgulanmıtır. Bildiri, sonuçların sunulduu Bölüm 5 ile sona ermektedir. 2. Koutzamanlı Yazılım Bileenleri ve Arıtma Denetimi Koutzamanlı bir bileen nesneye yönelik bir programlama dilinde yazılan bir sınıf tarafından temsil edilir. Bu bildiride sözü edilecek bileenler çevrelerini oluturan i parçacıkları tarafından bileenin genel metotları çarılarak güncellenir ya da sorgulanır. Bu durumda bir bileen ve çevresi arasındaki veri alıverii metot argümanları ve dönü deerleri ile gerçekleir. Bileenin çevresini oluturan tüm yazılım birimleri, bileenin metotlarının atomik olarak çalıtıını varsayar. Bu durumda bileenlerin tümünden oluan programın doruluu bileenin çevresine sunduu atomik arayüzü doru olarak gerçekletirmesine balıdır. Doru gerçekletirime sahip bir bileen koutzamanlı bir ortamda çevresine, aynı anda sadece bir i parçacıı bileenin bir metodunu çalıtırıyor izlenimi verir. Bu bildiri arıtmayı koutzamanlı bileen gerçekletirimleri için bir doruluk kriteri olarak sunmaktadır. Arıtma metotlara yerel olarak yerletirilen iddialardan (assertion) daha kapsamlı bir kriter tanımlarken, yürütmeler test bazlı yöntemlerden daha açık bir ekilde gözlenerek test gibi sadece girdi çıktı bilgisine dayanarak denetleme yapan yöntemlerce bulunamayan hataların tespit edilmesini salar. Gerçekletirimde arıtma ihlalleri senkronizasyon hataları [12] sonucu ortaya çıkar. Çou senkronizasyon hatası veri kaybı ya da bozulmasına neden olduu için veri merkezli uygulamalar için arıtmayı önemsenmesi gereken bir kriter haline getirmektedir. ndirgeme ve saflıktan farklı olarak arıtma, atomik çalıma kriterini metotların tüm deikenlerin bir alt kümesi üzerindeki ilemleri için tanımlar. Arıtma, gerçekletirime ait her yürütme izine karılık atomik belirtime 1 ait bir yürütme izi var olmasını art koar. Gerçekletirime ve belirtime ait yürütme izleri arasındaki iliki (edeer olup olmadıkları), Taıran ve Qadeer [3] tarafından iki farklı arıtma yaklaımıyla ortaya konulmutur: girdi/çıktı-arıtma ve görünüm-arıtma. Girdi/çıktıarıtma (I/O-refinement), izler boyunca uyuan metot çarıları için dönü deerlerini denetlerken, görünüm-arıtma (view-refinement) bileenin yürütme izi boyunca belirli noktalarda gerçekletirim ve belirtimin durum bilgileri arasında bir denklik ilikisi salanmasını art koar. Görünüm-arıtma bu özellii ile içsel yapıda ortaya çıkan fakat metot dönü deerlerine yansımayan hataları tespit edebilmektedir. Takip eden bölümlerde anlatılacak olan dorulama çerçevesi koutzamanlı bileen gerçekletirimlerini her iki arıtma kriteri için denetleyebilmektedir. 3. VyrdMC Dorulama Çerçevesi Bu bölümde koutzamanlı bileenleri yukarıda tanıtılan arıtma kriterlerine göre denetlemek için oluturulan VyrdMC çerçevesinin ana bileenleri tanıtılacaktır. Bu bildiride anlatılan mekanizmaların ayrıntılı çalıma prensipleri için [4] ve [5] e bavurulabilir. VyrdMC nin mimarisi ekil 1 de gösterilmitir. VyrdMC balıca üç bileenden olumaktadır: (1) bileeni sınamak amaçlı 1 Bu atomik belirtim için herhangi bir biçimde tanımlanabilecei gibi özgün bileenin tüm metotlarının senkronize edilmesiyle oluturulan bir atomik versiyon da belirtim olarak kullanılabilmektedir.

4 test programları üreten bir test birimi, (2) üretilen test programlarını farklı yürütmeleri oluturacak ekilde çalıtıran bir model denetleyici, (3) model denetleyici tarafından oluturulan yürütme izlerini arıtma kriterlerine göre denetleyen Vyrd. (1) TEST BRM Test Programı Bileen Örnei Ek Bileen Örnei Atomik Belirtim Örnei Çalıma Zamanı Ortamı Çalıma Zamanı Ortamı Çalıma Zamanı Ortamı Durum Uzayı Arama Birimi Günlük Bileene-özel Kısmi-sıra indirgeme (3) VYRD (Arıtma Denetimi) (2) MODEL DENETLEYC ekil 1. VyrdMC nin mimarisi. 3.1 Test Birimi ve Test Senaryoları Test biriminin ana amacı, dorulama süreci boyunca ihtiyaç duyulacak kaynakları en aza indirecek ekilde eniyilenmi test senaryoları oluturmaktır. Bir test senaryosu, bileenin metotlarını koutzamanlı ortamda hataya odaklı çalıtıran bir programdır. Çalıma ortamının koutzamanlı olması nedeniyle test senaryosu, girdileri aynı olsa bile farklı çalımalarda i parçacıklarının zamanlamalarındaki farklılıklar nedeniyle önceki çalımalarda gözlenemeyen farklı davranılar sergileyebilir. Bunun sonucu olarak, hatanın olumasını salayabilecek bir test senaryosu, birçok kez çalıtırılmasına karın hata için gerekli i parçacıı zamanlamasının salanamaması nedeniyle hatalı durumu sergilemeyebilir. Bununla birlikte bir çalımada oluan hata, sonraki çalımalarda ortaya çıkmayabilir. Bir test senaryosuna ait tüm koutzamanlı yürütmelerin sayısı düünüldüünde hataya eimli davranılar üzerine odaklanmı test senaryoları üretebilmenin ve bu senaryoları hatayı oluturabilecek ekilde çalıtırabilmenin önemi ortaya çıkmaktadır: Çou senkronizasyon hatası, girdi olarak verilen yeterince karmaık yapıdaki bir bileen örneinin sınırlı bir parçası üzerinde ezamanlı çalıan az sayıda bireysel metot tarafından gerçeklenebilmektedir. Bu göz önünde bulundurularak her test senaryosu, koutzamanlı çalımaları test edilecek metotların bir altkümesini programcıdan girdi olarak alır. Test birimi verilen her metot için o metodu çalıtıracak bir i parçacıı yaratır. Metotlara aktarılacak argümanların deerleri metotların bileenin içsel veri yapısında aynı kısımlar üzerinde çalımasına imkan verecek ekilde birbiriyle korelasyon oluturan

5 deerler arasından seçilir. Böylece veri baımlılıı olan kod parçalarının oluturacaı senkronizasyon hatalarına odaklanılmı olur. Bellek kullanımı ve dorulama süresinin metot sayısı ve dolayısıyla i parçacıı sayısı ile orantılı olarak artacaı göz önünde bulundurularak, sınamaya yalnızca iki metodun çalıtıı senaryolardan balanarak en bariz senkronizasyon hatalarının yakalanması salanır. Dorulama ileminin ilerleyen safhalarında metot sayısı -ve dolayısıyla da i parçacıı sayısı- artırılarak daha karmaık davranılar sonucu ortaya çıkacak hatalar hedeflenir. Bu bildiride önerilen yöntem, bileenin her yürütmesini, her biri atomik olarak çalıan ve eylem adı verilen kod parçalarının ardıık sıralanmı hali olarak görür. Test süresince çalıtırılan her eylem bilgisi, dorulama sırasında testin koutzaman karakteristiini etkilememek için bütün-sıralı olarak paylaımlı bir günlüe kaydedilir. Dorulama ilemi test ile ezamanlı olarak bu günlükten okuyarak çalıır. 3.2 Kapsamanın Artırılması için Model Denetleyici Kullanılması Bir test senaryosunda sınanan metotlar ve girilen argümanlar aynı bile olsa, senaryonun her çalıması için i parçacıklarının zamanlamasına balı olarak farklı yürütmeler oluabilmektedir. parçacıklarının zamanlamasının rasgele gerçekletii testlerde kapsamanın düük olması problemi ile karılaılmaktadır. Ayrıca önceki test çalımaları sonucu elde edilen toplam kapsama ölçülememektedir. Özellikle test altyapısı üzerine kurulan çalıma zamanı dorulama yöntemleri için kapsamanın kontrolü ve ölçülmesi büyük önem taımaktadır. Bu bildiride kapsamanın kontrolü amacıyla test programlarının bir model denetleyici tarafından çalıtırılması önerilmektedir. Model denetleyici, verilen bir programı kendi çalıma zamanı ortamında kontrollü bir ekilde çalıtırarak programın farklı tüm yürütmelerinin ilgili analiz birimi tarafından izlenmesini salar [11]. Bu analiz birimi model denetleyicinin içine entegre edilebilecei gibi, VyrdMC de olduu gibi model denetleyicinin ürettii yürütme izini ayrı olarak inceleyen baımsız bir birim de (örnein Vyrd) olabilir. VyrdMC model denetleyiciyi bir test senaryosunun koutzamanlı bir çevrede oluturacaı tüm yürütmeleri oluturmak için kullanır. Birçok model denetleyici tarafından yararlanılan kısmi-sıra indirgeme (partial-order reduction) yöntemleri [9] doruluk kriteri açısından nicel olarak e olan yürütmelerden sadece birini inceleyerek, toplam incelenecek yürütme sayısını büyük ölçüde azaltmaktadır. Bölüm 3.5 de anlatıldıı gibi kısmi-sıra indirgeme yöntemleri bileenin iç veri yapısı ve arıtma kriteri göz önünde bulundurularak gelitirilebilmektedir. 3.3 Vyrd: Arıtma Dorulama Aracı Vyrd, koutzamanlı çalıan bileenleri arıtma için denetleyen bir çalıma zamanı dorulama aracıdır [4]. Vyrd, bileenin testi sırasında günlüe kaydedilen yürütme izini ezamanlı olarak okuyarak atomik belirtime uygunluunu denetler. Vyrd, test programına paralel ayrı bir süreç içerisinde günlükteki yürütmeyi oluturan eylemleri sıralı olarak okuyarak çalıır. Test sırasında oluan eylemler günlükten farklı zamanlarda okunduu için Vyrd test programının eylem sonlandıktan hemen sonraki durumuna ulaamaz. Bu nedenle bu olayları bileenin farklı bir örnei üzerinde yeniden canlandırmak zorundadır. Bu ek gerçekletirim

6 örnei, yürütme izi boyunca meydana gelen ve günlükten okunan eylemlerin örnek üzerine tekrar uygulanmasıyla güncellenir. Vyrd, buna ek olarak, belirtime ait bir örnei de aynı zamanda çalıtırır. Belirtime ait örnek, yürütme izindeki metot çarılarının bilgisi kullanılarak belirli noktalarda aynı metotların atomik versiyonlarının bu örnek üzerinde çalıtırılmasıyla sürülür. Arıtma, yürütme izi boyunca teslim (commit) noktaları denilen belirli noktalarda denetlenir. Teslim noktaları programcı tarafından metodun kaynak kodu üzerinde bazı kod parçalarının teslim eylemi olarak iaretlenmesiyle belirlenir. Her metot yürütmesi için iaretlenen satırlardan yalnızca biri belirli koullar altında teslim eylemi olarak çalıır ve teslim eyleminin çalıtırılması sonucu yürütme teslim noktasına ulamı olur. Teslim noktalarının seçimi konusu [3] ve [4] tarafından ayrıntılı olarak incelenmitir. Çalıan her bir metot için çarım ve dönü noktaları arasında yalnızca bir adet teslim noktası test programının çalıması sırasında belirlenip günlüe kaydedilir. Vyrd günlük boyunca ulatıı her teslim noktasında girdi/çıktı-arıtma ve görünüm-arıtma denetlemesi yapar. Denetleme için öncelikle teslim noktasının ait olduu metodun atomik versiyonu aynı argümanlar ile belirtim örnei üzerinde çalıtırılır ve metodun dönü deeri ile ortaya çıkan belirtim durum bilgisi ele alınır. Girdi/çıktı-arıtma gerçekletirim ve belirtime yapılan metot çarılarından dönen deerlerini karılatırır. Bu durum hataların yakalanabilmesi için test sırasında bileenin veri yapısı hakkında bilgi döndüren metotların sıklıkla kullanılması gerekmektedir. Görünüm-arıtma, yürütme izi boyunca teslim noktalarında gerçekletirim ve belirtime ait durumların ortak bir soyut durum uzayındaki karılıklarını belirli bir soyutlama fonksiyonu (abstraction function) kullanılarak elde eder. Görünüm-arıtma kriteri, elde edilen soyut durumlar arasında yürütme izi boyunca bir denklik ilikisinin korunmasını gerekli kılmaktadır. Soyutlama fonksiyonu programcı tarafından bileenin içsel veri yapısını sorgulayarak, bileenin yalnızca genel metotları aracılııyla gözlenebilecek bilgiyi içeren daha basit bir veri yapısı döndürecek bir metot olarak yazılır. lgili yöntem soyut durumu temsil eden bu veri yapısına ait örneklerin biçimsel olarak karılatırılabilir olmasını art koar. Dönü deerleri ya da soyut durumlar arasındaki herhangi bir uyumsuzluk bir arıtma hatası olarak tespit edilir ve programcıya ilgili hatayı oluturan yürütme izi ile birlikte bildirilir Deneyimler Vyrd Boxwood projesi kapsamındaki koutzamanlı çalıan bileenlerin ve Java standart kütüphanesinde bulunan birkaç veri yapısını gerçekletiren sınıfların sınanması amacıyla kullanılmıtır. Boxwood Projesi: Yapılan çalımada Microsoft Research tarafından gelitirilen, Boxwood [6] adlı soyut ve daıtımlı depolama alt yapısına ait bileenler denetlenmitir. Vyrd kullanılarak BLinkTree adında koutzamanlı bir b-link aaç gerçekletirimi ve yardımcı bileenlere arıtma dorulama uygulanmıtır. BLinkTree düümleri temsil eden deikenler byte dizileri olarak Cache adında bir önbellek modülü üzerinden Allocator adındaki soyut bir depolama modülünde saklanır. BLinkTree her biri bir byte dizisi olan [anahtar,deer] ikililerinin en hızlı biçimde saklanmasını ve istenildiinde geri getirilmesini salayacak ekilde eniyilenmi ileri düzey koutzamanlı algoritmaları [7] gerçekletirir.

7 Boxwood un BLinkTree ve Cache bileenleri arıtma için sınanmı ve Cache in önceki bir versiyonu üzerinde yapılan arıtma sınama sonucunda daha önce fark edilmeyen bir senkronizasyon hatasıyla 2 karılaılmıtır. Hata, Write ve Flush adında iki metodun koutzamanlı olarak çalıması sonucu belirli bir i parçacıı zamanlaması sonucunda ortaya çıkmaktadır. Sonuçta Cache e Write metodu ile yazılmak istenen veri Flush metodunun bazı ilemlerinin araya girmesiyle diske yanlı olarak kaydedilmekte ve veri bozulması yaanmaktadır. Bu hatayı test bazlı ya da girdi/çıktı arıtma ile tespit etmek ya da hata bulunsa bile sorunu tehis etmek çok zorken, görünüm-arıtma hatayı ve neden olan yürütme parçasını hatalı durum olutuu anda programcıya bildirmitir. Java Standart Kütüphanesi: Java standart kütüphanesi kapsamında StringBuffer ve Vector sınıflarına uygulanan arıtma sınaması sonucunda Vyrd in daha önceki çalımalarda tespit edilen hatalar Vyrd tarafından da tespit edilmitir. StringBuffer daki hata için [1] e, Vector deki hata için [8] e bakınız. StringBuffer da bulunan hata, append metoduna argüman olarak girilen bir StringBuffer nesnesinin metodu çalıtıran i parçacıından farklı bir i parçacıı tarafından aynı anda güncellenmesidir. Bu durum append metodu sonucu ortaya çıkan StringBuffer ın içeriinin atomik iletim sonucu beklenen içerikten farklı olmasıdır. Vector de yakalanan hata ise lastindexof metodunun içsel veri yapısına ait bazı deikenleri uygun ekilde korumaması nedeniyle addelement metoduyla koutzamanlı çalıması sonucu yanlı deer döndürmesidir. 3.4 Model Denetleyicinin Çalıma Ortamından Yararlanılması Testin model denetleyici tarafından çalıtırılması sırasında yürütmenin izlenerek atomik çalıan ilemlerin birer eylem olarak günlüe kaydedilmesi gerekmektedir. Bu amaçla (1) test sırasında atomik eylem olarak yorumlanacak kod parçalarının önceden belirlenmesi ve (2) test senaryosunun çalıması sırasında bu eylemlerin çalımasının izlemesi ve günlüe ilgili bilginin kaydedilmesi gerekmektedir. VyrdMC çerçevesi, kaynak kodun donatılması (instrumentation) olarak programcıya ek yük getirecek bu görevlerin, model denetleyicinin çalıtırma ortamından faydalanılarak otomatik olarak kotarılmasını salar. Model denetleyici tarafından programların kontrollü olarak çalıtırılması amacıyla kullanılan bu ortam, eylem olarak kabul edilebilecek kod parçalarını otomatik olarak tanımlar ve bu ön-tanımlı kod parçalarının çalımasını izleyerek gerekli bilgiyi günlüe kaydeder. Programcı VyrdMC den, model denetleyicinin atomik olarak yürüttüü temel ilemler dıında, dorulanan bileen tarafından kullanılan dier bazı yardımcı bileenleri atomik olarak kabul etmesini isteyebilir. Böylece bu bileenlere yapılan metot çarıları model denetleyici tarafından herhangi bir kontrol mekanizması uygulanmadan atomik olarak çalıtırılır. Ayrıca model denetleyici, Bölüm 3.3 de anlatıldıı gibi günlükten okunan eylemlerin gerçekletirim ve belirtimin Vyrd tarafından kullanılan ayrı iki örneini üzerinde uygulanmasını da çalıma ortamı aracılııyla otomatik olarak gerçekletirilebilmektedir. 3.5 leri Dorulama Yöntemleri Bu bölümde karmaık veri yapıları içeren koutzamanlı çok sayıda bileenin katmanlı bir mimaride bir araya getirildii endüstriyel ölçekte yazılımların dorulama sürecini daha verimli hale getirecek teknikler tanıtılacaktır. 2 lgili hata Cache bileeninin son versiyonunda ortadan kaldırılmıtır, ancak yapılan düzeltme önceki versiyondaki hata fark edilmeden gerçekletirilmitir.

8 Katmanlı bileenlerin dorulanması: Karmaık yazılımların dorulama çalımalarında önemli bir hedef de katmanlı mimariyle bir araya getirilen bileenlerin verimli olarak denetlenmesidir. Bu tür yazılımlarda her bileen bir alt katmandaki bileenleri soyut bir veri yapısı olarak ya da alt düzey ilemler gerçekletiren atomik olduklarını varsayarak kullanır. Bunu yaparken alt katmandaki bileenlerin arıtma kriterine uygun olarak atomik çalıacak ekilde gerçekletirildiini varsayar. Ayrıca bir üst katmandaki kendisini kullanan bileenlere de atomik bir arayüz salamalıdır. Programcı klasik varsay-garantile yaklaımında her bir bileeni çevresinden baımsız olarak denetler: Her bir bileeni denetlemek için ayrı bir test ve dorulama süreci, gereinden fazla dorulama zamanı ve kaynaı harcanmasına sebep olacaktır. VyrdMC, katmanlı bir mimaride birletirilmi bir bileen kümesinin tümünü aynı çalıması sırasında dorulamaya izin vermektedir. Bu durumda tüm katmanların koutzamanlı olarak çalıması salanır. Ancak her bir bileen için ayrı denetleme kaynaı (örnein her bileen için bir gerçekletirim ve bir belirtim) ayrılır. test birimi ve model denetleyici ortak olarak kullanıldıı için ve tüm bileenler için tek bir test senaryosu ve ortak bir yürütme izi kullanıldıı için toplam kaynaktan tasarruf söz konusu olmaktadır. Her bir bileenin denetlemesi aynı yürütme izi kullanılarak kendisine ait gerçekletirim ve belirtim üzerinde arıtma kriterleri göz önünde bulundurularak yapılır. Tüm bileenlere ait yürütme izi parçalarının doruluunun gösterilmesi, tüm yürütmenin doruluunu ispatlar. Kısmi-sıra indirgeme tekniklerinin gelitirilmesi: Kısmi-sıra indirgeme metotları [9,10] eylemler arasındaki baımlılık ilikilerini nicel olarak farklı yürütmeler oluturmak amacıyla kullanırlar. Doruluk kriteri zamansal mantık (temporal logic) formülleri ya da kilitlenme (deadlock) olan yaklaımlar bu metotları sıkı veri baımlılıı kuralları ile birlikte kullanırlar. Bu durumda oluabilecek farklı yürütmelerin sayısı dorulama süresini önemli ölçüde artırmaktadır. VyrdMC tüm bu yürütmelerin arıtma için ilginç olan bir altkümesini inceleyerek senkronizasyon hatalarının daha kısa sürede tespit edilmesine imkan tanır. Öncelikle bileenlerin içsel veri yapıları arıtma kriterinde etkisine balı olarak farklı parçalara ayrılır. Örnein veriyi yapraklarda saklayan bir aaç veri yapısı (1) yaprak düümleri ve (2) dizin yapısını oluturan düümleri temsil eden deikenler olarak iki kümeye ayrılabilir. Farklı deiken kümeleri üzerinde uygulanan ilemler arasındaki baımlılık ilikilerinin kısmi-sıra indirgeme algoritması tarafından farklı ekilde deerlendirilmesi salanarak bazı baımlılıklar ihmal edilebilir. Örnein model denetleyici sadece doruluk kriteri için ilginç olabilecek deiken kümesi üzerine yapılan eylemler arasındaki baımlılık ilikileri deerlendirerek incelenecek toplam yürütme sayısını önemli ölçüde azaltabilir. Sonuçta sadece ilgilenilen deiken kümesi üzerinde çalıan eylemlerin farklı permütasyonları denetlenir. Bu yöntem özellikle karmaık veri yapıları ve bu yapılar üzerinde ilem yapan kapsamlı algoritmalar içeren bileenler için, istenilen deikenlere ulaan kod parçalarının koutzamanlı ileyileri üzerine odaklanılması gerektiren denetlemeler için büyük önem taımaktadır. 4. Dorulamanın Gelitirme Sürecine Entegrasyonu VyrdMC hem yazılımı oluturan her bir bileeni arıtma kriterlerine göre denetlerken, hem de yazılımın katmanları arasındaki etkileimin birleik olarak dorulanmasını (compositional verification) salanmaktadır. Çerçevenin test birimi az sayıda metodun koutzaman karakteristiinin kısa süreler içerisinde denetlenebilmesine imkan salar. Bu durumda programcı bileene ekledii senkronizasyon mekanizmalarının doruluunu VyrdMC yi çalıtırarak

9 sınayabilir ve bariz hataları gelitirme sürecinin ilk aamalarında tespit edip düzeltir. Koutzamanlı çalıacak metot sayısı artırılarak daha karmaık durumlarda oluacak hatalar bulunabilir. Denetleme süreci programcı için en az düzeyde katkıda bulunacak ekilde gerçeklemektedir. Programcının sorumlulukları dorulanacak her bileen için aaıdaki gibi özetlenebilir: 1. Bileenin durumunu girdi olarak alıp soyut durumu seçip çıkartan bir soyutlama fonksiyonu yazmak. Bu fonksiyon bileenin bir metodu olarak gerçekletirimle aynı programlama dilinde yazılır. Soyutlama fonksiyonunun görevi bileenin durumunu tarayarak soyut durumu temsil edecek daha basit bir veri yapısı örnei oluturmak ve bunu arıtma denetleyiciye döndürmektir. 2. Her metot için teslim noktalarının belirlenmesi ve bunların kaynak kod üzerinde iaretlenmesi. Teslim noktaları gerçekletirimin yürütmesine karılık gelen belirtime ait yürütmenin oluturulması için kullanılacaından bileenin doruluunu göstermek açısından önem taımaktadır. Programcı sınanacak bileenin içsel veri yapısına karar verdikten sonra bileenin soyutlama fonksiyonunu yazar ve bu fonksiyon veri yapısında önemli bir deiiklik yapılmadıkça deimez. Ancak teslim noktaları ilgili metotların gerçekletirimindeki deiikliklere balı olarak birçok kez deiecektir. VyrdMC yi programcıya yükledii yukarıda belirtilen sorumluluklar her bileen için ek yük getiriyor gibi gözükebilir. Ancak gerek soyutlama fonksiyonu gerekse commit noktaları, programcının gerçekletirimin özellikle koutzamanlı bir ortamda doruluundan emin olmak için üzerinde düünmek zorunda olduu gereksinimlerdir. Programcı bu gereksinimleri VyrdMC tarafından kullanılmak üzere biçimsel olarak ifade eder. Sınama sırasında soyutlama fonksiyonu ya da commit noktalarının yanlı ya da yetersiz ifadesi sonucu ortaya çıkan hatalar programcının bileenin tasarımını gelitirmesi açısından önem taıyacaktır. 5. Sonuç Bu bildiride koutzamanlı bileenler için yapısal bir test birimi, model denetleyici ve Vyrd arıtma denetleme aracını içeren bir dorulama çerçevesi, VyrdMC, sunulmutur. Test birimi dorulama ilemi için gereken kaynak ihtiyacını en aza indirecek ve hatalı kısımlara odaklı test senaryoları üretir. Üretilen test senaryoları model denetleyici tarafından kapsamayı artıracak farklı yürütmeler oluturacak ekilde çalıtırılır. Model denetleyicinin çalıması sırasında Vyrd oluturulan yürütme izlerini arıtma kriterlerine göre denetler. VyrdMC katmanlı bir mimari sergileyen bileenleri de aynı çalımada dorulayabilmekte ve kısmisıralı indirgeme tekniklerini gelitirerek karmaık veri yapıları içeren bileenler için yürütme uzayını makul büyüklüklere indirgeyebilmektedir. Önerilen çerçeve koutzamanlı bileenlerle kurulan yazılımları bileen bazında otomatik olarak denetleyerek programın tümünün doruluu hakkında fikir yürütmek açısından büyük önem taımaktadır. Çerçevenin, koutzaman hatalarının önceden tespit edilip düzeltilmesi amacıyla yazılım gelitirme sürecine entegre edilmesi tavsiye edilmektedir.

10 Kaynakça [1]. C. Flanagan ve S. N. Freund. Atomizer: A dynamic atomicity checker for multithreaded programs. Proc. 31st ACM Symposium on Principles of Programming Languages, sayfa: , [2]. C. Flanagan, S. Freund, ve S. Qadeer. Exploiting purity for atomicity. Proceedings of the International Symposium on Software Testing and Analysis (ISSTA 2004). ACM Press, [3]. S. Tasiran ve S. Qadeer. Runtime refinement verification of concurrent data structures. Proc. Runtime Verification '04 (ETAPS '04). Electronic Notes in Theoretical Computer Science. Elsevier, [4]. Tayfun Elmas, Serdar Tasiran, ve Shaz Qadeer. Vyrd: VerifYing Concurrent Programs by Runtime Refinement-Violation Detection. ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation (PLDI), Chicago, Illinois, ABD, Haziran 12-15, [5]. Tayfun Elmas, Serdar Tasiran. VyrdMC: Driving Runtime Refinement Checking with Model Checkers, Fifth Workshop on Runtime Verification (RV'05). The University of Edinburgh, Scotland, UK. Temmuz 12, [6]. J. MacCormick, N. Murphy, M. Najork, C. A. Thekkath, ve L. Zhou. Boxwood: Abstractions as the foundation for storage infrastructure. Proceedings of the 6th Symposium on Operating Systems Design and Implementation (OSDI 2004), San Francisco, CA, ABD, Aralık 2004, sayfa: [7]. Y. Sagiv. Concurrent operations on b-trees with overtaking. Journal of Computer and System Sciences, 3(2), Ekim [8]. C. Flanagan ve S. Qadeer. A type and effect system for atomicity. In Proceedings of the ACM SIGPLAN 2003 Conf. on Programming Language Design and Implementation, PLDI 03. [9]. P.Godefroid. Partial Order methods for the Verification of Concurrent Systems-An approach to the State-Explosion Problem. Sayı: 1032 of Lecture Notes in Computer Science. Springer-Verlag, Ocak [10]. Cormac Flanagan, Patrice Godefroid. Dynamic partial-order reduction for model checking software. POPL '05: Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, Long Beach, California, ABD. Sayfa: , [11]. Guillaume Brat, Klaus Havelund, Seung-Joon Park, ve Willem Visser. Model checking programs. IEEE International Conference on Automated Software Engineering (ASE), Eylül [12]. Eitan Farchi, Yarden Nir, Shmuel Ur. Concurrent Bug Patterns and How to Test Them. 17th International Parallel and Distributed Processing Symposium (IPDPS 2003), Nisan 2003, Nice, Fransa, sayfa: 286.

Java Tabanlı Akıı Sisteminin Gelitirilmesi

Java Tabanlı Akıı Sisteminin Gelitirilmesi Java Tabanlı Akıı Sisteminin Gelitirilmesi Deniz KARATOPRAK 1 Meltem Turhan YÖNDEM 2 1 Meteksan Sistem, Simülasyon ve Görsel Sistemler 1,2, Orta Dou Teknik Üniversitesi, Bilgisayar Mühendislii, Ankara,

Detaylı

HLA Tabanlı Bileenler ile Otomatik Uygulama Gelitirme

HLA Tabanlı Bileenler ile Otomatik Uygulama Gelitirme HLA Tabanlı Bileenler ile Otomatik Uygulama Gelitirme Cengiz TOAY Bilgisayar Mühendislii Bölümü Orta Dou Teknik Üniversitesi e-posta: ctogay@ceng.metu.edu.tr Özet Bu çalıma, belirli bir alanda birbirlerinin

Detaylı

#$% &'#(# Konular. Bits of Information. Binary Özellikler Superimposed Coding Signature Formation Deerlendirme

#$% &'#(# Konular. Bits of Information. Binary Özellikler Superimposed Coding Signature Formation Deerlendirme !" #$% &'#(# Konular Binary Özellikler Deerlendirme Binary Özellikler Bir binary özellik iki deer alabilir (kapalı veya açık; var veya yok gibi) Bir kiiye ait bilgiler binary olarak aaıdaki gibi gösterilebilir

Detaylı

Bileen Tümletirmesine Dayalı Otomatik Uygulama Gelitirimi

Bileen Tümletirmesine Dayalı Otomatik Uygulama Gelitirimi Bileen Tümletirmesine Dayalı Otomatik Uygulama Gelitirimi Murat Mutlu ÖZTÜRK Bilgisayar Mühendislii Bölümü, Mühendislik Fakültesi, Orta Dou Teknik Üniversitesi, 06520, Çankaya, Ankara e-posta: murato@havelsan.com.tr

Detaylı

YZM 2108 Yazılım Mimarisi ve Tasarımı

YZM 2108 Yazılım Mimarisi ve Tasarımı YZM 2108 Yazılım Mimarisi ve Tasarımı Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 1 Yazılım Tasarımına Giriş Bu bölümde;

Detaylı

TÜBTAK UEKAE Gebze/KOCAEL, ihasircioglu@uekae.tubitak.gov.tr

TÜBTAK UEKAE Gebze/KOCAEL, ihasircioglu@uekae.tubitak.gov.tr TÜBTAK UEKAE Gebze/KOCAEL, ihasircioglu@uekae.tubitak.gov.tr ÖZET : Bu bildiride ETSI standardında tanımlanan Elektronik mza yapısı ve farklı kullanım amaçları için oluturulabilecek imza formatları incelenecek,

Detaylı

ISO 17025 Laboratuvar Akreditasyonu Teknik Kriterleri

ISO 17025 Laboratuvar Akreditasyonu Teknik Kriterleri Kalite Eitim Danımanlık Ltd.ti. ISO 17025 Laboratuvar Akreditasyonu Teknik Kriterleri 26 Nisan 2006 -MERSN KORE EHTLER CAD. NO. 36 D. 2 ZNCRLKUYU L-STANBUL Tel: 0212-274 15 63-64 Fax: 0212-274 15 66 E-mail

Detaylı

Çok Katmanlı WEB Tabanlı Uygulamalarda Yetkilendirme Problemi

Çok Katmanlı WEB Tabanlı Uygulamalarda Yetkilendirme Problemi Çok Katmanlı WEB Tabanlı Uygulamalarda Yetkilendirme Problemi Yenal Göebakan cybersoft, Ankara, TURKEY yenal.gogebakan@cs.com.tr Abstract Yetkilendirme amaçlı gelitirilmi bulunan çeitli çözümler kaynaa

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ı

BÖLÜM 1 YAZILIM TASARIMINA GİRİŞ YZM211 YAZILIM TASARIMI. Yrd. Doç. Dr. Volkan TUNALI Mühendislik ve Doğa Bilimleri Fakültesi / Maltepe Üniversitesi

BÖLÜM 1 YAZILIM TASARIMINA GİRİŞ YZM211 YAZILIM TASARIMI. Yrd. Doç. Dr. Volkan TUNALI Mühendislik ve Doğa Bilimleri Fakültesi / Maltepe Üniversitesi BÖLÜM 1 YAZILIM TASARIMINA GİRİŞ YZM211 YAZILIM TASARIMI Yrd. Doç. Dr. Volkan TUNALI Mühendislik ve Doğa Bilimleri Fakültesi / Maltepe Üniversitesi Amaçlar 2 Tasarımın ne olduğunu ve çeşitli tasarım türlerinin

Detaylı

Yaz.Müh.Ders Notları #6 1

Yaz.Müh.Ders Notları #6 1 YAZILIM MÜHENDİSLİĞİ Prof.Dr. Oya Kalıpsız GİRİŞ 1 YAZILIM YETERLİLİK OLGUNLUK MODELİ Olgunluk Seviyeleri: Düzey 1. Başlangıç düzeyi: Yazılım gelişimi ile ilişkili süreçlerin tanımlanması için hiçbir sistematik

Detaylı

SENTEZ TABANLI YAZILIM MİMARİSİ TASARIM YAKLAŞIMININ ESSENCE ÇERÇEVESİYLE MODELLENMESİ

SENTEZ TABANLI YAZILIM MİMARİSİ TASARIM YAKLAŞIMININ ESSENCE ÇERÇEVESİYLE MODELLENMESİ SENTEZ TABANLI YAZILIM MİMARİSİ TASARIM YAKLAŞIMININ ESSENCE ÇERÇEVESİYLE MODELLENMESİ G Ö R K E M G I R AY, T U R K E Y B E D I R T E K I N E R D O G A N, W A G E N I N G E N U N I V E R S I T Y, N E

Detaylı

Bileen Yönelimli Yazılım Gelitirme çin Süreç Modeli

Bileen Yönelimli Yazılım Gelitirme çin Süreç Modeli Yönelimli Yazılım Gelitirme çin Süreç Modeli Vedat BAYAR Havelsan A.. Eskiehir yolu 7.km ANKARA vbayar@havelsan.com.tr Özet Yönelimli Yazılım Mühendislii (BYYM) yaklaımı için bir süreç modeli gelitirildi.

Detaylı

#$% &'#(# Konular. Binary Tree Structures. Binary Search Trees AVL Trees Internal Path Reduction Trees Deerlendirme

#$% &'#(# Konular. Binary Tree Structures. Binary Search Trees AVL Trees Internal Path Reduction Trees Deerlendirme !" #$% &'#(# Konular Binary Search Trees Deerlendirme Binary Search Trees Bir binary search tree üzerindeki her node hem data saklar hemde dier node lara ulaılırken yön belirler Bir binary search tree

Detaylı

4. Bölüm Programlamaya Giriş

4. Bölüm Programlamaya Giriş 4. Bölüm Programlamaya Giriş Algoritma ve Programlamaya Giriş Dr. Serkan DİŞLİTAŞ 4.1. C# ile Program Geliştirme Net Framework, Microsoft firması tarafından açık internet protokolleri ve standartları

Detaylı

2. Bölgesel Kalkınma ve Yönetiim Sempozyumu 25-26 Ekim 2007, zmir

2. Bölgesel Kalkınma ve Yönetiim Sempozyumu 25-26 Ekim 2007, zmir Yönetiim, Bölgesel Kalkınma ve Kalkınma Ajansları: Çukurova Kalkınma Ajansı Uygulaması A. Celil Öz 1 1- Giri Son çeyrek yüzyılda küresellemenin ve uluslar arası ve uluslar üstü kurumların da etkisiyle

Detaylı

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay. PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011

Detaylı

JEOTERMAL SANTRALLARDA PERFORMANS GÖZLEM ÇN VERTABANI GELTRLMES VE DEERLENDRLMES ÇN BR PROGRAM : GEOPERFORM

JEOTERMAL SANTRALLARDA PERFORMANS GÖZLEM ÇN VERTABANI GELTRLMES VE DEERLENDRLMES ÇN BR PROGRAM : GEOPERFORM JEOTERMAL SANTRALLARDA PERFORMANS GÖZLEM ÇN VERTABANI GELTRLMES VE DEERLENDRLMES ÇN BR PROGRAM : GEOPERFORM 309 Gökhan GÜLGEZEN Emin Can SUMER Sıtkı AYTAÇ Macit TOKSOY ÖZET Jeotermal elektrik santrallarında,

Detaylı

WEB SERVS TABANLI GELTRLEN MOBL UYGULAMALAR: ODTÜ MOBL ÖRENC LER BLG SSTEM (MOBS)

WEB SERVS TABANLI GELTRLEN MOBL UYGULAMALAR: ODTÜ MOBL ÖRENC LER BLG SSTEM (MOBS) WEB SERVS TABANLI GELTRLEN MOBL UYGULAMALAR: ODTÜ MOBL ÖRENC LER BLG SSTEM (MOBS) Hale ALTINOVA, Yasemin YALÇIN, ve Serdar ARSLAN Orta Dou Teknik Üniversitesi, Bilgi lem Daire Bakanlıı, ANKARA altinova@metu.edu.tr,

Detaylı

KONTROL SSTEMLER LABORATUARI

KONTROL SSTEMLER LABORATUARI YILDIZ TEKNK ÜNVERSTES ELEKTRK-ELEKTRONK FAKÜLTES KONTROL ve OTOMASYON MÜHENDSL BÖLÜMÜ KONTROL SSTEMLER LABORATUARI Doç.Dr. Haluk GÖRGÜN Ar.Gör. brahim ALIKAN Ar.Gör. Yavuz EREN STANBUL - 2010-1 - DiGiAC

Detaylı

Programlama Dillerinde Kullanılan Veri Tipleri

Programlama Dillerinde Kullanılan Veri Tipleri Programlama Dillerinde Kullanılan Veri Tipleri Taban/Biçim Basic Paskal C/C++/C#/Java 10 (Decimal ) - - - 16 (Hexadecimal) &hsayı veya &Hsayı $sayı 0xsayı veya 0Xsayı Üstel eüs veya Eüs eüs veya Eüs eüs

Detaylı

HLA Uyumlu Benzetim Sistemlerinin Ardıl-lem Çizenekleriyle Sınanması

HLA Uyumlu Benzetim Sistemlerinin Ardıl-lem Çizenekleriyle Sınanması HLA Uyumlu Benzetim Sistemlerinin Ardıl-lem Çizenekleriyle Sınanması Rukiye SÜTBA 1 Turgay ÇELK 2 Kayhan MRE 3 1,2,3 Hacettepe Üniversitesi Bilgisayar Mühendislii Bölümü, Beytepe, Ankara 1 e-posta: rukiye@cs.hacettepe.edu.tr

Detaylı

6. MOS ANALOG ÇARPMA DEVRELER

6. MOS ANALOG ÇARPMA DEVRELER 6. 1 6. MOS ANALOG ÇARPMA DEVRELER Analog çarpma devreleri, giri gerilimlerinin çarpımıyla orantılı çıkı gerilimi veren düzenlerdir ve aradaki iliki V O =.V.V Y (6.1) eklindedir. büyüklüü çarpma devresinin

Detaylı

EL PARMAKLARINA DEERLER VEREREK KOLAY YOLDAN ÇARPMA ÖRETM YÖNTEMYLE ZHN ENGELL ÖRENCLERE ÇARPIM TABLOSU ÖRETM UYGULAMASI

EL PARMAKLARINA DEERLER VEREREK KOLAY YOLDAN ÇARPMA ÖRETM YÖNTEMYLE ZHN ENGELL ÖRENCLERE ÇARPIM TABLOSU ÖRETM UYGULAMASI Bu aratırma 2005 yılında 1. Uluslararası zmir Özel Eitim ve Otizm Sempozyumu'nda poster bildiri olarak sunulmutur. EL PARMAKLARINA DEERLER VEREREK KOLAY YOLDAN ÇARPMA ÖRETM YÖNTEMYLE ZHN ENGELL ÖRENCLERE

Detaylı

11.DERS Yazılım Testi

11.DERS Yazılım Testi 11.DERS Yazılım Testi 1 Yazılım Testi Bir programda hata bulma amacıyla icra edilen bir süreçtir. İyi bir test koşulu henüz ortaya çıkarılmamış bir hatayı tespit eden test koşuludur. Yazılım testinin önemi

Detaylı

BELEDYELERDE NORM KADRO ÇALIMASI ESASLARI

BELEDYELERDE NORM KADRO ÇALIMASI ESASLARI BELEDYELERDE NORM KADRO ÇALIMASI ESASLARI Belediyelerin görevlerini etkin ve verimli bir ekilde yerine getirebilmeleri için ihtiyaç duydukları optimal (ihtiyaçtan ne fazla ne de az) kadronun nicelik ve

Detaylı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; 1. Performans: İşletim sistemi, makine

Detaylı

Deneyim Raporu. , Ankara, Türkiye. {gokhan.urul, gokalp.urul}@intest.com.tr. vahid.garousi@atilim.edu.tr

Deneyim Raporu. , Ankara, Türkiye. {gokhan.urul, gokalp.urul}@intest.com.tr. vahid.garousi@atilim.edu.tr Deneyim Raporu Gökhan Urul 1, Vahid Garousi 2,3, Gökalp Urul 1 1: Ankara, Türkiye {gokhan.urul, gokalp.urul}@intest.com.tr 2:, Ankara, Türkiye vahid.garousi@atilim.edu.tr 3: Kalgari Üniversitesi Kalgari,

Detaylı

INTOSAI KAMU KES M Ç KONTROL STANDARTLARI REHBER. Özet Çeviri Baran Özeren Sayı tay Uzman Denetiçisi

INTOSAI KAMU KES M Ç KONTROL STANDARTLARI REHBER. Özet Çeviri Baran Özeren Sayı tay Uzman Denetiçisi INTOSAI KAMU KESMÇ KONTROL STANDARTLARI REHBER Özet Çeviri Baran Özeren Sayıtay Uzman Denetiçisi 2 Haziran 2004 Çevirenin Notu Denetim meslei ile ilgili kamu ve özel sektör organizasyonları, son yirmi

Detaylı

Vakum teknolojisi. Sistem kılavuzu

Vakum teknolojisi. Sistem kılavuzu Vakum teknolojisi Sistem kılavuzu Yazılım Yazılım aracı: Vakum seçimi Festo, vakum hesaplarına esas tekil eden, hızlı ve kolay bir ekilde uygun vantuz tutucu elemanının seçimini olanaklı kılan 2001 ürünleri

Detaylı

IP Aları Üzerinden Telefon Hizmetlerinde Gecikme Latency

IP Aları Üzerinden Telefon Hizmetlerinde Gecikme Latency IP Aları Üzerinden Telefon Hizmetlerinde Gecikme Latency IP aları üzerinden telefon hizmetlerinin yaygınlaması ile, kurulan sistemlerdeki gecikmenin sebeplerinin ve etkilerinin anlaılması önem kazanmaktadır.

Detaylı

ETK LKELER BANKACILIK ETK LKELER

ETK LKELER BANKACILIK ETK LKELER ETK LKELER Türkiye Bankalar Birlii tarafından hazırlanan ve Bankacılık Düzenleme ve Denetleme Kurulu nun 15 Haziran 2006 tarih ve 1904 sayılı kararlı ile yayımlanan Bankacılık Etik lkeleri Bankamız tarafından

Detaylı

Yazılım Yapısal Kapsama Analizi

Yazılım Yapısal Kapsama Analizi Yazılım Yapısal Kapsama Analizi Nezir ERTÜRK 1 Erhan YÜCEER 2 Cem POLAT 3 Mehmet ÖNER 4 1,2,3,4 Aydın Yazılım ve Elektronik Sanayi A.. (AYESA) Silikon Blok 1.Kat No:1 Teknokent-ODTÜ 06531 ANKARA 1 e-posta:

Detaylı

IRROMETER NASIL ÇALIIR...

IRROMETER NASIL ÇALIIR... IRROMETER NASIL ÇALIIR... Irrometer bir tansiyometre prensibi ile görev yapar. Irrometer içi saf su dolu bir tüp, bir vakum göstergesi ve gözenekli porselen bir balık ihtiva eder. Kök bölgesi derinliine

Detaylı

Koullar Bu kursun baarı ile tamamlanaması için gerekenler: Eitim Yaı Düzeyi (RAL) en az 13 CCNA 2 nin baarıyla tamamlanması

Koullar Bu kursun baarı ile tamamlanaması için gerekenler: Eitim Yaı Düzeyi (RAL) en az 13 CCNA 2 nin baarıyla tamamlanması CCNA 3: Anahtarlama Temelleri ve Orta Düzey Yönlendirme Hedef Kitle Hedef kitle, a oluturma alanına pratik ve teknik bir giri yapmak isteyen lise örencileri, üniversite örencileri, a teknisyeni, a mühendisi,

Detaylı

BLM 4811 MESLEKİ TERMİNOLOJİ II Salı , D-109 Dr. Göksel Biricik

BLM 4811 MESLEKİ TERMİNOLOJİ II Salı , D-109 Dr. Göksel Biricik BLM 4811 MESLEKİ TERMİNOLOJİ II 2017-1 Salı 13.00 14.50, D-109 Dr. Göksel Biricik goksel@ce.yildiz.edu.tr Ders Planı Hafta Tarih Konu 1 19.09 Tanışma, Ders Planı, Kriterler, Giriş 2 26.09 Bilgisayarın

Detaylı

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ - EĞİTİM ÖĞRETİM YILI DERS KATALOĞU Ders Kodu Bim Kodu Ders Adı Türkçe Ders Adı İngilizce Dersin Dönemi T Snf Açıl.Dönem P

Detaylı

YAKMA YÖNETM VE BRÜLÖR KONTROL SSTEMLER

YAKMA YÖNETM VE BRÜLÖR KONTROL SSTEMLER 63 YAKMA YÖNETM VE BRÜLÖR KONTROL SSTEMLER Serdar HIZIROLU ÖZET Bu seminerde, mikroilemci kontrollu tam elektronik Yakma Yönetim ve Brülör Kontrol Sistemi ni oluturan ana kontrol ünitesi, servo motorlar,

Detaylı

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Yazılım Mühendisliği II (BIL 306)

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Yazılım Mühendisliği II (BIL 306) Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Yazılım Mühendisliği II (BIL 306) GENEL DERS BİLGİSİ Öğretim Üyesi : Prof. Dr. Fuat İNCE Araştırma Görevlisi. Selim BAYRAKLI Ofis : 311 Ofis Saatleri

Detaylı

Çok Katmanlı Veritabanı Uygulamaları çin Esnek Bir Vb.Net Kodu Üreticisi: Code Generator

Çok Katmanlı Veritabanı Uygulamaları çin Esnek Bir Vb.Net Kodu Üreticisi: Code Generator Çok Katmanlı Veritabanı Uygulamaları çin Esnek Bir Vb.Net Kodu Üreticisi: Code Generator 1 Mustafa YILDIZ, 2 Orhan KARAHASAN, 3 Selahattin KURU 1 Teknopazar A.., ITU Ayazaa Kampüsü, ARI Teknokent No:9,

Detaylı

Yazılım Yapılandırma Teknikleri: Temizer Sistemi

Yazılım Yapılandırma Teknikleri: Temizer Sistemi Yazılım Yapılandırma Teknikleri: Temizer Sistemi Selim TEMZER Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Artificial Intelligence Laboratory Cambridge,

Detaylı

Internet Robot Sistemi: Web tabanlı veriler, uygulamalar ve servisler için bir entegrasyon aracı

Internet Robot Sistemi: Web tabanlı veriler, uygulamalar ve servisler için bir entegrasyon aracı Internet Robot Sistemi: Web tabanlı veriler, uygulamalar ve servisler için bir entegrasyon aracı Taner KÖRPE Siemens Business Services, Sistem Entegrasyonu Bölümü ODTÜ Teknokent ANKARA taner.korpe@sbs.com.tr

Detaylı

E-Beyanname* *connectedthinking

E-Beyanname* *connectedthinking E-Beyanname* Neden E-beyanname? Maliye Bakanlıı, Tüm dünyada hızla gelien bilgi ilem teknolojilerinden yararlanmak, Vergi beyannameleri ile bildirim ve eklerinin hızlı, kolay bir ekilde beyanını salamak,

Detaylı

BANKALARIN KRED LEMLERNE LKN YÖNETMELKTE DEKLK YAPILMASINA LKN YÖNETMELK TASLAI

BANKALARIN KRED LEMLERNE LKN YÖNETMELKTE DEKLK YAPILMASINA LKN YÖNETMELK TASLAI Bankacılık Düzenleme ve Denetleme Kurumundan: BANKALARIN KRED LEMLERNE LKN YÖNETMELKTE DEKLK YAPILMASINA LKN YÖNETMELK TASLAI MADDE 1 01/11/2006 tarihli ve 26333 sayılı Resmi Gazete de yayımlanarak yürürlüe

Detaylı

Mali Hizmetler Müdürlüü Görev ve Çalıma Yönetmelii

Mali Hizmetler Müdürlüü Görev ve Çalıma Yönetmelii Mali Hizmetler Müdürlüü Görev ve Çalıma Yönetmelii BRNC BÖLÜM AMAÇ, KAPSAM, DAYANAK VE TANIMLAR Amaç Madde 1 - (1) Bu yönetmeliin amacı; Avcılar Belediyesi Mali Hizmetler Müdürlüü kurulu, görev, yetki

Detaylı

Sosyo-Ekonomik Gelimilik Aratırması

Sosyo-Ekonomik Gelimilik Aratırması Giri Sosyo-Ekonomik Gelimilik Aratırması Taner Kavasolu Devlet Planlama Tekilatı Kalkınma Planlarımızda, ülke corafyasında ve kesimler arasında dengeli bir gelime salanması hedefi, ülke ekonomisi için

Detaylı

AB Uyum Sürecinde Türkiye nin Rekabet Gücü lerleme Raporu Üzerine Tespitler

AB Uyum Sürecinde Türkiye nin Rekabet Gücü lerleme Raporu Üzerine Tespitler AB Uyum Sürecinde Türkiye nin Rekabet Gücü lerleme Raporu Üzerine Tespitler Avrupa Komisyonu tarafından Türkiye hakkında hazırlanan lerleme Raporu, Türkiye ile müzakerelerin balaması yönünde olumlu bir

Detaylı

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER BİRİNCİ SINIF GÜZ YARIYILI 2015-2016 EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER DEĞİŞİKLİK FORMU COM101 BİLGİSAYAR PROGRAMLAMA

Detaylı

PORTER MODEL: ULUSLARARASI REKABET ÖZLEM ÖZ ODTÜ LETME BÖLÜMÜ

PORTER MODEL: ULUSLARARASI REKABET ÖZLEM ÖZ ODTÜ LETME BÖLÜMÜ : ULUSLARARASI REKABET ÖZLEM ÖZ ODTÜ LETME BÖLÜMÜ Genel Çerçeve Makroekonomik, Politik ve veyasal Çevre Rekabet Edebilirliliin Mikroekonomik Temelleri irket irket Stratejisi Stratejisi Mikroekonomik Mikroekonomik

Detaylı

1. ANALOG CMOS TÜMDEVRE TEKN

1. ANALOG CMOS TÜMDEVRE TEKN 1. ANALOG CMOS TÜMDEVRE TEKN 1.1. Giri, Analog tümdevrelerde CMOS teknolojisinin yeri Ortaya çıktıı ilk yıllarda daha çok sayısal sistemlerin gerçekletirilmesinde yararlanılan CMOS teknolojisi, günümüzde,

Detaylı

ERP MPLEMENTASYONU PROJELERNDE DENETM SÜRECNN ÖNEM ve KARILAILAN RSKLER. Uur Kaan DNÇSOY

ERP MPLEMENTASYONU PROJELERNDE DENETM SÜRECNN ÖNEM ve KARILAILAN RSKLER. Uur Kaan DNÇSOY Giri ERP MPLEMENTASYONU PROJELERNDE DENETM SÜRECNN ÖNEM ve KARILAILAN RSKLER Uur Kaan DNÇSOY ERP (Enterprise Resource Planning - Kurumsal Kaynak Planlaması), bilgi sistemleri profesyonelleri tarafından

Detaylı

EKONOM!K KATMA DE"ER (EVA) YAKLA#IMI. Doç.Dr.Cemal ÇAKICI Marmara Üniversitesi,!!BF.!"letme Bölümü Ö#retim Üyesi cemal@marmara.edu.

EKONOM!K KATMA DEER (EVA) YAKLA#IMI. Doç.Dr.Cemal ÇAKICI Marmara Üniversitesi,!!BF.!letme Bölümü Ö#retim Üyesi cemal@marmara.edu. EKONOM!K KATMA DE"ER (EVA) YAKLA#IMI Doç.Dr.Cemal ÇAKICI Marmara Üniversitesi,!!BF.!"letme Bölümü Ö#retim Üyesi cemal@marmara.edu.tr!stanbul 2008 Yayın No : 2015!"letme-Ekonomi Dizisi : 273 1. Bası Agustos

Detaylı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Elbistan Meslek Yüksek Okulu Güz Yarıyılı HAFTA III Bilgi iletişim sistemi : Bilgi iletişim sistemi, dağıtık sistem içerisinde düğümler arasındaki iletişimi desteklemekle yükümlüdür. İletişim sistemi, iletişim ağı ile bağlanmış herhangi bir düğümün,

Detaylı

BİLGİSAYAR PROGRAMLARININ TASARIMLARINDAKİ VE KODLARINDAKİ SORUNLARIN BELİRLENMESİ ALPER FİLİZ MEHMET ALİ SERT

BİLGİSAYAR PROGRAMLARININ TASARIMLARINDAKİ VE KODLARINDAKİ SORUNLARIN BELİRLENMESİ ALPER FİLİZ MEHMET ALİ SERT BİLGİSAYAR PROGRAMLARININ TASARIMLARINDAKİ VE KODLARINDAKİ SORUNLARIN BELİRLENMESİ ALPER FİLİZ 040080202 MEHMET ALİ SERT 040090521 SUNUM İÇERİĞİ Problem Tanımı Tespit Edilen Sorunlar Problemin Sonuçları

Detaylı

Büyük, Dağıtık, Veri Yoğunluklu Uygulamalarda Programlama Paradigmaları

Büyük, Dağıtık, Veri Yoğunluklu Uygulamalarda Programlama Paradigmaları Büyük, Dağıtık, Veri Yoğunluklu Uygulamalarda Programlama Paradigmaları Güven Fidan AGMLAB Bilişim Teknolojileri 18/10/11 GRID ÇALIŞTAYI 2007 1 MapReduce Nedir? Büyük data kümelerini işlemek ve oluşturmak

Detaylı

BURSA DA GÖREV YAPAN MÜZK ÖRETMENLERNN ULUDA ÜNVERSTES ETM FAKÜLTES GÜZEL SANATLAR ETM BÖLÜMÜ MÜZK ETM ANABLM DALI LE LETM VE ETKLEM

BURSA DA GÖREV YAPAN MÜZK ÖRETMENLERNN ULUDA ÜNVERSTES ETM FAKÜLTES GÜZEL SANATLAR ETM BÖLÜMÜ MÜZK ETM ANABLM DALI LE LETM VE ETKLEM BURSA DA GÖREV YAPAN MÜZK ÖRETMENLERNN ULUDA ÜNVERSTES ETM FAKÜLTES GÜZEL SANATLAR ETM BÖLÜMÜ MÜZK ETM ANABLM DALI LE LETM VE ETKLEM Dr. Ayhan HELVACI *1924-2004 Musiki Muallim Mektebinden Günümüze Müzik

Detaylı

İŞLETİM SİSTEMLERİNE GİRİŞ - 2. Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine

İŞLETİM SİSTEMLERİNE GİRİŞ - 2. Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine İŞLETİM SİSTEMLERİNE GİRİŞ - 2 Kaynakların Paylaşımı (Resource Sharing) Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine sunar. Bir işletim sisteminde paylaşılan kaynaklar

Detaylı

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği

İŞLETİM SİSTEMLERİNE GİRİŞ. Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği İŞLETİM SİSTEMLERİNE GİRİŞ Von Neumann Mimarisi Modern bilgisayar çalışma prensipleri, Von Neumann ın 1945 de geliştirdiği mimariyi temel almaktadır. Merkezi İşlem Birimi Aritmetik ve Mantık Birimi Kontrol

Detaylı

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak!

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak! Femsoft Ticari Paket Programı küçük ve orta ölçekli iletmelerin optimum seviyede ilemlerini yapabilmesi için tasarlanmıtır ve ileri teknoloji içermektedir. Femsoft Ticari Paket Programı destekledii SQL

Detaylı

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 8.Hafta. Yazılım Doğrulama ve Geçerleme

YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 8.Hafta. Yazılım Doğrulama ve Geçerleme YAZILIM MÜHENDİSLİĞİNİN TEMELLERİ 8.Hafta Yazılım Doğrulama ve Geçerleme Bölüm Hedefi Yazılım üretimi boyunca, "Doğru Yazılımı mı üretiyoruz?" ve "Yazılımı doğru olarak üretiyor muyuz?" sorularının yanıtlarını

Detaylı

Gezgin Etmen Sistemlerinin Başarım Ölçümü: Benzetim Tekniği

Gezgin Etmen Sistemlerinin Başarım Ölçümü: Benzetim Tekniği Gezgin Etmen Sistemlerinin Başarım Ölçümü: Benzetim Tekniği Gürol Erdoğan 1, Mustafa Yıldız 1, Mehmet Erdem Türsem 2, Selahattin Kuru 1 1 Enformatik Uygulama ve Araştırma Merkezi, Işık Üniversitesi, İstanbul

Detaylı

stanbul, 11 Ekim 2004 2004/1021

stanbul, 11 Ekim 2004 2004/1021 TÜRKYE SERMAYE PYASASI ARACI KURULULARI BRL Büyükdere Cad.No:173 I. Levent Plaza A-Blok Kat:4 34394 I. Levent-stanbul Tel : (212) 280 85 67 Faks : (212) 280 85 89 www.tspakb.org.tr stanbul, 11 Ekim 2004

Detaylı

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 (2016-17 yılı öncesinde birinci sınıfa başlayan öğrenciler için) BİRİNCİ YIL 1. Dönem CMPE113

Detaylı

Bilgisayar Mimarisi ve Organizasyonu Giriş

Bilgisayar Mimarisi ve Organizasyonu Giriş + Bilgisayar Mimarisi ve Organizasyonu Giriş Bilgisayar Mimarisi Bilgisayar Organizasyonu Programcının görebileceği bir sistemin nitelikleri Bir programın mantıksal yürütülmesi üzerinde direk bir etkisi

Detaylı

ISO 17025 Laboratuar Akreditasyonu Temel Prensipler

ISO 17025 Laboratuar Akreditasyonu Temel Prensipler Kalite Eitim Danımanlık Ltd.ti. ISO 17025 Laboratuar Akreditasyonu Temel Prensipler 1 Aralık 2005 -ANKARA KORE EHTLER CAD. NO. 36 D. 2 ZNCRLKUYU L-STANBUL Tel: 0212-274 15 63-64 Fax: 0212-274 15 66 E-mail

Detaylı

Yazılım Takımlarında Baarı

Yazılım Takımlarında Baarı Yazılım Takımlarında Baarı Tunca SELBES Meteksan Sistem, Simülasyon ve Görsel Sistemler Orta Dou Teknik Üniversitesi, Bilgisayar Mühendislii, Ankara, Türkiye e-posta: tunca.selbes@sgs.meteksan.com.tr e-posta:

Detaylı

Pozisyon Kontrol Sistemi Üzerine Karakteristik Yapı Çalı ması: STANBUL - 2010

Pozisyon Kontrol Sistemi Üzerine Karakteristik Yapı Çalı ması: STANBUL - 2010 Pozisyon Kontrol Sistemi Üzerine Karakteristik Yapı Çalıması: Set Üzerinde Kullanılacak Ekipman: 1 Motor sürücü ve çıkı potansiyometresi, 1 Ayarlama amplifikatörü, 1 Türevsel amplifikatör, 1 Toplama amplifikatörü,

Detaylı

Y I L D I Z T E K N I K Ü N İ V E R S İ T E S İ MÜHENDİSLİĞİ

Y I L D I Z T E K N I K Ü N İ V E R S İ T E S İ MÜHENDİSLİĞİ Y I L D I Z T E K N I K Ü N İ V E R S İ T E S İ YAZILIM MÜHENDİSLİĞİ Mustafa Yoğurtçu Özgür Kuru İçerik N E D İ R? T A R İ H Ç E Y A Z I L I M T Ü R L E R İ Y A Z I L I M G E L İ Ş T İ R M E A D I M L

Detaylı

TÜMLEŞİK MODELLEME DİLİ. UML (Unified Modeling Language)

TÜMLEŞİK MODELLEME DİLİ. UML (Unified Modeling Language) TÜMLEŞİK MODELLEME DİLİ UML (Unified Modeling Language) UML NEDİR? Yazılım ve donanımların bir arada düşünülmesi gereken, Zor ve karmaşık programların, Özellikle birden fazla yazılımcı tarafından kodlanacağı

Detaylı

Uygulamada Yazılım Mimarisi Kararlarını Etkileyen Etmenler ve Kritik Fayda-Maliyet Öeleri

Uygulamada Yazılım Mimarisi Kararlarını Etkileyen Etmenler ve Kritik Fayda-Maliyet Öeleri Uygulamada Yazılım Mimarisi Kararlarını Etkileyen Etmenler ve Kritik Fayda-Maliyet Öeleri Dr. Özlem ALBAYRAK e-posta: ozlem.albayrak@gmail.com Özet Tanımı konusunda 1960 sonlarından günümüze kadar gelen

Detaylı

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU Bilişim Sistemleri Modelleme, Analiz ve Tasarım Yrd. Doç. Dr. Alper GÖKSU Ders Akışı Hafta 5. İhtiyaç Analizi ve Modelleme II Haftanın Amacı Bilişim sistemleri ihtiyaç analizinin modeli oluşturulmasında,

Detaylı

TÜLN OTBÇER. Seminer Raporu Olarak Hazırlanmıtır.

TÜLN OTBÇER. Seminer Raporu Olarak Hazırlanmıtır. TÜLN OTBÇER Seminer Raporu Olarak Hazırlanmıtır. Ankara Hacettepe Üniversitesi Mayıs, 2004 ! - " $ - "%%&%$ - "%' $ - "(%' $ - "( ) (* $+,( $ - ") (',( $ - "- %./$ 0 1*&/1(2, %("%. 3/1(4""3%(/1-( /32 $$

Detaylı

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak!

Femsoft, kolay kullanımı ve genileyebilen esnek yapısı ile ilerinizi çok kolaylatıracak! Femsoft Ticari Paket Programı küçük ve orta ölçekli iletmelerin optimum seviyede ilemlerini yapabilmesi için tasarlanmıtır ve ileri teknoloji içermektedir. Femsoft Ticari Paket Programı destekledii SQL

Detaylı

Üniversitesi. {g.karatas, Library, Science Direct ve Wiley veri içerisinde

Üniversitesi. {g.karatas, Library, Science Direct ve Wiley veri içerisinde :, Üniversitesi 34156, stanbul, {g.karatas, c.catal}@iku.edu.tr Özet. sistematik ebilmek üzere, yöntemlerini in n veri belirlemek, ortaya konulan. IEEE Explorer, ACM Digital Library, Science Direct ve

Detaylı

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

VERİ YAPILARI VE PROGRAMLAMA (BTP104) VERİ YAPILARI VE PROGRAMLAMA (BTP104) Yazar: Doç.Dr. İ. Hakkı CEDİMOĞLU S1 SAKARYA ÜNİVERSİTESİ Adapazarı Meslek Yüksekokulu Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir.

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ı

Amaç ve Kapsam. Yetki ve Sorumluluk

Amaç ve Kapsam. Yetki ve Sorumluluk TEKSTL BANKASI A.. Amaç ve Kapsam Tekstil Bankası A.. (Tekstilbank) bilgilendirme politikası; Bankacılık Kanunu ve bu kanuna ilikin düzenlemeler, Sermaye Piyasası Mevzuatı, Türk Ticaret Kanunu, stanbul

Detaylı

ph Sürecinin Lyapunov Tabanlı Lineer Olmayan Denetleyici ile Denetimi Lyapunov Function Based on Nonlinear Control of ph Process

ph Sürecinin Lyapunov Tabanlı Lineer Olmayan Denetleyici ile Denetimi Lyapunov Function Based on Nonlinear Control of ph Process p Sürecinin Lyapunov Tabanlı Lineer Olmayan Denetleyici ile Denetimi Lyapunov Function Based on Nonlinear Control of p Process brahim Alıkan Kayhan Gülez Galip Cansever Elektrik Mühendislii Bölümü Yıldız

Detaylı

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI PROGRAM ADI : BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) 1.SINIF /1.YARIYIL* 1 COM101 COMPUTER PROGRAMMING I - - 4 2 6 5 9 2 COM113 INTRODUCTION TO COMPUTER SCIENCE - - 3 0 3 3 5 3 PHY0101 PHYSICS I - - 3 0 3

Detaylı

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur.

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. SİSTEM VE YAZILIM o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. o Yazılım, bilgisayar sistemlerinin bir bileşeni olarak ele alınmalıdır. o Yazılım yalnızca

Detaylı

MÜFREDAT DERS LİSTESİ

MÜFREDAT DERS LİSTESİ MÜFREDAT DERS LİSTESİ MÜHENDİSLİK FAK. / BİLGİSAYAR MÜHENDİSL / 2010 BİLGİSAYAR MÜHENDİSLİĞİ Müfredatı 0504101 Matematik I Calculus I 1 GÜZ 4 5 Z 0504102 Genel Fizik I General Physics I 1 GÜZ 4 4 Z 0504103

Detaylı

ICS 04.200.10 TÜRK STANDARDI TS EN OHSAS 18001/Mart 2001

ICS 04.200.10 TÜRK STANDARDI TS EN OHSAS 18001/Mart 2001 OHSAS 18001 SALII VE GÜVENL YÖNETM REHBER STANDARDI GR : Dünyada, üretim faktörünün temel öesi olan çalıanların salıı ve güvenlii endüstriyel gelimelere paralel olarak, ön plana çıkmaktadır. Salıı ve i

Detaylı

SINIF ÖRETMEN ADAYLARININ NTERNET KULLANIMINA LKN TUTUMLARININ DEERLENDRLMES

SINIF ÖRETMEN ADAYLARININ NTERNET KULLANIMINA LKN TUTUMLARININ DEERLENDRLMES Ahi Evran Üniversitesi Kırehir Eitim Fakültesi Dergisi (KEFAD) Cilt 8, Sayı 1, (2007), 209-222 209 SINIF ÖRETMEN ADAYLARININ NTERNET KULLANIMINA LKN TUTUMLARININ DEERLENDRLMES Erturul USTA Ahi Evran Üniversitesi,

Detaylı

BMH-405 YAZILIM MÜHENDİSLİĞİ

BMH-405 YAZILIM MÜHENDİSLİĞİ BMH-405 YAZILIM MÜHENDİSLİĞİ Dr. Musa ATAŞ Siirt Üniversitesi Bilgisayar Mühendisliği musa.ataş@siirt.edu.tr Ref list: Dr. Yunus Emre SELÇUK, Dr. Sadık EŞMELİOĞLU, Dr. Erhan SARIDOĞAN Yazılımı Etkileyen

Detaylı

İleri Bilgisayar Mimarileri (COMPE 532) Ders Detayları

İleri Bilgisayar Mimarileri (COMPE 532) Ders Detayları İleri Bilgisayar Mimarileri (COMPE 532) Ders Detayları Ders Adı İleri Bilgisayar Mimarileri Ders Kodu COMPE 532 Dönemi Ders Uygulama Saati Saati Laboratuar Saati Kredi AKTS Güz 3 0 0 3 7.5 Ön Koşul Ders(ler)i

Detaylı

OTSTK BR OLGUNUN DUYGULARI ANLAMA VE FADE ETME BECERSNN KAZANDIRILMASINA YÖNELK DÜZENLENEN KISA SÜREL BR E TM PROGRAMININ NCELENMES

OTSTK BR OLGUNUN DUYGULARI ANLAMA VE FADE ETME BECERSNN KAZANDIRILMASINA YÖNELK DÜZENLENEN KISA SÜREL BR E TM PROGRAMININ NCELENMES Bu aratırma 005 yılında 1. Uluslararası zmir Özel Eitim ve Otizm Sempozyumu'nda poster bildiri olarak sunulmutur. OTSTK BR OLGUNUN DUYGULARI ANLAMA VE FADE ETME BECERSNN KAZANDIRILMASINA YÖNELK DÜZENLENEN

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ı

Bu model ile çalımayı öngören kuruluların (servis ve içerik salayıcılar),.nic.tr sistemi ile uyumlu, XML tabanlı yazılım gelitirmeleri gerekmektedir.

Bu model ile çalımayı öngören kuruluların (servis ve içerik salayıcılar),.nic.tr sistemi ile uyumlu, XML tabanlı yazılım gelitirmeleri gerekmektedir. .tr alan adlarını tescili, 1991 yılından itibaren, Türkiye'yi ilk olarak nternet'e balayan Üniversitemiz bünyesinde devam etmektedir. Bu kapsamda, bugün itibarı ile, toplam yaklaık 70,000 adet.tr uzantılı

Detaylı

Nesne Yönelimli Yazılım Tasarımının Testedilebilirliini Ölçmeye Yönelik Bir Model

Nesne Yönelimli Yazılım Tasarımının Testedilebilirliini Ölçmeye Yönelik Bir Model Nesne Yönelimli Yazılım Tasarımının Testedilebilirliini Ölçmeye Yönelik Bir Model A New Model To Measure Testability in Object Oriented Software Design Tolga YURGA METU Informatics Institute Information

Detaylı

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ BİLGİSAYAR PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr.Caner KOÇ Ankara Üniversitesi Ziraat Fakültesi Tarım Makinaları ve Teknolojileri Mühendisliği Bölümü ckoc@ankara.edu.tr DERS KAYNAKLARI 1. A. Kadir GÜNEYTEPE:

Detaylı

08225 AĞ TEMELLERĠ. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 20 EKi Salı, Çarşamba

08225 AĞ TEMELLERĠ. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU. 20 EKi Salı, Çarşamba 08225 AĞ TEMELLERĠ Elbistan Meslek Yüksek Okulu 2014 2015 GÜZ Yarıyılı 20 EKi. 2014 Salı, Çarşamba Öğr. Gör. Murat KEÇECĠOĞLU Bilgi iletişim sistemi, dağıtık sistem içerisinde düğümler arasındaki iletişimi

Detaylı

İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ

İşletim Sistemlerine Giriş 2. Kaynakların Paylaşımı. Öğr.Gör. Dr. Şirin KARADENİZ İşletim Sistemlerine Giriş 2 Kaynakların Paylaşımı Öğr.Gör. Dr. Şirin KARADENİZ Kaynakların Paylaşımı Sistem, sistem kaynaklarını belli bir hiyerarşi içinde kullanıcının hizmetine sunar. Bir işletim sisteminde

Detaylı

OTSTK ÇOCUKLARIN ALELERNE YÖNELK GRUP REHBERL NN ANNE BABALARIN DEPRESYON VE BENLK SAYGISINA ETKS

OTSTK ÇOCUKLARIN ALELERNE YÖNELK GRUP REHBERL NN ANNE BABALARIN DEPRESYON VE BENLK SAYGISINA ETKS Bu aratırma 2005 yılında 1. Uluslararası zmir Özel Eitim ve Otizm Sempozyumu'nda poster bildiri olarak sunulmutur. OTSTK ÇOCUKLARIN ALELERNE YÖNELK GRUP REHBERL NN ANNE BABALARIN DEPRESYON VE BENLK SAYGISINA

Detaylı

Bilgisayar Mühendisliği Bölümü Lisans Ders Programı / Computer Engineering Undergraduate Curriculum

Bilgisayar Mühendisliği Bölümü Lisans Ders Programı / Computer Engineering Undergraduate Curriculum Bilgisayar Mühendisliği Bölümü Lisans Ders Programı / Undergraduate Curriculum 2014-2015 ve Öncesi Girişli Öğrenciler için Uygulanan Ders Program 1.Yıl / I.Dönem (First Year / First Semester) FIZ115 Fizik

Detaylı

ASP.NET Web Uygulamalarında Güvenlik

ASP.NET Web Uygulamalarında Güvenlik ASP.NET Web Uygulamalarında Güvenlik Cengiz HAN cengiz@cengizhan.com www.cengizhan.com 1 ASP.NET Web Uygulamalarında Güvenlik Konu 1: Web Uygulaması Güvenlii Temel Kavramlar Konu 2: Windows Tabanlı Kimlik

Detaylı

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1

Bölüm 11. Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 Bölüm 11 Soyut veri tipleri ve kapsülleme kavramları ISBN 0-321-49362-1 11. Bölüm konuları Soyutlama kavramı Veri soyutlamasına giriş Soyut veri tipleri için tasarım konuları Dil örnekleri Parametreli

Detaylı

Yazılım Test Maliyet Fonksiyonlarının Otomatik Olarak Keşfedilmesi

Yazılım Test Maliyet Fonksiyonlarının Otomatik Olarak Keşfedilmesi Yazılım Test Maliyet Fonksiyonlarının Otomatik Olarak Keşfedilmesi Gülşen Demiröz ve Cemal Yılmaz {gulsend, cyilmaz}@sabanciuniv.edu Sabancı Üniversitesi, İstanbul 10. Ulusal Yazılım Mühendisliği Sempozyumu

Detaylı

Türkiye'de Kriz Döneminde Kur-Faiz-Borsa likilerinin Dinamik Analizi Banka-Mali ve Ekonomik Yorumlar, Sayı: 11, ss: 47-56, 2002

Türkiye'de Kriz Döneminde Kur-Faiz-Borsa likilerinin Dinamik Analizi Banka-Mali ve Ekonomik Yorumlar, Sayı: 11, ss: 47-56, 2002 Türkiye'de Kriz Döneminde KurFaizBorsa likilerinin Dinamik Analizi BankaMali ve Ekonomik Yorumlar, Sayı:, ss: 4756, 2002 Osman KARAMUSTAFA * Yakup KÜÇÜKKALE ** Giri Finans literatüründe döviz kurları ile

Detaylı

<Ekip Adı> <Proje Adı> Yazılım Gereksinimlerine İlişkin Belirtimler. Sürüm <1.0>

<Ekip Adı> <Proje Adı> Yazılım Gereksinimlerine İlişkin Belirtimler. Sürüm <1.0> Yazılım Gereksinimlerine İlişkin Belirtimler Sürüm [Not: Aşağıda yer alan şablon, Rational Unified Process ile birlikte kullanılmak üzere sağlanmıştır] [Köşeli parantezler

Detaylı

Bir yazılım geliştirme metodolojisi aşağıdaki adımlardan meydana gelir; Yazılım geliştirme sürecine destek verecek araçlar, modeller ve yöntemler.

Bir yazılım geliştirme metodolojisi aşağıdaki adımlardan meydana gelir; Yazılım geliştirme sürecine destek verecek araçlar, modeller ve yöntemler. Yazılım Mühendisliği kapsamındaki Yazılım Geliştirme Metodolojileri, bir bilgi sistemini geliştirme sürecinin yapımını, planlamasını ve kontrolünü sağlayan bir framework tür. Her farklı framework güçlü

Detaylı