Spelling suggestions: "subject:"componentbased 8oftware devevelopment"" "subject:"componentbased 8oftware agentdevelopment""
11 |
Aspect Analyzer: Ett verktyg för automatiserad exekveringstidsanalys av komponenter och aspekter / Aspect Analyzer: A Tool for Automated WCET Analysis of Aspects and ComponentsUhlin, Pernilla January 2002 (has links)
The increasing complexity in the development of a configurable real-time system has emerged new principles of software techniques, such as aspect-oriented software development and component-based software development. These techniques allow encapsulation of the system's crosscutting concerns and increase the modularity of the software. The properties of a component that influences the systems performance or semantics are specified separately in entities called aspects, while basic functionality of the property still remains in the component. When building a real-time system, different sets of configurations of aspects and components can be combined, resulting in different configurations of the system. The temporal behavior of the system changes and a way to ensure the predictability of the system is needed. This thesis presents a tool for aspect-level worst-case execution time analysis, which gives a priori information about the temporal behavior of the system, before the process of composing aspects with components.
|
12 |
Verifikation av verktyget aspect analyzer / Aspect analyzer tool verificationBodin, Joakim January 2003 (has links)
Rising complexity in the development of real-time systems has made it crucial to have reusable components and a more flexible way of configuring these components into a coherent system. Aspect-oriented system development (AOSD) is a technique that allows one to put a system’s crosscutting concerns into"modules"that are called aspects. Applying AOSD in real-time and embedded system development one can expect reductions in the complexity of the system design and development. A problem with AOSD in its current form is that it does not support predictability in the time domain. Hence, in order to use AOSD in real-time system development, we need to provide ways of analyzing temporal behavior of aspects, components and resulting system (made from weaving aspects and components). Aspect analyzer is a tool that computes the worst-case execution time (WCET) for a set of components and aspects, thus, enabling support for predictability in the time domain of aspect-oriented real-time software. A limitation of the aspect analyzer, until now, were that no verification had been made whether the aspect analyzer would produce WCET values that were close to the measured or computed (with another WCET analysis technique) WCET of an aspect-oriented real-time system. Therefore, in this thesis we perform a verification of the correctness of the aspect analyzer using a number of different methods for WCET analysis. These investigations of the correctness of the output from the aspect analyzer gave confidence to the automated WCET analysis. In addition, performing this verification led to the identification of the steps necessary to compute the WCETs of a piece of program, when using a third party tool, which gives the ability to write accurate input files for the aspect analyzer.
|
13 |
Adaptive QoS Management in Dynamically Reconfigurable Real-Time Databases / Adaptive QoS Management in Dynamically Reconfigurable Real-Time DatabasesNilsson, Daniel, Norin, Henrik January 2005 (has links)
During the last years the need for real-time database services has increased due to the growing number of data-intensive applications needing to enforce real-time constraints. The COMponent-based Embedded real-Time database (COMET) is a real-time database developed to meet these demands. COMET is developed using the AspeCtual COmponent-based Real-time system Development (ACCORD) design method, and consists of a number of components and aspects, which can be composed into a number of different configurations depending on system demands, e.g., Quality of Service (QoS) management can be used in unpredictable environments. In embedded systems with requirementson high up-time it may not be possible to temporarily shut down the system for reconfiguration. Instead it is desirable to enable dynamic reconfiguration of the system, exchanging components during run-time. This in turn sets demands on the feedback control of the system to adjust to these new conditions, since a new time variant system has been created. This thesis project implements improvements in COMET to create a more stable database suitable for further development. A mechanism for dynamic reconfiguration of COMET is implemented, thus, enabling components and aspects to be swapped during run-time. Adaptive feedback control algorithms are also implemented in order to better adjust to workload variations and database reconfiguration.
|
14 |
Arquiterura para desenvolvimento de jogos com o uso de componentes reaproveitáveis / Creation of a platform for component based game developmentMaia, Carlos Edmilson da Silva 26 March 2010 (has links)
Game development presents more challenges as this type of software becomes more complex and detailed. As in the development of traditional software, this growth in scope
incurs in a development process that costs more and has a longer production time, increasing the risks faced by companies that wish to enter or maintain themselves in the
electronic game market. With this, it becomes increasingly desirable to search and implement tools that allow for the reduction of required resources to develop games. It is also noticeable that there is an increasing need to proved development teams with new tools that allow faster creation of prototypes, enabling them to test and evolve new game ideas in a nimbler and less expensive way.
This work presents the project and implementation of a modular platform that aims to solve or lessen the aforementioned problems, offering a tool that allows for the development of games with reduced costs, in addition to simplifying the quick prototyping process. Through the use of a programming approach based on reusable software components written in different programming languages, this work aims to enable methodologies that are able to foster code reuse, to facilitate team work, to reduce development time and to improve the quality of the final product. / O desenvolvimento de jogos apresenta mais desafios à medida que softwares desse tipo tornam-se mais complexos e detalhados. Assim como no desenvolvimento de softwares
tradicionais, esse crescimento do escopo incorre em custos maiores e prazos de produção mais longos, aumentando os riscos enfrentados por empresas do ramo que buscam
situar-se ou manter-se no mercado de jogos eletrônicos. Com isso, torna-se cada vez mais desejável buscar e implementar formas de desenvolvimento que possibilitem a redução
de recursos necessários para a produção desse tipo de software. Também se observa um aumento da necessidade de disponibilizar às equipes de desenvolvimento novas ferramentas que possibilitem a criação mais rápida de protótipos, permitindo testar e evoluir novas ideias de jogos de forma mais ágil e menos onerosa. Este trabalho trata do projeto e da implementação de uma plataforma modular que
objetiva a resolução ou amenização dos problemas citados, oferecendo uma ferramenta que possibilite o desenvolvimento de jogos com custo reduzido, além de simplificar o processo
de prototipação rápida. Através do uso de uma abordagem de programação baseada no uso de componentes de software reaproveitáveis escritos em diferentes linguagens de programação, este trabalho busca tornar possível metodologias que sejam capazes de incentivar o reuso de código, facilitar o trabalho em equipe, reduzir o tempo de desenvolvimento e melhorar a qualidade do produto final.
|
15 |
Towards Aspectual Component-Based Real-Time System DevelopmentTešanović, Aleksandra January 2003 (has links)
Increasing complexity of real-time systems and demands for enabling their configurability and tailorability are strong motivations for applying new software engineering principles such as aspect-oriented and component-based software development. The integration of these two techniques into real-time systems development would enable: (i) efficient system configuration from the components in the component library based on the system requirements, (ii) easy tailoring of components and/or a system for a specific application by changing the behavior (code) of the component by aspect weaving, and (iii) enhanced flexibility of the real-time and embedded software through the notion of system configurability and component tailorability. In this thesis we focus on applying aspect-oriented and component-based software development to real-time system development. We propose a novel concept of aspectual component-based real-time system development (ACCORD). ACCORD introduces the following into real-time system development: (i) a design method that assumes the decomposition of the real-time system into a set of components and a set of aspects, (ii) a real-time component model denoted RTCOM that supports aspect weaving while enforcing information hiding, (iii) a method and a tool for performing worst-case execution time analysis of different configurations of aspects and components, and (iv) a new approach to modelling of real-time policies as aspects. We present a case study of the development of a configurable real-time database system, called COMET, using ACCORD principles. In the COMET example we show that applying ACCORD does have an impact on the real-time system development in providing efficient configuration of the real-time system. Thus, it could be a way for improved reusability and flexibility of real-time software, and modularization of crosscutting concerns. In connection with development of ACCORD, we identify criteria that a design method for component-based real-time systems needs to address. The criteria include a well-defined component model for real-time systems, aspect separation, support for system configuration, and analysis of the composed real-time system. Using the identified set of criteria we provide an evaluation of ACCORD. In comparison with other approaches, ACCORD provides a distinct classification of crosscutting concerns in the real-time domain into different types of aspects, and provides a real-time component model that supports weaving of aspects into the code of a component, as well as a tool for temporal analysis of the weaved system. / <p>Report code: LiU-TEK-LIC-2003:23.</p>
|
16 |
Component-Based Model-Driven Software DevelopmentJohannes, Jendrik 07 January 2011 (has links) (PDF)
Model-driven software development (MDSD) and component-based software development are both paradigms for reducing complexity and for increasing abstraction and reuse in software development. In this thesis, we aim at combining the advantages of each by introducing methods from component-based development into MDSD. In MDSD, all artefacts that describe a software system are regarded as models of the system and are treated as the central development artefacts. To obtain a system implementation from such models, they are transformed and integrated until implementation code can be generated from them. Models in MDSD can have very different forms: they can be documents, diagrams, or textual specifications defined in different modelling languages. Integrating these models of different formats and abstraction in a consistent way is a central challenge in MDSD.
We propose to tackle this challenge by explicitly separating the tasks of defining model components and composing model components, which is also known as distinguishing programming-in-the-small and programming-in-the-large. That is, we promote a separation of models into models for modelling-in-the-small (models that are components) and models for modelling-in-the-large (models that describe compositions of model components). To perform such component-based modelling, we introduce two architectural styles for developing systems with component-based MDSD (CB-MDSD).
For CB-MDSD, we require a universal composition technique that can handle models defined in arbitrary modelling languages. A technique that can handle arbitrary textual languages is universal invasive software composition for code fragment composition. We extend this technique to universal invasive software composition for graph fragments (U-ISC/Graph) which can handle arbitrary models, including graphical and textual ones, as components. Such components are called graph fragments, because we treat each model as a typed graph and support reuse of partial models.
To put the composition technique into practice, we developed the tool Reuseware that implements U-ISC/Graph. The tool is based on the Eclipse Modelling Framework and can therefore be integrated into existing MDSD development environments based on the framework.
To evaluate the applicability of CB-MDSD, we realised for each of our two architectural styles a model-driven architecture with Reuseware. The first style, which we name ModelSoC, is based on the component-based development paradigm of multi-dimensional separation of concerns. The architecture we realised with that style shows how a system that involves multiple modelling languages can be developed with CB-MDSD. The second style, which we name ModelHiC, is based on hierarchical composition. With this style, we developed abstraction and reuse support for a large modelling language for telecommunication networks that implements the Common Information Model industry standard.
|
17 |
Component-Based Model-Driven Software DevelopmentJohannes, Jendrik 15 December 2010 (has links)
Model-driven software development (MDSD) and component-based software development are both paradigms for reducing complexity and for increasing abstraction and reuse in software development. In this thesis, we aim at combining the advantages of each by introducing methods from component-based development into MDSD. In MDSD, all artefacts that describe a software system are regarded as models of the system and are treated as the central development artefacts. To obtain a system implementation from such models, they are transformed and integrated until implementation code can be generated from them. Models in MDSD can have very different forms: they can be documents, diagrams, or textual specifications defined in different modelling languages. Integrating these models of different formats and abstraction in a consistent way is a central challenge in MDSD.
We propose to tackle this challenge by explicitly separating the tasks of defining model components and composing model components, which is also known as distinguishing programming-in-the-small and programming-in-the-large. That is, we promote a separation of models into models for modelling-in-the-small (models that are components) and models for modelling-in-the-large (models that describe compositions of model components). To perform such component-based modelling, we introduce two architectural styles for developing systems with component-based MDSD (CB-MDSD).
For CB-MDSD, we require a universal composition technique that can handle models defined in arbitrary modelling languages. A technique that can handle arbitrary textual languages is universal invasive software composition for code fragment composition. We extend this technique to universal invasive software composition for graph fragments (U-ISC/Graph) which can handle arbitrary models, including graphical and textual ones, as components. Such components are called graph fragments, because we treat each model as a typed graph and support reuse of partial models.
To put the composition technique into practice, we developed the tool Reuseware that implements U-ISC/Graph. The tool is based on the Eclipse Modelling Framework and can therefore be integrated into existing MDSD development environments based on the framework.
To evaluate the applicability of CB-MDSD, we realised for each of our two architectural styles a model-driven architecture with Reuseware. The first style, which we name ModelSoC, is based on the component-based development paradigm of multi-dimensional separation of concerns. The architecture we realised with that style shows how a system that involves multiple modelling languages can be developed with CB-MDSD. The second style, which we name ModelHiC, is based on hierarchical composition. With this style, we developed abstraction and reuse support for a large modelling language for telecommunication networks that implements the Common Information Model industry standard.
|
18 |
Towards decision-making to choose among different component originsBadampudi, Deepika January 2016 (has links)
Context: The amount of software in solutions provided in various domains is continuously growing. These solutions are a mix of hardware and software solutions, often referred to as software-intensive systems. Companies seek to improve the software development process to avoid delays or cost overruns related to the software development. Objective: The overall goal of this thesis is to improve the software development/building process to provide timely, high quality and cost efficient solutions. The objective is to select the origin of the components (in-house, outsource, components off-the-shelf (COTS) or open source software (OSS)) that facilitates the improvement. The system can be built of components from one origin or a combination of two or more (or even all) origins. Selecting a proper origin for a component is important to get the most out of a component and to optimize the development. Method: It is necessary to investigate the component origins to make decisions to select among different origins. We conducted a case study to explore the existing challenges in software development. The next step was to identify factors that influence the choice to select among different component origins through a systematic literature review using a snowballing (SB) strategy and a database (DB) search. Furthermore, a Bayesian synthesis process is proposed to integrate the evidence from literature into practice. Results: The results of this thesis indicate that the context of software-intensive systems such as domain regulations hinder the software development improvement. In addition to in-house development, alternative component origins (outsourcing, COTS, and OSS) are being used for software development. Several factors such as time, cost and license implications influence the selection of component origins. Solutions have been proposed to support the decision-making. However, these solutions consider only a subset of factors identified in the literature. Conclusions: Each component origin has some advantages and disadvantages. Depending on the scenario, one component origin is more suitable than the others. It is important to investigate the different scenarios and suitability of the component origins, which is recognized as future work of this thesis. In addition, the future work is aimed at providing models to support the decision-making process.
|
19 |
Desarrollo de sistemas de tiempo real basados en componentes utilizando modelos de comportamiento reactivos.López Martínez, Patricia 23 September 2010 (has links)
El objetivo de la tesis es definir una metodología de desarrollo de aplicaciones de tiempo real basadas en componentes, orientada a aplicaciones cuyos requisitos temporales se especifican utilizando un modelo reactivo de comportamiento temporal. La metodología se construye en base a extensiones que incorporan a las especificaciones, modelos de referencia y procesos estándares propios de la ingeniería de componentes convencionales, esto es, sin requisitos temporales, los datos y los procesos necesarios para la especificación, diseño y análisis de los aspectos relativos al comportamiento temporal. La metodología se sustenta en cuatro contribuciones principales:- Se propone la metodología de modelado modular del comportamiento temporal Mod-MAST, que permite construir el modelo de una aplicación basada en componentes por composición de los modelos de los componentes que la forman. - Se propone la extensión RT-D&C de la especificación Deployment and Configuration of Component-based Distributed Applications de OMG, que permite incluir metadatos relativos a comportamiento temporal en los descriptores de componentes, plataformas de ejecución y aplicaciones. - Se especifica la tecnología de componentes RT-CCM como una extensión de la especificación estándar Lightweight CCM de OMG, que añade los mecanismos necesarios para desarrollar aplicaciones con comportamiento temporal predecible.- Se propone la tecnología de componentes Ada-CCM como implementación concreta de RT-CCM basada en el lenguaje de programación Ada 2005.Todos estos elementos se integran en un proceso completo de diseño de tiempo real de aplicaciones basadas en componentes. / The objective of this work is to define a methodology for the development of real-time component-based applications, focused on applications whose timing requirements are specified according to a reactive model of the timing behaviour. The methodology is built through a set of extensions that incorporate to the standard specifications, reference models and processes typical from the conventional components engineering, i.e. components without timing requirements, the data structures and the processes required for the specification, design and analysis of the aspects related to timing behaviour. The methodology relies on four main contributions:- The Mod-MAST modular modelling methodology, which allows building the real-time model of a component-based application by composing the models of the components that form it.- The RT-D&C extension of the Deployment and Configuration of Component-based Distributed Applications Specification of the OMG, which allows including metadata related to timing behaviour in the descriptors of components, execution platforms and applications.- The RT-CCM components technology, which is an extension of the standard Lightweight CCM Specification of the OMG that incorporates mechanisms to develop applications with predictable timing behaviour.- The Ada-CCM components technology has been developed. It is an implementation of the RT-CCM technology based on the Ada 2005 programming language.All these elements have been integrated in a complete real-time design process for component-based applications.
|
Page generated in 0.1004 seconds