首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
Scientific computing is the field of study concerned with constructing mathematical models, numerical solution techniques and with using computers to analyse and solve scientific and engineering problems. Model-Driven Development (MDD) has been proposed as a means to support the software development process through the use of a model-centric approach. This paper surveys the core MDD technology that was used to develop an application that allows computation of the RHEED intensities dynamically for a disordered surface.

New version program summary

Program title: RHEED1DProcessCatalogue identifier: ADUY_v4_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/ADUY_v4_0.htmlProgram obtainable from: CPC Program Library, Queen's University, Belfast, N. IrelandLicensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.htmlNo. of lines in distributed program, including test data, etc.: 31 971No. of bytes in distributed program, including test data, etc.: 3 039 820Distribution format: tar.gzProgramming language: Embarcadero C++ BuilderComputer: Intel Core Duo-based PCOperating system: Windows XP, Vista, 7RAM: more than 1 GBClassification: 4.3, 7.2, 6.2, 8, 14Catalogue identifier of previous version: ADUY_v3_0Journal reference of previous version: Comput. Phys. Comm. 180 (2009) 2394Does the new version supersede the previous version?: NoNature of problem: An application that implements numerical simulations should be constructed according to the CSFAR rules: clear and well-documented, simple, fast, accurate, and robust. A clearly written, externally and internally documented program is much easier to understand and modify. A simple program is much less prone to error and is more easily modified than one that is complicated. Simplicity and clarity also help make the program flexible. Making the program fast has economic benefits. It also allows flexibility because some of the features that make a program efficient can be traded off for greater accuracy. Making the program fast also has the benefit of allowing longer calculations with better resolution. The compromise between speed and accuracy has always posted one of the most troublesome challenges for the programmer. Almost all advances in numerical analysis have come about trying to reach these twin goals. Change in the basic algorithms will give greater improvements in accuracy and speed than using special numerical tricks or changing programming language. A robust program works correctly over a broad spectrum of input data.Solution method: The computational model of the program is based on the use of a dynamical diffraction theory in which the electrons are taken to be diffracted by a potential, which is periodic in the dimension perpendicular to the surface. In the case of a disordered surface we can use the proportional model of the scattering potential, in which the potential of a partially filled layer is taken to be the product of the coverage of this layer and the potential of a fully filled layer:
  相似文献   

2.
Modelling, simulation, and visualisation together create the third branch of human knowledge on equal footing with theory and experiment. Model-Driven Development (MDD) has been proposed as a means to support the software development process through the use of a model-centric approach. The objective of this paper is to address the design of an architecture for scientific application that may execute as multithreaded computations, as well as implementations of the related shared data structures.

New version program summary

Program title: Growth09Catalogue identifier: ADVL_v3_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/ADVL_v3_0.htmlProgram obtainable from: CPC Program Library, Queen's University, Belfast, N. IrelandLicensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.htmlNo. of lines in distributed program, including test data, etc.: 30 940No. of bytes in distributed program, including test data, etc.: 3 119 488Distribution format: tar.gzProgramming language: Embarcadero DelphiComputer: Intel Core Duo-based PCOperating system: Windows XP, Vista, 7RAM: more than 1 GBClassification: 4.3, 7.2, 6.2, 8, 14Catalogue identifier of previous version: ADVL_v2_1Journal reference of previous version: Comput. Phys. Comm. 180 (2009) 1219Subprograms used:
Cat IdTitleReference
ADUY_v4_0RHEED1DProcessCPC 999 (9999) 9999
Full-size table
  相似文献   

3.
Blogs can be used as a conduit for customer opinions and, in so doing, building communities around products. We attempt to realise this vision by building blogs out of product catalogues. Unfortunately, the immaturity of blog engines makes this endeavour risky. This paper presents a model-driven approach to face this drawback. This implies the introduction of (meta)models: the catalogue model, based on the standard Open Catalog Format, and blog models, that elaborate on the use of blogs as conduits for virtual communities. Blog models end up being realised through blog engines. Specifically, we focus on two types of engines: a hosted blog platform and a standalone blog platform, both in Blojsom. However, the lack of standards in a broad and constantly evolving blog-engine space, hinders both the portability and the maintainability of the solution. Hence, we resort to the notion of “abstract platform” as a way to depart from the peculiarities of specific blog engines. Additionally, the paper measures the reuse gains brought by MDE in comparison with the manual coding of blogs.  相似文献   

4.
ContextModel-driven Engineering (MDE) promotes the utilization of models as primary artifacts in all software engineering activities. Therefore, mechanisms to ensure model correctness become crucial, specially when applying MDE to the development of software, where software is the result of a chain of (semi)automatic model transformations that refine initial abstract models to lower level ones from which the final code is eventually generated. Clearly, in this context, an error in the model/s is propagated to the code endangering the soundness of the resulting software. Formal verification of software models is a promising approach that advocates the employment of formal methods to achieve model correctness, and it has received a considerable amount of attention in the last few years.ObjectiveThe objective of this paper is to analyze the state of the art in the field of formal verification of models, restricting the analysis to those approaches applied over static software models complemented or not with constraints expressed in textual languages, typically the Object Constraint Language (OCL).MethodWe have conducted a Systematic Literature Review (SLR) of the published works in this field, describing their main characteristics.ResultsThe study is based on a set of 48 resources that have been grouped in 18 different approaches according to their affinity. For each of them we have analyzed, among other issues, the formalism used, the support given to OCL, the correctness properties addressed or the feedback yielded by the verification process.ConclusionsOne of the most important conclusions obtained is that current model verification approaches are strongly influenced by the support given to OCL. Another important finding is that in general, current verification tools present important flaws like the lack of integration into the model designer tool chain or the lack of efficiency when verifying large, real-life models.  相似文献   

5.
This paper presents a framework for the Model-Driven specification of Software Architectures, which is defined using the concepts behind Service-Orientation. The framework described, denominated as ArchiMeDeS, represents the following: a coherent solution to the problem of architecting the existing gap between the high-level configuration of a software system by describing the business entities and relationships required by a software solution, and its low-level representation, in which the technological aspects determine the final shape of the system, providing technical support to the previously identified business processes and constraints. We also provide a set of transformation rules, which semi-automatically advance in the Architecture specification. These rules allow progress to be made from conceptual architectural models to more technologically dependent ones. The feasibility of the proposed service-oriented framework is validated by showing its usage capabilities in the definition of a software solution in the field of neuroscience research.  相似文献   

6.
On the unification power of models   总被引:3,自引:0,他引:3  
In November 2000, the OMG made public the MDAinitiative, a particular variant of a new global trend called MDE (Model Driven Engineering). The basic ideas of MDA are germane to many other approaches such as generative programming, domain specific languages, model-integrated computing, generic model management, software factories, etc. MDA may be defined as the realization of MDE principles around a set of OMG standards like MOF, XMI, OCL, UML, CWM, SPEM, etc. MDE is presently making several promises about the potential benefits that could be reaped from a move from code-centric to model-based practices. When we observe these claims, we may wonder when they may be satisfied: on the short, medium or long term or even never perhaps for some of them. This paper tries to propose a vision of the development of MDE based on some lessons learnt in the past 30 years in the development of object technology. The main message is that a basic principle (Everything is an object) was most helpful in driving the technology in the direction of simplicity, generality and power of integration. Similarly in MDE, the basic principle that Everything is a model has many interesting properties, among others the capacity to generate a realistic research agenda. We postulate here that two core relations (representation and conformance) are associated to this principle, as inheritance and instantiation were associated to the object unification principle in the class-based languages of the 80s. We suggest that this may be most useful in understanding many questions about MDE in general and the MDA approach in particular. We provide some illustrative examples. The personal position taken in this paper would be useful if it could generate a critical debate on the research directions in MDE.  相似文献   

7.
Highly configurable metamodeling environments and graph transformation techniques have been applied successfully in software system modeling and other areas. In this paper a uniform treatment of these two methods is illustrated by a tool called Visual Modeling and Transformation System. The concepts of an n-layer metamodeling environment is outlined with the related topological and attribute issues. Built on metamodeling techniques two alternatives for model transformation are elaborated, namely, the traversal and the graph-rewriting approaches. In our implementation all of the aforementioned mechanisms use metamodel as a common formalism, which can be considered as a uniform basis for storing, creating and transforming visual languages. The feasibility of the approach is illustrated by a transformation which generates C/C++ code from UML statecharts.  相似文献   

8.
Executable models play a key role in many software development methods by facilitating the (semi)automatic implementation/execution of the software system under development. This is possible because executable models promote a complete and fine-grained specification of the system behaviour. In this context, where models are the basis of the whole development process, the quality of the models has a high impact on the final quality of software systems derived from them. Therefore, the existence of methods to verify the correctness of executable models is crucial. Otherwise, the quality of the executable models (and in turn the quality of the final system generated from them) will be compromised. In this paper a lightweight and static verification method to assess the correctness of executable models is proposed. This method allows us to check whether the operations defined as part of the behavioural model are able to be executed without breaking the integrity of the structural model and returns a meaningful feedback that helps repairing the detected inconsistencies.  相似文献   

9.
刘敬勇  张立臣  陈成 《计算机工程》2009,35(17):252-254
实时系统有许多难以处理的横切整个系统的非功能需求。针对以上问题,提出基于面向方面模型驱动架构的实时系统开发方法。该方法在设计阶段将系统的非功能需求从功能需求中分离出,以降低系统开发的复杂性,提高系统的可重用性、可维护性和横切关注点的模块化程度。通过应用实例证明该方法是有效的。  相似文献   

10.
李秀萍  董云卫 《计算机工程》2010,36(16):237-239
为解决嵌入式系统仿真应用需求多样性的问题并提高系统的开发效率,设计一种通用嵌入式仿真系统。该系统在Matlab/Simulink开发环境的基础上,采用模型驱动的方法设计仿真模型并构建仿真组件库,实现了仿真系统模型的快速建立。同时设计了多接口、可扩展的仿真器硬件结构,解决了嵌入式系统接口的多样性问题。该仿真系统具有良好的可重用性和可移植性等特点,可用于多种嵌入式软件的开发,具有现实意义。  相似文献   

11.
Aspect-Oriented Software Development (AOSD) and Model-Driven Development (MDD) are often said to be alike since both approaches are based on the selection of elements (i.e. join points in AOSD and model elements in MDD) and their subsequent adaptation (i.e. weaving in AOSD and transformation in MDD). But does this mean that AOSD and MDD are in fact two words for pretty much the same thing? In this position paper, we argue that there are essential differences between the aspect-oriented and the model-driven approach.  相似文献   

12.
侯金奎  王成端 《计算机应用》2015,35(9):2692-2700
针对模型驱动的软件开发(MDSD)中语义特性保持的描述和验证等问题,基于类型范畴理论的形式化框架和进程代数理论,提出了一种软件结构模型的形式化描述方法。在此基础上对模型转换前后构件规范之间应满足的语义约束进行了深入的分析和探讨,从图表结构、端口与配置约束、外部行为以及可替换性等四个方面对特性约束保持的问题进行了描述,并建立了相应的判定标准。该方法能为模型之间转换规则的定义提供指导,并为模型转换的效果分析和正确性验证提供依据。应用研究表明,该方法使得构件模型的语义描述能力显著增强,可作为已有软件建模方法的一个有效补充。  相似文献   

13.
MDA——新一代软件开发方法学的挑战与发展研究   总被引:9,自引:0,他引:9  
陈平  王柏 《计算机科学》2005,32(3):127-131
本文首先概述了OMG的模型驱动对象(MDA)的体系结构,对MDA的发展前途的正反两方面进行了论述,同时给出了MDA的发展现状和最新动态、重点研究方向以及相关技术,并预测了其可能的发展模式及前景。  相似文献   

14.
Research into software design models in general, and into the UML in particular, focuses on answering the question how design models are used, completely ignoring the question if they are used. There is an assumption in the literature that the UML is the de facto standard, and that use of design models has had a profound and substantial effect on how software is designed by virtue of models giving the ability to do model-checking, code generation, or automated test generation. However for this assumption to be true, there has to be significant use of design models in practice by developers.This paper presents the results of a survey summarizing the answers of 3785 developers answering the simple question on the extent to which design models are used before coding. We relate their use of models with (i) total years of programming experience, (ii) open or closed development, (iii) educational level, (iv) programming language used, and (v) development type.The answer to our question was that design models are not used very extensively in industry, and where they are used, the use is informal and without tool support, and the notation is often not UML. The use of models decreased with an increase in experience and increased with higher level of qualification. Overall we found that models are used primarily as a communication and collaboration mechanism where there is a need to solve problems and/or get a joint understanding of the overall design in a group. We also conclude that models are seldom updated after initially created and are usually drawn on a whiteboard or on paper.  相似文献   

15.
目前软件开发中一个很突出的问题是:软件系统随时间变化。因此,需要一个可随时修改和扩展的体系结构。构件技术使得系统自身可塑性增强,能够迅速适应需求变化,同时也使软件工业化成为可能。本文结合滨城区信息中心多年来软件研发实践,通过梳理软件体系结构和构件技术,提出了一种软件构件化的研发策略。  相似文献   

16.
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.  相似文献   

17.
The global evolution of software development leads to large projects involving many people. Organizing these people is a big challenge for software engineering. The ESF (Eureka Software Factory) program, funded by a number of European countries, relies on the idea of a software factory for improving the productivity and the quality of software development. The MINI is a software factory prototype. Based on the principles and the architecture defined by the ESF project, the MINI factory intends to demonstrate the cooperation of users involved in the management, production, and support of software development. Built from a set of heterogeneous and dissimilar components or tools, the MINI factory provides an integrated and coherent environment available for each actor of the software production. The MINI factory allows us to look at the users' daily activities within the context of a software factory, as well as at the integration mechanisms used to build such an environment.  相似文献   

18.
下一代UML执行和转译技术--XTUML   总被引:2,自引:0,他引:2  
可执行和可转译的UML(^XTUML)是尚在制定过程中的统一建模语言2.0的一个子集,规定了UML型的执行和转译规则。可执行的UML模型允许开发者在决定使用何种实现技术之前对软件的分析模型进行形式上的测试,可转译的UML模型使开发者能够将软件的分析模型重定位到多种实现技术。  相似文献   

19.

Context

Although agile software development methods such as SCRUM and DSDM are gaining popularity, the consequences of applying agile principles to software product management have received little attention until now.

Objective

In this paper, this gap is filled by the introduction of a method for the application of SCRUM principles to software product management.

Method

A case study research approach is employed to describe and evaluate this method.

Results

This has resulted in the ‘agile requirements refinery’, an extension to the SCRUM process that enables product managers to cope with complex requirements in an agile development environment. A case study is presented to illustrate how agile methods can be applied to software product management.

Conclusions

The experiences of the case study company are provided as a set of lessons learned that will help others to apply agile principles to their software product management process.  相似文献   

20.

Context

A software artefact typically makes its functionality available through a specialized Application Programming Interface (API) describing the set of services offered to client applications. In fact, building any software system usually involves managing a plethora of APIs, which complicates the development process. In Model-Driven Engineering (MDE), where models are the key elements of any software engineering activity, this API management should take place at the model level. Therefore, tools that facilitate the integration of APIs and MDE are clearly needed.

Objective

Our goal is to automate the implementation of API-MDE bridges for supporting both the creation of models from API objects and the generation of such API objects from models. In this sense, this paper presents the API2MoL approach, which provides a declarative rule-based language to easily write mapping definitions to link API specifications and the metamodel that represents them. These definitions are then executed to convert API objects into model elements or vice versa. The approach also allows both the metamodel and the mapping to be automatically obtained from the API specification (bootstrap process).

Method

After implementing the API2MoL engine, its correctness was validated using several APIs. Since APIs are normally large, we then developed a tool to implement the bootstrap process, which was also validated.

Results

We provide a toolkit (language and bootstrap tool) for the creation of bridges between APIs and MDE. The current implementation focuses on Java APIs, although its adaptation to other statically typed object-oriented languages is straightforward. The correctness, expressiveness and completeness of the approach have been validated with the Swing, SWT and JTwitter APIs.

Conclusion

API2MoL frees developers from having to manually implement the tasks of obtaining models from API objects and generating such objects from models. This helps to manage API models in MDE-based solutions.  相似文献   

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

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