首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
Foundations of a new software engineering method for real-time systems   总被引:1,自引:1,他引:0  
The design of a fault-tolerant distributed, real-time, embedded system with safety-critical concerns requires the use of formal languages. In this paper, we present the foundations of a new software engineering method for real-time systems that enables the integration of semiformal and formal notations. This new software engineering method is mostly based upon the ”COntinuuM” co-modeling methodology that we have used to integrate architecture models of real-time systems (Perseil and Pautet in 12th International conference on engineering of complex computer systems, ICECCS, IEEE Computer Society, Auckland, pp 371–376, 2007) (so we call it “Method C”), and a model-driven development process (ISBN 978-0-387-39361-2 in: From model-driven design to resource management for distributed embedded systems, Springer, chap. MDE benefits for distributed, real time and embedded systems, 2006). The method will be tested in the design and development of integrated modular avionics (IMA) frameworks, with DO178, DO254, DO297, and MILS-CC requirements.  相似文献   

2.
General purpose distributed object-oriented environments exist to allow for the efficient construction of client/server software systems. Standard network and distributed systems management environments exist for the efficient operation of heterogeneous networked hardware and software systems. As distributed software systems get larger, the economies of systems development and the economies of software operation demand that we find an efficient way of integrating these two technologies. While the use of standardized distributed systems management for the management of distributed software applications seems reasonable, very little research has been done to confirm this. In this paper, we propose the integration of standardized distributed resource management technologies and distributed application software. In our work we have facilitated this integration using techniques based on mainstream object-oriented dynamic modeling. We will describe our techniques of integration as well as discuss the need for methodical engineered approaches when working in this area.  相似文献   

3.
Models@ run.time   总被引:2,自引:0,他引:2  
Blair  G. Bencomo  N. France  R.B. 《Computer》2009,42(10):22-27
Runtime adaptation mechanisms that leverage software models extend the applicability of model-driven engineering techniques to the runtime environment. Contemporary mission-critical software systems are often expected to safely adapt to changes in their execution environment. Given the critical roles these systems play, it is often inconvenient to take them offline to adapt their functionality. Consequently, these systems are required, when feasible, to adapt their behavior at runtime with little or no human intervention. A promising approach to managing complexity in runtime environments is to develop adaptation mechanisms that leverage software models, referred to as models@run. time. Work on models@run.time seeks to extend the applicability of models produced in model-driven engineering (MDE) approaches to the runtime environment. Models@run. time is a causally connected self-representation of the associated system that emphasizes the structure, behavior, or goals of the system from a problem space perspective.  相似文献   

4.
Enterprises need to be responsive to meet dynamic businesses and requirements. Service-oriented architecture and Web services can improve e-Business systems to be integrated and flexible. This paper proposes a multi-model driven collaborative development platform for service-oriented e-Business systems. The platform provides engineers/consultants with three views, i.e., business view, process view, and service view to support service-oriented software engineering, top-down business design and bottom-up service composite and development. The views are kept consistent through model-driven translation mechanisms. The platform employs three models, i.e., service meta-model, process model and business model to implement the translation. On the platform, business and technical consultants/engineers can use the views designated for their roles to collaborate for a service-oriented e-Business system based at the distributed sites of, e.g., IT vendors and their clients. The collaboration is featured with visual development and rapid demonstration. Comparingly, most of the mainstream development environments focus on object-oriented application development other than service-oriented business process modeling. The platform has been developed and deployed in an innovation centre to be evaluated by visiting customers.  相似文献   

5.
A goal-driven and agent-based requirements engineering framework*   总被引:2,自引:0,他引:2  
The paper presents a requirements engineering framework (REF), where advanced requirements engineering techniques are combined with software quality modelling approaches to provide an environment within which the stakeholders and the analysts can easily cooperate to discover, organise, reconcile and validate the requirements for a new system. By adopting a basic and essential graphical notation, and a clear top-down methodology, REF allows for an effective involvement of the stakeholders, assisting and driving them to an early definition of the desired system's functionalities and quality attributes, while supporting the redesign of the encompassing organisational context to better exploit the new system's capabilities. As a case study, REF is applied to support the requirements engineering process for a complex software-intensive simulation system. Results demonstrate the feasibility of REF and the benefits it offers to the requirements engineering process, but also to the subsequent system development phases. As illustrated through the case study REF can, in fact, be usefully applied as a forerunner for unified modelling language (UML)-based approaches.*Part of this work was completed while the author was Senior Research Fellow with the Computing Information Systems Engineering Group, at the Royal Military College of Science, Cranfield University (UK)  相似文献   

6.
Distributed systems aren't only more widespread than they used to be, but they've become more critical than ever, having moved from client-server systems to multitier heterogeneous systems. Many of these applications - such as telephone exchange systems - must be operational 24 hours a day, so shutting them down isn't a viable option for administrators who must make systemwide changes. As a system becomes larger and more complex, the likelihood of defects increases, which means a greater number of required fixes. Studies have found that nearly half the software development effort in complex distributed systems is devoted to maintenance. Furthermore, the industry currently favors iterative and incremental development approaches over the traditional waterfall approach in software engineering to flexibly handle requirements and reduce project risks by deploying smaller changes. These changes are regular and predictable. So, how can we build distributed systems to handle these kinds of changes? The answer, we argue, is dynamic evolution. From a business perspective, dynamic evolution permits frequent upgrades, which reduces the time between releases. Dynamic evolution also enhances flexibility in implementing changes to unforeseen and fluctuating business requirements. Many specialized distributed systems will benefit from factoring dynamic evolution into their designs. We can easily achieve dynamic evolution in a component-based distributed system. The abstraction of components and their connectors facilitates system structures to accommodate changes.  相似文献   

7.
rCOS: a formal model-driven engineering method for component-based software   总被引:2,自引:1,他引:1  
Model-driven architecture (MDA) has become a main stream technology for software-intensive system design. The main engineering principle behind it is that the inherent complexity of software development can only be mastered by building, analyzing and manipulating system models. MDA also deals with system complexity by providing component-based design techniques, allowing independent component design, implementation and deployment, and then system integration and reconfiguration based on component interfaces. The model of a system in any stage is an integration of models of different viewpoints. Therefore, for a model-driven method to be applied effectively, it must provide a body of techniques and an integrated suite of tools for model construction, validation, and transformation. This requires a number of modeling notations for the specification of different concerns and viewpoints of the system. These notations should have formally defined syntaxes and a unified theory of semantics. The underlying theory of the method is needed to underpin the development of tools and correct use of tools in software development, as well as to formally verify and reason about properties of systems in mission-critical applications. The modeling notations, techniques, and tools must be designed so that they can be used seamlessly in supporting development activities and documentation of artifacts in software design processes. This article presents such a method, called the rCOS, focusing on the models of a system at different stages in a software development process, their semantic integration, and how they are constructed, analyzed, transformed, validated, and verified.  相似文献   

8.
Visual modeling languages and techniques have been increasingly adopted for software specification, design, development, and testing. With the major improvements of UML 2.0 and tools support, visual modeling technologies have significant potential for simplifying design, facilitating collaborations, and reducing development cost. In this paper, we describe our practices and experiences of applying visual modeling techniques to the design and development of real-time wireless communication systems within Motorola. A model-driven engineering approach of integrating visual modeling with development and validation is described. Results, issues, and our viewpoints are also discussed.  相似文献   

9.
《Knowledge》2006,19(4):235-247
Software testing is the technical kernel of software quality engineering, and to develop critical and complex software systems not only requires a complete, consistent and unambiguous design, and implementation methods, but also a suitable testing environment that meets certain requirements, particularly, to face the complexity issues. Traditional methods, such as analyzing each requirement and developing test cases to verify correct implementation, are not effective in understanding the software’s overall complex behavior. In that respect, existing approaches to software testing are viewed as time-consuming and insufficient for the dynamism of the modern business environment. This dynamics requires new tools and techniques, which can be employed in tandem with innovative approaches to using and combining existing software engineering methods. This work advocates the use of a recently proposed software engineering paradigm, which is particularly suited to the construction of complex and distributed software-testing systems, which is known as Agent-Oriented Software Engineering. This methodology is a new one, which gives the basic approach to agent-based frameworks for testing.  相似文献   

10.
针对中小企业业务流程不规范和变化差异大等特点,指出现有软件定制技术面临的挑战.在SOA和MDA基础上,提出服务模型驱动的架构(SMDA),阐述服务模型和服务模板的概念,设计基于SMDA的软件定制技术平台框架;描述服务抽象和服务模板构造过程,构造一种基于XML的服务模板标记语言,以描述和配置企业应用系统的基本信息需求和个性化定制需求,并通过具体实例展示SMDA架构在软件快速重构与定制中的有效性和实用性.  相似文献   

11.
The industry has a strong demand for sophisticated requirements engineering (RE) methods in order to manage the high complexity of requirements specifications for software-intensive embedded systems and ensure a high requirements quality. RE methods and techniques proposed by research are only slowly adopted by the industry. An important step to improve the adoption of novel RE approaches is to gain a detailed understanding of the needs, expectations, and constraints that RE approaches must satisfy. We have conducted an industrial study to gain an in-depth understanding of practitioners’ needs concerning RE research and method development. The study involved qualitative interviews as well as quantitative data collection by means of questionnaires. We report on the main results of our study related to five aspects of RE approaches: the use of requirements models, the support for high system complexity, quality assurance for requirements, the transition between RE and architecture design, and the interrelation of RE and safety engineering. Based on the results of the study, we draw conclusions for future RE research.  相似文献   

12.
Stricter requirements on the quality of industrial plant operation together with environmental limits and decreasing energy consumption bring more complex automation systems. The intelligent control techniques, which are based on approaches from diverse disciplines including statistics, artificial intelligence or signal processing, have been widely used during the last years and their benefits have been proved. They cannot be developed and tested without simulation models and access to online and historical data. This article proposes a platform for the integration of simulations and industrial SCADA systems supporting complex data access and simulation code re-use.The idea of the presented framework is to connect simulations, data sources, optimizers, other calculations and SCADA systems into one integrated environment seamlessly. A technical level of the framework provides integration of stakeholders and a semantic level captures engineering knowledge in inter-mapped ontologies and configures the technical level, which is often called model-driven configuration. The semantic level utilizes a formal model implemented as set of ontologies. The major contribution of the article are the layered model of the integration architecture and formulation of the integration requirements in the industrial automation domain. The proposed solution has been implemented and tested on a software prototype level. It is demonstrated on two use-cases covering both design and integration of simulation models from the industrial perspective. The proposed architecture is intended to be as general as possible, however it has been tested on signal-oriented simulators only. It is the main limitation of this contribution and it should be addressed in upcoming work.  相似文献   

13.
Modern manufacturing businesses increasingly engage in servitisation, by offering advanced services along with physical products, and creating “product–service systems”. Information Technology infrastructures, and especially software, are a critical part of modern service provision. However, software development in this context has not been investigated and there are no development methods or tools specifically adapted to the task of creating software for servitised businesses in general, or manufacturing in particular. In this paper, we define the requirements for software engineering in servitised manufacturing. Based on these, we describe a model-driven software engineering workflow for servitised manufacturing, supporting both structural and behavioural modelling of the service system. Furthermore, we elaborate on the architecture of an appropriate model-driven Integrated Development Environment (IDE). The proposed workflow and a prototype implementation of the IDE were evaluated in a set of industrial pilots, demonstrating improved communication and collaboration between participants in the software engineering process.  相似文献   

14.
Broy  M. 《Computer》2006,39(10):72-80
The science of information and information processing, informatics comprises many areas and includes principles of computing, storing, communicating, and visualizing information, and formalisms to describe information-processing procedures. The development and production of information-processing systems is based on software support systems such as software tools or product data repositories. Software and systems engineering is thus the key discipline for constructing information-processing systems. In particular, software and systems engineering addresses issues such as requirements engineering, architectural design, implementation, reliability engineering, and long-term maintenance. Developing a methodology for specifying and verifying software-intensive systems poses a grand challenge that a broad stream of research must address  相似文献   

15.
《Software, IEEE》2009,26(6):15-16
The paper is an editorial that discusses the economics aspect of software industry. The author states that we are in a period of global economic funk, by virtually every measure that we can take. The good news is that we've been here before over the years and we've always seemed to get by. Software is still the most fungible and liquid of resources, and its supply is limited only by human imagination and labor. For this reason, the author began to make the case that software-intensive systems are a necessary element in helping us operate, innovate, and even thrive in the face of lean economic times. There are many opportunities in IT for fueling business, ranging from issues of daily hygiene to opportunities for creating entirely new markets. Effective business strategies must involve some mixture of efficiency-based, innovation-based, and customer-intimacy-based efforts. Software development is an engineering activity. That means not reaching for a perfect solution, but rather evolving to a solution that optimally resolves the static and dynamic forces on that system. For software-intensive systems, these forces include the usual business ones (cost, schedule, and mission) but also development, environmental, operational, and legal/ethical/moral forces. The author also noted that the enterprise's architecture, is the collection of engineering decisions and artifacts that steer the fleet (the organization) through the forces acting upon it and guide it toward its mission. Architecture-as-an-artifact is a manifestation of technical intellectual property and thus serves as an artifact of control. The author concludes that software-intensive systems are an inescapable and necessary element in helping us operate, innovate, and even thrive in the face of lean economic times.  相似文献   

16.
Mark Strembeck  Uwe Zdun 《Software》2009,39(15):1253-1292
Building tailored software systems for a particular application domain is a complex task. For this reason, domain‐specific languages (DSLs) receive a constantly growing attention in recent years. So far the main focus of DSL research is on case studies and experience reports for the development of individual DSLs, design approaches and implementation techniques for DSLs, and the integration of DSLs with other software development approaches on a technical level. In this paper, we identify and describe the different activities that we conduct when engineering a DSL, and describe how these activities can be combined in order to define a tailored DSL engineering process. Our research results are based on the experiences we gained from multiple different DSL development projects and prototyping experiments. Copyright © 2009 John Wiley & Sons, Ltd.  相似文献   

17.
As the architecture of modern software systems continues to evolve in a distributed fashion, the development of such systems becomes increasingly complex, which requires the integration of more sophisticated specification techniques, tools, and procedures into the conventional methodology. An essential capability of an integrated software development environment is a formal specification method to capture effectively the system's functional requirements as well as its performance requirements. A validation and verification (V&V) system based on a formal specification method is of paramount importance to the development and maintenance of distributed systems.

There has been recent interest in integrating software techniques and tools at the specification level. It is also noted that an effective way of achieving such integration is by using wide-spectrum specification techniques. In view of these points, an integrated V&V system, called Integral, is presented that provides comprehensive and homogeneous analysis capabilities to both specification and testing phases of the life-cycle of distributed software systems. The underlying software model that supports various V&V activities in Integral is primarily based on Petri nets and is intended to be wide spectrum. The ultimate goal of this research is to demonstrate to the software industry, domestic or foreign, the availability and applicability of a new Petri-net-based software development paradigm. Integral is a prototype V&V system to support such a paradigm.  相似文献   


18.
Traceability—the ability to follow the life of software artifacts—is a topic of great interest to software developers in general, and to requirements engineers and model-driven developers in particular. This article aims to bring those stakeholders together by providing an overview of the current state of traceability research and practice in both areas. As part of an extensive literature survey, we identify commonalities and differences in these areas and uncover several unresolved challenges which affect both domains. A good common foundation for further advances regarding these challenges appears to be a combination of the formal basis and the automated recording opportunities of MDD on the one hand, and the more holistic view of traceability in the requirements engineering domain on the other hand.  相似文献   

19.
A software product line (SPL) is a set of industrial software-intensive systems for configuring similar software products in which personalized feature sets are configured by different business teams. The integration of these feature sets can generate inconsistencies that are typically resolved through manual deliberation. This is a time-consuming process and leads to a potential loss of business resources. Artificial intelligence (AI) techniques can provide the best solution to address this issue autonomously through more efficient configurations, lesser inconsistencies and optimized resources. This paper presents the first literature review of both research and industrial AI applications to SPL configuration issues. Our results reveal only 19 relevant research works which employ traditional AI techniques on small feature sets with no real-life testing or application in industry. We categorize these works in a typology by identifying 8 perspectives of SPL. We also show that only 2 standard industrial SPL tools employ AI in a limited way to resolve inconsistencies. To inject more interest and application in this domain, we motivate and present future research directions. Particularly, using real-world SPL data, we demonstrate how predictive analytics (a state of the art AI technique) can separately model inconsistent and consistent patterns, and then predict inconsistencies in advance to help SPL designers during the configuration of a product.  相似文献   

20.
A highly important part of software engineering education is requirements collection and analysis which is one of the initial stages of the Database Application Lifecycle and arguably the most important stage of the Software Development Lifecycle. No other conceptual work is as difficult to rectify at a later stage or as damaging to the overall system if performed incorrectly. As software engineering is a field with a reputation for producing graduates who are inappropriately prepared for applying their skills in real life software engineering scenarios, it suggests that traditional educational techniques such as role-play, live-through case studies and paper-based case studies are insufficient preparation and that other approaches are required. To attempt to combat this problem we have developed a games-based learning application to teach requirements collection and analysis at tertiary education level as games-based learning is seen as a highly motivating, engaging form of media and is a rapidly expanding field. This paper will describe the evaluation of the requirements collection and analysis game particularly from a pedagogical perspective. The game will be compared to traditional methods of software engineering education using a pre-test/post-test, control group/experimental group design to assess if the game can act as a suitable supplement to traditional techniques and assess if it can potentially overcome shortcomings. The game will be evaluated in five separate experiments at tertiary education level.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号