scholarly journals Open Source Software Survivability Prediction Using Multi Layer Perceptron

10.29007/cmc6 ◽  
2019 ◽  
Author(s):  
Vijaya Kumar Eluri ◽  
Shahram Sarkani ◽  
Thomas Mazzuchi

Many organizations develop software systems using Open Source Software (OSS) components. OSS components have a high risk of going out of support, making dependency on OSS components risky. So, it is imperative to perform risk assessment during the selection of OSS components. A model that can predict OSS survivability provides an objective criterion for such an assessment. Currently, there are no simple, quick and easy methods to predict survivability of OSS components. In this paper, we build a simple Multi Layer Perceptron (MLP) to predict OSS survivability. We performed experiments on 449 OSS components containing 215 active components and 234 inactive components collected from GitHub. The evaluation results show MLP achieves 81.44% validation accuracy for survivability prediction on GithHub dataset.

2021 ◽  
Vol 11 (12) ◽  
pp. 5690
Author(s):  
Mamdouh Alenezi

The evolution of software is necessary for the success of software systems. Studying the evolution of software and understanding it is a vocal topic of study in software engineering. One of the primary concepts of software evolution is that the internal quality of a software system declines when it evolves. In this paper, the method of evolution of the internal quality of object-oriented open-source software systems has been examined by applying a software metric approach. More specifically, we analyze how software systems evolve over versions regarding size and the relationship between size and different internal quality metrics. The results and observations of this research include: (i) there is a significant difference between different systems concerning the LOC variable (ii) there is a significant correlation between all pairwise comparisons of internal quality metrics, and (iii) the effect of complexity and inheritance on the LOC was positive and significant, while the effect of Coupling and Cohesion was not significant.


Solid Earth ◽  
2011 ◽  
Vol 2 (1) ◽  
pp. 53-63 ◽  
Author(s):  
S. Tavani ◽  
P. Arbues ◽  
M. Snidero ◽  
N. Carrera ◽  
J. A. Muñoz

Abstract. In this work we present the Open Plot Project, an open-source software for structural data analysis, including a 3-D environment. The software includes many classical functionalities of structural data analysis tools, like stereoplot, contouring, tensorial regression, scatterplots, histograms and transect analysis. In addition, efficient filtering tools are present allowing the selection of data according to their attributes, including spatial distribution and orientation. This first alpha release represents a stand-alone toolkit for structural data analysis. The presence of a 3-D environment with digitalising tools allows the integration of structural data with information extracted from georeferenced images to produce structurally validated dip domains. This, coupled with many import/export facilities, allows easy incorporation of structural analyses in workflows for 3-D geological modelling. Accordingly, Open Plot Project also candidates as a structural add-on for 3-D geological modelling software. The software (for both Windows and Linux O.S.), the User Manual, a set of example movies (complementary to the User Manual), and the source code are provided as Supplement. We intend the publication of the source code to set the foundation for free, public software that, hopefully, the structural geologists' community will use, modify, and implement. The creation of additional public controls/tools is strongly encouraged.


Author(s):  
Utku Köse

Using open software in e-learning application is one of the most popular ways of improving effectiveness of e-learning-based processes without thinking about additional costs and even focusing on modifying the software according to needs. Because of that, it is important to have an idea about what is needed while using an e-learning-oriented open software system and how to deal with its source codes. At this point, it is a good option to add some additional features and functions to make the open source software more intelligent and practical to make both teaching-learning experiences during e-learning processes. In this context, the objective of this chapter is to discuss some possible applications of artificial intelligence to include optimization processes within open source software systems used in e-learning activities. In detail, the chapter focuses more on using swarm intelligence and machine learning techniques for this aim and expresses some theoretical views for improving the effectiveness of such software for a better e-learning experience.


Author(s):  
D. Berry

Open source software (OSS) is computer software that has its underlying source code made available under a licence. This can allow developers and users to adapt and improve it (Raymond, 2001). Computer software can be broadly split into two development models: • Proprietary, or closed software, owned by a company or individual. Copies of the binary are made public; the source code is not usually made public. • Open-source software (OSS), where the source code is released with the binary. Users and developers can be licenced to use and modify the code, and to distribute any improvements they make. Both OSS and proprietary approaches allow companies to make a profit. Companies developing proprietary software make money by developing software and then selling licences to use the software. For example, Microsoft receives a payment for every copy of Windows sold with a personal computer. OSS companies make their money by providing services, such as advising clients on the GPL licence. The licencee can either charge a fee for this service or work free of charge. In practice, software companies often develop both types of software. OSS is developed by an ongoing, iterative process where people share the ideas expressed in the source code. The aim is that a large community of developers and users can contribute to the development of the code, check it for errors and bugs, and make the improved version available to others. Project management software is used to allow developers to keep track of the various versions. There are two main types of open-source licences (although there are many variants and subtypes developed by other companies): • Berkeley Software Distribution (BSD) Licence: This permits a licencee to “close” a version (by withholding the most recent modifications to the source code) and sell it as a proprietary product; • GNU General Public Licence (GNU, GPL, or GPL): Under this licence, licencees may not “close” versions. The licencee may modify, copy, and redistribute any derivative version, under the same GPL licence. The licencee can either charge a fee for this service or work free of charge. Free software first evolved during the 1970s but in the 1990s forked into two movements, namely free software and open source (Berry, 2004). Richard Stallman, an American software developer who believes that sharing source code and ideas is fundamental to freedom of speech, developed a free version of the widely used Unix operating system. The resulting GNU program was released under a specially created General Public Licence (GNU, GPL). This was designed to ensure that the source code would remain openly available to all. It was not intended to prevent commercial usage or distribution (Stallman, 2002). This approach was christened free software. In this context, free meant that anyone could modify the software. However, the term “free” was often misunderstood to mean no cost. Hence, during the 1990s, Eric Raymond and others proposed that open-source software was coined as a less contentious and more business-friendly term. This has become widely accepted within the software and business communities; however there are still arguments about the most appropriate term to use (Moody, 2002). The OSMs are usually organised into a network of individuals who work collaboratively on the Internet, developing major software projects that sometimes rival commercial software but are always committed to the production of quality alternatives to those produced by commercial companies (Raymond, 2001; Williams, 2002). Groups and individuals develop software to meet their own and others’ needs in a highly decentralised way, likened to a Bazaar (Raymond, 2001). These groups often make substantive value claims to support their projects and foster an ethic of community, collaboration, deliberation, and intellectual freedom. In addition, it is argued by Lessig (1999) that the FLOSS community can offer an inspiration in their commitment to transparency in their products and their ability to open up governmental regulation and control through free/libre and open source code.


2009 ◽  
pp. 603-619
Author(s):  
Walt Scacchi

This study examines the development of open source software supporting e-commerce (EC) or e-business (EB) capabilities. This entails a case study within a virtual organization engaged in an organizational initiative to develop, deploy, and support free/open source software systems for EC or EB services, like those supporting enterprise resource planning. The objective of this study is to identify and characterize the resource-based software product development capabilities that lie at the center of the initiative, rather than the software itself, or the effectiveness of its operation in a business enterprise. By learning what these resources are, and how they are arrayed into product development capabilities, we can provide the knowledge needed to understand what resources are required to realize the potential of free EC and EB software applications. In addition, the resource-based view draws attention to those resources and capabilities that provide potential competitive advantages and disadvantages to the organization in focus.


Author(s):  
Kevin Carillo ◽  
Chitu Okoli

Open source software (OSS) development has continued to appear as a puzzling and enigmatic phenomenon and has drawn increasing attention as its importance has grown. Relying upon an alternative way to develop and to distribute software, open source communities have been able to challenge and often outperform proprietary software by enabling better reliability, lower costs, shorter development times, and a higher quality of code (Raymond, 2004). Behind the software is a mass of people working together in loose coordination, even portrayed as a rowdy marketplace (Raymond, 2001, p. 1): No quiet, reverent cathedral-building here—rather, the Linux community seemed to resemble a great babbling bazaar of differing agendas and approaches … out of which a coherent and stable system seemingly emerges only by a succession of miracles. More precisely, the people behind open source projects have been defined as: “Internet-based communities of software developers who voluntarily collaborate in order to develop software that they or their organizations need” (von Krogh, 2003, p. 14). In contrast to the sacred cathedral-like software development model that gave birth to most commercial and proprietary systems, such bazaar-like communities seem to have based their success on a pseudo-anarchic type of collaboration and developers’ interaction (Raymond, 2001). However, in spite of the apparent disorganization of these bazaars, a closer look distinguishes common values and norms that rule them, specific roles that can be identified, similar motives shared by people, and practices that follow patterns. This article highlights key aspects of what forms the communities that support these projects.


2015 ◽  
Vol 5 (4) ◽  
pp. 24-35 ◽  
Author(s):  
Mamdouh Alenezi ◽  
Fakhry Khellah

Software systems usually evolve constantly, which requires constant development and maintenance. Subsequently, the architecture of these systems tends to degrade with time. Therefore, stability is a key measure for evaluating an architecture. Open-source software systems are becoming progressively vital these days. Since open-source software systems are usually developed in a different management style, the quality of their architectures needs to be studied. ISO/IEC SQuaRe quality standard characterized stability as one of the sub-characteristics of maintainability. Unstable software architecture could cause the software to require high maintenance cost and effort. In this work, the authors propose a simple, yet efficient, technique that is based on carefully aggregating the package level stability in order to measure the change in the architecture level stability as the architecture evolution happens. The proposed method can be used to further study the cause behind the positive or negative architecture stability changes.


Sign in / Sign up

Export Citation Format

Share Document