Science topic

Software Engineering - Science topic

Software engineering and the application of knowledge-based, simulation-based, data-driven, human-centred and automated approaches.
Filters
All publications are displayed by default. Use this filter to view only publications with full-texts.
Publications related to Software Engineering (10,000)
Sorted by most recent
Article
Full-text available
While the opportunities of ML and AI in healthcare are promising, the growth of complex data-driven prediction models requires careful quality and applicability assessment before they are applied and disseminated in daily practice. This scoping review aimed to identify actionable guidance for those closely involved in AI-based prediction model (AIP...
Article
Full-text available
For many people, mobile platforms are now an essential part of everyday life. A defining feature of mobile platforms is their reliance on battery performance. Due to this reliance, there is a pressing need for mobile applications that minimise their own impact on batteries. While mobile platforms are improving their capabilities in terms of policin...
Article
Full-text available
Some test amplification tools extend a manually created test suite with additional test cases to increase the code coverage. The technique is effective, in the sense that it suggests strong and understandable test cases, generally adopted by software engineers. Unfortunately, the current state-of-the-art for test amplification heavily relies on pro...
Article
Full-text available
Multi-Objective Search Algorithms (MOSAs) have been applied to solve diverse Search-Based Software Engineering (SBSE) problems. In most cases, SBSE users select one or more commonly used MOSAs (for instance, Nondominated Sorting Genetic Algorithm II (NSGA-II)) to solve their search problems, without any justification (i.e., not supported by any evi...
Article
Full-text available
In real-time systems, priorities assigned to real-time tasks determine the order of task executions, by relying on an underlying task scheduling policy. Assigning optimal priority values to tasks is critical to allow the tasks to complete their executions while maximizing safety margins from their specified deadlines. This enables real-time systems...
Article
Full-text available
Background Research software plays an important role in solving real-life problems, empowering scientific innovations, and handling emergency situations. Therefore, the correctness and trustworthiness of research software are of absolute importance. Software testing is an important activity for identifying problematic code and helping to produce hi...
Article
Full-text available
Program synthesis is the task of automatically generating programs from user intent, which is one of the central problems in automated software engineering. Recently many researchers use a neural network to learn the distribution over programs based on user intent (such as API and type name), known as neural program synthesis (NPS). The generated p...
Article
Full-text available
Identifying security concerns is a security activity that can be integrated into the requirements development phase. However, it has been shown that manually identifying concerns is a time-consuming and challenging task. The software engineering community has utilized natural language processing and query systems to automatically find part of the r...
Article
Full-text available
Code smells, also known as anti-patterns, are poor design or implementation choices that hinder program comprehensibility and maintainability. While several code smell detection methods have been proposed, Mantyla et al. identified the uncertainty issue as one of the major individual human factors that may affect developer’s decisions about the sme...
Article
Full-text available
Logging plays a crucial role in software engineering because it is key to perform various tasks including debugging, performance analysis, and detection of anomalies. Despite the importance of log data, the practice of logging still suffers from the lack of common guidelines and best practices. Recent studies investigated logging in C/C++ and Java...
Article
Full-text available
Stack Overflow provides a means for developers to exchange knowledge. While much previous research on Stack Overflow has focused on questions and answers (Q&A), recent work has shown that discussions in comments also contain rich information. On Stack Overflow, discussions through comments and chat rooms can be tied to questions or answers. In this...
Preprint
Full-text available
Digital ethics is being discussed worldwide as a necessity to create more reliable IT systems. This discussion, fueled by the fear of uncontrollable artificial intelligence (AI) has moved many institutions and scientists to demand a value-based system engineering. This article presents how organizations can build responsible and ethically founded s...
Article
Full-text available
Reproducibility is not only essential for the integrity of scientific research but is also a prerequisite for model validation and refinement for the future application of predictive algorithms. However, reproducible research is becoming increasingly challenging, particularly in high-dimensional genomic data analyses with complex statistical or alg...
Article
Full-text available
Many software developers started to work from home on a short notice during the early periods of COVID-19. A number of previous papers have studied the wellbeing and productivity of software developers during COVID-19. The studies mainly use surveys based on predefined questionnaires. In this paper, we investigate the problems and joys that softwar...
Article
Full-text available
The advance of Ubiquitous Computing (UbiComp) and Internet of Things (IoT) brought a new set of Non-Functional Requirements (NFRs), especially related to Human-Computer Interaction (HCI). Invisibility is one of these NFRs and refers to either the merging of technology in the user environment or the decrease in the interaction workload. This new NFR...
Article
Full-text available
With the increasing demand for customized systems and rapidly evolving technology, software engineering faces many challenges. A particular challenge is the development and maintenance of systems that are highly variable both in space (concurrent variations of the system at one point in time) and time (sequential variations of the system, due to it...
Article
Full-text available
Model-based testing (MBT) has been extensively researched for software-intensive systems but, despite the academic interest, adoption of the technique in industry has been sparse. This phenomenon has been observed by our industrial partners for MBT with graphical models. They perceive one cause to be a lack of evidence-based MBT guidelines that, in...
Article
Full-text available
Software bots have been facilitating several development activities in Open Source Software (OSS) projects, including code review. However, these bots may bring unexpected impacts to group dynamics, as frequently occurs with new technology adoption. Understanding and anticipating such effects is important for planning and management. To analyze the...
Poster
Full-text available
In this talk, we identify “last mile” problems that may prevent production use of Galaxy workflow within health care settings. Next, we profile key operational issues related to scalability and sustainment that can be addressed through the adoption of cloud computing. We will illustrate this through a use case running the Galaxy pipeline on the AWS...
Article
Full-text available
In present times, as the Android Operating system is getting more popular the applications based on Android SDK attracts much more attention. Therefore, understanding how to program to properly asses the value of a software engineer's work is essential. Computers are now being used in almost everything around us, but still the concept of programmin...
Book
Full-text available
Software Engineering
Article
Full-text available
In present times, as the Android Operating system is getting more popular the applications based on Android SDK attracts much more attention. Therefore, understanding how to program to properly asses the value of a software engineer's work is essential. Computers are now being used in almost everything around us, but still the concept of programmin...
Article
Full-text available
Background and Objectives Machine Learning offers opportunities to improve patient outcomes, team performance, and reduce healthcare costs. Yet only a small fraction of all Machine Learning models for health care have been successfully integrated into the clinical space. There are no current guidelines for clinical model integration, leading to was...
Preprint
Full-text available
Particle accelerators are among the largest, most complex devices. To meet the challenges of increasing energy, intensity, accuracy, compactness, complexity and efficiency, increasingly sophisticated computational tools are required for their design and optimization. It is key that contemporary software take advantage of the latest advances in comp...
Preprint
Full-text available
Motivation. Digital commons is an emerging phenomenon and of increasing importance, as we enter a digital society. Open data is one example that makes up a pivotal input and foundation for many of today's digital services and applications. Ensuring sustainable provisioning and maintenance of the data, therefore, becomes even more important. Aim. We...
Article
Full-text available
Software engineering (SE) methodologies are widely used in both academia and industry to manage the software development life cycle. A number of studies of SE methodologies involve interviewing stakeholders to explore the real‐world practice. Although these interview‐based studies provide us with a user's perspective of an organization's practice,...
Article
Full-text available
Software bug prediction aims to enhance software quality and testing efficiency by constructing predictive classification models using code properties. This enables the prompt detection of fault‐prone modules. There are several machine learning‐based software bug prediction studies, which mainly focus on single view data by disregarding the natural...
Chapter
Full-text available
Muhammad Sharif Database systems handbook This Database management system DBMS is written by Muhammad Sharif Software Engineer SKMCHRC Lahore It include RDBMS and File system contents and Database system to advance Databases like DBA Concepts.
Article
Full-text available
As an effective tool for data analysis, formal concept analysis (FCA) is widely used in software engineering and machine learning. The construction of concept lattice is a key step of the FCA. How to effectively to update the concept lattice is still an open, interesting and important issue. To resolve this problem, an incremental algorithm for con...
Cover Page
Full-text available
Muhammad Sharif Software Engineer SKMCHRC Lahore. Database systems handbook by Muhammad Sharif is very intelligent book written by me. Other names of this book are: DBMS, RDBMS, Database systems, Database management systems handbook
Article
Full-text available
Bug localization is an important field in software engineering research. The traditional bug localization approaches based on information retrieval separate words through lexical analysis. In this way, the comments of the source code are ignored or treated as plain text, which will lose some semantic information. In this paper, MBL_SHL, an automati...
Preprint
Full-text available
I'm Muhammad Sharif Software engineer, SKMCHRC Lahore, Database systems handbook is written by Muhammad Sharif is pure RDBMS having all core knowledge of databases and its related subjects.
Conference Paper
Full-text available
Advances in scientific domains are led to an increase in the complexity of the experiments. To address this growing complexity, scientists from different domains require to work collaboratively. Scientific Workflow Management Systems (SWfMSs) are popular tools for data-intensive experiments. To the best of our knowledge, very few of the existing SW...
Article
Full-text available
Spectrum-based fault localization (SFL) techniques have shown considerable effectiveness in localizing software faults. They leverage a ranking metric to automatically assign suspiciousness scores to certain entities in a given faulty program. However, for some programs, the current SFL ranking metrics lose effectiveness. In this paper, we introduc...
Article
Full-text available
The usage of deep learning (DL) approaches for software engineering has attracted much attention, particularly in source code modelling and analysis. However, in order to use DL, source code needs to be formatted to fit the expected input form of DL models. This problem is known as source code representation. Source code can be represented via diff...
Preprint
Full-text available
In recent years Open Innovation (OI) has gained much attention and made firms aware that they need to consider the open environment surrounding them. To facilitate this shift Requirements Engineering (RE) needs to be adapted in order to manage the increase and complexity of new requirements sources as well as networks of stakeholders. In response w...
Thesis
Full-text available
This thesis explored software architecture design of microservices systems in the context of DevOps and make the following novel aspects: (1) This thesis proposes a set of taxonomies of the research themes, problems, solutions, description methods, design patterns, quality attributes as well as the challenges of microservices architecture in DevOps...
Preprint
Full-text available
Reliance on third-party libraries is now commonplace in contemporary software engineering. Being open source in nature, these libraries should advocate for a world where the freedoms and opportunities of open source software can be enjoyed by all. Yet, there is a growing concern related to maintainers using their influence to make political stances...
Preprint
Full-text available
High-quality data has become increasingly important to software engineers in designing and implementing today's software, for example, as an input to machine-learning algorithms and visualisation- and analytics-based features. Open data - i.e., data shared under a licence that gives users the right to study, process, and distribute the data to anyo...
Conference Paper
Full-text available
Despite several initiatives to integrate accessibility to the Software Engineering (SE), in practice, little is known about both the participation of people with disabilities in the phases of the software development process and the methods used. Inclusive SE is a challenge and many research opportunities may be identified. In this scenario, our ob...
Preprint
Full-text available
Marketplaces for distributing software products and services have been getting increasing popularity. GitHub, which is most known for its version control functionality through Git, launched its own marketplace in 2017. GitHub Marketplace hosts third party apps and actions to automate workflows in software teams. Currently, this marketplace hosts 44...
Article
Full-text available
According to Swami Vivekananda, Education is the manifestation of the society. Education purifies the illness in the society. Universities/Colleges/schools are the temples for everyone. Everyone should visit these temple in their life. It is the responsibility of the teacher should teach the student a perfect education. Every teacher tries their le...
Preprint
Full-text available
In this paper, we concentrate on object-related analysis in the field of general ontology of reality as related to software engineering (e.g., UML classes). Such a venture is similar to many studies in which researchers have enhanced modeling through ontological analysis of the underlying paradigm of UML models. We attempt to develop a conceptual m...
Article
Full-text available
In order to further understand the current situation of the financial market and better supervise the resource management of the financial market, combined with big data and cloud computing technology, through the construction of big data cloud platform resource management system and the integration of various technical computing frameworks, we can...
Article
Full-text available
Software engineering is one of the most active fields of entrepreneurship and innovation in the world, and it is also the core field of the information technology industry. Software talents as the foundation and support are an important weight to determine the future direction of my country’s software engineering. How to make colleges and universit...
Article
Full-text available
The Internet of Things (IoT) paradigm is growing, affecting human life and aiming to solve problems in the real world, i.e., in education, healthcare, smart homes, intelligent transportation, and other areas. However, it is a fact that the development of IoT systems is complicated compared to that of traditional software systems, especially in rela...
Article
Full-text available
The Object Management Group introduced the Model-Driven Architecture in 2001. Since then, the research community has embraced model-driven engineering (MDE), but to a lesser extent than practitioners had hoped. A good awareness of practitioners’ challenges, particularly with modeling, is required to ensure the relevance of a research agenda. Theref...
Article
Full-text available
Context: Reliability prediction is critical for software engineers in the current challenging scenario of increased demand for high-quality software. Even though various software reliability prediction models have been established so far, there is always a need for a more accurate model in today's competitive environment for producing high-quality...
Presentation
Full-text available
Model-based software development is common practice in critical systems engineering and can help to understand individual elements of a complex system which can then be analysed and verified against several properties of interest. In general, and along the development lifecycle, engineers have to go through analysis, modelling, programming, simulat...
Article
Full-text available
This study presents the mathematics for the implementation of direct and inverse Fourier, Laplace, and Z transformations. This research is at the intersection between signal processing, applied mathematics, and software engineering, and it provides a study guide to implementers. Mathematical concepts and details necessary to transform the math into...
Preprint
Full-text available
The 44th International Conference on Software Engineering (ICSE 2022) was held in person from May 22 to May 27, 2022 in Pittsburgh, PA, USA. Here, we summarize themes of research and the direction of research in the field of software engineering and testing that we observed at the conference.
Chapter
Full-text available
Zero trust networks, zero trust protocol design, and zero trust software engineering are all active areas of research. Zero trust security also continues to proliferate in industry with many companies involved in one or more zero trust related projects and an Executive Order in the United States of America even mandating zero trust security with a...
Article
Full-text available
Software authorship attribution, defined as the problem of software authentication and resolution of source code ownership, is of major relevance in the software engineering field. Authorship analysis of source code is more difficult than the classic task on literature, but it would be of great use in various software development activities such as...
Article
Full-text available
Design patterns are common solutions to existing issues in software engineering. In recent decades, design patterns have been researched intensively because they increase the quality factors of software systems such as flexibility, maintainability, and reusability. Design pattern detection refers to the determination of the symmetry between a code...
Preprint
Full-text available
EC-KitY is a comprehensive Python library for doing evolutionary computation (EC), licensed under GNU General Public License v3.0, and compatible with scikit-learn. Designed with modern software engineering and machine learning integration in mind, EC-KitY can support all popular EC paradigms, including genetic algorithms, genetic programming, coev...
Conference Paper
Full-text available
The number of web APIs is growing rapidly. API adoption is increasing across all industries with executives prioritizing investments in the API economy. Each API provider offers API documentation which includes complex descriptions. In order to collect and understand the applications and operations of diverse APIs, software engineers read lengthy a...
Preprint
Full-text available
Software systems are vulnerable to fairness bugs and frequently exhibit unfair behaviors, making software fairness an increasingly important concern for software engineers. Research has focused on helping software engineers to detect fairness bugs automatically. This paper provides a comprehensive survey of existing research on fairness testing. We...
Article
Full-text available
Integration platforms are software tools needed to support the integration process. They have a runtime system responsible for processing the integration process data. Currently, with the growing volume of data coming from the IoT, integration platforms are beginning to show necessary improvements in their efficiency. Optimization techniques have b...
Preprint
Full-text available
The interactive entertainment industry is being actively involved with the development, marketing and sale of video games in the past decade. The increasing interest in video games has led to an increase in video game development techniques and methods. It has emerged as an immensely large sector, and now it has grown to be larger than the movie an...
Article
Full-text available
With the rapid development of web technology and the improvement of online purchasing products, the traditional classroom instructing model has been unable to bear the requirements of teachers and students. Aiming at the problems of instructing and correspondence, a deep learning-based educational control system supporting B/S structure is designed...
Preprint
Full-text available
The classical pattern matching paradigm is that of seeking occurrences of one string - the pattern, in another - the text, where both strings are drawn from an alphabet set $\Sigma$. Assuming the text length is $n$ and the pattern length is $m$, this problem can naively be solved in time $O(nm)$. In Knuth, Morris and Pratt's seminal paper of 1977,...
Article
Full-text available
Efficient realization of quantum algorithms is among main challenges on the way towards practical quantum computing. Various libraries and frameworks for quantum software engineering have been developed. Here we present a software package containing implementations of various quantum gates and well-known quantum algorithms using PennyLane library....