Search results for: software solution
Commenced in January 2007
Frequency: Monthly
Edition: International
Paper Count: 10127

Search results for: software solution

10067 Refactoring Object Oriented Software through Community Detection Using Evolutionary Computation

Authors: R. Nagarani

Abstract:

An intrinsic property of software in a real-world environment is its need to evolve, which is usually accompanied by the increase of software complexity and deterioration of software quality, making software maintenance a tough problem. Refactoring is regarded as an effective way to address this problem. Many refactoring approaches at the method and class level have been proposed. But the extent of research on software refactoring at the package level is less. This work presents a novel approach to refactor the package structures of object oriented software using genetic algorithm based community detection. It uses software networks to represent classes and their dependencies. It uses a constrained community detection algorithm to obtain the optimized community structures in software networks, which also correspond to the optimized package structures. It finally provides a list of classes as refactoring candidates by comparing the optimized package structures with the real package structures.

Keywords: community detection, complex network, genetic algorithm, package, refactoring

Procedia PDF Downloads 420
10066 [Keynote Talk]: Software Reliability Assessment and Fault Tolerance: Issues and Challenges

Authors: T. Gayen

Abstract:

Although, there are several software reliability models existing today there does not exist any versatile model even today which can be used for the reliability assessment of software. Complex software has a large number of states (unlike the hardware) so it becomes practically difficult to completely test the software. Irrespective of the amount of testing one does, sometimes it becomes extremely difficult to assure that the final software product is fault free. The Black Box Software Reliability models are found be quite uncertain for the reliability assessment of various systems. As mission critical applications need to be highly reliable and since it is not always possible to ensure the development of highly reliable system. Hence, in order to achieve fault-free operation of software one develops some mechanism to handle faults remaining in the system even after the development. Although, several such techniques are currently in use to achieve fault tolerance, yet these mechanisms may not always be very suitable for various systems. Hence, this discussion is focused on analyzing the issues and challenges faced with the existing techniques for reliability assessment and fault tolerance of various software systems.

Keywords: black box, fault tolerance, failure, software reliability

Procedia PDF Downloads 426
10065 Visualizing Class Metrics and Object Calls for Software Systems

Authors: Mohammad Alnabhan, Awni Hammouri, Mustafa Hammad, Anas Al-Badareen, Omamah Al-Thnebat

Abstract:

Software visualization is one of the main techniques used to simplify the presentation of software systems and enhance their understandability. It is used to present the software system in a visual manner using simple, clear and meaningful symbols. This study proposes a new 2D software visualization approach. In this approach, each class is represented by rectangle, the name of the class placed above the rectangle, the size of class (Line of Code) represented by the height of the rectangle. The methods and the attributes are represented by circles and triangles respectively. The relationships among classes correspond to arrows. The proposed visualization approach was evaluated in terms of applicability and efficiency. Results have confirmed successful implementation of the proposed approach, and its ability to provide a simple and effective graphical presentation of extracted software components and properties.

Keywords: software visualization, software metrics, calling relationships, 2D graphs

Procedia PDF Downloads 205
10064 Usability Evaluation in Practice: Selecting the Appropriate Method

Authors: Hanan Hayat, Russell Lock

Abstract:

The importance of usability in ensuring software quality has been well established in literature and widely accepted by software development practitioners. Consequently, numerous usability evaluation methods have been developed. However, the availability of large variety of evaluation methods alongside insufficient studies that critically analyse them resulted in an ambiguous process of selection amongst non-usability-expert practitioners. This study investigates the factors affecting the selection of usability evaluation methods within a project by interviewing a software development team. The results of the data gathered are then analysed and integrated in developing a framework. The framework developed poses a solution to the selection processes of usability evaluation methods by adjusting to individual projects resources and goals. It has the potential to be further evaluated to verify its applicability and usability within the domain of this study.

Keywords: usability evaluation, evaluating usability in non-user entered designs, usability evaluation methods (UEM), usability evaluation in projects

Procedia PDF Downloads 161
10063 Intelligent Software Architecture and Automatic Re-Architecting Based on Machine Learning

Authors: Gebremeskel Hagos Gebremedhin, Feng Chong, Heyan Huang

Abstract:

Software system is the combination of architecture and organized components to accomplish a specific function or set of functions. A good software architecture facilitates application system development, promotes achievement of functional requirements, and supports system reconfiguration. We describe three studies demonstrating the utility of our architecture in the subdomain of mobile office robots and identify software engineering principles embodied in the architecture. The main aim of this paper is to analyze prove architecture design and automatic re-architecting using machine learning. Intelligence software architecture and automatic re-architecting process is reorganizing in to more suitable one of the software organizational structure system using the user access dataset for creating relationship among the components of the system. The 3-step approach of data mining was used to analyze effective recovery, transformation and implantation with the use of clustering algorithm. Therefore, automatic re-architecting without changing the source code is possible to solve the software complexity problem and system software reuse.

Keywords: intelligence, software architecture, re-architecting, software reuse, High level design

Procedia PDF Downloads 120
10062 FreGsd: A Framework for Golbal Software Requirement Engineering

Authors: Alsahli Abdulaziz Abdullah, Hameed Ullah Khan

Abstract:

Software development nowadays is more and more using global ways of development instead of normal development enviroment where development occur in one location. This paper is a aimed to propose a Requirement Engineering framework to support Global Software Development environment with regards to all requirment engineering activities from elicitation to fially magning requirment change. Global software enviroment is more and more gaining better reputation in software developmet with better quality is resulting from developing in this eviroment yet with lower cost.However, failure rate developing in this enviroment is high due to inapproprate requirment development and managment.This paper will add to the software engineering development envrioments discipline and many developers in GSD will benefit from it.

Keywords: global software development environment, GSD, requirement engineering, FreGsd, computer engineering

Procedia PDF Downloads 550
10061 Designing a Tool for Software Maintenance

Authors: Amir Ngah, Masita Abdul Jalil, Zailani Abdullah

Abstract:

The aim of software maintenance is to maintain the software system in accordance with advancement in software and hardware technology. One of the early works on software maintenance is to extract information at higher level of abstraction. In this paper, we present the process of how to design an information extraction tool for software maintenance. The tool can extract the basic information from old program such as about variables, based classes, derived classes, objects of classes, and functions. The tool have two main part; the lexical analyzer module that can read the input file character by character, and the searching module which is user can get the basic information from existing program. We implemented this tool for a patterned sub-C++ language as an input file.

Keywords: extraction tool, software maintenance, reverse engineering, C++

Procedia PDF Downloads 492
10060 Optimal Management of Internal Capital of Company

Authors: S. Sadallah

Abstract:

In this paper, dynamic programming is used to determine the optimal management of financial resources in company. Solution of the problem by consider into simpler substructures is constructed. The optimal management of internal capital of company are simulated. The tools applied in this development are based on graph theory. The software of given problems is built by using greedy algorithm. The obtained model and program maintenance enable us to define the optimal version of management of proper financial flows by using visual diagram on each level of investment.

Keywords: management, software, optimal, greedy algorithm, graph-diagram

Procedia PDF Downloads 285
10059 Requirement Engineering Within Open Source Software Development: A Case Study

Authors: Kars Beek, Remco Groeneveld, Sjaak Brinkkemper

Abstract:

Although there is much literature available on requirement documentation in traditional software development, few studies have been conducted about this topic in open source software development. While open-source software development is becoming more important, the software development processes are often not as structured as corporate software development processes. Papers show that communities, creating open-source software, often lack structure and documentation. However, most recent studies about this topic are often ten or more years old. Therefore, this research has been conducted to determine if the lack of structure and documentation in requirement engineering is currently still the situation in these communities. Three open-source products have been chosen as subjects for conducting this research. The data for this research was gathered based on interviews, observations, and analyses of feature proposals and issue tracking tools. In this paper, we present a comparison and an analysis of the different methods used for requirements documentation to understand the current practices of requirements documentation in open source software development.

Keywords: case study, open source software, open source software development, requirement elicitation, requirement engineering

Procedia PDF Downloads 106
10058 Software Development to Empowering Digital Libraries with Effortless Digital Cataloging and Access

Authors: Abdul Basit Kiani

Abstract:

The software for the digital library system is a cutting-edge solution designed to revolutionize the way libraries manage and provide access to their vast collections of digital content. This advanced software leverages the power of technology to offer a seamless and user-friendly experience for both library staff and patrons. By implementing this software, libraries can efficiently organize, store, and retrieve digital resources, including e-books, audiobooks, journals, articles, and multimedia content. Its intuitive interface allows library staff to effortlessly manage cataloging, metadata extraction, and content enrichment, ensuring accurate and comprehensive access to digital materials. For patrons, the software offers a personalized and immersive digital library experience. They can easily browse the digital catalog, search for specific items, and explore related content through intelligent recommendation algorithms. The software also facilitates seamless borrowing, lending, and preservation of digital items, enabling users to access their favorite resources anytime, anywhere, on multiple devices. With robust security features, the software ensures the protection of intellectual property rights and enforces access controls to safeguard sensitive content. Integration with external authentication systems and user management tools streamlines the library's administration processes, while advanced analytics provide valuable insights into patron behavior and content usage. Overall, this software for the digital library system empowers libraries to embrace the digital era, offering enhanced access, convenience, and discoverability of their vast collections. It paves the way for a more inclusive and engaging library experience, catering to the evolving needs of tech-savvy patrons.

Keywords: software development, empowering digital libraries, digital cataloging and access, management system

Procedia PDF Downloads 83
10057 Computer Software for Calculating Electron Mobility of Semiconductors Compounds; Case Study for N-Gan

Authors: Emad A. Ahmed

Abstract:

Computer software to calculate electron mobility with respect to different scattering mechanism has been developed. This software is adopted completely Graphical User Interface (GUI) technique and its interface has been designed by Microsoft Visual Basic 6.0. As a case study the electron mobility of n-GaN was performed using this software. The behaviour of the mobility for n-GaN due to elastic scattering processes and its relation to temperature and doping concentration were discussed. The results agree with other available theoretical and experimental data.

Keywords: electron mobility, relaxation time, GaN, scattering, computer software, computation physics

Procedia PDF Downloads 673
10056 Modeling Metrics for Monitoring Software Project Performance Based on the GQM Model

Authors: Mariayee Doraisamy, Suhaimi bin Ibrahim, Mohd Naz’ri Mahrin

Abstract:

There are several methods to monitor software projects and the objective for monitoring is to ensure that the software projects are developed and delivered successfully. A performance measurement is a method that is closely associated with monitoring and it can be scrutinized by looking at two important attributes which are efficiency and effectiveness both of which are factors that are important for the success of a software project. Consequently, a successful steering is achieved by monitoring and controlling a software project via the performance measurement criteria and metrics. Hence, this paper is aimed at identifying the performance measurement criteria and the metrics for monitoring the performance of a software project by using the Goal Question Metrics (GQM) approach. The GQM approach is utilized to ensure that the identified metrics are reliable and useful. These identified metrics are useful guidelines for project managers to monitor the performance of their software projects.

Keywords: component, software project performance, goal question metrics, performance measurement criteria, metrics

Procedia PDF Downloads 357
10055 Evolving Software Assessment and Certification Models Using Ant Colony Optimization Algorithm

Authors: Saad M. Darwish

Abstract:

Recently, software quality issues have come to be seen as important subject as we see an enormous growth of agencies involved in software industries. However, these agencies cannot guarantee the quality of their products, thus leaving users in uncertainties. Software certification is the extension of quality by means that quality needs to be measured prior to certification granting process. This research participates in solving the problem of software assessment by proposing a model for assessment and certification of software product that uses a fuzzy inference engine to integrate both of process–driven and application-driven quality assurance strategies. The key idea of the on hand model is to improve the compactness and the interpretability of the model’s fuzzy rules via employing an ant colony optimization algorithm (ACO), which tries to find good rules description by dint of compound rules initially expressed with traditional single rules. The model has been tested by case study and the results have demonstrated feasibility and practicability of the model in a real environment.

Keywords: software quality, quality assurance, software certification model, software assessment

Procedia PDF Downloads 524
10054 Operational Software Maturity: An Aerospace Industry Analysis

Authors: Raúl González Muñoz, Essam Shehab, Martin Weinitzke, Chris Fowler, Paul Baguley

Abstract:

Software applications have become crucial to the aerospace industry, providing a wide range of functionalities and capabilities used during the design, manufacturing and support of aircraft. However, as this criticality increases, so too does the risk for business operations when facing a software failure. Hence, there is a need for new methodologies to be developed to support aerospace companies in effectively managing their software portfolios, avoiding the hazards of business disruption and additional costs. This paper aims to provide a definition of operational software maturity, and how this can be used to assess software operational behaviour, as well as a view on the different aspects that drive software maturity within the aerospace industry. The key research question addressed is, how can operational software maturity monitoring assist the aerospace industry in effectively managing large software portfolios? This question has been addressed by conducting an in depth review of current literature, by working closely with aerospace professionals and by running an industry case study within a major aircraft manufacturer. The results are a software maturity model composed of a set of drivers and a prototype tool used for the testing and validation of the research findings. By utilising these methodologies to assess the operational maturity of software applications in aerospace, benefits in maintenance activities and operations disruption avoidance have been observed, supporting business cases for system improvement.

Keywords: aerospace, software lifecycle, software maintenance, software maturity

Procedia PDF Downloads 326
10053 Strategies to Improve Learning and Teaching of Software Packages Among Undergraduate Students

Authors: Sara Moridpour

Abstract:

Engineering students need to learn different software packages to meet the emerging industry needs. Face-to-face lectures provide an interactive environment for learning software packages. However, COVID changed expectations of face-to-face learning and teaching. It is essential to enhance the interaction among students and teachers in online and virtual learning and teaching of software packages. The proposed study introduces strategies for teaching engineering software packages in online and hybrid environments and evaluates students’ skills by an authentic assignment.

Keywords: teaching software packages, authentic assessment., engineering, undergraduate students

Procedia PDF Downloads 143
10052 Software Reliability Prediction Model Analysis

Authors: Lela Mirtskhulava, Mariam Khunjgurua, Nino Lomineishvili, Koba Bakuria

Abstract:

Software reliability prediction gives a great opportunity to measure the software failure rate at any point throughout system test. A software reliability prediction model provides with the technique for improving reliability. Software reliability is very important factor for estimating overall system reliability, which depends on the individual component reliabilities. It differs from hardware reliability in that it reflects the design perfection. Main reason of software reliability problems is high complexity of software. Various approaches can be used to improve the reliability of software. We focus on software reliability model in this article, assuming that there is a time redundancy, the value of which (the number of repeated transmission of basic blocks) can be an optimization parameter. We consider given mathematical model in the assumption that in the system may occur not only irreversible failures, but also a failure that can be taken as self-repairing failures that significantly affect the reliability and accuracy of information transfer. Main task of the given paper is to find a time distribution function (DF) of instructions sequence transmission, which consists of random number of basic blocks. We consider the system software unreliable; the time between adjacent failures has exponential distribution.

Keywords: exponential distribution, conditional mean time to failure, distribution function, mathematical model, software reliability

Procedia PDF Downloads 465
10051 On a Continuous Formulation of Block Method for Solving First Order Ordinary Differential Equations (ODEs)

Authors: A. M. Sagir

Abstract:

The aim of this paper is to investigate the performance of the developed linear multistep block method for solving first order initial value problem of Ordinary Differential Equations (ODEs). The method calculates the numerical solution at three points simultaneously and produces three new equally spaced solution values within a block. The continuous formulations enable us to differentiate and evaluate at some selected points to obtain three discrete schemes, which were used in block form for parallel or sequential solutions of the problems. A stability analysis and efficiency of the block method are tested on ordinary differential equations involving practical applications, and the results obtained compared favorably with the exact solution. Furthermore, comparison of error analysis has been developed with the help of computer software.

Keywords: block method, first order ordinary differential equations, linear multistep, self-starting

Procedia PDF Downloads 306
10050 Six-Phase Tooth-Coil Winding Starter-Generator Embedded in Aerospace Engine

Authors: Flur R. Ismagilov, Vyacheslav E. Vavilov, Denis V. Gusakov

Abstract:

This paper is devoted to solve the problem of increasing the electrification of aircraft engines by installing a synchronous generator at high pressure shaft. Technical solution of this problem by various research centers is discussed. A design solution of the problem was proposed. To evaluate the effectiveness of the proposed cooling system, thermal analysis was carried out in ANSYS software.

Keywords: starter-generator, more electrical engine, aircraft engines, high pressure shaft, synchronous generator

Procedia PDF Downloads 257
10049 A Review on Factors Influencing Implementation of Secure Software Development Practices

Authors: Sri Lakshmi Kanniah, Mohd Naz’ri Mahrin

Abstract:

More and more businesses and services are depending on software to run their daily operations and business services. At the same time, cyber-attacks are becoming more covert and sophisticated, posing threats to software. Vulnerabilities exist in the software due to the lack of security practices during the phases of software development. Implementation of secure software development practices can improve the resistance to attacks. Many methods, models and standards for secure software development have been developed. However, despite the efforts, they still come up against difficulties in their deployment and the processes are not institutionalized. There is a set of factors that influence the successful deployment of secure software development processes. In this study, the methodology and results from a systematic literature review of factors influencing the implementation of secure software development practices is described. A total of 44 primary studies were analysed as a result of the systematic review. As a result of the study, a list of twenty factors has been identified. Some of factors that affect implementation of secure software development practices are: Involvement of the security expert, integration between security and development team, developer’s skill and expertise, development time and communication between stakeholders. The factors were further classified into four categories which are institutional context, people and action, project content and system development process. The results obtained show that it is important to take into account organizational, technical and people issues in order to implement secure software development initiatives.

Keywords: secure software development, software development, software security, systematic literature review

Procedia PDF Downloads 381
10048 Determining the Most Efficient Test Available in Software Testing

Authors: Qasim Zafar, Matthew Anderson, Esteban Garcia, Steven Drager

Abstract:

Software failures can present an enormous detriment to people's lives and cost millions of dollars to repair when they are unexpectedly encountered in the wild. Despite a significant portion of the software development lifecycle and resources are dedicated to testing, software failures are a relatively frequent occurrence. Nevertheless, the evaluation of testing effectiveness remains at the forefront of ensuring high-quality software and software metrics play a critical role in providing valuable insights into quantifiable objectives to assess the level of assurance and confidence in the system. As the selection of appropriate metrics can be an arduous process, the goal of this paper is to shed light on the significance of software metrics by examining a range of testing techniques and metrics as well as identifying key areas for improvement. Additionally, through this investigation, readers will gain a deeper understanding of how metrics can help to drive informed decision-making on delivering high-quality software and facilitate continuous improvement in testing practices.

Keywords: software testing, software metrics, testing effectiveness, black box testing, random testing, adaptive random testing, combinatorial testing, fuzz testing, equivalence partition, boundary value analysis, white box testing

Procedia PDF Downloads 89
10047 Cross Project Software Fault Prediction at Design Phase

Authors: Pradeep Singh, Shrish Verma

Abstract:

Software fault prediction models are created by using the source code, processed metrics from the same or previous version of code and related fault data. Some company do not store and keep track of all artifacts which are required for software fault prediction. To construct fault prediction model for such company, the training data from the other projects can be one potential solution. The earlier we predict the fault the less cost it requires to correct. The training data consists of metrics data and related fault data at function/module level. This paper investigates fault predictions at early stage using the cross-project data focusing on the design metrics. In this study, empirical analysis is carried out to validate design metrics for cross project fault prediction. The machine learning techniques used for evaluation is Naïve Bayes. The design phase metrics of other projects can be used as initial guideline for the projects where no previous fault data is available. We analyze seven data sets from NASA Metrics Data Program which offer design as well as code metrics. Overall, the results of cross project is comparable to the within company data learning.

Keywords: software metrics, fault prediction, cross project, within project.

Procedia PDF Downloads 344
10046 Towards a Goal-Question-Metric Based Approach to Assess Social Sustainability of Software Systems

Authors: Rahma Amri, Narjès Bellamine Ben Saoud

Abstract:

Sustainable development or sustainability is one of the most urgent issues in actual debate in almost domains. Particularly the significant way the software pervades our live should make it in the center of sustainability concerns. The social aspects of sustainability haven’t been well studied in the context of software systems and still immature research field that needs more interest among researchers’ community. This paper presents a Goal-Question-Metric based approach to assess social sustainability of software systems. The approach is based on a generic social sustainability model taken from Social sciences.

Keywords: software assessment approach, social sustainability, goal-question-metric paradigm, software project metrics

Procedia PDF Downloads 397
10045 Software-Defined Architecture and Front-End Optimization for DO-178B Compliant Distance Measuring Equipment

Authors: Farzan Farhangian, Behnam Shakibafar, Bobda Cedric, Rene Jr. Landry

Abstract:

Among the air navigation technologies, many of them are capable of increasing aviation sustainability as well as accuracy improvement in Alternative Positioning, Navigation, and Timing (APNT), especially avionics Distance Measuring Equipment (DME), Very high-frequency Omni-directional Range (VOR), etc. The integration of these air navigation solutions could make a robust and efficient accuracy in air mobility, air traffic management and autonomous operations. Designing a proper RF front-end, power amplifier and software-defined transponder could pave the way for reaching an optimized avionics navigation solution. In this article, the possibility of reaching an optimum front-end to be used with single low-cost Software-Defined Radio (SDR) has been investigated in order to reach a software-defined DME architecture. Our software-defined approach uses the firmware possibilities to design a real-time software architecture compatible with a Multi Input Multi Output (MIMO) BladeRF to estimate an accurate time delay between a Transmission (Tx) and the reception (Rx) channels using the synchronous scheduled communication. We could design a novel power amplifier for the transmission channel of the DME to pass the minimum transmission power. This article also investigates designing proper pair pulses based on the DO-178B avionics standard. Various guidelines have been tested, and the possibility of passing the certification process for each standard term has been analyzed. Finally, the performance of the DME was tested in the laboratory environment using an IFR6000, which showed that the proposed architecture reached an accuracy of less than 0.23 Nautical mile (Nmi) with 98% probability.

Keywords: avionics, DME, software defined radio, navigation

Procedia PDF Downloads 80
10044 A Comparative Analysis of Zotero and Mendeley Reference Management Software

Authors: Sujit K. Basak

Abstract:

This paper presents a comparison of the reference management software between Zotero and Mendeley and the results were drawn by comparing the two software’s. The novelty of this paper is the comparative analysis of the software and it has shown that Mendeley can import more information from the Google Scholar for the researchers. This finding can help to know researchers to use the reference management software.

Keywords: analysis, comparative analysis, zotero, researchers, Mendeley

Procedia PDF Downloads 614
10043 D6tions: A Serious Game to Learn Software Engineering Process and Design

Authors: Hector G. Perez-Gonzalez, Miriam Vazquez-Escalante, Sandra E. Nava-Muñoz, 
 Francisco E. Martinez-Perez, Alberto S. Nunez-Varela

Abstract:

The software engineering teaching process has been the subject of many studies. To improve this process, researchers have proposed merely illustrative techniques in the classroom, such as topic presentations and dynamics between students on one side or attempts to involve students in real projects with companies and institutions to bring them to a real software development problem on the other hand. Simulators and serious games have been used as auxiliary tools to introduce students to topics that are too abstract when these are presented in the traditional way. Most of these tools cover a limited area of the huge software engineering scope. To address this problem, we have developed D6tions, an educational serious game that simulates the software engineering process and is designed to experiment the different stages a software engineer (playing roles as project leader or as a developer or designer) goes through, while participating in a software project. We describe previous approaches to this problem, how D6tions was designed, its rules, directions, and the results we obtained of the use of this game involving undergraduate students playing the game.

Keywords: serious games, software engineering, software engineering education, software engineering teaching process

Procedia PDF Downloads 494
10042 User-Driven Product Line Engineering for Assembling Large Families of Software

Authors: Zhaopeng Xuan, Yuan Bian, C. Cailleaux, Jing Qin, S. Traore

Abstract:

Traditional software engineering allows engineers to propose to their clients multiple specialized software distributions assembled from a shared set of software assets. The management of these assets however requires a trade-off between client satisfaction and software engineering process. Clients have more and more difficult to find a distribution or components based on their needs from all of distributed repositories. This paper proposes a software engineering for a user-driven software product line in which engineers define a feature model but users drive the actual software distribution on demand. This approach makes the user become final actor as a release manager in software engineering process, increasing user product satisfaction and simplifying user operations to find required components. In addition, it provides a way for engineers to manage and assembly large software families. As a proof of concept, a user-driven software product line is implemented for eclipse, an integrated development environment. An eclipse feature model is defined, which is exposed to users on a cloud-based built platform from which clients can download individualized Eclipse distributions.

Keywords: software product line, model-driven development, reverse engineering and refactoring, agile method

Procedia PDF Downloads 433
10041 A Method and System for Secure Authentication Using One Time QR Code

Authors: Divyans Mahansaria

Abstract:

User authentication is an important security measure for protecting confidential data and systems. However, the vulnerability while authenticating into a system has significantly increased. Thus, necessary mechanisms must be deployed during the process of authenticating a user to safeguard him/her from the vulnerable attacks. The proposed solution implements a novel authentication mechanism to counter various forms of security breach attacks including phishing, Trojan horse, replay, key logging, Asterisk logging, shoulder surfing, brute force search and others. QR code (Quick Response Code) is a type of matrix barcode or two-dimensional barcode that can be used for storing URLs, text, images and other information. In the proposed solution, during each new authentication request, a QR code is dynamically generated and presented to the user. A piece of generic information is mapped to plurality of elements and stored within the QR code. The mapping of generic information with plurality of elements, randomizes in each new login, and thus the QR code generated for each new authentication request is for one-time use only. In order to authenticate into the system, the user needs to decode the QR code using any QR code decoding software. The QR code decoding software needs to be installed on handheld mobile devices such as smartphones, personal digital assistant (PDA), etc. On decoding the QR code, the user will be presented a mapping between the generic piece of information and plurality of elements using which the user needs to derive cipher secret information corresponding to his/her actual password. Now, in place of the actual password, the user will use this cipher secret information to authenticate into the system. The authentication terminal will receive the cipher secret information and use a validation engine that will decipher the cipher secret information. If the entered secret information is correct, the user will be provided access to the system. Usability study has been carried out on the proposed solution, and the new authentication mechanism was found to be easy to learn and adapt. Mathematical analysis of the time taken to carry out brute force attack on the proposed solution has been carried out. The result of mathematical analysis showed that the solution is almost completely resistant to brute force attack. Today’s standard methods for authentication are subject to a wide variety of software, hardware, and human attacks. The proposed scheme can be very useful in controlling the various types of authentication related attacks especially in a networked computer environment where the use of username and password for authentication is common.

Keywords: authentication, QR code, cipher / decipher text, one time password, secret information

Procedia PDF Downloads 269
10040 Object-Oriented Program Comprehension by Identification of Software Components and Their Connexions

Authors: Abdelhak-Djamel Seriai, Selim Kebir, Allaoua Chaoui

Abstract:

During the last decades, object oriented program- ming has been massively used to build large-scale systems. However, evolution and maintenance of such systems become a laborious task because of the lack of object oriented programming to offer a precise view of the functional building blocks of the system. This lack is caused by the fine granularity of classes and objects. In this paper, we use a post object-oriented technology namely software components, to propose an approach based on the identification of the functional building blocks of an object oriented system by analyzing its source code. These functional blocks are specified as software components and the result is a multi-layer component based software architecture.

Keywords: software comprehension, software component, object oriented, software architecture, reverse engineering

Procedia PDF Downloads 416
10039 A Robust Implementation of a Building Resources Access Rights Management System

Authors: Eugen Neagoe, Victor Balanica

Abstract:

A Smart Building Controller (SBC) is a server software that offers secured access to a pool of building specific resources, executes monitoring tasks and performs automatic administration of a building, thus optimizing the exploitation cost and maximizing comfort. This paper brings to discussion the issues that arise with the secure exploitation of the SBC administered resources and proposes a technical solution to implement a robust secure access system based on roles, individual rights and privileges (special rights).

Keywords: smart building controller, software security, access rights, access authorization

Procedia PDF Downloads 440
10038 An Orphan Software Engineering Course: Supportive Ways toward a True Software Engineer

Authors: Haya Sammana

Abstract:

A well-defined curricula must be adopted to meet the increasing complexity and diversity in the software applications. In reality, some IT majors such as computer science and computer engineering receive the software engineering education in a single course which is considered as a big challenged for the instructors and universities. Also, it requires students to gain the most of practical experiences that simulate the real work in software companies. Furthermore, we have noticed that there is no consensus on how, when and what to teach in that introductory course to gain the practical experiences that are required by the software companies. Because all of software engineering disciplines will not fit in just one course, so the course needs reasonable choices in selecting its topics. This arises an important question which is an essential one to ask: Is this course has the ability to formulate a true software engineer that meets the needs of industry? This question arises a big challenge in selecting the appropriate topics. So answering this question is very important for the next undergraduate students. During teaching this course in the curricula, the feedbacks from an undergraduate students and the keynotes of the annual meeting for an advisory committee from industrial side provide a probable answer for the proposed question: it is impossible to build a true software engineer who possesses all the essential elements of software engineering education such teamwork, communications skills, project management skills and contemporary industrial practice from one course and it is impossible to have a one course covering all software engineering topics. Besides the used teaching approach, the author proposes an implemented three supportive ways aiming for mitigating the expected risks and increasing the opportunity to build a true software engineer.

Keywords: software engineering course, software engineering education, software experience, supportive approach

Procedia PDF Downloads 361