Department of Software Engineering
Permanent URI for this collection
Browse
Browsing Department of Software Engineering by Issue Date
Now showing 1 - 20 of 52
Results Per Page
Sort Options
Item CLOUD COMPUTING SECURITY ISSUES AND SELECTION OF DEPLOYMENT MODEL AND SERVICE MODEL ACCORDING TO SECURITY REQUIREMENTS(2015-01-31) SEZEN, Arda; YAZICI, Ali; BOSTAN, AtilaThis thesis reviews the necessity of X.800 Recommendation service categories for different cloud service models and cloud deployment models together with some security solution approaches in cloud computing. The thesis evaluates the solution approaches to show that technical and non-technical approaches need to be handled together to produce comprehensive solutions. Six technical solution approach have been included to evaluate the fulfilment of X.800 Recommendation service categories. Eventually, twelve hypotheses have been formulated, tested, and accepted based on the survey data to understand the necessity of X.800 Recommendation service categories for different cloud service models and cloud deployment models.Item A STUDY OF PARALLEL SORTING ALGORITHMS USING CUDA AND OpenMP(2015-10-23) GÖKAHMETOĞLU, HakanThis thesis reviews the parallel languages according to their computational complexities, in terms of time, while using sorting algorithms coded in CUDA and OpenMP. The thesis evaluates the solution for parallelism at a maintainable cost of money and other efforts, for achieving acceptable results of timing when compared to parallel languages together, as well as the sequential execution. The detailed timetables comparing timings from CUDA, OpenMP and sequential code, are present in related chapters. Eventually, the findings are examined to find the benefits of the parallel languages. The findings from the Chapter “Test and Comparisons” indicate that refactoring an algorithm to OpenMP language is easier when compared to CUDA language. However, results from comparing time values indicate that it is always the design of the algorithms, which makes it possible to achieve the performance that is expected of using the parallel languages.Item AUTOMATED FUNCTIONAL SIZE MEASUREMENT FOR MULTI-TIER OBJECT RELATIONAL MAPPING ARCHITECTURES(2015-10-25) DEMİREL, Hamdi; ÖZKAN, BarışSoftware Functional Size Measurement methods are generic, and additional rules and concept mappings are required for specific software settings in order to improve the measurement objectivity and consistency. Although some operational definitions have been made for specific architectural style measurement procedures, there are still opportunities to improve measurement objectivity and consistency. These opportunities can be achieved through automation by minimizing measurer errors, time/effort costs and dependence to the development environment. In this study, a functional size measurement approach for Three-Tier Object Relational Mapping Business Application is proposed, and a prototype measurement tool and its results for validation are presented in case studies.Item MAXIMIZING TARGET COVERAGE OF UNMANNED AERIAL VEHICLE CARRIED ON MOBILE PLATFORM(2015-12) SAVURAN, Halil; KARAKAYA, MuratThis thesis proposes a solution approach for target mazimization problem for a range constrained unmanned aerial vehicle (UAV) carried on mobile platform. The problem is modeled with extending the Vehicle Routing Problem (VRP) with the constraints of range capacity and depot mobility and this novel extension is termed Capacitated Mobile Depot VRP (C-MoDVRP) throughout this study. Requirement of a novel solution approach dictated by the nature of this problem is satisfied by adapting a genetic algorithm (GA-CMoD) for the problem specific constraints. The motivation, problem definition, and development of the proposed solution along with its implementation are given in the thesis. Moreover, the performance of the proposed GA-CMoD is observed by extensive simulation tests under different problem constraints. The quality of the produced routes is compared with that of the alternative solution methods. The experiment test results indicate the success of the proposed solution over the alternative ones clearly.Item THE ONLINE DIGITAL LIBRARY: A PROPOSED APPLICATION PLATFORM: MY LIBRARY(2016-12-17) Emusatar, Izdhar; Ertürk, Korhan LeventThe libraries and information centers are characterized by continuous changes and the successive development. One of the most notably of them is the emergence of digital library which was the inevitable result to the development of information and communication. That was led to radical changes in the means of storing and processing the information and in the media that transmit them. Also, it has changes in the forms of organizing and exchanging the information. Thus, that has the positive effects in providing suitable and developed information services to the beneficiaries. As well as, the digital libraries give services which was not possible to provide with the traditional libraries according to the characteristics of the digital libraries which increase the importance of their services for beneficiaries, librarians and publishers alike. The study discusses the researches results and the debate about the digital libraries in terms of concept, developing, importance, the basic contents, the steps to transform to digital libraries, the services provided, the role of the digital library librarian and his skills and the design of comprehensive digital library with services that almost the same services provided by the existence digital libraries in order to access to results which may put the model to create an optimal digital library to meet the information needs of the academic society and support the educational process. The study includes four sections introduction, digital library infrastructure, a review on My Library project that been designed and conclusion and discussion.Item OBSERVATIONS ON EVOLUTION OF LEAN SOFTWARE DEVELOPMENT(2017-01-04) FARAJ, LLAHM OMAR; Mishra, Alok; Yazıcı, AliThis thesis reviews the observaitons on evolution of lean software development (LSD) and introduces Lena Method in detail. An observaiton on evalution of Lean Spftware development is presented and the method involving experimental authors who described the methodology in many phases. LSD is one of the powerful, agile software development (ASD). The objective of LSD is to create customer value and deliver fast within budget. LSD can improve business domain by adopting Lps according to the business need.Item VEHICLE LOGO RECOGNITION USING IMAGE PROCESSING METHODS(2017-01-07) Albera, Sumia; Şengül, GökhanVehicle logo recognition is the ability to recognize and classify the vehicle logos in different conditions with high accuracy. This system plays significant role in monitoring systems, security and surveillance systems, such as the control system in government buildings and military camps. Vehicle logo recognition starts with reading the logo as an image, goes on analyzing and classifying of the logo. The goal of this study is to compare the performance of three methods used for vehicle logo recognition and determine the accuracy of each method in noisy environments and from images captured from different directions. The main methods used for vehicle logo recognition in this thesis are: SURF algorithm, LBP and GLCM. In addition, KNN is used as a classifier with LBP and GLCM features. These methods are tested on the data sets collected in two ways: gathering logo images from the website of the manufacturers and capturing logo images by a standard camera. Best result in this thesis for vehicle logo recognition was achieved by the SURF algorithm.Item SCALABILITY ISSUES IN BIG DATA ON CLOUD: A COMPARISON OF VIRTUAL MACHINES AND LINUX CONTAINERS(2017-01-07) Gökhan, Cansu; Karakaya, Ziya; Yazıcı, AliIn recent years, Big Data and Cloud Computing are gained importance in IT and business. These two technologies are becoming as the complementing technologies in a way that the former requires performance scalability, huge amount of storage and the huge computation power, which are the key enabler technologies of Big Data Analytic, and the latter, Cloud Computing, brings the opportunity to scale the infrastructure on-demand, helps in utilizing computation resources and provides huge amount of storage space. Until the recent years, the only technique used in computation resource utilization was based on the hypervisor aided virtualization technique, which is used to create Virtual Machine (VM). Nowadays, another technique, which is faster and better in resource utilization, called container is getting its popularity. In this thesis, the CPU, memory, disk I/O and network performance of VM and container are compared in big data on cloud with using HiBench benchmarks. In addition, scalability ratios were evaluated by testing on different number of nodes. The results show that the containers have better performance and better scalability.Item A PROGRAMMING LANGUAGE FOR COMPONENT-BASED SOFTWARE DEVELOPMENT(2017-01-07) Delikelli, Ahmet; Çetinkaya, DenizIn this thesis, it is aimed to develop a programming language in which components are defined in the component-based software development process. It is provided that a component is appropriate for reuse and has a specific behavior by taking into account component based software engineering (CBSD). This programming language has been developed as a domain specific language (DSL). During the language development process, Xtext framework which works on Eclipse software development kit (SDK) has been used. The language is Java based and grammar of the programming language, syntax validation and translation into Java language has been implemented with Xtext framework. The proposed programming language has the most common features that a programming language should have. A case study has been implemented in order to show how the features of the language are used. The evaluation of the language is done by the case study and several examples that illustrate the usage of the language.Item ASTUDY ON INTEGRATION OF AGILE WITH STRUCTURED SOFTWARE DEVELOPMENT PROCESSES(2017-01-07) Nura, Abdelmagid; Mishra, AlokNowadays, Agile methodologies (AMs) have interred SDLC in all companies. Many organizations have used AMs and traditional methods to enhance öethodologies as an optimal solution in the business area. First, thinks about changes during SDLC; also customer may change his mind. So here is a need for the combination methodologies. Second, in spite of the fact that AMs can be beneficial to organizations, there is a need for traditional methodologies in some phases of the SDLC as a mixed framework.Item A COMPONENT BASED MODEL DRIVEN SOFTWARE DEVELOPMENT FRAMEWORK FOR WEB-BASED APPLICATIONS(2017-01-07) Alrubaee, Afrah; Çetinkaya, DenizDeveloping a high quality, cost effective, reliable and on time software systems is a challenging task due to the large size and complexity of these systems. Traditional developing approaches that are concerned with constructing software systems from scratch cannot be suitable for dealing with this challenge. For that reason several approaches have been introduced to increase the productivity of the development. Two of these approaches are component based software engineering and model driven software development. Component based software engineering (CBSE) has been introduced as a solution for software reusability problem by using reusable software components to build new software system. Model driven development (MDD) is another approach in software development that was introduced to increase productivity and decrease the cost and effort. MDD aims to face the challenges of software development process through representing the essential aspects of the required system as models and generating the final source code from these models. The aim of this work is proposing a software development framework that combines MDD and CBSE approaches for merging the advantages and features of these approaches to facilitate software development. The framework is used successfully to develop an e-learning system as a case study. The framework was evaluated by making a comparison between existing component based software development process models and our framework.Item A MODEL FOR EVALUATION OF USER TRUST TO CLOUD SERVICE PROVIDERS(2017-04-02) İnceler, Deniz Koray; Bostan, Atila; Turhan, ÇiğdemThis thesis reviews the trust on the cloud computing environment from the viewpoint of cloud service users by developing a multiview metric to evaluate diverse cloud service providers. The approaches to user trust concept are studied to show that evaluation of trust necessitates both technical and non-technical approaches that need to be assessed together to obtain an all-in exclusive solution. Trust has been studied in six different domain approaches to fulfill the requirements of cloud users. The motivation in this study is to develop a trust-scale that consists of metrics which are based on observable facts. Such a trust-scale is expected to help cloud users in their trust evaluation of different cloud service providers. Ultimately, the trust-scale is formed with its metrics and subparts and fine-tuned by using the survey data as to map the expert point of view. The proposed evaluation methodology and scale helps cloud users in their trust assessment of diverse cloud service providers using observable and quantifiable metrics. As a result, the accuracy tests of the metric that is developed in this study resulted as %95 accurate with the expert point-of-view. This accuracy test result points out that the trust scale is capable to evaluate trust at a sufficient level of trust.Item COMPUTER VISION AND MACHINE LEARNING BASED ADAPTABLE CONVERSION METHOD FOR ANY LIGHT MICROSCOPE TO AUTOMATED CELL COUNTER BY TRYPAN BLUE DYE-EXCLUSION(2017-07-02) Özkan, Akın; İşgör, Sultan Belgin; Şengül, GökhanAlmost all of the cell biology experiments involve counting of cells regularly to monitor cell proliferation and viability. Knowledge of the cell quantity and quality are important parameters for the experimental standardization and toxicity impact estimation. There are two different approaches to count the cells, such as, hemocytometer-based manual counting, and usage of an automated cell counter. Either of the methods have their advantages and disadvantages. High investment and operational cost limit the wide range usage of automated cell counters. On the other hand, manual cell counting based on hemocytometer has various limitations by the fact that reliability of cell counting highly depends on operator’s experience. Moreover, high estimation time requirement and human labor are two more drawbacks of the manual process. This thesis proposes state-of-the-art alternative method (i.e. framework) for the cell counting by defining computer vision and machine learning based conversion methodology. The basis of the proposed method is the adaptation of hemocytomer-based manual counting to automated procedure by adding middleware decision software to reduce its shortcomings. In addition, two novel data sets are collected to test our proposed method in terms of cell counting (i.e non-stained) and cell viability analysis (i.e. stained). The datasets are available for non-profit public usage from “biochem.atilim.edu.tr/datasets/” which will be baseline to future studies on this research domain. Both datasets contain two different types of cancer cell images, namely, caucasian promyelocytic leukemia (HL60), and chronic myelogenous leukemia (K562). From our experimental results, our method reaches up to 92% and 74% in terms of recall scores for HL60 and K562 cancer cells, respectively, with the high precision. The experimental results also validate that the proposed method can be a powerful alternative to the current cell counting approaches.Item NOVEL SOFTWARE DEFECT PREDICTION METHOD BASED ON PCA AND OPTIMIZED LSTM(2022-01-10) AL-OBAIDI, ANMAR SADEQ JASIM; MISHRA, Alok; YAZICI, AliIn this thesis, new approach presented for software defect prediction applying PCA based LSTM. This study consists from two parts feature selection executed by PCA and classification part executed by LSTM. The aim applying PCA as feature selection is to reduce the size of input features to decrease the computation time by removing unaffected features. Then, the output of PCA wired to the LSTM that is time series classifier which classify the input software defect features to the two classes (defect and normal). The PSO applied to optimize the performance of the LSTM by updating the weight and basis of the LSTM to obtain best accuracy. The obtained results compared with common studies presented in this field.Item SOFTWARE MAINTENANCE ADAPTATION IN SOFTWARE COMPANIES: A CASE STUDY FOR TURKEY(2022-01-10) AL-BAKOA, ABDULLAH KHALID ABD ALRAHMAN; Yazıcı, AliSoftware Maintenance is used as an improvement and modification of software products after they have been delivered to the customer in terms of improving performance, increasing speed or adapting the software to a specific software application. In terms of overall cost of a software project, maintenance process is the one with the highest cost among the other Software Development Life Cycle (SDLC) activities. In this study, software maintenance models are discussed and compared in terms of cost, ease of use, and by stating the advanyages and disadvantages of each. Additionally, a survey was conducted to understand the approach taken by the Turkish software companies to conduct the maintenance process. The survey was distributed to over 100 companies with different sizes and results collected from 29 companies are analysed. It was observed that, companies are reluctant to use tools to manage software maintenance. At the same time, majority of the maintenance staff lacks the proper certification on the subject and this is not considered as a big constraint by the companies.Item MODIFYING SCRUM METHODOLOGY FOR RESEARCH-BASED SOFTWARE DEVELOPMENT PROJECTS(2022-01-10) ALKHARAM, AHMED ALI SALEM; Karakaya, Ziya; Yazıcı, AliSoftware development projects in different sizes are carried on by a group of people, who usually have a specific software development process management in order to manage their group within the project and keep track of the project process. Software development methodologies (SDM) were designed specifically for these kinds of projects. However, with different types of (SDM) there is no method precisely to manage research-based software development projects. Therefore, this study aims to conduct a systematic literature review to investigate whether Scrum methodology can be modified for research-based software development projects, identify the challenges that occurred within the projects when adopting the Scrum method along with recommended solutions for these challenges, and finally explore the best practices of Scrum method for research-based software development projects. Three main research questions were formulated to determine the information that is related to the study goals.Item A SYSTEMATIC MAPPING ON THE QUALITY AND UNDERSTANDABILITY OF UML DIAGRAMS(2022-01-10) TABRIZI, SINA ALIZADEH TABRIZI; Cagiltay, Nergiz Ercil; Topallı, DamlaNowadays, the concept of quality is an integral component of any tangible and intangible product and service. In the field of software, the quality is not merely confined to the final product, but it should be applied to all phases of the software development life cycle (SDLC). The Model-driven Software Development (MDSD) necessitates the experts with high skill to fabricate quality modelling artifacts in order to deliver an authentic perception of the desired system. One of the de facto modeling languages is Unified Modelling Language (UML) which is commonly used in the sphere of software engineering to model the system’s static and dynamic behaviors, to discern the system structure and to expedite the coding and communicating with the stakeholders on the required functional and non-functional requirements. The primary objective of the present thesis is to present the state-of-the-art on the quality and understandability of UML notation. Therefore, a systematic mapping was applied on 103 journal papers extracted from Web of Science. The results indicated that quality is the main aspect in such a way that other aspects like understandability and maintainability are subsets of this aspect. According to the reviewed studies 13 factors have been found to effective on the quality and understandability, namely, diagram, diagram type, evaluation, guideline, modelling, quality assessment approach, redundancy, refactoring, representations, requirements, software engineer (identified by modelling expertise, knowledge, experience, cognitive abilities, learning style, learning motive, learning strategy) structure and testing.Item A SYSTEMATIC MAPPING STUDY ON THE USE OF EYE-TRACKING IN PROGRAM UNDERSTANDABILITY(2022-01-10) ATIED, SHUKRULLAH; Çağıltay, Nergiz Ercil; Topalli, DamlaEye-tracking technology is used to get insight into a person’s vision and determine where they are looking and gather data on their visual behavior. Researchers have been collecting eye movement data to analyses and comprehend various tasks in Software Engineering (SE) by using eye-tracker technology. However, there are very limited studies analyzing the use of eye-tracking technology in the field of SE and providing a general picture from this perspective. Accordingly, in this thesis study, by undertaking a Systematic Mapping (SM) study, it is aimed to bring all evidence together and give an overview on the use of eye-tracking in SE, specifically for program comprehension. 121 related articles were selected after carefully reviewing and excluding unrelated studies. The result shows that the use of eye-tracking in SE is increased in recent years, and different SE activities were studied. Moreover, four different factors are influential in program comprehension: code elements and entities, tools, developer’s background, and eye movement and reading behaviors. These findings may help the developers to adopt the founded influential factors to help them in program understandability.Item IMAGE ANNOTATION USING DEEP LEARNING AND SEMANTIC WEB TECHNOLOGIES(2022-01-17) Sezen, Arda; Turhan, Çiğdem; Şengül, GökhanIn this thesis, we propose a hybrid solution for the cognitive task of generating image descriptions in the image annotation domain. Previous work on Neural Networks mostly focused on choosing the right labels and/or increasing the number of related labels to depict a picture. However, creating a set of related labels to describe a picture and depicting that picture through sentences are completely different phenomena, structurally, syntactically, and semantically. We present a framework that generates natural language descriptions of images in the sports domain within a controlled environment. Our approach leverages Artificial Intelligence and Ontologies to generate sentence descriptions of images. Our framework presents a novel combination of deep learning models and aligned annotation results derived from the instances of the ontology classes.Item GENERATING CLASS DIAGRAMS FROM SOFTWARE REQUIREMENTS IN TURKISH USING NATURAL LANGUAGE PROCESSING(2022-01-17) Demir, Fatih; TURHAN, Çiğdem; YAZICI, AliIn software engineering, designing software that meets its requirements is a challenging task. In order to assist software engineers in this difficult task, many systems have been proposed in the literature that automatically generate class diagrams from software requirements. However, most of those studies are for software requirements in English, and such studies are very few for software requirements in Turkish. In this study, a system that automatically generates UML class diagram from software requirements in Turkish is proposed. The system first analyzes software requirements using natural language processing tools, particularly the dependency parser tool. Then, this parsing result is processed by a rule-based system and the classes, attributes and methods of the classes as well as the relations between classes are extracted. The extracted items are transformed into a class diagram with the visualization tool. Promising results were obtained when the performance of the system was evaluated. Therefore, it is concluded that class diagrams can be generated using natural language processing tools, especially the dependency parser, from software requirements in Turkish.
- «
- 1 (current)
- 2
- 3
- »