首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
任爱华  杜悦冬 《软件学报》2001,12(7):1064-1073
多处理机环境下的实时系统具有并发事件驱动性质,其软件结构展现了多重同步点以及生产者与消费者之间的关系,这导致了复杂的控制结构.对于此类系统软件的开发缺少标准的方法和工具,造成了软件低效、程序结构不清晰、开发成本高、维护困难的现象的出现.根据Petri网易于描述并行/并发现象的特点,采用它来解决多处理机软件的描述问题,介绍了一种以Petri网图形方式在多处理机系统环境下进行程序设计的方法.该方法基于两种程序设计级别:任务级和作业级.前者负责描述基本操作,由单一控制线程完成;后者用于并行/并发程序建模,由整个多处理机系统来执行.在作业级程序设计中,用户采用面向对象Petri网来描述并行程序结构,以建立系统模型.该方法以一种接近于程序员的思维方式去设计并发软件,提供了一种可靠的并行结构的程序.阐述了支持此种程序设计方法的操作系统结构及其实现原理.  相似文献   

2.
胡文生  杨剑锋  赵明 《计算机科学》2017,44(12):150-155
详细介绍了C&K度量方法,结合灰色关联分析的相关理论,提出了一种基于C&K度量方法和灰色关联分析的类设计质量评估方法。依据C&K度量阈值及可接受类的定义,可以推导出面向对象程序设计中的最佳类设计标准。将各个类与最佳类设计标准进行灰色关联分析,从而评估类设计质量的优劣。该方法为程序设计人员提供了类设计质量优劣的判定依据,并保证其在软件生命周期的早期阶段及时发现设计质量低劣的类并做相应的处理,避免后期开发的软件产品出现故障,能显著提高软件产品的可靠性和可维护性。  相似文献   

3.
The authors present optimization models for software systems that are developed using a modular design technique. Four different software structures are considered: one program, no redundancy; one program, with redundancy; multiple programs, no redundancy; and multiple programs, with redundancy. The optimization problems are solved by using the authors' version of established optimization methods. The practical usefulness of this study is to draw the attention of software practitioners to an existing methodology that may be used to make an optimal selection out of an available pool of modules with known reliability and cost. All four models maximize software reliability while ensuring that expenditures remain within available resources. The software manager is allowed to select the appropriate model for a given situation  相似文献   

4.
The object-oriented software development is a kind of promising software methodology and leading to a wholly new way for solving problems.In the research on the rapid construction of Structured Development Environment(SDE)that supports detailed design and coding in software development,a generator that can generate the SE has been applied as a metatool.The kernel of SDE is a syntax-directed editor based on the object-oriented concepts.The key issue in the design of SDE is how to represent the elements of target language with the class concept and a program internally.In this paper,the key concepts and design of the SDE and its generator as well as the implementation of a prototype are to be discussed.  相似文献   

5.
Schneidewind  N.F. 《Computer》1977,10(4):47-53
Two particularly nagging ailments faced by the computer industry today are the high cost and late delivery of software.1,2The symptoms usually surface during software debugging, testing, and integration; but the ailments themselves can most often be traced back to the program design phase and the structural characteristics of the program. The significance of program structural characteristics has been recognized for some time, as witnessed by the emergence of structured programming,3,4,a methodology that sets out to (1) reduce programming errors; (2) design an understandable, readable, and therefore maintainable program; (3) increase our ability to detect errors; and (4) prove, if only informally, that the program is correct. But there is another tool available that has usually been overlooked in the software development process: simulation.  相似文献   

6.
Formal program construction by transformations is a method of software development in which a program is derived from a formal problem specification by manageable, controlled transformation steps which guarantee that the final product meets the initial specification. This methodology has been investigated in the Munich project CIP (computer-aided intuition-guided programming). The research includes the design of a wide-spectrum language specifically tailored to the needs of transformational programming, the construction of a transformation system to support the methodology, and the study of transformation rules and other methodological issues. Particular emphasis has been laid on developing a sound theoretical basis for the overall approach  相似文献   

7.
In this paper, the methodology used for prototyping an H.263 basic line video coder is explained. The coder is based on an architecture, which we have called MVIP-2, consisting of a set of specialized processors for the main tasks (transforms, quantizers, motion estimation and motion compensation) and a RISC processor for the scheduling tasks.The design has been written in synthesizable Verilog and fully tested with hardware–software co-simulation using standard video sequences. All modules except the RISC have been synthesized and fitted onto an FPGA. The prototype has been tested in real-time using a commercial board with the RISC and the FPGA, a pattern generator emulating a video camera to generate the input sequences and a logic analyzer to test the H.263 output stream.We have used a classic design methodology with some improvements in order to carry out rapid system prototyping. With this improved methodology, a prototype can be obtained early in the design cycle allowing the debugging of some hardware and software components permitting others to be designed at the same time.In this paper we explain how this methodology has been applied to a complex design (MVIP-2). Despite some details being specific to this design, the main aspects of the methodology can be applied to other designs.  相似文献   

8.
现有嵌入式软件仿真工具的应用受到仿真速度等不足的限制。在一些领域中,此处介绍的方法将是更好的解决方案。该方法使用自行开发的分析器将嵌入式软件的源代码转换为ANSIC/C++代码,并将其与仿真专用的函数库编译连接。最终生成的PC上的可执行程序就是目标嵌入式软件及其硬件平台的模型。由于具备可以达到目标系统运行速度数百倍的仿真速度,和合理的仿真精确度,该方法可以在设计空间探索阶段和算法级嵌入式编程中取代常用的开发工具包以及ISS,并有效缩短开发周期。  相似文献   

9.
This paper discusses the necessity of a good methodology for the development of reliable software, especialy with respect to the final software validation and testing activities. A formal specification development and validation methodology is proposed. This methodology has been applied to the development and validation of a pilot software, incorporating typical features of critical software for nuclear power plant safety protection. The main features of the approach indude the use of a formal specification language and the independent development of two sets of specifications. Analyses on the specifications consists of three-parts: validation against the functional requirements consistency and integrity of the specifications, and dual specification comparison based on a high-level symbolic execution technique. Dual design, implementation, and testing are performed. Automated tools to facilitate the validation and testing activities are developed to support the methodology. These includes the symbolic executor and test data generator/dual program monitor system. The experiences of applying the methodology to the pilot software are discussed, and the impact on the quality of the software is assessed.  相似文献   

10.
11.
Industrial control engineers continue to make extensive use of ladder logic for programming programmable logic controllers (PLCs) although the limitations of the language are well recognized. Evaluations of alternative approaches have been conducted in academia but industrial users have shown little enthusiasm for the recommendations. This work addresses this by conducting an experimental evaluation using a range of skilled and unskilled participants to establish which of four software design methodologies is best suited to the support of flexible manufacture in a small program through an experiment in which ldquoright first timerdquo rates and completion time are measured. Unlike earlier work which had an emphasis on program creation, this paper reports on process modification. The object modelling tool tested, Enterprise Controls, was found to be the most effective methodology under study with the highest ldquoright first timerdquo rate as well as demonstrating a 80% time saving over traditional relay ladder logic. This was closely matched by step-based ladder logic, provided the concept is used correctly. Areas for further work include the assessment of program development time during setup and control performance in use.  相似文献   

12.
Richard N. Taylor 《Software》1983,13(8):697-713
A verification and testing environment that includes static analysis, symbolic execution, and dynamic analysis capabilities is presented. Tool integration and co-operation are promoted through use of an intermediate program representation and a system data manager. A substantial user interface aids application of the tools. Their use is guided by a verification and testing methodology on which the system's design is based. The environment has been engineered to support the production of flight control software written in HAL/S. The environment itself is written in Pascal and is designed to be portable. Several development experiences are described. The environment demonstrates that a strong, unified verification and testing environment can be built; it serves as a basis for future investigations.  相似文献   

13.
The PARSE design methodology provides a hierarchical, object-based approach to the development of parallel software systems. A system design is initally structured into a collection of concurrently executing objects which communicate via message-passing. A graphical notation known as the process graph is then used to capture the structural and important dynamic properties of the system. Process graph designs can then be semi-mechanically transformed into complete Petri nets to give a detailed, executable and potentially verifiable design specification. From a complete design, translation rules for target programming languages are defined to enable the implementation to proceed in a systematic manner. The paper describes the steps in PARSE methodology and process graph notation, and illustrates the application of PARSE from design specification to program code using a network protocol example.  相似文献   

14.
开发算法程序是计算机科学领域中最具挑战性的问题之一。为了提高算法程序的可靠性和生产效率,人们正在追求其开发的自动化。算法程序变换是实现算法程序开发自动化的重要途径,已成为程序设计方法学和软件自动化领域中的重要课题,目前已取得很大进展。本文介绍了算法程序变换的相关概念,给出了算法程序变换的分类,并从方法学、语言、算法设计能力、支撑工具及其适用领域等方面分析和比较了几个有代表性的算法程序变换研究项目,讨论了当前研究的不足以及今后的研究方向。  相似文献   

15.
Peter M. Maurer 《Software》2005,35(8):787-797
A binary component is a separately compiled program that can be used as a part of a larger program. Binary components generally conform to an accepted technology such as JavaBeans or ActiveX, and generally support a rich program interface containing properties, methods and events. Binary components are generally used in a graphical user interface (GUI) environment. There are a number of benefits to be realized by converting command‐line software into binary components. The most important of these is that GUI environments are more popular and more familiar to most people than command‐line environments. Using binary components can greatly simplify a GUI implementation, to the point where it is only slightly more complicated than a typical command‐line implementation. However there are benefits that go beyond mere convenience. Binary components have much richer interfaces than command‐line programs. Binary components are service‐oriented rather than task‐oriented. A task‐oriented program has a main routine that is devoted to accomplishing a single task. A service‐oriented component has no main routine or main function, but instead provides a variety of services to its clients. Binary components can be easily integrated with one another, which permits a design where each major feature of an application is implemented in a different component. Such a design encourages software reuse at the component level and facilitates low‐impact feature upgrades. We first delineate a design‐pattern‐based methodology for converting command‐line programs into components. We then illustrate these principles using two projects, a simulation system for digital circuits, and a data generation system for software and hardware testing. Copyright © 2005 John Wiley & Sons, Ltd.  相似文献   

16.
Modern design process is a complex work which includes many aspects and so CAD/CAM/CAE are widely used now. The next special generation of such software which combines complex geometrical design facilities, micro-models of composite structures and FE analysis, and tools for additive technologies has to be developed. This paper proposes a design methodology of a new 3D raster/vector drawing program to make micro-models with crowding or coarsening of fiber structures. The definitions of the new terms, principles, and algorithms to design such structure as a set of domains are given. Files for additive technology machines and finite element analysis were created. This approach is the convenient means of micro-modeling of FRC complex shape parts.  相似文献   

17.
The methodology of hardware/software co-design of embedded control systems with Specification PEARL is presented. Hardware and software are modeled with the language Specification~PEARL, which has its origins in standard Multiprocessor~PEARL. Its usefulness is enhanced for modeling hierarchical and asymmetrical multiprocessor systems, and by additional parameters for schedulability analysis. Graphical symbols are introduced for its constructs to enable graphical modeling while maintaining the semantical background. It is meant to be a superlayer for programs, based on the PEARL programming model. To model program tasks, Timed State Transition Diagrams have been defined. The model of a co-designed system is verified for feasibility with co-simulation. The resulting information should be used when considering changes in a current design with the goal of producing a temporally feasible model. To support dynamic re-configurations, configuration management is introduced into the models. Since UML is becoming a de facto standard also for designing embedded control systems, and since Timed State Transition Diagrams and State Chart Diagrams share great similarity, an interface of the methodology to UML 2 is defined, using UML's extension mechanisms.  相似文献   

18.
The authors describe an expert system, the Specification-Transformation Expert System (STES), which is to translate requirements specifications into design specifications automatically during the development phase of the software life cycle. STES accepts as input a software-requirements specification expressed in terms of dataflow diagrams. Using rules that embody a structured design methodology, STES translates this specification into a template describing a structure chart. STES consist of a knowledge base and an inference engine. The knowledge base contains information on the structured-design methodology and heuristic guidelines to help determine when certain methods should be applied. Given a target software system's requirements specification, the STES inference engine can perform intelligent decision-making and determine a suitable architectural design specification for the software system being designed. STES was originally implemented in OPS5 on a VAX11/780 computer. It has since been ported to an Apollo DN 3000 workstation and integrated with a commercial CASE tool  相似文献   

19.
20.
人们提出了软件硬件协同设计的设计方法,以克服传统的将软件和硬件分开的设计方法对于SOC的设计存在的缺陷。SyStenlC是顺应这种发展趋势而产生的系统级描述语言。它是一种通过类对象扩展和基于C/C 的建模平台,支持系统级软硬件协同设计、仿真、验证、软硬件协同设计的系统级描述语言。本文介绍了系统级描述语言SySternC在集成电路设计中的应用,讨论了基于SyStemC的集成电路设计的设计流程、设计优势及其发展趋势。  相似文献   

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

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