component-based software development (CBSD) is an emerging technology that integrates existing softwarecomponents to swiftly develop and deploy big and complex software systems with little engineering effort, money, ...
详细信息
component-based software development (CBSD) is an emerging technology that integrates existing softwarecomponents to swiftly develop and deploy big and complex software systems with little engineering effort, money, and time. CBSD, on the other hand, has difficulties with security trust, particularly dependability. When a system provides the desired outcomes while causing no harm to the environment, it is said to be dependable. Dependability encompasses several attributes, including availability, confidentiality, integrity, reliability, safety, and maintainability. Developing dependable componentsoftware is achieved by embedding dependability attributes in CBSD. Thus, the CBSD model must address the dependability attributes. Hence, the objectives of this work are: (1) to propose a model for developing a dependable system using component-based software development approach (hereafter the model is referred to as MDDS-CBSD), which aims to mitigate softwarecomponent vulnerabilities, and (2) to assess the proposed model. The best-practice method was used to frame the CBSD architecture phases and processes, as well as embed the six dependability attributes. The MDDS-CBSD architecture was evaluated using expert opinion. The MDDS-CBSD was also used to develop an information and communications technology (ICT) portal using an empirical study method. Vulnerability Assessment Tools were used to assess the developed ICT portal's dependability. The MDDS-CBSD may be used to create web application systems and to protect them from attacks. Model developers may use CBSD to describe and assess dependability attributes at any point during the model development process. The reliability of this model can also let companies utilise CBSD with confidence.
The development of open CNC systems is a popular topic in the past three decades. From the perspective of software engineering, most open CNC prototypes are developed based on the component-based software development ...
详细信息
The development of open CNC systems is a popular topic in the past three decades. From the perspective of software engineering, most open CNC prototypes are developed based on the component-based software development (CBSD) approach. That is, they are constructed by composing functional or logical components. This paper retrospects the development of CBSD-based open CNC systems. These systems are analyzed from three aspects. For the component granularity aspect, CNC domain analysis and component reusability are discussed. For the component model aspect, component models used in open CNC systems are summarized, illustrated, and discussed. Likewise, for the software architecture aspect, architecture styles are summarized, described, and analyzed. But due to the diversity and platform dependency of component models, there is no widely accepted platform that can collect and execute heterogeneous CNC components. Service is an evolution of components. It makes a traditional component to be platform-independent and supports communication via message. Thus, a service-oriented architecture (SOA)-based universal open CNC platform is an attractive development trend of diverse CBSD-based open CNC systems. And its development is similar to the development of the CBSD-based system, but more complicated because it contains more domain logic. Therefore, this paper provides a technical foundation for developing SOA-based open CNC platform which is a part of novel automation patterns, such as cloud manufacturing and cyber-physical production system.
The software composition using high-granularity entities nowadays is a common practice. The process of software composition is supported by various CASE tools. First tools were made on the basis of very simple formali...
详细信息
ISBN:
(纸本)9781538621684
The software composition using high-granularity entities nowadays is a common practice. The process of software composition is supported by various CASE tools. First tools were made on the basis of very simple formalisms (e.g. intuitionistic propositional logic). During the years the tools evolved to more efficient ones, which are able to deal with concurrency, multiparty sessions and other advanced aspects of distributed software. Such tools often are based on the behavioral types (BT). This paper presents 3 logically related tools: CoCoViLa, SoCoSys and BSynth in order to expose such evolution. CoCoViLa and (partially) SoCoSys are based on the Structural Synthesis of Programs method while BSynth tool is more related to behavioral types. The focus of this paper is more on the BSynth, because it implements the Evolutionary prediction algorithm, enabling to predict what components are missing in initial repository. The possible future trends of automated component-based software development and its relation to selected tools are discussed also.
This paper proposed a process planning of component-based software developmentbased on an extension of the Quality Function Deployment. It is highlighted the descriptions of the coupled problem which caused by the se...
详细信息
ISBN:
(纸本)9781479970162
This paper proposed a process planning of component-based software developmentbased on an extension of the Quality Function Deployment. It is highlighted the descriptions of the coupled problem which caused by the self-relationships, including component compatibility, coupling of module, product substitutability
Current organizational vulnerabilities mainly originate from Web applications. The security holes in Web applications have resulted in credit card theft, damaged financial resources and reputation of institutions, and...
详细信息
Current organizational vulnerabilities mainly originate from Web applications. The security holes in Web applications have resulted in credit card theft, damaged financial resources and reputation of institutions, and compromised computers. Existing Web application systems encounter a high record of vulnerabilities that target dependability attributes. Mitigating software vulnerabilities and increasing software protection against bugs or vulnerabilities are critical to increase consumer confidence in softwarecomponent products. Improved software engineering practices must also be adopted to mitigate the vulnerabilities in modern systems. component-based software development (CBSD) is a software engineering approach. CBSD has been successfully applied in many domains. However, the CBSD capability to develop secure software applications is lacking to date. Therefore, this article proposes a guideline to overcome the lack of security trust in CBSD process. The proposed guideline embeds dependability attributes into CBSD by using the best practice method. The proposed guideline is significant for eliciting, analyzing, specifying, and composing the dependability attributes of CBSD.
Today softwaredevelopment consumes a lot of natural resources which are needed to be preserved for future needs. The resources that are used in developing software are huge in numbers casting a negative impact on the...
详细信息
Today softwaredevelopment consumes a lot of natural resources which are needed to be preserved for future needs. The resources that are used in developing software are huge in numbers casting a negative impact on the environment. Hence, one needs to utilize these resources in an efficient manner in order to conserve it. Since resources are limited, there is a need for more improved software as well as an efficient softwaredevelopment process which consumes less energy and resources. In order to fulfill this objective, Green softwaredevelopment (GSD) can be useful. But sometimes the cost incurred for the GSD may be too high and benefits obtained may be very less or negligible. This outcome may not be very beneficial to the developers. Therefore, this article proposes an effective approach using machine learning for cost-benefit analysis to provide optimal resource selection for GSD. This approach makes a trade-off between requirements and expenditures (cost incurred to achieve the objective based on the requirements) to provide optimal resource selection and aids in analyzing the economic feasibility for GSD.
component-based software development (CBSD) is an alternative approach to constructing software systems that offers numerous benefits, particularly in decreasing the complexity of system design. However, deploying com...
详细信息
component-based software development (CBSD) is an alternative approach to constructing software systems that offers numerous benefits, particularly in decreasing the complexity of system design. However, deploying components into a system is a challenging and error-prone task. Model-checking is one of the reliable methods to systematically analyze the correctness of a system. Its brute-force checking of the system's state space assists to significantly expand the level of confidence in the system. Nevertheless, model-checking is limited by a critical problem called state space explosion (SSE). To benefit from model-checking, an appropriate method is required to reduce SSE. In the past two decades, a great number of SSE reduction methods have been proposed containing many similarities, dissimilarities, and unclear concepts in some cases. This research, firstly, plans to present a review of SSE handling methods and classify them based on their similarities, principle, and characteristics. Second, it investigates the methods for handling SSE problem in the verification process of CBSD and provides insight into the potential limitations, underlining the key challenges for future research efforts.
Existing educational tools for language processors have varying capabilities. There is no single tool that covers every aspect of language processors. As a result, there is a possibility that the educator and students...
详细信息
Existing educational tools for language processors have varying capabilities. There is no single tool that covers every aspect of language processors. As a result, there is a possibility that the educator and students will need multiple tools, switching between different specification notations, organization and interpretation of outputs, which could result in a steep learning curve. PAMOJA is a Java-basedcomponent framework with a broader scope - it supports construction of grammar-aware applications using the rapid application development style found in modern IDEs such as NetBeans. This paper investigated the possibility of using PAMOJA to develop educational tools for language processing courses. We conducted two major studies. The first study, summarized six design considerations, identified in the literature, for language processor educational tools. Then, we identified three example applications and demonstrated how to construct tools for them using PAMOJA. These include building and visualizing lexical scanners and parsers, as well as constructing a front-end for a software language, using a subset of Java language as an example. The second study evaluated the PAMOJA approach in relation to the identified design considerations, and by analyzing student and educator perceptions. The results seem to demonstrate a positive reception and acceptance, concluding that its application would facilitate the design of language processor teaching tools and learning language processors. (c) 2023 Elsevier B.V. All rights reserved.
The development of robotic applications necessitates the availability of useful, adaptable, and accessible programming frameworks. Robotic, IoT, and sensor-based systems open up new possibilities for the development o...
详细信息
The development of robotic applications necessitates the availability of useful, adaptable, and accessible programming frameworks. Robotic, IoT, and sensor-based systems open up new possibilities for the development of innovative applications, taking advantage of existing and new technologies. Despite much progress, the development of these applications remains a complex, time-consuming, and demanding activity. development of these applications requires wide utilization of softwarecomponents. In this paper, we propose a platform that efficiently searches and recommends code components for reuse. To locate and rank the source code snippets, our approach uses a machine learning approach to train the schema. Our platform uses trained schema to rank code snippets in the top k results. This platform facilitates the process of reuse by recommending suitable components for a given query. The platform provides a user-friendly interface where developers can enter queries (specifications) for code search. The evaluation shows that our platform effectively ranks the source code snippets and outperforms existing baselines. A survey is also conducted to affirm the viability of the proposed methodology.
component-based software development (CBSD) is an active area of research. Ascertaining the quality of components is important for overall software quality assurance in CBSD. One of the important metrics for measuring...
详细信息
component-based software development (CBSD) is an active area of research. Ascertaining the quality of components is important for overall software quality assurance in CBSD. One of the important metrics for measuring defects, analyzability, efforts, and cost in CBSD is component size. The paper presents an analytical model based on maximization of Tsallis entropy to obtain closed form expression for component size distribution (maximum Tsallis entropy component size distribution, MTECSD) in steady state. It is found that the component size distribution follows power law asymptotically. A procedure based on generalized Jensen-Shannon measure is developed to estimate model parameters. A detailed analysis of many popular probability distributions along with MTECSD is carried out on many diverse real data sets of component-basedsoftwares. The analysis reveals that lognormal and MTECSD distributions fit well to component sizes in many software conforming the presence of power law behavior. The software whose component size distributions are described by MTECSD are in equilibrium implying that new defects in these software systems occur occasionally. Power law behavior in component sizes also imply high variation leading to difficulty in software analyzability. The precise knowledge of component size distribution also provides an alternative method to compute efforts and cost estimates by modified COCOMO model.
暂无评论