ABSTRACT. With current development of artificial intelligence (AI) and data science, "AI + Industry" will generate new ecosystems and new business models. Huawei aims to build a fully intelligent connected world. Huawei Turkey R&D center, as the 2nd largest software R&D center outside China, is taking a lot responsibilities in developing software for internal Huawei baseline products as well as local and global customers. During this presentation, I will introduce Huawei, Huawei Turkey R&D center, software development in Huawei especially in AI applications. Several uses cases and on-going projects will also be discussed.
A Survey on Bridging the Gap between Software Industry and Academia: Preliminary Results
ABSTRACT. Many engineering graduates, whose academic backgrounds are not only based on "Computing Disciplines" but also non-computing ones, face difficulties after beginning their professional careers in the software industry due to misalignment of the skills learnt in the university with what is required in the workplace. Companies spend crucial resources to train these personnel, who are not “ready” for different software engineering (SE) roles. Academia must know what skills (e.g., hard skills such as key SE topics and knowledge areas (KAs) besides soft skills) are mostly used to adapt the educational programs via an effective curriculum. Although SE is shaped and used by both practitioners and academicians, these two separate worlds have different goals and concerns. In order to increase Industry-Academia Collaboration (IAC) in SE, it is necessary to understand different perceptions of practitioners about academia. To achieve these objectives, an online survey, which explores the gap between the software industry expectations and academic activities, was designed and conducted. The survey was responded by 637 software practitioners from 14 countries working in different SE roles with different highest academic degrees, work experiences, application types and industrial sectors. In this article, the preliminary analysis on survey results are presented.
Türkiye’de Yazılım Geliştirme Takımlarının Bulut Kullanımı, Kullanım İsteği ve Uygunluk Algısı
ABSTRACT. Yeni teknolojik gelişmelerin kullanıcılar tarafından benimsenip mevcut alternatiflerin yerine kullanılması sürecini etkileyen içsel ve dışsal faktörler bulunmaktadır. Yeni bir teknolojinin kullanıma uygunluğu, o teknolojiyi kullanma isteği ve o teknolojinin gerçekten kullanılıyor olması farklılıklar gösterebilmektedir. Bu çalışmada, Türkiye’de yazılım geliştirme projelerinde bulut bilişim servislerinin kullanım durumu incelenmiştir. Yapılan anket çalışması sonuçları istatistiksel yöntemlerle karşılaştırılmış ve yazılım projelerindeki aktivitelerde bulut teknolojilerinin mevcut kullanımı, yazılım geliştiricilerin bulutu işlerine uygun bulma derecesi ve yazılım geliştiricilerin bulut kullanım isteği arasındaki ilişkiler çıkarılmıştır.
ABSTRACT. Conference, congress and symposium management systems are generally developed as Web applications.The increasing use of mobile devices day by day necessitates that such systems can be used easily in portable devices. Most of systems try to solve this necessity with developing responsive page designs or mobile specific pages. However, mobile devices are constantly on the move and can not always have a reliable internet connection. As an expected result of the mentioned situations, it can be said that they require a client-side application enabling offline review and editing. In this paper, a client application developed for the Android operating system is integrated with the conference management system web application offering a simple level API. While the user tries to log-in to the system by application, necessary information are copied to local database. Logged-in user can access and edit the information in the local database even if the internet connection is lost. The changes are synchronized immediately with the remote server if there is an internet connection. Otherwise, they are stored in the local database for updating remote server when the internet connection is established. By applying this type of mechanism, it is guaranteed that users can utilize from the developed system both online and off-line.
Nesnelerin İnterneti için Kural Denetleme Mekanizması
ABSTRACT. Nesnelerin interneti için geliştirmiş olduğumuz platformumuzda nesneler arasındaki iletişim içeriğinin denetlenmesi, anonimleştirilmesi ya da zenginleştirilmesi
imkanını daha önceki çalışmalarımızda yer verilmisti. Mesajların içeriğine
müdahale, çalışma zamanında doğrudan tatbik edilebilen Java Script tabanlı
kurallar ile iletişimden sorumlu sunucuda gerçekleştirilebilmektedir. Ancak, birbirleri ile etkileşimli kural sayısının fazla olmasına bağlı olarak yöneticilerin kural tanımlamada yapacakları bir hata yeni kural ile etkileşimli tüm kuralların ve
dolayısı ile kuralların uygulandığı istemcilerin etkilenmesine neden olmaktadır.
Sunulan çalışmada, hazırlanan yeni kuralın gerçek hayata uygulanmadan önce
test edilmesi ve sonuçlarının gözlemlenmesine imkan sağlayan yöntem sunulmuştur.
Ayrıca, çalışma zamanında kuralların işlenmesi sonucunda bir mesaj hedefine
ulaşamıyor ise hangi kuralın etkili olduğunun tespitinde fayda sağlamaktadır.
ABSTRACT. Bu çalışmada, çevresel değişikliklerin yazılım testi esnasında nasıl denetlenebileceğini ve sistem kaynakları üzerindeki etkilerinin test kodunda nasıl teyit edilebileceğini araştırdık. Bu çalışma, popüler test çerçevelerini Microsoft Windows işletim sisteminin alt sistemi olan "Windows için Olay İzleme/Event-Tracing for Windows (ETW)“ ile birleştiren yeni bir çözüm sunmaktadır. "İzlenen Test Uzantısı/Traced Test Extension" adlı MSTest2 gibi popüler test çerçeveleriyle çalışan bir uzantı geliştirdik. Bu uzantı, işletim sisteminin test sırasındaki uygulamalar tarafından üretilen olayları dinler ve test edenin, test hedefleriyle ilgili çevresel değişiklikleri kontrol etmesi için teyit mekanizması sağlar. Uzantı, öngörülen bellek ayırma veya dosyaya, kayıt defterine veya ağa erişim gibi, işletim sistemi tarafından üretilen olayların miktarını ya da belirli özelliklerinin toplam değerini teyit etmesini sağlar. Test eden tarafından bu uzantı ile sağlanan arayüzleri kullanarak teste özel teyit kuralları da geliştirebilir. Sonuçlarımız ve vaka çalışmamız ETW ile uygulanan yöntem arasındaki işbirliğinin umut verici sonuçlarını göstermiştir. Sonuçlar ayrıca testte ETW kullanımının potansiyelini ortaya koymuştur.
Yürütülebilir doğal-dil test gereksinimler: Bir test-otomasyon deneyim raporu
ABSTRACT. Test otomasyonu, endüstride sürekli büyüyen yeni metotların ve araçların kullanıldığı bir alan olmakla beraber son zamanlarda geliştirilen yeni yaklaşımlardan Behavior-Driven Development (BDD) sayesinde testlerin doğal bir dille geliştirilebilir ve çalıştırılabilir nitelikte olması sağlanmıştır. BDD yaklaşımı, test mühendislerinin doğal ve yalın bir dille test senaryoları oluşturabilmesi, iş birimleri ve yazılım ekipleri tarafından net ve anlaşılır olan bu senaryolara iş birimleri tarafından katkı sağlanması bu sayede geliştirme süreçlerinde yaşanabilen karmaşıklıkların ortadan kaldırılmasına yarar sağlamıştır. Bu bildiride, Gauge adlı bir test aracı kullanarak, yeni nesil otomasyon çerçevesinde yürütülebilir test spesifikasyonları geliştirerek, gerçekleştirilen çalışmaların sonuçlarını bir deneyim raporu olarak sunuyoruz. Bu çalışma kapsamında, birçok ülkedeki firmalara test çözümleri sunan SAHA BT A.Ş. firmasının endüstriyel deneyimlerine yer verilmiştir.
ABSTRACT. Yapay Sinir Ağları (YSA), otonom araçlardan tıbbi teşhislere kadar birçok güvenlik öncelikli uygulamada kullanılmaktadır. YSA'ların kapsamlıca test edilmesi, beklenmeyen YSA davranışlarını engellemek ve onların operasyonlarının güvenilirliğini sağlamak için kaçınılmazdır. Bu çalışmada, YSA davranışlarını Java gibi bir programlama dili ile ifade edebilmemiz, YSA'ların kapsamlı bir şekilde test edilmesinde yazılım mühendisliği araçlarından faydalanmamızı sağladı. Yazılımdaki hata konumlandırmasından esinlenerek sunduğumuz beyaz kutu YSA test yöntemi ile nöronların isabet izgesini oluşturup, yetersiz YSA performansından sorumlu olduğu düşünülen şüpheli nöronları tespit ettik. Ayrıca, orijinal girdileri şüpheli nöronların aktivasyonunu artıracak şekilde modifiye ederek, hasım girdiler elde edebildik.
Softare Vulnerability Prediction using Extreme Learning Machines Algorithm
ABSTRACT. Software vulnerability prediction aims to detect vulnerabilities in the source code before the software is deployed into the operational environment. The accurate prediction of vulnerabilities helps to allocate more testing resources to the vulnerability-prone modules. From the machine learning perspective, this problem is a binary classification task which classifies software modules into vulnerability-prone and non-vulnerability-prone categories. Several machine learning models have been built for addressing the software vulnerability prediction problem, but the performance of the state-of-the-art models is not yet at an acceptable level. In this study, we aim to improve the performance of software vulnerability prediction models by using Extreme Learning Machines (ELM) algorithms which have not been investigated for this problem. Before we apply ELM algorithms for selected three public datasets, we use data balancing algorithms to balance the data points which belong to two classes. We discuss our initial experimental results and provide the lessons learned. In particular, we observed that ELM algorithms have a high potential to be used for addressing the software vulnerability prediction problem.
Yapay Zeka Tabanlı Yüz Tanıma Sisteminin Geliştirilmesi Ve Optimizasyonu
ABSTRACT. Yüz tanıma teknolojisi kısaca ,insan yüzünün karakteristik özelliklerini dijital ortamda analiz ederek biyometrik profil üzerinden kimlik tanılama, kişi doğrulama ve onaylama işlemlerini gerçekleştiren teknolojidir. Yapay zeka teknolojilerindeki gelişmelerle birlikte yüz tanıma sistemleri ile ilgili çalışmalarda çok önemli artışların olduğu gözlemlenmiştir ve yapılan çalışmalarda %99,83 [1] oranlarında başarım elde edilmiştir. Yüz tanıma sistemlerindeki başarımın artması bu sistemlerin daha yaygın bir şekilde kullanılmasını sağlamıştır. Yüz tanıma teknolojisi özellikle güvenlik, suçluların tespiti, ulaşımda hızlı geçişin sağlanması vb. alanlarda yaygın bir şekilde kullanılmaya başlanmıştır. Bu çalışmanın içeriğinde yapay zeka teknolojilerinin ve donanımın gelişmesiyle önemi daha da artan makine öğrenmesi ve derin öğrenme algoritmaları kullanılarak bir yüz tanıma sisteminin geliştirilmesi ve yüz tanıma algoritmalarının birbiriyle kıyaslanarak en iyi algoritmanın seçilmesi ile ilgili yapılan çalışmalar sunulmuştur. Uygulamada yüz tanıma için 6 farklı algoritma üzerinde çalışıldı ve bu algoritmaların başarımları ve hızları analiz edildi. Başarım ve hız açısından en uygun algoritma seçildi ve bu algoritmada kullanılan veri setleri üzerinde Öklid uzaklık analizi ve Cohen’s Distance analizi yapılarak algoritma, hesaplanan en uygun parametrelere göre optimize edildi. Ayrıca seçilen algoritma kullanılarak yüz tespiti ve yüz tanıma işlemleri yapan bir mobil prototip uygulama geliştirildi.
Yazılım Geliştirme Sektöründe Kurumsal Ölçümlerin Belirlenmesi ve Ölçüm Altyapısının Oluşturulması
ABSTRACT. Yazılım geliştirme sektöründe, verimlilik ve üretkenlikle ilgili metriklerinin belirlenmesi ve ölçümlenmesi, işin doğasının soyutluğu sebebiyle, oldukça meşakkatli olabilmektedir. Bunun yanı sıra metriklerin, her sektörde olduğu gibi, organizasyonun ana hedeflerine hizmet edecek şekilde belirlenmesi gerekmektedir. Bunu yapabilmek için de seçilen metriklerin, iyileştirme noktalarının tespit edilmesine yardımcı olması gerekmektedir. Odağında sürekli iyileştirme olan bir şirket için sürekli değişim kaçınılmazdır. Bu nedenle, t anında içinde bulunulan durumun belirlenmesi ve iyileştirme amacıyla alınan aksiyonların t+1’de istenen sonuca doğru götürüp götürmediğinin takibinin yapılması zorunludur. Softtech, Türkiye’de başta bankacılık olmak üzere, yazılım geliştirme sektöründe hizmet vermekte olan bir yazılım şirketi olup, hedefleri arasında farklı sektörlere de hizmet vermek bulunmaktadır. Bu hedefe ulaşabilmek için hem bankacılık sektöründeki ana müşterisinin ihtiyaçlarını karşılamak hem de farklı sektörlerde yeni iş fırsatları yaratmak için verimliliğini ve üretkenliğini arttırmak ihtiyacındadır. Bu amaca uygun olarak, endüstriyel üretimde kullanılan Kanban metrikleri yazılım üretiminde kullanmak üzere uyarlanmış ve Softtech Kurumsal Ölçüm Altyapısı kurulmuştur. Kurulan kurumsal ölçüm altyapısı ile verimlilik ve üretkenliğin sürekli izlenebilmesi sağlanmış, iyileştirme amacıyla alınan aksiyonların etkileri izlenebilir kılınmıştır. Bu bildiride, Softtech’in hedeflerine ulaşmasına hizmet edecek Kanban temelli kurumsal üretkenlik ve verimlilik metriklerinin belirlenmesi, ölçüm altyapısının kurulma süreci, şu ana kadar gerçekleştirilen iyileştirmeler, önümüzdeki dönemde yapılması planlanan diğer çalışmalar aktarılmıştır.
Türkiye Ulusal Yazılım Mühendisliği Sempozyumu Bildirilerinin Konu Analizi
ABSTRACT. Bağlam: Ulusal Yazılım Mühendisliği Sempozyumunda (UYMS) 2007 ile 2018 tarihleri arasında sunulan bildiriler. Amaç: UYMS’de sunulan bildirilere odaklanarak yazılım mühendisliği (YM) araştırma literatürünün yıllar boyunca bir konu analizini yapmak. Yöntem: Dünyanın önde gelen YM dergilerinde ve konferanslarında yayımlanan 32.701 yayını kullanarak YM araştırma alanında 11 önemli konu tespit ettik. Bu konu modelini kullanarak 564 UYMS bildirisini analiz ettik. Sonuçlar: Yazılım süreci tüm UYMS etkinliklerinde en çok irdelenen konu olmuştur. Son yıllarda uygulamalar konusu da YM araştırmacılarının ilgisini çekmektedir. Yazılım test etme 2013 yılından beri artan bir ilgi görmektedir. Modelleme, tasarım ve mimari ile birlikte kalite ve metrikler son yıllarda en çok ilgi gören beş konu arasındaki diğer iki konudur.
ABSTRACT. Erişilebilirlik, herhangi bir ürünün, servisin, hizmetin, teknolojinin ya dauygulamanın engelliler ve yaşlılar dahil olmak üzere herkes tarafından anlaşılır ve kullanılabilir olmasını ifade etmektedir. Web uygulamalarında ise bu kavram, hedef kullanıcı kitlesinin tamamının uygulamaya erişebilmesi,uygulamayı kullanabilmesi ve içeriği anlayabilmesini ifade etmektedir.Geliştiricilerin belli bir standart üzerinden erişilebilir bir uygulama ortayaçıkarmaları için, uluslararası web erişilebilirlik standardı olan teknik veyönergeler kapsamında uygulanacak kontroller tanımlanmıştır. Bu çalışmada 2008-2018 yılları arasında yapılmış web erişilebilirlik değerlendirmesi ve ölçütleri ile alakalı 110 çalışma sistematik haritalama yöntemi ile incelenmiştir.Çalışmalar incelendiğinde, yayınlanan çalışmaların günümüze geldikçe sayılarının arttığı, en fazla web erişilebilirlik değerlendirme yöntemi olarak otomatik değerlendirme araçlarının kullanıldığı, sıklıkla e-devlet uygulamalarına yönelik değerlendirme çalışmalarının yapıldığı ve web erişilebilirlik ölçütü olarak WAB’ın kullanıldığı gözlemlenmektedir.
Çalışma Sırasında Konfigüre Edilebilir Ortak Gömülü Simülatör
ABSTRACT. Gömülü sistemlerde farklı arayüzlerin kullanımı yazılım testlerinde kullanılan simülatör çeşitliliğini ve sayısını arttırmaktadır. Artan simülatör sayısı ile kara kutu testler sırasında gerçekleştirilen senaryosal testlerde kullanılan simülatörlerin kontrolü zorlaşmaktadır. Ayrıca her bir arayüz için ayrı bir simülatör geliştirilmesi testler için harcanan iş gücünü arttırmaktadır. Bu sebeplerden yola çıkılarak simülatörlerin kontrolünün kolaylaştırılması ve ortak bir çerçevede toplanması amacıyla Ortak Gömülü Simülatör (OGS) geliştirilmiştir. Bu simülatör sayesinde farklı arayüzler (MsgQ, PCIe, TCP, UDP, seri kanal) tek bir noktadan yönetilebilir ve gözlemlenebilir hale getirilmiştir.
Yazılım Ürün Hatları için Özellik Yönelimli Test Modellerinin Yönetimi
ABSTRACT. Bu çalışma, yazılım ürün hatlarında çok fazla sayıda olabilecek olan özelliklere ve ürünlere ait test modellerinin yönetimini oluşturan süreçler ile ilgili bütünsel bir yaklaşım önermektedir. Bir yazılım ürün hattı özelliklerine ve ürünlerine ilişkin test modellerinin yönetimi; özellik test modeli oluşturma, özellik test modeli doğrulama, ürün için test modellerini birleştirme ve ürün test modeli doğrulama süreçlerinden oluşmaktadır. Bu bildiride, test modellerinin yazılım ürün hatları için özelleştirilmiş olay sıra çizgeleri olduğu bir ortamda, bu modellerin doğrulanmasına ilişkin bir yöntem ile ürün yapılandırması sonucunda ortaya çıkan ürüne ait olay sıra çizge test modelinin doğrulanmasına ilişkin bir yöntem önerilmektedir.
Model-based testing in practice: An experience report from the banking domain
ABSTRACT. Model-driven software engineering has become more popular in recent years. Due to the high number and diversity of users, new testing approaches are necessary to reduce the occurrence of faults and ensure higher quality in industrial applications. The objective of this paper is to evaluate the use of Model-Based Testing (MBT) practices in the development and exeuction of automated test suites to verify and validate internet-banking solutions in the context of a large banking institution in Turkey
Aygıt Ağacı Yazılımlarının Model Güdümlü Geliştirilmesinin Tersine Mühendislik ile Desteklenmesi
ABSTRACT. Aygıt Ağacı (DT) yapıları bir gömülü sistem donanımının içerisindeki fiziksel cihaz bileşenlerinin düğümler ile tanımlanmasını sağlamaktadır. DT kaynak dosyalarının metin-tabanlı ve güncel programlama dillerinden farklı bir yapıdaki sözdizimlerini kullanmadaki zorluğu aşmak ve çeşitli işlemci mimarileri için DT kodlarını otomatik üretmek için model güdümlü geliştirme kullanılabilir. Ancak bazı durumlarda üretilen DT’ler üzerinde yeni donanım ekleme, donanım özelliği değiştirme, vb. amaçlarla kod ekleme veya değiştirme gerekmektedir. Bu bildiride DSML4DT adı verilen bir alana-özgü modelleme dili kullanılarak otomatik oluşturulan DT kodlarında sonradan yapılan değişikliklerin modellere yansıtılmasını ve daha önce başka yöntemlerle oluşturulmuş DT kodlarından yazılım modellerini elde etmeyi sağlayan bir tersine mühendislik yöntemi tanıtılmaktadır. Önerilen tersine mühendislik yaklaşımının toplu taşıma bilgi sistemleri üreten bir firmanın donanımlarında ihtiyaç duyulan DT tabanlı yazılımların geliştirilmesinde uygulanması örnekleri verilmiş ve uygulama sonuçları değerlendirilmiştir.
Towards Analysing the Meta-Modeling Tools for the Needs of Practitioners
ABSTRACT. Many meta-modeling tools have been available today for the
use of practitioners and enabling them to develop domain-specific languages (DSLs) and the necessary toolset (i.e., modeling editors and code
generators) for performing the modeling activities in their domain. However, it is not currently so easy for practitioners to compare the existing meta-modeling tools for their practical needs and choose the most
suitable one(s). So, in this paper, 20 different meta-modeling tools have
been intended to be analysed for a number of requirements that are
believed to be important for the practitioners working in different industries. These requirements are (i) vendor lock-in, (ii) web-access, (iii)
collaborative modeling, (iv) model versioning, (v) hybrid modeling, (vi)
model transformation (vii) external tool integration, (viii) community
support, (ix) extensibility, and (x) language testability. The analysis results reveal many important findings about the meta-modeling tools and
will be expected to be very helpful for the practitioners in determining
any meta-modeling tool(s) that best suit their needs for their language
development. Also, the tool vendors may use the results to find out the
weakness of the existing tools and improve them in the future.
Bir Yazılım Sisteminin Kullanımının Süreç Madenciliği Teknikleri ile Modellenmesi: Endüstriyel Bir Vaka Çalışması
ABSTRACT. Süreç madenciliği, günümüz bilgi sistemlerinde yaygın olarak tutulan işlem günlükleri (log) kullanılarak, süreçlere ait bilginin otomatik olarak ortaya konulmasıdır. Bu yolla mevcut süreç modelleri keşfedilebildiği gibi, süreçlerin izlenmesi ve iyileştirilmesi de sağlanmaktadır. Ek olarak, bir yazılım sistemine ilişkin süreçlerin modeli, sistemde düzenli olarak yapılan iyileştirmeler ve değişiklikler nedeniyle, sürekli olarak değişmektedir. Dolayısıyla var olan yapının otomatik olarak ortaya konulabilmesi, sistem analistleri, mimarları ve yöneticileri için çok değerlidir. Bu çalışma ile bankacılık alanında ticari kredi başvuru yazılımı ile ilgili bir yazılım sisteminin süreç modelini sistem log verilerini kullanarak otomatik olarak çıkarmayı hedefledik. Bu amaçla, endüstriyel vakaya ait 800.000 adet web servis çağrısından elde edilen log verisini kullandık. Öncelikle, bu servis loglarını kullanarak, süreçleri ve aralarındaki geçişleri ortaya koyduk. Ortaya çıkan çıktı ile, yazılım uygulamasına ait süreç modelini elde ettik. Sonuç olarak, servis loglarından otomatik olarak süreç modellerinin elde edilmesini, yazılım sistem analistlerine, mimarlara ve diğer yöneticilere, süreçlerin izlenmesi ve iyileştirilmesi konusunda etkili bir yardımcı teknik olarak değerlendiriyoruz.
Yazılım Geliştirme Dış Kaynak Alımlarında Start-Up Firmalar için Yeni bir Satın Alma Modeli
ABSTRACT. Bu bildiride, Türkiye’de dijital telekomünikasyon şirketi olarak faaliyet göstermekte olan ve aynı zamanda “yerlilik ve millilik” kavramını tüm fonksiyonlarında ön planda tutan bir şirketin, teknoloji geliştirme alanında çalışmalar yapan Startup’lara somut faydalar sağlayabilmek için kurguladığı bir yazılım geliştirme dış kaynak satın alma modelinden bahsedilecektir. Bu modelin şirketin alım süreçlerinde ne gibi farklılıklar yarattığına ve bu süreçlerde rol oynayan tüm paydaşların iş yapış şekillerindeki Startup odaklılık dönüşümüne değinilecektir.
Yazılım Yaşam Döngüsü Modelleri için Sistematik Eşleme Çalışması
ABSTRACT. Uygulama yazılımlarının fikir aşamasından bakım aşamasına kadar olan tüm aşamalarını kapsayan etkinlikler bütünlüğü, Uygulama Yaşam Döngüsü Yönetimi (UYY) süreci olarak tanımlanmaktadır. Sürecin içerisinde bulunan yöntem ve pratikler güncel ihtiyaçlar ve olanaklara göre evrimsel olarak değişkenlik göstermektedir. Yazılım geliştirme yöntem ve pratiklerinin evrimi, endüstri ve akademik çevrelerin işbirliği ve rekabeti altında süregelmektedir. Evrimsel olarak ortaya çıkan her bir yöntem ve pratiğin yaşam eğrisi, kapsama alanı ve soyutlanma düzeyine göre faklılıklar gösterebilmektedir. Yine her bir yöntem ve pratiğin tüm yöntem ve pratikler içerisindeki ağırlığı ve baskınlığı değişebilmektedir. Ayrıca endüstriyel yazılım geliştiriciler kendi yöntem ve pratik ihtiyaçları için akademik yayınlara web üzerinden erişeşerek ilgili yöntem ve pratiğin ağırlık ve baskınlığını etkilemektedir. Bu çalışma ile UYY yöntem ve pratiklerinin ortaya çıkış zamanları, tüm kütle içerisindeki oranları ve endüstriyel kullanıcının ihtiyacı ile zamansal izdüşümleri, elektronik kütüphaneler ve web arama bilgileri karşılaştırılarak incelenmiştir.
Model Tabanlı Geliştirme Teknolojisi Kullanılarak Geliştirilen Hava Aracı Yazılımlarının Sertifikasyon Sürecine Yönelik Öneriler
ABSTRACT. Teknolojik gelişmelerin hızla ilerlemesi, ihtiyaç duyulan ürünler ile ilgili alternatiflerin çoğalmasını ve müşterilerin çok sayıda alternatife daha kolay bir şekilde erişmesini sağlamıştır. Bu durum üreticiler arasında sıkı bir rekabetin oluşmasına neden olmuştur. Artan rekabet koşullarında üreticiler, bir adım öne geçebilmek için müşteri isteklerine daha az zamanda daha hızlı cevap verebilecek yeni teknoloji arayışlarına gitmişlerdir. Bu teknolojilerden birisi de, üreticilere sağladığı takvim ve maliyet avantajı nedeni ile havacılık sanayiinde son dönemlerde öne çıkan model tabanlı geliştirme teknolojisidir. Model tabanlı geliştirme teknolojisi, geleneksel yazılım geliştirme yaklaşımına alternatif olarak sunulan sistem ve yazılım seviyesindeki faaliyetlerin iç içe geçtiği yeni bir geliştirme teknolojisidir. Bu teknolojinin telekomünikasyon gibi emniyet kritik olmayan yazılımların geliştirilmesinde kullanımı daha eski olsa da, emniyet kritik olan ve sertifikasyon içeren hava aracı yazılımlarının geliştirilmesinde kullanımı oldukça yenidir. Bu çalışmada, MTG teknolojisinin havacılık sektöründe kullanımı, sağladığı önemli avantajlar ve ürün geliştirime süreçlerinde dikkat edilmesi gereken hususlar sunulmuştur. İlave olarak model kapsama analizi ile yapısal kapsama analizi arasındaki fark bir örnek üzerinden anlatılmıştır.
Gri Kurt Optimizasyonu (GWO) Algoritması İle Finans Sektörü İçin Kredi Verilebilirlik ve Sınınflandırma Çalışması
ABSTRACT. Bilgi teknolojilerindeki gelişmelerle birlikte, banka şirketleri, müşterilerinin kredi taleplerini etkili analitik yöntemler ve risk analizleri ile değerlendire-bilmektedirler. Kredi skorlama sistemleri olarak adlandırılan yazılım ürünleri genel olarak daha önce belirlenen kredi faktörlerine göre müşterinin verileri-nin toplanması, elde edilen verinin çeşitli istatistiksel veya makine öğrenmesi teknikleriyle işlenmesi ve kredi risk analizinin yapılarak nihai kredi kararının belirlenmesi aşamalarından oluşur. Kredi başvurularının değerlendirilme sü-recinde çeşitli skorlama modelleri yaygın olarak kullanılmaktadır. Bu model-ler dâhilinde müşterilerin geçmiş banka hareketleri işlenerek kredi kararı ve-rilebilmektedir. Yapılan çalışma ile müşteriye ait değişken kümelerinden olu-şan veriler, makine öğrenmesi teknikleriyle işlenerek, müşteriye ait kredi de-ğeri belirlenmeye çalışılmıştır. Gri Kurt Optimizasyonu ile sınıflandırma problemi olarak çalışma odağı oluşturulmuştur. Elde edilen bu bilgilere göre müşteriye kredi verilebilir ya da verilemez kararı ortaya çıkarılmıştır. Bu ça-lışmada kredi başvurusunda bulunan ve kredi kullanan tüketicilerdeki artışı sağlıklı yönetebilecek yapı ihtiyacının karşılanması, doğru müşteriye, doğru zamanda, doğru miktarda ve doğru vadede kredi vermeyi sağlayacak yapının kurulması, kredi tahsilatlarının verimliliğinin arttırılması, riski minimize ede-rek karlılığın maksimum noktaya getirecek optimum stratejilerin oluşturulma-sı, bankanın kredi skorlamasında ve değerlendirme sisteminde uzman görüş etkisini azaltılması ve maliyetlerin düşürülmesi amaçlanmıştır.
With the advances in the Information Technology (IT) field, banks can eva-luate the credit requests of the customers via effective analytical methods and risk analysis. The software products, named Credit Scoring Systems, consist of collecting customer data based on pre-determined credit factors, processing the data with various statistical or machine learning methods, and conducting credit risk analysis to make the final credit decision. Throughout the evaluation process of the credit applications, various scoring models are commonly used. These models utilize the previous transactions on the bank accounts of the customers to make a decision on the credit applications. In the proposed work, the information about the customer related to several as-pects and processed with machine learning techniques, and finally a credit score will be determined for each customer. Classification problem using Grey Wolf Optimization method was focused in this work. This information will later be used to decide whether the credit application of a customer can be approved or not. In this study, intentions can be summarized as, providing useful tools to manage the increasing number of customers who apply for consume credits, establishing a structure for crediting the right customers at the right time with the right amount and payment plan, increasing the effici-ency of collecting credit payments, thus contributing to the national economy by using the resources more effectively, creating optimal strategies for maximizing the profit by minimizing the risk, reducing the effect of an expert for credit scoring and evaluation, and reducing the costs.
Makine Öğrenmesi Sistemi Geliştirmek İçin Yazılım Sürecini Uyarlamadaki Zorluklar: Bir Vaka Çalışması
ABSTRACT. Makine öğrenmesi alanındaki gelişmeler yazılım mühendisliğini derinden etkilemektedir. Makine öğrenmesi algoritmalarının mevcut yazılım sistemlerine önemli yetenekler kazandırabileceği çok sayıda örnekte görülmüştür. Bundan dolayı birçok yazılım geliştirme takımı mevcut yazılım sistemlerine makine öğrenmesi yetenekleri kazandırmak için projeler başlatmıştır. Bu çalışmada Kokteyl şirketinin makine öğrenmesi algoritmaları kullanarak tahmin yapabilen bir bileşen geliştirme projesinde yaşadığı deneyimler anlatılmaktadır. Bu deneyimler süreç, veri ve yetkinlikler başlıkları altında incelenmiştir.
Increasing Location Precision with Evolutionary Development of Real Time Location System Technologies
ABSTRACT. Real-Time Location Tracking Systems (RTLS), according to the variety of application fields; these are solutions developed for real-time monitoring of people (operator, patient, doctor, miner, etc.), assets and equipment (vehicles, forklifts, first aid devices, etc.). RTLS applications contribute to productivity and profit increase in resource utilization, decrease loss of life and cost, and worker and workplace safety. Since, RTLS applications ensures the safety and efficient planning of the monitored objects.
RTLS solutions require high precision location information and low battery consumption for tags. In the UWB (Ultra Wide Band) frequency, the TDoA (Time Difference of Arrival) method is applied while the receiving devices are synchronized in the time domain in the wireless environment. Based on the test results performed in both laboratory and industrial environment conditions, location information is calculated with sub-meter precision (30 centimeters) while the battery consumption of the tags (more than 2 years battery life) is reduced.
Model Learning for the Programming Interface of a Measurement Device
ABSTRACT. Calibration scripts for programmable measurement devices can be tested and debugged with target device being available. However, such devices can be quite expensive, thus, their availability can be problematic. We present EmulateIt, a model learning tool that algorithmically learns the command interface of an IEEE 488.2 compliant device and makes it available for test script development. EmulateIt implements Angluin’s L* Algorithm to build a model of the device interface. The learned model takes the form of a finite state machine, specifically, a Mealy machine. The machine provides the emulation of the device interface. Thus, calibration engineers can perform early testing of their calibration scripts in the absence of the actual device. EmulateIt has a graphical user interface so that engineers can see the paths and states that cause errors on the device and debug their scripts accordingly. To keep the state space tractable, actual command parameter values are simplified. Therefore, the actual device would still be needed in the final phase of testing the scripts.
Test Data Generation by Dynamic Symbolic Execution: A Systematic Literature Review
ABSTRACT. In software testing process, it is preferred that test data has high coverage and cost-efficient quantity. Dynamic Symbolic Execution (DSE) increases the efficiency of the test process without compromising its effectiveness. In order to understand the tools and methods that can be used to generate test data with DSE method, this article is aimed for a Systematic Literature Review (SLR) study of the articles on this subject. After an initial search, scanned articles were eliminated according to inclusion/exclusion criteria and 39 articles were selected for detailed review. Answers to a number of research questions that address test method, programming language, software code type, execution tool, and constraint solver on the 39 articles were sought. Finally, a conceptual model of dynamic symbolic execution was created with the answers received.
A Combinatorial Test Data Generation Approach Using Fault Data Analysis And Discretization Of Parameter Input Space
ABSTRACT. Combinatorial Testing is an efficient testing strategy. It is based on the idea that many faults are caused by interactions between a relatively small number of parameters. However, determining the right interaction strength to generate data for different software is an issue in terms of efficiency. In addi-tion to that, it requires the inputs in a discrete form, while that is not always the case. We propose a new combinatorial test data generator tool that combines fault data analysis to determine the right interaction strength for the specific domain of software and transformation of the continuous input space of pa-rameters into discrete using well known test techniques. With this new tool, it is aimed to minimize test costs, while maximizing the confidence in test data. Ex-periments made with the tool support this idea with results showing a signifi-cant increase in test efficiency.
EEG Sinyallerinin Analizi ve Sınıflandırılmasında Yazı-lım Sistemlerinin Kullanımına Genel Bir Bakış
ABSTRACT. Electroencephalogram (EEG), beyinde 2 farklı bölge arasındaki voltaj farkının zaman içerisindeki değişiminin görsel olarak ifade edilmesini sağlayan bir sinyal çeşididir. EEG sinyallerinin nörolojik hastalıkların teşhisinde ve beyinde gerçek-leşen psikofizyolojik süreçlerin aydınlatılmasında önemli bir yeri vardır. Son yıl-lara kadar bu sinyallerin yorumlanması tamamen insan kaynaklı yapılmakta, bu da zaman kaybı ve insani hataya açık olması gibi sorunlara neden olabilmekteydi. Son yıllarda geliştirilen yazılımlar bu tip sorunları en aza indirmektedir. Aynı za-manda yazılım uygulamaları ve sistemler hayata dair tüm alanlarda hızla yer al-maktadır. Bu alanlardan biri de hastalık teşhisini de kapsayan sağlık alanıdır. Bu çalışmanın amacı, beyin sinyallerini toplamaya yarayan teknikler hakkında genel bir bilgi vermek, EEG sinyalinin işlenmesinin aşamalarını incelemek ve bu aşa-malarda kullanılan farklı tekniklerin kıyaslamasını yapmaktır.
Uygun Radyolojik Tetkik İstemi İçin Hastane Bilgi Sistemine Entegre Otomatik Karar Destek Sistemi Tasarımı
ABSTRACT. Giriş-Amaç: Son yıllarda kanıta dayalı tıp perspektifinin geliştirilmiş olması ve artan inceleme seçeneklerinden en uygun olanına karar vermede oluşturulmaya başlanan rehberler, uygunsuz radyolojik inceleme seçimleri, kaynakların israfı ve hastaya verilen zararlar gibi olumsuzlukları gidermeyi amaçlamaktadır. Bu çalışmanın amacı, radyolojik bir tetkik istemi yapılırken, klinisyenin Hastane Bilgi Yönetim Sistemi (HBYS) ile uyumlu çalışan bir Klinik Karar Destek Sistemi’nden (KKDS) yararlanmasının, olanaklı olup olmadığını göstermektir.
Yöntem: Bu amaca yönelik olarak uygun bir alan seçilmiş, seçilen alandan 5 olası klinik senaryo belirlenerek, bir nefroloğun, en uygun görüntüleme cihazını seçmesinde, veri tabanı üzerindeki klinik ve laboratuvar verilerinden çıkarsama yapan bir kural tabanı oluşturularak, American College of Radiology (ACR) kriterlerine yönlendiren bir karar destek yazılımı tasarlanmış ve bu yazılımın bir HBYS ile entegrasyonu sağlandıktan sonra kullanıcı değerlerlendirmeleri dikkate alınarak hipotezimiz test edilmiştir. Yazılım, Toad for Oracle aracı ile Dokuz Eylül Üniversitesi Hastanesi veri tabanına bağlanılarak, Microsoft Visual Studio ortamında geliştirilmiştir.
Bulgular: Araştırmadan elde edilen bulgular “KKDS Oluşma Aşamaları”, “KKDS Arayüz Görüntüleri”, "KKDS Performans Değerlendirme Testi Bulguları" ve “ Memnuniyet Anketi” ve “Sistem Kullanılabilirlik Ölçeği” adı altında sınıflandırılıp, incelenmiştir. Bu çalışma, 2017-Tıp Bilişiminde Yenilikler sempozyumunda elde edilen erken bulgularla birlikte sunulmuştur.
Sonuç: Hem HBYS’e entegre, hem de uygun tetkik önerisinde bulunan KKDS örnekleri özellikle ülkemizde oldukça az ve yetersizdir. Tetkik uygunluğunun HBYS’e entegrasyonunu hedefleyen ve entegrasyon sistematiği açısından örnek oluşturması amacıyla gerçekleştirilen çalışmamız, hastane bilgi sistemine entegre çalışan ve uygunluk kriterleri oluşturarak en uygun tetkiklerin seçilmesinde hekime yardımcı olan ender çalışmalardandır. Bu yazılımın gelecekte daha fazla alana uygulanabilirliği ve etkin olarak kullanılabilirliği sağlanabilir.
ABSTRACT. Sağlık hizmetlerinde doktorların hastalara doğru tanı vermesi ve tedaviye doğru devam edebilmesi konusunda ihtiyaç duydukları en önemli bilgi kaynağı, hastalara tanı amacıyla yapılan tetkiklerdir. Bu nedenle laboratuvar süreçleri etkin sağlık hizmeti açısından büyük önem taşımaktadır. Laboratuvarlarda çok sayıda ve farklı türlerde sayısal veri üretilmektedir. Laboratuvar süreçlerinin sonunda elde edilecek olan sağlık verisine; insan, makine (cihaz), kullanılan kit ve malzeme, havadaki nem sıcaklık ışık vb. gibi çok sayıda faktörler etki etmektedir. İnsan gözünün bu kadar etmeni değerlendirerek çıkan sonucun doğruluğunu ve ne oranda doğru olduğunu ölçümleyebilmesi ve teyit edebilmesi mümkün değildir. Bu sorunlara çözüm üretmeyi hedefleyen bu çalışma ile, geleneksel laboratuvar bilgi sistemlerinin buluta taşınarak laboratuvar ortamlarının sensörler aracılığıyla IoT (Nesnelerin İnterneti) adaptasyonu, dış etkenlerin laboratuvar testleri üzerindeki etkilerinin izlenebilirliği ve tetkik sonuçlarının kalitesinin artırılması amaçlanmaktadır.