74 research outputs found
Performance modelling for system-level design
xii+208hlm.;24c
Parameter dependencies for reusable performance specifications of software components
To avoid design-related perÂforÂmance problems, model-driven performance prediction methods analyse the response times, throughputs, and reÂsource utilizations of software architectures before and during implementation. This thesis proposes new modeling languages and according model transformations, which allow a reusable description of usage profile dependencies to the performance of software components. Predictions based on this new methods can support performance-related design decisions
Coupled model transformations for QoS enabled component-based software design
This thesis presents the Palladio Component Model and its accompanying transformations for component-based software design with predictable performance attributes. The use of transformations results in a deterministic relationship between the model and its implementation. The introduced Coupled Transformations method uses this relationship to include implementation details into predictions to get better predictions. The approach is validated in several case studies showing the increased accuracy
Specification and refinement of software connectors
Tese de doutoramento em Informática (área de conhecimento de Fundamentos da Computação)Modern computer based systems are essentially based on the cooperation of
distributed, heterogeneous component organized into open software architectures
that, moreover, can survive in loosely-coupled environments and be easily adapted
to changing application requirements. Such is the case, for example, of applications
designed to take advantage of the increased computational power provided
by massively parallel systems or of the whole business of Internet-based software
development.
In order to develop such systems in a systematic way, the focus in development
method has switched, along the last decade, from functional to structural issues:
both data and processes are encapsulated into software units which are connected
into large systems resorting, to a number of techniques intended to support reusability
and modifiability.
Actually, the complexity and ubiquity achieved by software in present times
makes it imperative, more than ever, the availability of both technologies and sound
methods to drive its development. Programming ‘in–the–large’, component–based
programming and software architecture become popular expressions which embody
this sort of concerns and correspond to driving forces in current software engineering.
In such a context this thesis aims at introducing formal models for software connectors
as well as the corresponding notions of equivalence and refinement upon
which calculation principles for reasoning and transforming connector-based software
architectures can be developed. This research adopts an exogenous coordination
point of view in order to deal with components’ temporal and spatial decoupling
and, therefore, to provide support for looser levels of inter-component dependency.
The thesis also characterises a notion of behavioural interface for components and services. Interfaces and connectors are put together to form configurations, an
abstraction for representing software architectures.
A prototype implementation of a subset of the proposed models is provided, in
the form of a HASKELL library, as a proof of concept. Furthermore, the thesis reports
on a case study in which exogenous coordination is applied to the specification of
interactive systems.Um número crescente de sistemas computacionais é baseado na cooperação de
componentes interdependentes e heterogêneas, organizadas em arquiteturas abertas
capazes de sobreviverem em ambientes altamente distribuÃdos e facilmente adaptáveis
a alterações nos requisitos das aplicações que os suportam. Tal é o caso, por
exemplo, de aplicações que exploram o poder computacional de sistemas massivamente
paralelos ou de sistemas desenvolvidos sobre a Internet.
Para desenvolver este tipo de sistemas de forma sistemática, o foco nos métodos
de desenvolvimento alterou-se, ao longo da última década, dos aspectos funcionais
para os aspectos estruturais dos sistemas: ambos, estruturas de dados e processos
são encapsulados em unidades computacionais que são conectadas em grandes sistemas
utilizando-se de diversas técnicas que se pretendem capazes de suportar a
reutilização e a adaptabilidade do software.
Na realidade, a complexidade e ubiqüidade atingidas pelo software nos dias
correntes tornam imperativo, mais do que nunca, a disponibilidade de tecnologias
e sólidos métodos para conduzir este processo de desenvolvimento. Programação
’em-grande-escala’, programação baseada em componentes e arquiteturas de software
são expressões populares que englobam esta preocupação e correspondem aos
esforços direcionados pela engenharia de software.
Em tal contexto, esta tese tem por objetivo introduzir modelos formais para
conectores de software bem como as correspondentes noções de equivalência e refinamento
que suportem cálculos para raciocinar e transformar arquiteturas de software
baseada em conectores. Esta pesquisa adota um ponto de vista de coordenação
exógena para lidar com a separação espacial e temporal das componentes e suportar
nÃveis elevados de independência entre componentes.
A tese caracteriza, ainda, uma noção de interface comportamental para componentes e serviços. Interfaces e conectores agregam-se para formar configurações,
uma abstração introduzida para representar arquiteturas de software.
A implementação, em protótipo, de parte dos modelos propostos, sob a forma
de uma biblioteca em HASKELL, é fornecida como prova de conceito. Finalmente, a
tese percorre um estudo de caso em que coordenação exôgena é utilizada na especificação
de sistemas interactivos.Fundação para a Ciência e a Tecnologia (FCT), SFRH/BD/11083/200
Performance analysis of large-scale resource-bound computer systems
We present an analysis framework for performance evaluation of large-scale resource-bound
(LSRB) computer systems. LSRB systems are those whose resources are continually
in demand to serve resource users, who appear in large populations and cause
high contention. In these systems, the delivery of quality service is crucial, even in
the event of resource failure. Therefore, various techniques have been developed for
evaluating their performance. In this thesis, we focus on the technique of quantitative
modelling, where in order to study a system, first its model is constructed and then the
system’s behaviour is analysed via the model.
A number of high level formalisms have been developed to aid the task of model
construction. We focus on PEPA, a stochastic process algebra that supports compositionality
and enables us to easily build complex LSRB models. In spite of this advantage,
however, the task of analysing LSRB models still poses unresolved challenges.
LSRB models give rise to very large state spaces. This issue, known as the state
space explosion problem, renders the techniques based on discrete state representation,
such as numerical Markovian analysis, computationally expensive. Moreover,
simulation techniques, such as Gillespie’s stochastic simulation algorithm, are also
computationally demanding, as numerous trajectories need to be collected.
Furthermore, as we show in our first contribution, the techniques based on the
mean-field theory or fluid flow approximation are not readily applicable to this case.
In LSRB models, resources are not assumed to be present in large populations and
models exhibit highly noisy and stochastic behaviour. Thus, the mean-field deterministic
behaviour might not be faithful in capturing the system’s randomness and is
potentially too crude to show important aspects of their behaviours. In this case, the
modeller is unable to obtain important performance indicators, such as the reliability
measures of the system. Considering these limitations, we contribute the following
analytical methods particularly tailored to LSRB models.
First, we present an aggregation method. The aggregated model captures the evolution
of only the system’s resources and allows us to efficiently derive a probability
distribution over the configurations they experience. This distribution provides full
faithfulness for studying the stochastic behaviour of resources. The aggregation can be
applied to all LSRB models that satisfy a syntactic aggregation condition, which can
be quickly checked syntactically. We present an algorithm to generate the aggregated
model from the original model when this condition is satisfied.
Second, we present a procedure to efficiently detect time-scale near-complete decomposability
(TSND). The method of TSND allows us to analyse LSRB models at
a reduced cost, by dividing their state spaces into loosely coupled blocks. However,
one important input is a partition of the transitions defined in the model, categorising
them into slow or fast. Forming the necessary partition by the analysis of the model’s
complete state space is costly. Our process derives this partition efficiently, by relying
on a theorem stating that our aggregation preserves the original model’s partition and
therefore, it can be derived by an efficient reachability analysis on the aggregated state
space. We also propose a clustering algorithm to implement this reachability analysis.
Third, we present the method of conditional moments (MCM) to be used on LSRB
models. Using our aggregation, a probability distribution is formed over the configurations
of a model’s resources. The MCM outputs the time evolution of the conditional
moments of the marginal distribution over resource users given the configurations of
resources. Essentially, for each such configuration, we derive measures such as conditional
expectation, conditional variance, etc. related to the dynamics of users. This
method has a high degree of faithfulness and allows us to capture the impact of the
randomness of the behaviour of resources on the users.
Finally, we present the advantage of the methods we proposed in the context of a
case study, which concerns the performance evaluation of a two-tier wireless network
constructed based on the femto-cell macro-cell architecture
- …