Catalogue Search | MBRL
Search Results Heading
Explore the vast range of titles available.
MBRLSearchResults
-
DisciplineDiscipline
-
Is Peer ReviewedIs Peer Reviewed
-
Item TypeItem Type
-
SubjectSubject
-
YearFrom:-To:
-
More FiltersMore FiltersSourceLanguage
Done
Filters
Reset
22,024
result(s) for
"software components"
Sort by:
Software Component Models
2007
Component-based development (CBD) is an important emerging topic in software engineering, promising long-sought-after benefits like increased reuse, reduced time to market, and, hence, reduced software production cost. The cornerstone of a CBD technology is its underlying software component model, which defines components and their composition mechanisms. Current models use objects or architectural units as components. These are not ideal for component reuse or systematic composition. In this paper, we survey and analyze current component models and classify them into a taxonomy based on commonly accepted desiderata for CBD. For each category in the taxonomy, we describe its key characteristics and evaluate them with respect to these desiderata.
Journal Article
A Classification Framework for Software Component Models
2011
In the last decade, a large number of different software component models have been developed, with different aims and using different principles and technologies. This has resulted in a number of models which have many similarities, but also principal differences, and in many cases unclear concepts. Component-based development has not succeeded in providing standard principles, as has, for example, object-oriented development. In order to increase the understanding of the concepts and to differentiate component models more easily, this paper identifies, discusses, and characterizes fundamental principles of component models and provides a Component Model Classification Framework based on these principles. Further, the paper classifies a large number of component models using this framework.
Journal Article
A Systematic Mapping of Quality Models for AI Systems, Software and Components
by
Ali, Mohamed Abdullahi
,
Yap, Ng Keng
,
Zulzalil, Hazura
in
Algorithms
,
Artificial intelligence
,
artificial intelligence software and systems
2022
Recently, there has been a significant increase in the number of Artificial Intelligence (AI) systems, software, and components. As a result, it is crucial to evaluate their quality. Quality models for AI have in fact been proposed, but there is a lack of Systematic Mapping Studies (SMS) for quality models in AI systems, software, and components. The goal of this paper is to understand, classify, and critically evaluate existing quality models for AI systems, software, and components. This study conducts an SMS to investigate quality models proposed by various authors in the past. The study only found quality models for AI systems and software. So far, the SMS has revealed no work on AI software component quality models. Finally, the limitations of the quality models and the implications for future research and development efforts are discussed.
Journal Article
Ranking software components for reuse based on non-functional properties
2016
One of the biggest obstacles to software reuse is the cost involved in evaluating the suitability of possible reusable components. In recent years, code search engines have made significant progress in establishing the semantic suitability of components for new usage scenarios, but the problem of ranking components according to their non-functional suitability has largely been neglected. The main difficulty is that a component’s non-functional suitability for a specific reuse scenario is usually influenced by multiple, “soft” criteria, but the relative weighting of metrics for these criteria is rarely known quantitatively. What is required, therefore, is an effective and reliable strategy for ranking software components based on their non-functional properties without requiring users to provide quantitative weighting information. In this paper we present a novel approach for achieving this based on the non-dominated sorting of components driven by a specification of the relative importance of non-functional properties as a partial ordering. After describing the ranking algorithm and its implementation in a component search engine, we provide an explorative study of its properties on a sample set of components harvested from Maven Central.
Journal Article
Software Components’ Coupling Detection for Software Reusability
2018
Most of the software systems design and modeling techniques concentrates on capturing the functional aspects that comprise a system’s architecture. Non-functional aspects are rarely considered on most of the software system modeling and design techniques. One of the most important aspects of software component is reusability. Software reusability may be understood by identifying components’ dependence, which can be measured by measuring the coupling between system’s components. In this paper an approach to detect the coupling between software system’s components is introduced for the purpose of identifying software components’ reusability that may help in refining the system design. The proposed approach uses a dynamic notion of sequence diagram to understand the dynamic behavior of a software system. The notion of data and control dependence is used to detect the dependences among software components. The components’ dependences are identified in which one component contributes to the output computation of the other component. The results of the experiments show that the proposed algorithm can help the software engineers to understand the dependences among the software components and optimize the software system model by eliminating the unnecessary dependences among software components to enhance their cohesiveness. Such detection provides a better understanding of the software system model in terms of its components’ dependences and their influence on reusability, in which their elimination may enhance software reusability.
Journal Article
Software Components beyond Programming: From Routines to Services
by
Stafford, J
,
Crnkovic, I
,
Szyperski, C
in
component-based software
,
engineering
,
Object oriented modeling
2011
Software engineering (SE) conference in 1968, Doug Mc Ilroy introduced the concept of software components during his keynote speech, \"Mass-Produced Software Components.\" That components hold such an esteemed place in SE history should come as no surprise: componentization is a fundamental engineering principle. Top-down approaches decompose large systems into smaller parts-components and bottom-up approaches compose smaller parts components into larger systems. Since 1968, components have played a role in both SE research and practice. For example, components have been an immanent part of software architecture from its early days.2 In 1998, the In ternational Conference on Software Engineering introduced component based software engineering (CBSE) as a specific area within SE at the first workshop on CBSE.
Journal Article
Software reuse in product populations
2005
Consumer products are becoming increasingly software intensive. The software complexity of individual products grows, while the diversity of products increases and the lead time must decrease. Software reuse is the answer to this, not only within a family but also between families of consumer products. We have devised an approach based upon a software component technology to enable reuse. This paper describes that approach, and it zooms in on two important aspects of component-based development. One aspect concerns the prediction of system properties from properties of components, which we illustrate using thread synchronization as example. The other aspect concerns branching of our software in our configuration management systems, where our analysis leads to the discovery that we may be constantly rewriting our own code and to the definition of the turn-over factor to quantify this. We end this paper with a brief validation of our approach.
Journal Article
Self-organized design of virtual reality simulator for identification and optimization of healthcare software components
by
Kumar, Shishir
,
Zareapoor, Masoumeh
,
Srivastava, Amit Kumar
in
Ant colony optimization
,
Architecture
,
Artificial Intelligence
2024
As in the current trend, the virtual reality-based application is very popular in the medical healthcare system to generate a realistic virtual 3-D simulation environment that users can interact with specialized devices. The increasing demand for advancement in the requirement of the virtual environment of healthcare policies as well as the systems needs changes in the simulation environment. In reference to such requirement, the software industry needs improvement in the development process which reduces the effect of software cost, complexity and resource planning. From last few years, optimization in development of simulation environment’s cost-benefit aspects is also the challenging area. In view of such issues, there are several guided (supervised) and unguided (unsupervised) algorithms are using evolutionary approaches and nature-inspired self-organized swarm intelligence approaches have been developed by the researchers for virtual real-time healthcare search based software system. However, there is still a gap in the development of such a simulation environment for identification of the software component. This paper proposes a self-organizing component identification technique using medoid based ant colony clustering algorithms. The proposed algorithm has been compared to classical centroid-based clustering (K-means,CRUD, and FCA) and evolutionary approach(genetic algorithm) on the case study of the virtual real-time healthcare system. For the accuracy and precision of the approach two already studied cases have also been used.
Journal Article
Software selection in large-scale software engineering: A model and criteria based on interactive rapid reviews
by
Bjarnason, Elizabeth
,
Ali, Nauman bin
,
Åberg, Patrik
in
Co-design
,
Collaboration
,
Computer aided software engineering
2023
ContextSoftware selection in large-scale software development continues to be ad hoc and ill-structured. Previous proposals for software component selection tend to be technology-specific and/or do not consider business or ecosystem concerns.ObjectiveOur main aim is to develop an industrially relevant technology-agnostic method that can support practitioners in making informed decisions when selecting software components for use in tools or in products based on a holistic perspective of the overall environment.MethodWe used method engineering to iteratively develop a software selection method for Ericsson AB based on a combination of published research and practitioner insights. We used interactive rapid reviews to systematically identify and analyse scientific literature and to support close cooperation and co-design with practitioners from Ericsson. The model has been validated through a focus group and by practical use at the case company.ResultsThe model consists of a high-level selection process and a wide range of criteria for assessing and for evaluating software to include in business products and tools.ConclusionsWe have developed an industrially relevant model for component selection through active engagement from a company. Co-designing the model based on previous knowledge demonstrates a viable approach to industry-academia collaboration and provides a practical solution that can support practitioners in making informed decisions based on a holistic analysis of business, organisation and technical factors.
Journal Article
On the Use of NDVI to Estimate LAI in Field Crops: Implementing a Conversion Equation Library
by
Morelli, Danilo
,
Scaglione, Massimo
,
Raparelli, Elisabetta
in
Algorithms
,
climate
,
computer software
2022
The leaf area index (LAI) is a direct indicator of vegetation activity, and its relationship with the normalized difference vegetation index (NDVI) has been investigated in many research studies. Remote sensing makes available NDVI data over large areas, and researchers developed specific equations to derive the LAI from the NDVI, using empirical relationships grounded in field data collection. We conducted a literature search using “NDVI” AND “LAI” AND “crop” as the search string, focusing on the period 2017–2021. We reviewed the available equations to convert the NDVI into the LAI, aiming at (i) exploring the fields of application of an NDVI-based LAI, (ii) characterizing the mathematical relationships between the NDVI and LAI in the available equations, (iii) creating a software library with the retrieved methods, and (iv) releasing a publicly available software as a service, implementing these equations to foster their reuse by third parties. The literature search yielded 92 articles since 2017, where 139 equations were proposed. We analyzed the mathematical form of both the single equations and ensembles of the NDVI to LAI conversion methods, specific for crop, sensor, and biome. The characterization of the functions highlighted two main constraints when developing an NDVI-LAI conversion function: environmental conditions (i.e., water and light resource, land cover, and climate) and the availability of recurring data during the growing season. We found that the trend of an NDVI-LAI function is usually driven by the ecosystem water availability for the crop rather than by the crop type itself, as well as by the data availability; the data should be adequate in terms of the sample size and temporal resolution for reliably representing the phenomenon under investigation. Our study demonstrated that the choice of the NDVI-LAI equation (or ensemble of equations) should be driven by the trade-off between the scale of the investigation and data availability. The implementation of an extensible and reusable software library publicly queryable via API represents a valid mean to assist researchers in choosing the most suitable equations to perform an NDVI-LAI conversion.
Journal Article