The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Time and budget constraints in developing a software create an adverse effect in terms of the adequacy of maintenance and test processes. This case can be considered as a burden for persons who account for test processes. In order to alleviate this burden, test case prioritization is one of the solutions. A nature-inspired method namely BITCP, which was developed based on bat algorithm, produced promising...
After four successful JUnit tool competitions, we report on the achievements of a new Java Unit Testing Tool Competition. This 5th contest introduces statistical analyses in the benchmark infrastructure and has been validated with significance against the results of the previous 4th edition. Overall, the competition evaluates four automated JUnit testing tools taking as baseline human written test...
Source code in software systems has been shown to have a good degree of repetitiveness at the lexical, syntactical, and API usage levels. This paper presents a large-scale study on the repetitiveness, containment, and composability of source code at the semantic level. We collected a large dataset consisting of 9,224 Java projects with 2.79M class files, 17.54M methods with 187M SLOCs. For each method...
Current trend is to increase the overall use of electronic systems in daily life. Exemplarily, the complexity of automotive electronic control unit (ECU) systems is rising due to the number of components involved and the tighter interactions between these heterogeneous components (analog, digital hardware, or software), resulting in a more and more challenging verification. In this paper, we show...
The design and development of product service systems (PSS) is a complex process that brings together product, software and service engineering. A fully integrated PSS calls for significant collaboration among the different engineering disciplines along the entire design and development process which can pose several challenges to the development team. Therefore, when developing a PSS, companies should...
As a software project evolves, so does its build system. Significant effort is necessary to maintain the build system to cope with this evolution, in part because changes to source code often require parallel changes in the build system. Our tool, Formiga, is a build maintenance and dependency discovery tool for the Ant build system. Formiga's primary uses are to automate build changes as the source...
A security feature is a customer-valued capability of software for mitigating a set of security threats. Incremental development of security features, using the Scrum method, often leads to developing ineffective features in addressing the threats they target due to factors such as incomplete security tests. This paper proposes the use of security assurance cases to maintain a global view of the security...
Story Point is a relative measure heavily used for agile estimation of size. The team decides how big a point is, and based on that size, determines how many points each work item is. In many organizations, the use of story points for similar features can vary from team to another, and successfully, based on the teams' sizes, skill set and relative use of this tool. But in a CMMI organization, this...
We downloaded from GitHub, Inc., a portfolio of recently updated open source Scala projects containing 16,500 source files with 2.3 million lines of code and 223,000 methods written by hundreds of programmers. A related paper found in this "big data" of functional programs non-Gaussian distributions of lines of code and cyclomatic complexity and speculated that the distributions resembled...
Software team leaders and managers must make decisions on what type of process model they will use for their projects. Recent work suggests the use of agile processes since they promote shorter development cycles, better collaboration, and process flexibility. Due to the many benefits of agile processes, many software organizations have shifted to using more agile process methodologies. However, there...
This case study paper introduces and discusses NetsX, a semester-long research project developed around gameful design principles to encourage peer- to-peer collaboration and engagement. The paper situates NetsX in recent scholarship on higher education game design, collaborative learning and the use of online tools in teaching and learning. It discusses how gameful principles were used to design...
Large-scale systems typically mount many different file systems with distinct performance characteristics and capacity. Applications must efficiently use this storage in order to realize their full performance potential. Users must take into account potential file replication throughout the storage hierarchy as well as contention in lower levels of the I/O system, and must consider communicating the...
It has been proven successful that fuzz testing can successfully find security vulnerabilities in programs. However, traditional black box fuzz testing tools, which randomly mutate the input, are blind and ineffective. The white box fuzzing technology, known as the symbolic execution, is still facing the problem of low efficiency and path explosion. We present a new automated fuzzing technique based...
The GPlates Geographic Information System (GIS) is a well-established tool for visualising and interacting with multimodal geo-data reconstructed through space and geological time. It overcomes the complexity of changing spatial reference frames due to plate-tectonic processes. Combining vast datasets in this manner is increasing the analysis complexity, with traditional visualisation-based approaches...
One major obstacle to enterprise adoption of cloud technologies has been the lack of visibility into migration effort and cost. In this paper, we present a methodology, called Cloud Migration Point (CMP), for estimating the size of cloud migration projects, by recasting a well-known software size estimation model called Function Point (FP) into the context of cloud migration. We empirically evaluate...
A code smell is any symptom in the source code that possibly indicates a bad design or programming problem. Many code smells in aspect-oriented programming (AOP) are very different from those in object-oriented programming. Therefore, new detection strategies should be conceived to identify whether a particular slice of aspect-oriented code is affected by a specific smell. Unfortunately, research...
It becomes more and more difficult, to develop and maintain complex mechatronical systems. For this purpose, new methods are needed for designing them in an economical way. EasyKit is a new method for hardware-software-co-design, which was developed for this purpose. The main aims were to reach a high flexibility when developing mechatronical systems for limited-lot production and the parallelization...
The software life-cycle of applications supporting space missions follows a rigorous process in order to ensure the application compliance with all the specified requirements. Ensuring the correct behavior of the application is critical since an error can lead, ultimately, to the loss of a complete space mission. However, it is not only important to ensure the correct behavior of the application but...
Deployment of a service-oriented system in a network of machines is often complex and labourious. In many cases components implementing a service have to be built from source code for the right target platform, transferred to the right machines with the right capabilities and activated in the right order. Upgrading a running system is even more difficult as this may break the running system and cannot...
In order to solve software complexity crisis problem, policy-based method and agent-based system is combined to build autonomic computing system, where agent stands for autonomic element and policy stands for administrator's goal. Due to dynamic nature of administrator's goal, a mechanism must be provided to commit policy modification. This paper proposes an integrative framework where policy modification...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.