Educational software development processes, used in course projects, must exercise practices and artifacts comparable to similar industry-level processes, while achieving acceptable productivity and quality, and, at t...
详细信息
Educational software development processes, used in course projects, must exercise practices and artifacts comparable to similar industry-level processes, while achieving acceptable productivity and quality, and, at the same time, complying with constraints on available student time. Here, we discuss our experience with a specific model-driven development process, applied in a time-constrained softwareengineering course. The course projects are developed in iterations, each delivering a subset of the product functions. These, specified as use cases, undergo a sequence of model transformations, until they become tested code. Transformation steps are verified using standardized quality gates (inspections, tests, and audits), which serve three purposes: teaching verification, validation and quality assurance; helping to assess and grade projects; and providing feedback for process improvement. Size, effort and defect data is recorded in standardized reports. Collected data show that the quality gates proved effective to ensure compliance with the prescribed process, and that using a balanced reusable framework is necessary to achieve satisfactory productivity and quality.
RoboCupSoccer domain has several leagues which varies in the rule of play such as specification of players, number of players, field size, and time length. Nevertheless, each RoboCup league is a variant of a soccer le...
详细信息
RoboCupSoccer domain has several leagues which varies in the rule of play such as specification of players, number of players, field size, and time length. Nevertheless, each RoboCup league is a variant of a soccer league and therefore they are based on some basic rules of soccer. A layered design of agents system presented in the work of Garcia et al. (2004) shows a modular approach to build control for a team of robots participating in RoboCupSoccer E-League. Based on this design, we propose a generalized architecture offering flexibility to switch between leagues and programming language while maintaining Prolog as cognitive layer. Prolog is a very convenient tool to design strategies for soccer players using simple rules close to human reasoning. Sometimes this reasoning needs to deal with uncertainty, fuzziness or incompleteness of the information. In these cases it is useful Fuzzy Prolog (Guadarrama et al., 2004), (Munoz-Hernandez and Vaucheret, 2005), (Munoz-Hernandez and Gomez-Perez, 2005), (Munoz-Hernandez and Vaucheret, 2006). In this paper we propose to use a combination of Prolog (that is crisp) and Fuzzy Prolog to implement the cognitive layer in RoboCupSoccer, which has the advantage of incorporating as conventional logic as fuzzy logic in this layer. A prototype of a team based on this architecture has been build for RoboCup soccer simulator, and we show that this approach provides a convenient way of incorporating a team strategy in high level (human-like) manner, where technical details are encapsulated and fuzzy information is represented
Mobile games are one of the primary entertainment applications at present. Limited by scarce resources, such as memory, CPU, input and output, etc, mobile game development is more difficult than desktop application de...
详细信息
Mobile games are one of the primary entertainment applications at present. Limited by scarce resources, such as memory, CPU, input and output, etc, mobile game development is more difficult than desktop application development, with performance as one of the top critical requirements. As object-oriented technology is the prevalent programming paradigm, most of the current mobile games are developed with object-orientation (OO) technologies. Intuitively OO is not a perfect paradigm for embedded software. Questions remain such as how OO and to what degree OO will affect the performance, executable file size, and how optimization strategies can improve the qualities of mobile game software. These questions are investigated in this paper within the mobile Role-Playing-Game (RPG) domain using five industrial mobile games developed with OO. We analyzed them and found excessive usage of OO features used for the development of mobile device applications (but normal for usual desktop applications). We then apply some optimization strategies along the way of structural programming. The experiment shows that the total jar file size of these five optimized games decreases 71 % the lines of codes decreases 59%, and the loading time of each optimized game decreases 22.73%, 34.62% 25.79% 24.65% and 16.70% respectively. Therefore, we conclude from our experiments that 00 should be used with great care in the development of mobile games, and that structural programming can be a very competitive alternative.
The main goal of this working session is to provide an opportunity for participants to present current work and have a lively discussion of open issues for the maintenance and evolution of SOA-based systems. The dialo...
详细信息
The main goal of this working session is to provide an opportunity for participants to present current work and have a lively discussion of open issues for the maintenance and evolution of SOA-based systems. The dialog will include both business issues (e.g., organizational changes in the context of migrating to an SOA environment) and technical issues (e.g., analyzing the reuse potential of legacy components in an SOA environment). A draft version of a research agenda will be used as a starting point for obtaining feedback from researchers and practitioners active in this area.
Economics-driven software mining (EDSM) sifts through the repository data to extract information that could be useful for reasoning about not only the technical aspects but also the economics properties related to the...
详细信息
Economics-driven software mining (EDSM) sifts through the repository data to extract information that could be useful for reasoning about not only the technical aspects but also the economics properties related to the development and/or evolution of softwaresystems, and in relation to the environments in which they are procured, developed, evolved and used. The objective is to provide the analyst with insights into investment decisions related to the development, maintenance, and evolution of softwaresystems, EDSM can also assist the analyst in resource planning and utilization. In this position paper, we define EDSM, describe possible scenarios for realizing EDSM and highlight some challenges.
Assurance Based Development (ABD) is an approach to the construction of critical computing systems in which the system and an argument that it meets its assurance goals are developed simultaneously. ABD touches all as...
详细信息
This paper introduces a fault-adaptive control approach for the robust and reliable performance management of computing systems. Fault adaptation involves the detection and isolation of faults, and then taking appropr...
详细信息
This paper introduces a fault-adaptive control approach for the robust and reliable performance management of computing systems. Fault adaptation involves the detection and isolation of faults, and then taking appropriate control actions to mitigate the fault effects and maintain control.
For some time now, researchers have been seeking to place software measurement on a more firmly grounded footing by establishing a theoretical basis for software comparison. Although there has been some work on trying...
详细信息
software visualization is one of the enabling techniques to provide support during software maintenance activities. software maintenance is a multidimensional problem domain which involves the integration, abstraction...
详细信息
software visualization is one of the enabling techniques to provide support during software maintenance activities. software maintenance is a multidimensional problem domain which involves the integration, abstraction and analysis of different knowledge resources and artifacts. Maintainers are typically left with no guidance on how these existing artifacts, tools and knowledge should be utilized to complete a particular task. In this research, we present a novel visualization approach that integrates these artifacts in the software maintenance process chain.
Detecting errors early within the development process for an embedded system assists a developer in avoiding excessive error correction costs and minimizing catastrophic losses resulting from failures in deployed syst...
ISBN:
(纸本)9783540752080
Detecting errors early within the development process for an embedded system assists a developer in avoiding excessive error correction costs and minimizing catastrophic losses resulting from failures in deployed systems. Towards that end, this paper presents i2MAP, an iterative and incremental goal-driven process for constructing an analysis-level UML model of an embedded system. The UML model is formally analyzed for adherence to the behavioral properties captured in a companion goal model. The process uses goal modeling to capture the requirements of the system, and uses UML to capture analysis-level structural and behavioral information. Both types of i2MAP models can be used to drive a rigorous approach to model-driven development of embedded systems. In this paper, we illustrate the i2MAP process and the accompanying tool suite in the development of an embedded system model for an adaptive light control system.
暂无评论