共查询到20条相似文献,搜索用时 15 毫秒
1.
Hermann Härtig Steffen Zschaler Martin Pohlack Ronald Aigner Steffen Göbel Christoph Pohl Simone Röttger 《Real-Time Systems》2007,35(1):1-31
We present enforceable component-based realtime contracts, the first extension of component-based software engineering technology that comprehensively supports adaptive realtime systems from specification all the way to the running system.To provide this support, we have extended component-based interface definition languages (IDLs) and component representations in repositories to express realtime requirements for components. The final software, which is assembled from the components, is then executed on a realtime operating system (RTOS) with the help of a component runtime system. RTOS resource managers and the IDL-extensions are based on the same mathematical foundation. Thus, the component runtime system can use information expressed in a component-oriented manner in the extended IDL to derive parameters for the task-based admission and scheduling in the RTOS. Once basic realtime properties can thus be guaranteed, runtime support can be extended to more elaborate schemes that also support adaptive applications (container-managed quality assurance).We claim that this study convincingly demonstrates how component-based software engineering can be extended to build systems with non-functional requirements. 相似文献
2.
Marco Autili Author Vitae 《Journal of Systems and Software》2008,81(12):2210-2236
Building a distributed system from third-party components introduces a set of problems, mainly related to compatibility and communication. Our existing approach to solve such problems is to build a centralized adaptor which restricts the system’s behavior to exhibit only deadlock-free and desired interactions. However, in a distributed environment such an approach is not always suitable. In this paper, we show how to automatically generate a distributed adaptor for a set of black-box components. First, by taking into account a specification of the interaction behavior of each component, we synthesize a behavioral model for a centralized glue adaptor. Second, from the synthesized adaptor model and a specification of the desired behavior that must be enforced, we generate one local adaptor for each component. The local adaptors cooperatively behave as the centralized one restricted with respect to the specified desired interactions. 相似文献
3.
An architectural approach to the correct and automatic assembly of evolving component-based systems 总被引:1,自引:0,他引:1
Patrizio Pelliccione Author Vitae Antonio Bucchiarone Author Vitae 《Journal of Systems and Software》2008,81(12):2237-2251
Software components are specified, designed and implemented with the intention to be reused, and they are assembled in various contexts in order to produce a multitude of software systems. However, in the practice of software development, this ideal scenario is often unrealistic. This is mainly due to the lack of an automatic and efficient support to predict properties of the assembly code by only assuming a limited knowledge of the properties of single components. Moreover, to make effective the component-based vision, the assembly code should evolve when things change, i.e., the properties guaranteed by the assembly, before a change occurs, must hold also after the change. Glue code synthesis approaches technically permit one to construct an assembly of components that guarantees specific properties but, practically, they may suffer from the state-space explosion phenomenon.In this paper, we propose a Software Architecture (SA) based approach in which the usage of the system SA and of SA verification techniques allows the system assembler to design architectural components whose interaction is verified with respect to the specified properties. By exploiting this validation, the system assembler can perform code synthesis by only focusing on each single architectural component, hence refining it as an assembly of actual components which respect the architectural component observable behaviour. In this way code synthesis is performed locally on each architectural component, instead of globally on the whole system interactions, hence reducing the state-space explosion phenomenon.The approach can be equally well applied to efficiently manage the whole reconfiguration of the system when one or more components need to be updated, still maintaining the required properties. The specified and verified system SA is used as starting point for the derivation of glue adaptors that are required to apply changes in the composed system. The approach is firstly illustrated over an explanatory example and is then applied and validated over a real-world industrial case study. 相似文献
4.
Alexandre Bragança Ricardo J. Machado 《Innovations in Systems and Software Engineering》2009,5(1):65-78
The alignment of the software architecture and the functional requirements of a system is a demanding task because of the
difficulty in tracing design elements to requirements. The four-step rule set (4SRS) is a unified modeling language (UML)-based
model-driven method for single system development which provides support to the software architect in this task. This paper
presents an evolution of the 4SRS method aimed at software product lines. In particular, we describe how to address the transformation
of functional requirements (use cases) into component-based requirements for the product line architecture. The result is
a UML-based model-driven method that can be applied in combination with metamodeling tools such as the eclipse modeling framework
(EMF) to derive the architecture of software product lines. We present our approach in a practical way and illustrate it with
an example. We also discuss how our proposals are related to the work of other authors. 相似文献
5.
Jesús Gallardo Ana I. Molina Crescencio Bravo Miguel A. Redondo 《Journal of Network and Computer Applications》2013,36(6):1551-1565
Groupware systems are usually difficult to design when following traditional methodologies and approaches for single user systems. In this regard, model-driven approaches have been gaining attention in recent years. In accordance with this paradigm, we developed the SpacEclipse method in a previous work, which is a method for developing collaborative modeling groupware based on the plug-ins in the Eclipse Modeling Project. However, this method presents some deficiencies that we have tried to overcome in this work. In order to achieve this goal, we have chosen the CIAM methodology, which allows the modeling of collaboration, users, tasks, sessions and interactive issues and which is also supported by Eclipse-based tools. In this paper, we explain how the integration of CIAM elements in the SpacEclipse method has been carried out and resulted in a new method with its own methodological, conceptual and technological frameworks. To prove the validity of the method, we have applied it to a re-engineering process in the development of an existing tool. 相似文献
6.
Numerous component models have been proposed in the literature, a testimony of a subject domain rich with technical and scientific challenges, and considerable potential. Unfortunately however, the reported level of adoption has been comparatively low. Where successes were had, they were largely facilitated by the manifest endorsement, where not the mandate, by relevant stakeholders, either internal to the industrial adopter or with authority over the application domain. The work presented in this paper stems from a comprehensive initiative taken by the European Space Agency (ESA) and its industrial suppliers. This initiative also enjoyed significant synergy with interests shown for similar goals by the telecommunications and railways domain, thanks to the interaction between two parallel project frameworks. The ESA effort aimed at favouring the adoption of a software reference architecture across its software supply chain. The center of that strategy revolves around a component model and the software development process that builds on it. This paper presents the rationale, the design and implementation choices made in their conception, as well as the feedback obtained from a number of industrial case studies that assessed them. 相似文献
7.
A component-based simulation environment for statistical process control systems analysis 总被引:4,自引:0,他引:4
This paper describes a simulation environment, called Prosim, which permits a user to define components, subsystems, and their interconnections to analyse a statistical process control (SPC) system. The components and systems are defined and analysed interactively. A library of standard SPC objects containing models for the Xbar, range, exponential weighted moving average, p-chart and other SPC techniques have been created which help define the control application. The PC-based tool is tested on theoretical, and real data, and is useful for the design and trouble shooting of a manufacturing system. It is also an effective teaching and research tool. 相似文献
8.
One of the main problems in component assembly is how to establish properties on the assembly code by only assuming a limited knowledge of the single component properties. Our answer to this problem is an architectural approach in which the software architecture imposed on the assembly prevents black-box integration anomalies. The basic idea is to build applications by assuming a “coordinator-based” architectural style. We, then, operate on the coordinating part of the system architecture to obtain an equivalent version of the system which is failure-free. A failure-free system is a deadlock-free one and it does not violate any specified coordination policy. A coordination policy models those interactions of components that are actually needed for the overall purpose of the system. We illustrate our approach by means of an explanatory example and validate it on an industrial case study that concerns the development of systems for safeguarding, fruiting, and supporting the Cultural Heritage. 相似文献
9.
Agile methods rapidly replacing traditional methods at Nokia: A survey of opinions on agile transformation 总被引:2,自引:0,他引:2
Context
Many organizations have started to deploy agile methods, but so far there exist only a few studies on organization-wide transformations. Are agile methods here to stay? Some claim that agile software development methods are in the mainstream adoption phase in the software industry, while others hope that those are a passing fad. The assumption here is that if agile would not provide real improvement, adopters would be eager at first but turn pessimistic after putting it into practice.Objective
Despite the growing amount of anecdotal evidence on the success of agile methods across a wide range of different real-life development settings, scientific studies remain scarce. Even less is known about the perception of the impacts of agile transformation when it is deployed in a very large software development environment, and whether agile methods are here to stay. This study aims to fill that gap by providing evidence from a large-scale agile transformation within Nokia. While we have yet to confirm these findings with solid quantitative data, we believe that the perception of the impacts already pinpoints the direction of the impacts of large-scale agile transformation.Method
The data were collected using a questionnaire. The population of the study contains more than 1000 respondents in seven different countries in Europe, North America, and Asia.Results
The results reveal that most respondents agree on all accounts with the generally claimed benefits of agile methods. These benefits include higher satisfaction, a feeling of effectiveness, increased quality and transparency, increased autonomy and happiness, and earlier detection of defects. Finally, 60% of respondents would not like to return to the old way of working.Conclusion
While the perception of the impact of agile methods is predominantly positive, several challenge areas were discovered. However, based on this study, agile methods are here to stay. 相似文献10.
11.
Vijayan Sugumaran Mohan Tanniru Veda C. Storey 《Information Technology and Management》2008,9(1):37-53
Considerable strides have been made in the use of components in software development. Many proprietary enterprise resource
planning (ERP) software environments use modular components to develop and customize “best practices” to meet a specific organizational
need. In agile application development, many developers and users are asked to design systems in a short period of time. These
applications may use components that are embedded in software repositories. The challenge then is how to select the right
software components (data and procedures) to meet an application requirement. Although experienced developers may select and
customize components to meet the needs of an application, such expertise may not be available to other applications. This
paper presents a knowledge-based framework to select and customize software components and demonstrates its value in deriving
quality specifications, even when the developers are relatively inexperienced. 相似文献
12.
Santi Caballé Author Vitae Fatos Xhafa Author Vitae 《Journal of Systems and Software》2010,83(11):2083-2097
Over the last decade, e-Learning and in particular Computer-Supported Collaborative Learning (CSCL) needs have been evolving accordingly with more and more demanding pedagogical and technological requirements. As a result, high customization and flexibility are a must in this context, meaning that collaborative learning practices need to be continuously adapted, adjusted, and personalized to each specific target learning group. These very demanding needs of the CSCL domain represent a great challenge for the research community on software development to satisfy.This contribution presents and evaluates a previous research effort in the form of a generic software infrastructure called Collaborative Learning Purpose Library (CLPL) with the aim of meeting the current and demanding needs found in the CSCL domain. To this end, we experiment with the CLPL in order to offer an advanced reuse-based service-oriented software engineering methodology for developing CSCL applications in an effective and timely fashion. A validation process is provided by reporting on the use of the CLPL platform as the primary resource for the Master's thesis courses at the Open University of Catalonia when developing complex software applications in the CSCL domain.The ultimate aim of the whole research is to yield effective CSCL software systems capable of supporting and enhancing the current on-line collaborative learning practices. 相似文献
13.
Steffen Becker Author Vitae Heiko Koziolek Author Vitae Author Vitae 《Journal of Systems and Software》2009,82(1):3-22
One aim of component-based software engineering (CBSE) is to enable the prediction of extra-functional properties, such as performance and reliability, utilising a well-defined composition theory. Nowadays, such theories and their accompanying prediction methods are still in a maturation stage. Several factors influencing extra-functional properties need additional research to be understood. A special problem in CBSE stems from its specific development process: Software components should be specified and implemented independently from their later context to enable reuse. Thus, extra-functional properties of components need to be specified in a parametric way to take different influencing factors like the hardware platform or the usage profile into account. Our approach uses the Palladio component model (PCM) to specify component-based software architectures in a parametric way. This model offers direct support of the CBSE development process by dividing the model creation among the developer roles. This paper presents our model and a simulation tool based on it, which is capable of making performance predictions. Within a case study, we show that the resulting prediction accuracy is sufficient to support the evaluation of architectural design decisions. 相似文献
14.
W. David Hurley 《Journal of Systems Integration》1993,3(3-4):251-271
Designing user interfaces and designing computational software are very different processes. The differences lead to late discovery of design conflicts, which drives up development costs. A unifying methodology that could provide early discovery and resolution of design conflicts must account for the governing principles of both processes. Disciplined long-term investigation of candidate methodologies requires that these governing principles be fixed and that evolving development methods comprising each process be accommodated. This article describes an application of general systems theory to integrate these principles, proposes a process model that fixes them as explicit elements of a process program, argues the feasibility of the model and its worthiness for further study, and describes its initial implementation. 相似文献
15.
During the unit testing of model-driven tools, a large number of models and test classes needs to be managed and maintained. Typically, some of these artifacts are specified manually, some are generated automatically. Existing approaches to test management rely on the available visual and textual modeling notations. As these notations are not tailored to unit testing, distinct maintainability trade-offs arise.In this paper, we propose a notation that aims to combine the benefits of visual and text-based approaches. The notation is at the same time visual and text-based, as it uses ASCII characters to emulate the familiar graphical notations. In our evaluation based on real models, we identify problematic model shapes challenging the scalability our notation, while finding that it is well-suited to capture typical test models. 相似文献
16.
17.
Systems and software architects require quantitative dependability evaluations, which allow them to compare the effect of their design decisions on dependability properties. For security, however, quantitative evaluations have proven difficult, especially for component-based systems. In this paper, we present a risk-based approach that creates modular attack trees for each component in the system. These modular attack trees are specified as parametric constraints, which allow quantifying the probability of security breaches that occur due to internal component vulnerabilities as well as vulnerabilities in the component’s deployment environment. In the second case, attack probabilities are passed between system components as appropriate to model attacks that exploit vulnerabilities in multiple system components. The probability of a successful attack is determined with respect to a set of attack profiles that are chosen to represent potential attackers and corresponding environmental conditions. Based on these attack probabilities and the structure of the modular attack trees, risk measures can be estimated for the complete system and compared with the tolerable risk demanded by stakeholders. The practicability of this approach is demonstrated with an example that evaluates the confidentiality of a distributed document management system. 相似文献
18.
19.
As every-day mobile devices can easily be equipped with multiple sensing capabilities, ubiquitous applications are expected to exploit the richness of the context information that can be collected by these devices in order to provide the service that is the most appropriate to the situation of the user. However, the design and implementation of such context-aware ubiquitous appplications remain challenging as there exist very few models and tools to guide application designers and developers in mastering the complexity of context information. This becomes even more crucial as context is by nature imperfect. One way to address this issue is to associate to context information meta-data representing its quality. We propose a generic and extensible design process for context-aware applications taking into account the quality of context (QoC). We demonstrate its use on a prototype application for sending flash sale offers to mobile users. We present extensive performance results in terms of memory and processing time of both elementary context management operations and the whole context policy implementing the Flash sale application. The cost of adding QoC management is also measured and appears to be limited to a few milliseconds. We show that a context policy with 120 QoC-aware nodes can be processed in less than 100 ms on a mobile phone. Moreover, a policy of almost 3000 nodes can be instantiated before exhausting the resources of the phone. This enables very rich application scenarios enhancing the user experience and will favor the development of new ubiquitous applications. 相似文献
20.
杨友麒 《计算机与应用化学》2008,25(9)
在回顾50年来计算机与信息技术发展及其影响的基础上,考察了过程工业及过程工程的发展特点,探讨了过程工程与过程系统工程两学科的同异.最后,研究了过程工业未来发展对过程工程、过程系统工程的挑战. 相似文献