Search results for: secure software development
20236 Improving Learning and Teaching of Software Packages among Engineering Students
Authors: Sara Moridpour
Abstract:
To meet emerging industry needs, engineering students must learn different software packages and enhance their computational skills. Traditionally, face-to-face is selected as the preferred approach to teaching software packages. Face-to-face tutorials and workshops provide an interactive environment for learning software packages where the students can communicate with the teacher and interact with other students, evaluate their skills, and receive feedback. However, COVID-19 significantly limited face-to-face learning and teaching activities at universities. Worldwide lockdowns and the shift to online and remote learning and teaching provided the opportunity to introduce different strategies to enhance the interaction among students and teachers in online and virtual environments and improve the learning and teaching of software packages in online and blended teaching methods. This paper introduces a blended strategy to teach engineering software packages to undergraduate students. This article evaluates the effectiveness of the proposed blended learning and teaching strategy in students’ learning by comparing the impact of face-to-face, online and the proposed blended environments on students’ software skills. The paper evaluates the students’ software skills and their software learning through an authentic assignment. According to the results, the proposed blended teaching strategy successfully improves the software learning experience among undergraduate engineering students.Keywords: teaching software packages, undergraduate students, blended learning and teaching, authentic assessment
Procedia PDF Downloads 11520235 Collaborative Platform for Learning Basic Programming (Algorinfo)
Authors: Edgar Mauricio Ruiz Osuna, Claudia Yaneth Herrera Bolivar, Sandra Liliana Gomez Vasquez
Abstract:
The increasing needs of professionals with skills in software development in industry are incremental, therefore, the relevance of an educational process in line with the strengthening of these competencies, are part of the responsibilities of universities with careers related to the area of Informatics and Systems. In this sense, it is important to consider that in the National Science, Technology and Innovation Plan for the development of the Electronics, Information Technologies and Communications (2013) sectors, it is established as a weakness in the SWOT Analysis of the Software sector and Services, Deficiencies in training and professional training. Accordingly, UNIMINUTO's Computer Technology Program has addressed the analysis of students' performance in software development, identifying various problems such as dropout in programming subjects, academic averages, as well as deficiencies in strategies and competencies developed in the area of programming. As a result of this analysis, it was determined to design a collaborative learning platform in basic programming using heat maps as a tool to support didactic feedback. The pilot phase allows to evaluate in a programming course the ALGORINFO platform as a didactic resource, through an interactive and collaborative environment where students can develop basic programming practices and in turn, are fed back through the analysis of time patterns and difficulties frequent in certain segments or program cycles, by means of heat maps. The result allows the teacher to have tools to reinforce and advise critical points generated on the map, so that students and graduates improve their skills as software developers.Keywords: collaborative platform, learning, feedback, programming, heat maps
Procedia PDF Downloads 16220234 Efficient Signcryption Scheme with Provable Security for Smart Card
Authors: Jayaprakash Kar, Daniyal M. Alghazzawi
Abstract:
The article proposes a novel construction of signcryption scheme with provable security which is most suited to implement on smart card. It is secure in random oracle model and the security relies on Decisional Bilinear Diffie-Hellmann Problem. The proposed scheme is secure against adaptive chosen ciphertext attack (indistiguishbility) and adaptive chosen message attack (unforgebility). Also, it is inspired by zero-knowledge proof. The two most important security goals for smart card are Confidentiality and authenticity. These functions are performed in one logical step in low computational cost.Keywords: random oracle, provable security, unforgebility, smart card
Procedia PDF Downloads 59320233 Socio-Technical Systems: Transforming Theory into Practice
Authors: L. Ngowi, N. H. Mvungi
Abstract:
This paper critically examines the evolution of socio-technical systems theory, its practices, and challenges in system design and development. It examines concepts put forward by researchers focusing on the application of the theory in software engineering. There are various methods developed that use socio-technical concepts based on systems engineering without remarkable success. The main constraint is the large amount of data and inefficient techniques used in the application of the concepts in system engineering for developing time-bound systems and within a limited/controlled budget. This paper critically examines each of the methods, highlight bottlenecks and suggest the way forward. Since socio-technical systems theory only explains what to do, but not how doing it, hence engineers are not using the concept to save time, costs and reduce risks associated with new frameworks. Hence, a new framework, which can be considered as a practical approach is proposed that borrows concepts from soft systems method, agile systems development and object-oriented analysis and design to bridge the gap between theory and practice. The approach will enable the development of systems using socio-technical systems theory to attract/enable the system engineers/software developers to use socio-technical systems theory in building worthwhile information systems to avoid fragilities and hostilities in the work environment.Keywords: socio-technical systems, human centered design, software engineering, cognitive engineering, soft systems, systems engineering
Procedia PDF Downloads 28620232 A Survey of Baseband Architecture for Software Defined Radio
Authors: M. A. Fodha, H. Benfradj, A. Ghazel
Abstract:
This paper is a survey of recent works that proposes a baseband processor architecture for software defined radio. A classification of different approaches is proposed. The performance of each architecture is also discussed in order to clarify the suitable approaches that meet software-defined radio constraints.Keywords: multi-core architectures, reconfigurable architectures, software defined radio, baseband processor
Procedia PDF Downloads 47520231 Automated Detection of Related Software Changes by Probabilistic Neural Networks Model
Authors: Yuan Huang, Xiangping Chen, Xiaonan Luo
Abstract:
Current software are continuously updating. The change between two versions usually involves multiple program entities (e.g., packages, classes, methods, attributes) with multiple purposes (e.g., changed requirements, bug fixing). It is hard for developers to understand which changes are made for the same purpose. Whether two changes are related is not decided by the relationship between this two entities in the program. In this paper, we summarized 4 coupling rules(16 instances) and 4 state-combination types at the class, method and attribute levels for software change. Related Change Vector (RCV) are defined based on coupling rules and state-combination types, and applied to classify related software changes by using Probabilistic Neural Network during a software updating.Keywords: PNN, related change, state-combination, logical coupling, software entity
Procedia PDF Downloads 43720230 Impact Analysis Based on Change Requirement Traceability in Object Oriented Software Systems
Authors: Sunil Tumkur Dakshinamurthy, Mamootil Zachariah Kurian
Abstract:
Change requirement traceability in object oriented software systems is one of the challenging areas in research. We know that the traces between links of different artifacts are to be automated or semi-automated in the software development life cycle (SDLC). The aim of this paper is discussing and implementing aspects of dynamically linking the artifacts such as requirements, high level design, code and test cases through the Extensible Markup Language (XML) or by dynamically generating Object Oriented (OO) metrics. Also, non-functional requirements (NFR) aspects such as stability, completeness, clarity, validity, feasibility and precision are discussed. We discuss this as a Fifth Taxonomy, which is a system vulnerability concern.Keywords: artifacts, NFRs, OO metrics, SDLC, XML
Procedia PDF Downloads 34220229 Software Component Identification from Its Object-Oriented Code: Graph Metrics Based Approach
Authors: Manel Brichni, Abdelhak-Djamel Seriai
Abstract:
Systems are increasingly complex. To reduce their complexity, an abstract view of the system can simplify its development. To overcome this problem, we propose a method to decompose systems into subsystems while reducing their coupling. These subsystems represent components. Consisting of an existing object-oriented systems, the main idea of our approach is based on modelling as graphs all entities of an oriented object source code. Such modelling is easy to handle, so we can apply restructuring algorithms based on graph metrics. The particularity of our approach consists in integrating in addition to standard metrics, such as coupling and cohesion, some graph metrics giving more precision during the components identication. To treat this problem, we relied on the ROMANTIC approach that proposed a component-based software architecture recovery from an object oriented system.Keywords: software reengineering, software component and interfaces, metrics, graphs
Procedia PDF Downloads 50120228 Critical Success Factors Quality Requirement Change Management
Authors: Jamshed Ahmad, Abdul Wahid Khan, Javed Ali Khan
Abstract:
Managing software quality requirements change management is a difficult task in the field of software engineering. Avoiding incoming changes result in user dissatisfaction while accommodating to many requirement changes may delay product delivery. Poor requirements management is solely considered the primary cause of the software failure. It becomes more challenging in global software outsourcing. Addressing success factors in quality requirement change management is desired today due to the frequent change requests from the end-users. In this research study, success factors are recognized and scrutinized with the help of a systematic literature review (SLR). In total, 16 success factors were identified, which significantly impacted software quality requirement change management. The findings show that Proper Requirement Change Management, Rapid Delivery, Quality Software Product, Access to Market, Project Management, Skills and Methodologies, Low Cost/Effort Estimation, Clear Plan and Road Map, Agile Processes, Low Labor Cost, User Satisfaction, Communication/Close Coordination, Proper Scheduling and Time Constraints, Frequent Technological Changes, Robust Model, Geographical distribution/Cultural differences are the key factors that influence software quality requirement change. The recognized success factors and validated with the help of various research methods, i.e., case studies, interviews, surveys and experiments. These factors are then scrutinized in continents, database, company size and period of time. Based on these findings, requirement change will be implemented in a better way.Keywords: global software development, requirement engineering, systematic literature review, success factors
Procedia PDF Downloads 19720227 Quality Assurance in Software Design Patterns
Authors: Rabbia Tariq, Hannan Sajjad, Mehreen Sirshar
Abstract:
Design patterns are widely used to make the process of development easier as they greatly help the developers to develop the software. Different design patterns have been introduced till now but the behavior of same design pattern may differ in different domains that can lead to the wrong selection of the design pattern. The paper aims to discover the design patterns that suits best with respect to their domain thereby helping the developers to choose an effective design pattern. It presents the comprehensive analysis of design patterns based on different methodologies that include simulation, case study and comparison of various algorithms. Due to the difference of the domain the methodology used in one domain may be inapplicable to the other domain. The paper draws a conclusion based on strength and limitation of each design pattern in their respective domain.Keywords: design patterns, evaluation, quality assurance, software domains
Procedia PDF Downloads 52120226 A Study of Issues and Mitigations on Distributed Denial of Service and Medical Internet of Things Devices
Authors: Robin Singh, Jing-Chiou Liou
Abstract:
The Internet of Things (IoT) devices are being used heavily as part of our everyday routines. Through improved communication and automated procedures, its popularity has assisted users in raising the quality of work. These devices are used in healthcare in order to better collect the patient’s data for their treatment. They are generally considered safe and secure. However, there is some possibility that some loopholes do exist which manufacturers do need to identify before some hacker takes advantage of them. For this study, we focused on two medical IoT devices which are pacemakers and hearing aids. The aim of this paper is to identify if there is any likelihood of these medical devices being hijacked and used as a botnet in Distributed Denial-Of Service attacks. Moreover, some mitigation strategies are being proposed to better secureKeywords: cybersecurity, DDoS, IoT, medical devices
Procedia PDF Downloads 8620225 Comparative between Different Methodological Procedures Used to Obtain Information on the First Lexical Development in Bilingual Basque-Spanish Children
Authors: Asier Romero Andonegi, Irati De Pablo Delgado
Abstract:
The objective of this study is to explore the different methodological procedures that are used to obtain information on the early linguistic development of children. To this end, two different methodological procedures were carried out on the same sample: on the one hand, the MacArthur-Bates Communicative Development Inventories, in its adaptations in Spanish and Basque; and on the other hand, longitudinal observation through professional software: ELAN and CHAT. The sample consists of 8 Basque children/ages 16 to 30 months with different mother tongue (L1). The results show the usefulness of inventories in obtaining information on the development of early communication and language skills, but also their limitations mostly focused on the interpretive overvaluation of their children’s lexical development.Keywords: early language development, language evaluation, lexicon, MacArthur-Bates communicative development inventories
Procedia PDF Downloads 15720224 An Effective Route to Control of the Safety of Accessing and Storing Data in the Cloud-Based Data Base
Authors: Omid Khodabakhshi, Amir Rozdel
Abstract:
The subject of cloud computing security research has allocated a number of challenges and competitions because the data center is comprised of complex private information and are always faced various risks of information disclosure by hacker attacks or internal enemies. Accordingly, the security of virtual machines in the cloud computing infrastructure layer is very important. So far, there are many software solutions to develop security in virtual machines. But using software alone is not enough to solve security problems. The purpose of this article is to examine the challenges and security requirements for accessing and storing data in an insecure cloud environment. In other words, in this article, a structure is proposed for the implementation of highly isolated security-sensitive codes using secure computing hardware in virtual environments. It also allows remote code validation with inputs and outputs. We provide these security features even in situations where the BIOS, the operating system, and even the super-supervisor are infected. To achieve these goals, we will use the hardware support provided by the new Intel and AMD processors, as well as the TPM security chip. In conclusion, the use of these technologies ultimately creates a root of dynamic trust and reduces TCB to security-sensitive codes.Keywords: code, cloud computing, security, virtual machines
Procedia PDF Downloads 19120223 Instruct Students Effective Ways to Reach an Advanced Level after Graduation
Authors: Huynh Tan Hoi
Abstract:
Considered as one of the hardest languages in the world, Japanese is still the language that many young people choose to learn. Today, with the development of technology, learning foreign languages in general and Japanese language, in particular, is not an impossible barrier. Learning materials are not only from paper books, songs but also through software programs of smartphones or computers. Especially, students who begin to explore effective skills to study this language need to access modern technologies to improve their learning much better. When using the software, some students may feel embarrassed and challenged, but everything would go smoothly after a few days. After completing the course, students will get more knowledge, achieve a higher knowledge such as N2 or N1 Japanese Language Proficiency Test Certificate. In this research paper, 35 students who are studying at Ho Chi Minh City FPT University were asked to complete the questionnaire at the beginning of July up to August of 2018. Through this research, we realize that with the guidance of lecturers, the necessity of using modern software and some effective methods are indispensable in term of improving quality of teaching and learning process.Keywords: higher knowledge, Japanese, methods, software, students
Procedia PDF Downloads 22520222 Efficient Control of Some Dynamic States of Wheeled Robots
Authors: Boguslaw Schreyer
Abstract:
In some types of wheeled robots it is important to secure starting acceleration and deceleration maxima while at the same time maintaining transversal stability. In this paper torque distribution between the front and rear wheels as well as the timing of torque application have been calculated. Both secure an optimum traction coefficient. This paper also identifies required input signals to a control unit, which controls the torque values and timing. Using a three dimensional, two mass model of a robot developed by the author a computer simulation was performed confirming the calculations presented in this paper. These calculations were also implemented and confirmed during military robot testing.Keywords: robot dynamics, torque distribution, traction coefficient, wheeled robots
Procedia PDF Downloads 31220221 Analyzing the Impact of Code Commenting on Software Quality
Authors: Thulya Premathilake, Tharushi Perera, Hansi Thathsarani, Tharushi Nethmini, Dilshan De Silva, Piyumika Samarasekara
Abstract:
One of the most efficient ways to assist developers in grasping the source code is to make use of comments, which can be found throughout the code. When working in fields such as software development, having comments in your code that are of good quality is a fundamental requirement. Tackling software problems while making use of programs that have already been built. It is essential for the intention of the source code to be made crystal apparent in the comments that are added to the code. This assists programmers in better comprehending the programs they are working on and enables them to complete software maintenance jobs in a more timely manner. In spite of the fact that comments and documentation are meant to improve readability and maintainability, the vast majority of programmers place the majority of their focus on the actual code that is being written. This study provides a complete and comprehensive overview of the previous research that has been conducted on the topic of code comments. The study focuses on four main topics, including automated comment production, comment consistency, comment classification, and comment quality rating. One is able to get the knowledge that is more complete for use in following inquiries if they conduct an analysis of the proper approaches that were used in this study issue.Keywords: code commenting, source code, software quality, quality assurance
Procedia PDF Downloads 8520220 Drive Sharing with Multimodal Interaction: Enhancing Safety and Efficiency
Authors: Sagar Jitendra Mahendrakar
Abstract:
Exploratory testing is a dynamic and adaptable method of software quality assurance that is frequently praised for its ability to find hidden flaws and improve the overall quality of the product. Instead of using preset test cases, exploratory testing allows testers to explore the software application dynamically. This is in contrast to scripted testing methodologies, which primarily rely on tester intuition, creativity, and adaptability. There are several tools and techniques that can aid testers in the exploratory testing process which we will be discussing in this talk.Tests of this kind are able to find bugs of this kind that are harder to find during structured testing or that other testing methods may have overlooked.The purpose of this abstract is to examine the nature and importance of exploratory testing in modern software development methods. It explores the fundamental ideas of exploratory testing, highlighting the value of domain knowledge and tester experience in spotting possible problems that may escape the notice of traditional testing methodologies. Throughout the software development lifecycle, exploratory testing promotes quick feedback loops and continuous improvement by giving testers the ability to make decisions in real time based on their observations. This abstract also clarifies the unique features of exploratory testing, like its non-linearity and capacity to replicate user behavior in real-world settings. Testers can find intricate bugs, usability problems, and edge cases in software through impromptu exploration that might go undetected. Exploratory testing's flexible and iterative structure fits in well with agile and DevOps processes, allowing for a quicker time to market without sacrificing the quality of the final product.Keywords: exploratory, testing, automation, quality
Procedia PDF Downloads 5120219 New Practical and Non-Malleable Elgamal Encryption for E-Voting Protoco
Authors: Karima Djebaili, Lamine Melkemi
Abstract:
Elgamal encryption is a fundamental public-key encryption in cryptography, which is based on the difficulty of discrete logarithm problem and the Diffie-Hellman problem. Supposing the Diffie–Hellman problem is computationally infeasible then Elgamal is secure under a chosen plaintext attack, where security indicates it is difficult for the attacker, given the ciphertext, to restore the whole of the plaintext. However, although it is secure against chosen plaintext attack, Elgamal is absolutely malleable i.e. is not secure against an adaptive chosen ciphertext attack, where the attacker can recover the plaintext. We present a extension on Elgamal encryption which result in non-malleability against adaptive chosen plaintext attack using concatenation and a cryptographic hash function, our evidence utilizes the device of plaintext aware. The algorithm proposed can be used in cryptography voting protocol given its level security. Our protocol protects the confidentiality of voters because each voter encrypts their choice before casting their vote, offers public verifiability using a signing algorithm, the final result is correctly computed using homomorphic property, and works even in the presence of an adversary due to the propriety of non-malleability. Moreover, the protocol prevents some parties colluding to fix the vote results.Keywords: Elgamal encryption, non-malleability, plaintext aware, e-voting
Procedia PDF Downloads 45120218 Code Refactoring Using Slice-Based Cohesion Metrics and AOP
Authors: Jagannath Singh, Durga Prasad Mohapatra
Abstract:
Software refactoring is very essential for maintaining the software quality. It is an usual practice that we first design the software and then go for coding. But after coding is completed, if the requirement changes slightly or our expected output is not achieved, then we change the codes. For each small code change, we cannot change the design. In course of time, due to these small changes made to the code, the software design decays. Software refactoring is used to restructure the code in order to improve the design and quality of the software. In this paper, we propose an approach for performing code refactoring. We use slice-based cohesion metrics to identify the target methods which requires refactoring. After identifying the target methods, we use program slicing to divide the target method into two parts. Finally, we have used the concepts of Aspects to adjust the code structure so that the external behaviour of the original module does not change.Keywords: software refactoring, program slicing, AOP, cohesion metrics, code restructure, AspectJ
Procedia PDF Downloads 51320217 Techno Commercial Aspects of Using LPG as an Alternative Energy Solution for Transport and Industrial Sector in Bangladesh: Case Studies in Industrial Sector
Authors: Mahadehe Hassan
Abstract:
Transport system and industries which are the main basis of industrial and socio-economic development of any country. It is mainly dependent on fossil fuels. Bangladesh has fossil fuel reserves of 9.51 TCF as of July 2023, and if no new gas fields are discovered in the next 7-9 years and if the existing gas consumption rate continues, the fossil fuel reserves will be exhausted. The demand for petroleum products in Bangladesh is increasing steadily, with 63% imported by BPC and 37% imported by private companies. 61.61% of BPC imported products are used in the transport sector and 5.49% in the industrial sector, which is expensive and harmful to the environment. Liquefied Petroleum Gas (LPG) should be considered as an alternative energy for Bangladesh based on Sustainable Development Goals (SDGs) criteria for sustainable, clean and affordable energy. This will not only lead to the much desired mitigation of energy famine in the country but also contribute favorably to the macroeconomic indicators. Considering the environmental and economic issues, the government has referred to CNG (compressed natural gas) as the fuel carrier since 2000, but currently due to the decline mode of gas reserves, the government of Bangladesh is thinking of new energy sources for transport and industrial sectors which will be sustainable, environmentally friendly and economically viable. Liquefied Petroleum Gas (LPG) is the best choice for fueling transport and industrial sectors in Bangladesh. At present, a total of 1.54 million metric tons of liquefied petroleum gas (LPG) is marketed in Bangladesh by the public and private sectors. 83% of it is used by households, 12% by industry and commerce and 5% by transportation. Industrial and transport sector consumption is negligible compared to household consumption. So the purpose of the research is to find out the challenges of LPG market development in transport and industrial sectors in Bangladesh and make recommendations to reduce the challenges. Secure supply chain, inadequate infrastructure, insufficient investment, lack of government monitoring and consumer awareness in the transport sector and industrial sector are major challenges for LPG market development in Bangladesh. Bangladesh government as well as private owners should come forward in the development of liquefied petroleum gas (LPG) industry to reduce the challenges of secure energy sector for sustainable development. Furthermore, ensuring adequate Liquefied Petroleum Gas (LPG) supply in Bangladesh requires government regulations, infrastructure improvements in port areas, awareness raising and most importantly proper pricing of Liquefied Petroleum Gas (LPG) to address the energy crisis in Bangladesh.Keywords: transportand industries fuel, LPG consumption, challenges, economical sustainability
Procedia PDF Downloads 8320216 Architecture - Performance Relationship in GPU Computing - Composite Process Flow Modeling and Simulations
Authors: Ram Mohan, Richard Haney, Ajit Kelkar
Abstract:
Current developments in computing have shown the advantage of using one or more Graphic Processing Units (GPU) to boost the performance of many computationally intensive applications but there are still limits to these GPU-enhanced systems. The major factors that contribute to the limitations of GPU(s) for High Performance Computing (HPC) can be categorized as hardware and software oriented in nature. Understanding how these factors affect performance is essential to develop efficient and robust applications codes that employ one or more GPU devices as powerful co-processors for HPC computational modeling. This research and technical presentation will focus on the analysis and understanding of the intrinsic interrelationship of both hardware and software categories on computational performance for single and multiple GPU-enhanced systems using a computationally intensive application that is representative of a large portion of challenges confronting modern HPC. The representative application uses unstructured finite element computations for transient composite resin infusion process flow modeling as the computational core, characteristics and results of which reflect many other HPC applications via the sparse matrix system used for the solution of linear system of equations. This work describes these various software and hardware factors and how they interact to affect performance of computationally intensive applications enabling more efficient development and porting of High Performance Computing applications that includes current, legacy, and future large scale computational modeling applications in various engineering and scientific disciplines.Keywords: graphical processing unit, software development and engineering, performance analysis, system architecture and software performance
Procedia PDF Downloads 36320215 Developing Rice Disease Analysis System on Mobile via iOS Operating System
Authors: Rujijan Vichivanives, Kittiya Poonsilp, Canasanan Wanavijit
Abstract:
This research aims to create mobile tools to analyze rice disease quickly and easily. The principle of object-oriented software engineering and objective-C language were used for software development methodology and the principle of decision tree technique was used for analysis method. Application users can select the features of rice disease or the color appears on the rice leaves for recognition analysis results on iOS mobile screen. After completing the software development, unit testing and integrating testing method were used to check for program validity. In addition, three plant experts and forty farmers have been assessed for usability and benefit of this system. The overall of users’ satisfaction was found in a good level, 57%. The plant experts give a comment on the addition of various disease symptoms in the database for more precise results of the analysis. For further research, it is suggested that image processing system should be developed as a tool that allows users search and analyze for rice diseases more convenient with great accuracy.Keywords: rice disease, data analysis system, mobile application, iOS operating system
Procedia PDF Downloads 28720214 Performance Evaluation of REST and GraphQL API Models in Microservices Software Development Domain
Authors: Mohamed S. M. Elghazal, Adel Aneiba, Essa Q. Shahra
Abstract:
This study presents a comprehensive comparative analysis of REST and GraphQL API models within the context of microservices development, offering empirical insights into the strengths and limitations of each approach. The research explores the effectiveness and efficiency of GraphQL versus REST, focusing on their impact on critical software quality metrics and user experience. Using a controlled experimental setup, the study evaluates key performance indicators, including response time, data transfer efficiency, and error rates. The findings reveal that REST APIs demonstrate superior memory efficiency and faster response times, particularly under high-load conditions, making them a reliable choice for performance-critical microservices. On the other hand, GraphQL excels in offering greater flexibility for data fetching but exhibits higher response times and increased error rates when handling complex queries. This research provides a nuanced understanding of the trade-offs between REST and GraphQL API interaction models, offering actionable guidance for developers and researchers in selecting the optimal API model for microservice-based applications. The insights are particularly valuable for balancing considerations such as performance, flexibility, and reliability in real-world implementations.Keywords: REST API, GraphQL AP, microservice, software development
Procedia PDF Downloads 020213 Component Interface Formalization in Robotic Systems
Authors: Anton Hristozov, Eric Matson, Eric Dietz, Marcus Rogers
Abstract:
Components are heavily used in many software systems, including robotics systems. The growth of sophistication and diversity of new capabilities for robotic systems presents new challenges to their architectures. Their complexity is growing exponentially with the advent of AI, smart sensors, and the complex tasks they have to accomplish. Such complexity requires a more rigorous approach to the creation, use, and interoperability of software components. The issue is exacerbated because robotic systems are becoming more and more reliant on third-party components for certain functions. In order to achieve this kind of interoperability, including dynamic component replacement, we need a way to standardize their interfaces. A formal approach is desperately needed to specify what an interface of a robotic software component should contain. This study performs an analysis of the issue and presents a universal and generic approach to standardizing component interfaces for robotic systems. Our approach is inspired by well-established robotic architectures such as ROS, PX4, and Ardupilot. The study is also applicable to other software systems that share similar characteristics with robotic systems. We consider the use of JSON or Domain Specific Languages (DSL) development with tools such as Antlr and automatic code and configuration file generation for frameworks such as ROS and PX4. A case study with ROS2 is presented as a proof of concept for the proposed methodology.Keywords: CPS, robots, software architecture, interface, ROS, autopilot
Procedia PDF Downloads 9220212 Agile Software Effort Estimation Using Regression Techniques
Authors: Mikiyas Adugna
Abstract:
Effort estimation is among the activities carried out in software development processes. An accurate model of estimation leads to project success. The method of agile effort estimation is a complex task because of the dynamic nature of software development. Researchers are still conducting studies on agile effort estimation to enhance prediction accuracy. Due to these reasons, we investigated and proposed a model on LASSO and Elastic Net regression to enhance estimation accuracy. The proposed model has major components: preprocessing, train-test split, training with default parameters, and cross-validation. During the preprocessing phase, the entire dataset is normalized. After normalization, a train-test split is performed on the dataset, setting training at 80% and testing set to 20%. We chose two different phases for training the two algorithms (Elastic Net and LASSO) regression following the train-test-split. In the first phase, the two algorithms are trained using their default parameters and evaluated on the testing data. In the second phase, the grid search technique (the grid is used to search for tuning and select optimum parameters) and 5-fold cross-validation to get the final trained model. Finally, the final trained model is evaluated using the testing set. The experimental work is applied to the agile story point dataset of 21 software projects collected from six firms. The results show that both Elastic Net and LASSO regression outperformed the compared ones. Compared to the proposed algorithms, LASSO regression achieved better predictive performance and has acquired PRED (8%) and PRED (25%) results of 100.0, MMRE of 0.0491, MMER of 0.0551, MdMRE of 0.0593, MdMER of 0.063, and MSE of 0.0007. The result implies LASSO regression algorithm trained model is the most acceptable, and higher estimation performance exists in the literature.Keywords: agile software development, effort estimation, elastic net regression, LASSO
Procedia PDF Downloads 7120211 Manual to Automated Testing: An Effort-Based Approach for Determining the Priority of Software Test Automation
Authors: Peter Sabev, Katalina Grigorova
Abstract:
Test automation allows performing difficult and time consuming manual software testing tasks efficiently, quickly and repeatedly. However, development and maintenance of automated tests is expensive, so it needs a proper prioritization what to automate first. This paper describes a simple yet efficient approach for such prioritization of test cases based on the effort needed for both manual execution and software test automation. The suggested approach is very flexible because it allows working with a variety of assessment methods, and adding or removing new candidates at any time. The theoretical ideas presented in this article have been successfully applied in real world situations in several software companies by the authors and their colleagues including testing of real estate websites, cryptographic and authentication solutions, OSGi-based middleware framework that has been applied in various systems for smart homes, connected cars, production plants, sensors, home appliances, car head units and engine control units (ECU), vending machines, medical devices, industry equipment and other devices that either contain or are connected to an embedded service gateway.Keywords: automated testing, manual testing, test automation, software testing, test prioritization
Procedia PDF Downloads 33520210 Method Comprising One to One Web Based Real Time Communications
Authors: Lata Kiran Dey, Rajendra Kumar, Biren Karmakar
Abstract:
Web Real Time Communications is a collection of standards, protocols, which provides real-time communications capabilities between web browsers and devices. This paper outlines the design and further implementation of web real-time communications on secure web applications having audio and video call capabilities. This proposed application may put up a system that will be able to work over both desktops as well as the mobile browser. Though, WebRTC also gives a set of JavaScript standard RTC APIs, which primarily works over the real-time communication framework. This helps to build a suitable communication application, which enables the audio, video, and message transfer in between the today’s modern browsers having WebRTC support.Keywords: WebRTC, SIP, RTC, JavaScript, SRTP, secure web sockets, browser
Procedia PDF Downloads 14820209 Design of an Electric Vehicle Model with a Dynamo Drive Setup Using Model-Based Development (MBD) (EV Using MBD)
Authors: Gondu Vykunta Rao, Madhuri Bayya, Aruna Bharathi M., Paramesw Chidamparam, B. Murali
Abstract:
The increase in software content in today’s electric vehicles is increasing attention to having vast, unique topographies from low emission to high efficiency, whereas the chemical batteries have huge short comes, such as limited cycle life, power density, and cost. As for understanding and visualization, the companies are turning toward the virtual vehicle to test their design in software which is known as a simulation in the loop (SIL). In this project, in addition to the electric vehicle (EV) technology, we are adding a dynamo with the vehicle for regenerative braking. Traditionally the principle of dynamos is used in lighting the purpose of the bicycle. Here by using the same mechanism, we are running the vehicle as well as charging the vehicle from system-level simulation to the model in the loop and then to the Hardware in Loop (HIL) by using model-based development.Keywords: electric vehicle, simulation in the loop (SIL), model in loop (MIL), hardware in loop (HIL), dynamos, model-based development (MBD), permanent magnet synchronous motor (PMSM), current control (CC), field-oriented control (FOC), regenerative braking
Procedia PDF Downloads 12220208 Using AI to Advance Factory Planning: A Case Study to Identify Success Factors of Implementing an AI-Based Demand Planning Solution
Authors: Ulrike Dowie, Ralph Grothmann
Abstract:
Rational planning decisions are based upon forecasts. Precise forecasting has, therefore, a central role in business. The prediction of customer demand is a prime example. This paper introduces recurrent neural networks to model customer demand and combines the forecast with uncertainty measures to derive decision support of the demand planning department. It identifies and describes the keys to the successful implementation of an AI-based solution: bringing together data with business knowledge, AI methods, and user experience, and applying agile software development practices.Keywords: agile software development, AI project success factors, deep learning, demand forecasting, forecast uncertainty, neural networks, supply chain management
Procedia PDF Downloads 18920207 Adaptation of Requirement Engineering Practices in Pakistan
Authors: Waqas Ali, Nadeem Majeed
Abstract:
Requirement engineering is an essence of software development life cycle. The more time we spend on requirement engineering, higher the probability of success. Effective requirement engineering ensures and predicts successful software product. This paper presents the adaptation of requirement engineering practices in small and medium size companies of Pakistan. The study is conducted by questionnaires to show how much of requirement engineering models and practices are followed in Pakistan.Keywords: requirement engineering, Pakistan, models, practices, organizations
Procedia PDF Downloads 719