Increasingly software can be considered to be critical, due to the business or other functionality which it supports. Upgrades or changes to such software are expensive and risky, primarily because the software has not been designed and built for ease of change. Expertise, tools and methodologies which support the design and implementation of software systems that evolve without risk (of failure or loss of quality) are essential. We address a research agenda for building software in computer-based systems that (a) is highly reliable and (b) retains this reliability as it evolves, either over time or at run-time.
{"title":"Evolving Critical Systems: A Research Agenda for Computer-Based Systems","authors":"M. Hinchey, Lorcan Coyle","doi":"10.1109/ECBS.2010.56","DOIUrl":"https://doi.org/10.1109/ECBS.2010.56","url":null,"abstract":"Increasingly software can be considered to be critical, due to the business or other functionality which it supports. Upgrades or changes to such software are expensive and risky, primarily because the software has not been designed and built for ease of change. Expertise, tools and methodologies which support the design and implementation of software systems that evolve without risk (of failure or loss of quality) are essential. We address a research agenda for building software in computer-based systems that (a) is highly reliable and (b) retains this reliability as it evolves, either over time or at run-time.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124765340","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
G. Simas, Rodrigo de Bem, L. Novelo, Guilherme P. Fickel, S. Botelho
This paper presents an approach to the 3D visual tracking problem into multi-camera environments. This proposal executes the markerless visual tracking observing the environment through a model based in a volumetric reconstruction technique, called 3D Probabilistic Occupancy Grids, which is still seldom used for this purpose. The target is tracked by the use of Expectation-Maximization algorithm with an object representation model constructed with Gaussians blobs representing the object body parts.
{"title":"Visual Tracking Based on 3D Probabilistic Reconstruction","authors":"G. Simas, Rodrigo de Bem, L. Novelo, Guilherme P. Fickel, S. Botelho","doi":"10.1109/ECBS.2010.53","DOIUrl":"https://doi.org/10.1109/ECBS.2010.53","url":null,"abstract":"This paper presents an approach to the 3D visual tracking problem into multi-camera environments. This proposal executes the markerless visual tracking observing the environment through a model based in a volumetric reconstruction technique, called 3D Probabilistic Occupancy Grids, which is still seldom used for this purpose. The target is tracked by the use of Expectation-Maximization algorithm with an object representation model constructed with Gaussians blobs representing the object body parts.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114389509","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Software architecture is a very important factor when it comes to performance measurements. A large percentage of projects failing their potential performance characterisation was caused by badly configured architectures. Performance assessment of software architectures proved to be a successful way of preventing this risk. Non-functional requirements verification is still an uncharted area in agile development. CPASA provides a method for assessing the performance requirements using the system architecture as a base for conducting the performance study. In this paper, we introduce the steps in the CPASA method and the technical description of how to deploy this method
{"title":"CPASA: Continuous Performance Assessment of Software Architecture","authors":"R. Pooley, A. A. Abdullatif","doi":"10.1109/ECBS.2010.16","DOIUrl":"https://doi.org/10.1109/ECBS.2010.16","url":null,"abstract":"Software architecture is a very important factor when it comes to performance measurements. A large percentage of projects failing their potential performance characterisation was caused by badly configured architectures. Performance assessment of software architectures proved to be a successful way of preventing this risk. Non-functional requirements verification is still an uncharted area in agile development. CPASA provides a method for assessing the performance requirements using the system architecture as a base for conducting the performance study. In this paper, we introduce the steps in the CPASA method and the technical description of how to deploy this method","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"480 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116529810","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Faced with rising costs and rampant overcrowding, correctional facilities are turning to computer-based systems for help. More than 2.3 million people currently live in US prisons or jails-25 percent of the world's total inmate population-a comparatively much higher rate than in other Western countries. Denmark only incarcerates 66 of every 100,000 citizens, compared to 760 in the US. This situation results from tough sentencing policies that focus on drug use and habitual offenders. Over three decades, these policies contributed to high incarceration rates and resulting high costs. Self-service systems as well as biometric tracking are seen as a means to reduce the management burden. Self-service kiosks in corrections facilities are a relatively new but growing phenomenon. In 2006, the Corrections Technology Association conducted a survey on the use of computer-based kiosks to help corrections agencies make decisions on implementing kiosk-based systems. The results indicated considerable interest in using kiosks for a range of applications, including distribution of general information, display of inmate account balances, purchase of goods from the commissary, and depositing inmate funds. A wide range of applications are possible. Current efforts focus on existing services, but digital technology creates possibilities for new service types that can exploit the direct distribution model, such as a law library and the digital media distribution of music, literature, films, and images managed through the kiosks and downloaded onto appropriate secure devices, such as MP3 players. To help succeed in reducing the management cost a common platform is required. Prisons and suppliers must agree on a set of protocols for data exchange and communication methods. This framework and the base kiosk functionality will enable developers to produce better applications, which can be used in more prisons without having to rewrite all the base functionality. To this end, this talk intends to launch a joint IEEE TC-ECBS and TC-AAS industrial working group to establish such standards for a common platform.
{"title":"Engineering Self-Service Correctional Facility Biometric Computer-Based Systems","authors":"P. O'Hagan","doi":"10.1109/ECBS.2010.63","DOIUrl":"https://doi.org/10.1109/ECBS.2010.63","url":null,"abstract":"Faced with rising costs and rampant overcrowding, correctional facilities are turning to computer-based systems for help. More than 2.3 million people currently live in US prisons or jails-25 percent of the world's total inmate population-a comparatively much higher rate than in other Western countries. Denmark only incarcerates 66 of every 100,000 citizens, compared to 760 in the US. This situation results from tough sentencing policies that focus on drug use and habitual offenders. Over three decades, these policies contributed to high incarceration rates and resulting high costs. Self-service systems as well as biometric tracking are seen as a means to reduce the management burden. Self-service kiosks in corrections facilities are a relatively new but growing phenomenon. In 2006, the Corrections Technology Association conducted a survey on the use of computer-based kiosks to help corrections agencies make decisions on implementing kiosk-based systems. The results indicated considerable interest in using kiosks for a range of applications, including distribution of general information, display of inmate account balances, purchase of goods from the commissary, and depositing inmate funds. A wide range of applications are possible. Current efforts focus on existing services, but digital technology creates possibilities for new service types that can exploit the direct distribution model, such as a law library and the digital media distribution of music, literature, films, and images managed through the kiosks and downloaded onto appropriate secure devices, such as MP3 players. To help succeed in reducing the management cost a common platform is required. Prisons and suppliers must agree on a set of protocols for data exchange and communication methods. This framework and the base kiosk functionality will enable developers to produce better applications, which can be used in more prisons without having to rewrite all the base functionality. To this end, this talk intends to launch a joint IEEE TC-ECBS and TC-AAS industrial working group to establish such standards for a common platform.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131361395","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Focusing on aspects during early stages of the software development lifecycle has received special attention by many researchers, leading to the advent of numerous Aspect-Oriented Software Development (AOSD) methods. This has consequently given a relatively high level of maturity to aspect-oriented processes. Process patterns, on the other hand, have been adopted as suitable mechanisms for defining or tailoring processes to fit specific organizational/project requirements. Process patterns, which essentially are reusable process components extracted from successful processes and practices, can be used to engineer new software development methodologies or to enhance existing ones. We propose a generic Aspect-Oriented Software Process (AOSP), constructed through studying and abstracting prominent aspect-oriented processes. Based on the proposed AOSP, process patterns are provided which incorporate well-established aspect-oriented practices for different development stages. By employing specific process evaluation criteria, the characteristics of these patterns have been analyzed.
{"title":"Process Patterns for Aspect-Oriented Software Development","authors":"Massood Khaari, Raman Ramsin","doi":"10.1109/ECBS.2010.33","DOIUrl":"https://doi.org/10.1109/ECBS.2010.33","url":null,"abstract":"Focusing on aspects during early stages of the software development lifecycle has received special attention by many researchers, leading to the advent of numerous Aspect-Oriented Software Development (AOSD) methods. This has consequently given a relatively high level of maturity to aspect-oriented processes. Process patterns, on the other hand, have been adopted as suitable mechanisms for defining or tailoring processes to fit specific organizational/project requirements. Process patterns, which essentially are reusable process components extracted from successful processes and practices, can be used to engineer new software development methodologies or to enhance existing ones. We propose a generic Aspect-Oriented Software Process (AOSP), constructed through studying and abstracting prominent aspect-oriented processes. Based on the proposed AOSP, process patterns are provided which incorporate well-established aspect-oriented practices for different development stages. By employing specific process evaluation criteria, the characteristics of these patterns have been analyzed.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124964369","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The paper presents an emulation solution for a multi-core segmented bus platform, SegBus, to assess the performance aspects of any specific application on a particular platform configuration, modeled in UML. We present method to transform Platform Specific Model (PSM) of application into Java source code using modeling tool and how the generated code can be utilized by the emulator program to get the execution results. The solution enables us to estimate performance aspects with different platform configurations together with the application at early stages of the design process.
本文提出了一个多核分段总线平台SegBus的仿真解决方案,以评估在UML中建模的特定平台配置上任何特定应用程序的性能方面。提出了利用建模工具将应用程序的平台特定模型(Platform Specific Model, PSM)转换为Java源代码的方法,以及仿真程序如何利用生成的代码来获得执行结果。该解决方案使我们能够在设计过程的早期阶段评估不同平台配置和应用程序的性能方面。
{"title":"An Emulation Solution for the SegBus Platform","authors":"M. F. Niazi, H. Tenhunen, T. Seceleanu","doi":"10.1109/ECBS.2010.37","DOIUrl":"https://doi.org/10.1109/ECBS.2010.37","url":null,"abstract":"The paper presents an emulation solution for a multi-core segmented bus platform, SegBus, to assess the performance aspects of any specific application on a particular platform configuration, modeled in UML. We present method to transform Platform Specific Model (PSM) of application into Java source code using modeling tool and how the generated code can be utilized by the emulator program to get the execution results. The solution enables us to estimate performance aspects with different platform configurations together with the application at early stages of the design process.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116734027","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
One of the key challenges in modern real-time embedded systems is safe composition of different software components. Formal verification techniques provide the means for design-time analysis of these systems. This paper introduces an approach based on timed automata for analysis of such component-based real-time embedded systems. The goal of our research is to provide a method for treating the schedulability problem of such systems on multi-core platforms. Since the components are developed, analyzed and tested independent of each other, the impact of one component on the others does not depend on its internal structure. Therefore, we reduce the problem of proving the schedulability of the composed system to proving the schedulability of each component on the resource partition allocated to it based on the interface of the component. The proposed verification method is demonstrated on a H.264 decoder case study.
{"title":"Timed Automata Model for Component-Based Real-Time Systems","authors":"Georgiana Macariu, V. Cretu","doi":"10.1109/ECBS.2010.20","DOIUrl":"https://doi.org/10.1109/ECBS.2010.20","url":null,"abstract":"One of the key challenges in modern real-time embedded systems is safe composition of different software components. Formal verification techniques provide the means for design-time analysis of these systems. This paper introduces an approach based on timed automata for analysis of such component-based real-time embedded systems. The goal of our research is to provide a method for treating the schedulability problem of such systems on multi-core platforms. Since the components are developed, analyzed and tested independent of each other, the impact of one component on the others does not depend on its internal structure. Therefore, we reduce the problem of proving the schedulability of the composed system to proving the schedulability of each component on the resource partition allocated to it based on the interface of the component. The proposed verification method is demonstrated on a H.264 decoder case study.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"115 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116149600","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The main objective in the MDE1 approach is to consider all handled items as models (they are “first class” entities). Then the second objective is to automate the integration of heterogeneous models, thanks to efficient model transformation techniques. In the field of avionic real-time and embedded systems, two modeling languages are now standardized and widely used. The UML2 profile for MARTE, version β3 is standardized by the OMG and the AADL v2.0 is standardized by the SAE. The MARTE profile is used in the first steps of the analysis for more abstract models (e.g. independent of the platforms), the AADL is more used in last steps of the design phase, in order to generate efficient code, mainly or the execution platforms. This paper focuses on the growing role of high-level abstraction modeling in the detailed analysis phase through an intensive the use of the MARTE profile.
{"title":"High-Level Abstraction Modeling for Detailed Analysis of Avionic Real-Time Systems","authors":"I. Perseil, L. Pautet","doi":"10.1109/ECBS.2010.55","DOIUrl":"https://doi.org/10.1109/ECBS.2010.55","url":null,"abstract":"The main objective in the MDE1 approach is to consider all handled items as models (they are “first class” entities). Then the second objective is to automate the integration of heterogeneous models, thanks to efficient model transformation techniques. In the field of avionic real-time and embedded systems, two modeling languages are now standardized and widely used. The UML2 profile for MARTE, version β3 is standardized by the OMG and the AADL v2.0 is standardized by the SAE. The MARTE profile is used in the first steps of the analysis for more abstract models (e.g. independent of the platforms), the AADL is more used in last steps of the design phase, in order to generate efficient code, mainly or the execution platforms. This paper focuses on the growing role of high-level abstraction modeling in the detailed analysis phase through an intensive the use of the MARTE profile.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129299629","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Modern hardware infrastructure of complex computer based systems is based on multiprocessors and/or multi cores. Therefore, application software has to be executed in parallel on many processors/cores rather than sequentially on a single processor computer. This paper contributes to the overall research effort in the area by proposing an original approach to application level parallelization of complex real time software. In our previous work on parallelization of legacy software we have used the Task Tree Executor, a runtime engine for parallelization of Distribution Management System application functions. In this paper we present another solution, in the form of an architecture, which parallelizes a set of Distribution Management System application functions, controls their execution, and improves robustness of the system. The software architecture presented in this paper is named the Calculation Engine. The paper also presents the results of the performance evaluation based on a series of experiments made on the dual-core symmetric multiprocessor and NUMA machines.
{"title":"An Application Level Parallelization of Complex Real-Time Software","authors":"B. Trivunovic, M. Popovic, Vladislav Vrtunski","doi":"10.1109/ECBS.2010.34","DOIUrl":"https://doi.org/10.1109/ECBS.2010.34","url":null,"abstract":"Modern hardware infrastructure of complex computer based systems is based on multiprocessors and/or multi cores. Therefore, application software has to be executed in parallel on many processors/cores rather than sequentially on a single processor computer. This paper contributes to the overall research effort in the area by proposing an original approach to application level parallelization of complex real time software. In our previous work on parallelization of legacy software we have used the Task Tree Executor, a runtime engine for parallelization of Distribution Management System application functions. In this paper we present another solution, in the form of an architecture, which parallelizes a set of Distribution Management System application functions, controls their execution, and improves robustness of the system. The software architecture presented in this paper is named the Calculation Engine. The paper also presents the results of the performance evaluation based on a series of experiments made on the dual-core symmetric multiprocessor and NUMA machines.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129201473","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
One of the ideas of agile software development is to respond to changes rather than following a plan. Constantly changing businesses result in changing requirements, to be handled in the development process. Therefore, it is essential that the underlying software architecture is capable of managing agile business processes. However, criticism on agile software development states that it lacks paying attention to architectural and design issues and therefore is bound to engender suboptimal design-decisions. In this paper we propose an architectural framework for agile software development, that by explicitly separating computational, coordinational, and communicational models offers a high degree of flexibility regarding architectural and design changes introduced by agile business processes. The framework strength is facilitated by combining the characteristics and properties of state-of-the-art middleware architectural styles captured in a simple API. The benefit of our approach is a clear architectural design with minimized effects of changes the models have on each other, accompanied by an efficient realization of new business requirements.
{"title":"Towards an Architectural Framework for Agile Software Development","authors":"Richard Mordinyi, E. Kühn, Alexander Schatten","doi":"10.1109/ECBS.2010.38","DOIUrl":"https://doi.org/10.1109/ECBS.2010.38","url":null,"abstract":"One of the ideas of agile software development is to respond to changes rather than following a plan. Constantly changing businesses result in changing requirements, to be handled in the development process. Therefore, it is essential that the underlying software architecture is capable of managing agile business processes. However, criticism on agile software development states that it lacks paying attention to architectural and design issues and therefore is bound to engender suboptimal design-decisions. In this paper we propose an architectural framework for agile software development, that by explicitly separating computational, coordinational, and communicational models offers a high degree of flexibility regarding architectural and design changes introduced by agile business processes. The framework strength is facilitated by combining the characteristics and properties of state-of-the-art middleware architectural styles captured in a simple API. The benefit of our approach is a clear architectural design with minimized effects of changes the models have on each other, accompanied by an efficient realization of new business requirements.","PeriodicalId":356361,"journal":{"name":"2010 17th IEEE International Conference and Workshops on Engineering of Computer Based Systems","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114782034","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}