首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
The design and analysis of the structure of software systems has typically been based on purely qualitative grounds. In this paper we report on our positive experience with a set of quantitative measures of software structure. These metrics, based on the number of possible paths of information flow through a given component, were used to evaluate the design and implementation of a software system (the UNIX operating system kernel) which exhibits the interconnectivity of components typical of large-scale software systems. Several examples are presented which show the power of this technique in locating a variety of both design and implementation defects. Suggested repairs, which agree with the commonly accepted principles of structured design and programming, are presented. The effect of these alterations on the structure of the system and the quantitative measurements of that structure lead to a convincing validation of the utility of information flow metrics.  相似文献   

2.
A state-of-the-art survey on software merging   总被引:1,自引:0,他引:1  
Software merging is an essential aspect of the maintenance and evolution of large-scale software systems. This paper provides a comprehensive survey and analysis of available merge approaches. Over the years, a wide variety of different merge techniques has been proposed. While initial techniques were purely based on textual merging, more powerful approaches also take the syntax and semantics of the software into account. There is a tendency towards operation-based merging because of its increased expressiveness. Another tendency is to try to define merge techniques that are as general, accurate, scalable, and customizable as possible, so that they can be used in any phase in the software life-cycle and detect as many conflicts as possible. After comparing the possible merge techniques, we suggest a number of important open problems and future research directions  相似文献   

3.
Analysis techniques, such as control flow, data flow, and control dependence, are used for a variety of software engineering tasks, including structural and regression testing, dynamic execution profiling, static and dynamic slicing, and program understanding. To be applicable to programs in languages such as Java and C++, these analysis techniques must account for the effects of exception occurrences and exception handling constructs; failure to do so can cause the analysis techniques to compute incorrect results and, thus, limit the usefulness of the applications that use them. This paper discusses the effects of exception handling constructs on several analysis techniques. The paper presents techniques to construct representations for programs with explicit exception occurrences-exceptions that are raised explicitly through throw statements-and exception handling constructs. The paper presents algorithms that use these representations to perform the desired analyses. The paper also discusses several software engineering applications that use these analyses. Finally, the paper describes empirical results pertaining to the occurrence of exception handling constructs in Java programs and their effect on some analysis tasks  相似文献   

4.
基于GPS的同步时钟的研制及其应用   总被引:3,自引:2,他引:3  
介绍了基于GPS的时钟同步PC卡的设计与应用.基于GPS技术,利用80C320高性能单片机、PC机PCI总线、PC机BIOS时钟中断和程序常驻内存技术,成功解决了在不影响原系统的正常运行的的情况下,利用GPS时间来同步不同系统时钟这一技术难题.详细介绍了GPS同步时钟PC卡的硬件电路设计和软件编程方法.最后介绍了该GPSPC卡在湖北某热电厂不同控制系统之间时钟同步方面的应用.  相似文献   

5.
Interprocedural data flow information is useful for many software testing and analysis techniques, including data flow testing, regression testing, program slicing and impact analysis. For programs with aliases, these testing and analysis techniques can yield invalid results, unless the data flow information accounts for aliasing effects. Recent research provides algorithms for performing interprocedural data flow analysis in the presence of aliases; however, these algorithms are expensive, and achieve precise results only on complete programs. This paper presents an algorithm for performing alias analysis on incomplete programs that lets individual software components such as library routines, subroutines or subsystems be independently analyzed. The paper also presents an algorithm for reusing the results of this separate analysis when the individual software components are linked with calling modules. Our algorithms let us analyze frequently used software components, such as library routines or classes, independently, and reuse the results of that analysis when analyzing calling programs, without incurring the expense of completely reanalyzing each calling program. Our algorithms also provide a way to analyze large systems incrementally  相似文献   

6.
With the growing complexity of multiprocessing systems and distributed computing systems, there is an increasing need to provide a formal methodology for deriving a model to represent software design for the software development of these systems. The formal methodology presented in this paper uses attributed grammars, and extends formal methods commonly used in the definition of programming languages and compiler techniques for representing the design specification of software systems and validating the implementation. This model provides a common basis in the software development phases through automated design analysis, test-case generation, and validation of the software system. This paper covers the construction of the model for the design representation using attributed grammar and the analysis of the software system design based on the model.  相似文献   

7.
高猛  滕俊元  王政 《软件学报》2021,32(10):2977-2992
整数溢出引起的软件系统安全性问题屡见不鲜,已有的模型检测技术由于存在状态空间爆炸、不能有效支持中断驱动型程序检测等缺点而少有工程应用.结合真实案例,对航天嵌入式软件整数溢出问题的分布和特征进行了系统性的分析.在有界模型检测技术的基础上,结合整数溢出特征,提出了基于整数溢出变量依赖的程序模型约简技术;同时,针对中断驱动型程序,结合中断函数特征抽象,提出了基于干扰变量的中断驱动程序顺序化方法.经过基准测试程序和真实航天嵌入式软件实验,结果表明:该方法在保证整数溢出问题检出率的前提下,不仅能够提高分析效率,还使得已有的模型检测技术能够适用于中断驱动型程序整数溢出检测.  相似文献   

8.
嵌入式系统软硬件联合设计方法研究   总被引:5,自引:0,他引:5       下载免费PDF全文
本文从方法学的角度,结合嵌入式系统的设计,介绍了软硬件联合设计方法的流程和一些关键技术;并针对嵌入式系统自身的特点,探讨了设计方法相应的一些发展;最后,结合一个具体的例子论证了软硬件联合设计方法的特点。  相似文献   

9.
供电企业生产信息管理系统关键技术的探讨   总被引:2,自引:1,他引:2  
供电企业生产信息管理系统是实现供电企业信息管理的核心系统之一,其研发工作是供电企业信息化建设的重要组成部分。在长期的供电企业信息化建设中,存在着低水平重复建设、数据一致性、信息孤岛等问题,阻碍了企业信息化的可持续发展。本文介绍了从语义角度进行供电企业生产信息的分析、量化工作和运用面相对象概念构建统一数据模型的方法,并讨论了应用工作流、OLE技术、多层C/S结构、ASP等软件技术在软件开发的应用。该模型与技术已在实际开发工作中得到应用。收到了良好的效果。  相似文献   

10.
随着各种分布式能源接入配电网,配电网的潮流分布随分布式能源的运行方式转换而变化,传统仅考虑配电网拓扑结构的拓扑追踪方法不再适用,需要考虑配电网潮流方向变化对拓扑追踪的影响。本文根据配电网中主要电力设备及其连接关系建立了拓扑模型,基于配电网状态估计结果获取配电网的潮流分布,结合拓扑模型以及潮流分布给出计算各开关潮流的方法,在此基础上建立了基于潮流方向的连接节点/支路模型,并将该模型应用于拓扑追踪。文中列举了了多个拓扑追踪的应用场景,分别描述了各应用场景下的拓扑追踪实施方法。通过实例分析可知,文中的拓扑追踪方法充分考虑了多种分布式能源在不同运行方式下对配电网的影响,计算方法快速、结果准确,能够为运行人员提供调度决策支持。  相似文献   

11.
文章首先介绍了DSP伺服系统软件的模块化设计,改进系统信号流图,将软件模块与信号流图模块对应,以对软件进行增量式搭建;其次介绍了利用面向对象技术设计伺服系统的方法,根据面向对象要求确定对象,再给出关键消息定义,指出伺服系统软件使用面向对象设计时应注意的问题。  相似文献   

12.
Evaluating quality attributes of a design model in the early stages of development can significantly reduce the cost and risks of developing a low quality product. To make this possible, software designers should be able to predict quality attributes by reasoning on a model of the system under development. Although there exists a variety of quality-driven analysis techniques for software systems, only a few work address software product lines. This paper describes how probabilistic model checking techniques and tools can be used to verify non-functional properties of different configurations of a software product line. We propose a model-based approach that enables software engineers to assess their design solutions for software product lines in the early stages of development. Furthermore, we discuss how the analysis time can be surprisingly reduced by applying parametric model checking instead of classic model checking. The results show that the parametric approach is able to substantially alleviate the verification time and effort required to analyze non-functional properties of software product lines.  相似文献   

13.
变压器监测系统是电力自动化系统的重要组成部分。本文以处理器dsPIC30F6012和电能芯片ATT7022A为基础,设计了基于GPRS的变压器监测系统数据采集终端,给出了系统各个部分的硬件电路设计,在此基础上对系统软件进行设计并给出软件流程图。设计的变压器监测终端硬件电路简单,易于实现,具有一定的参考实用价值。  相似文献   

14.
数据流分析在编译系统的代码优化、软件故障检测以及程序切片中都起着非常关键的作用。本文介绍了数据流分析方法的基本概念和基本原理,介绍了数据流方程的到达一定义迭代算法,并提出了一种利用VC++工具实现数据流方程求解的方法。  相似文献   

15.
该文结合WDDL逻辑和行波流水技术,给出了分组密码协处理器的设计方法和设计流程.该设计流程实现简单,最大限度地利用了现有的成熟EDA工具.这种协处理器不仅能有效抗功耗攻击,而且具有运算性能高和功耗低的优势.文中以DES算法为例,给出了基于WDDL和行波流水技术的协处理器.实验结果表明,文中给出的分组密码协处理器设计方法以一定的芯片面积为代价获得了抗功耗攻击的能力,具有高运算性能和低功耗的优势.  相似文献   

16.
Integrating software components to produce large-scale software systems is an effective way to reuse experience and reduce cost. However, unexpected interactions among components when integrated into software systems are often the cause of failures. Discovering these composition errors early in the development process could lower the cost and effort in fixing them. This paper introduces a rigorous analysis approach to software design composition based on automated verification techniques. We show how to represent, instantiate and integrate design components, and how to find design composition errors using model checking techniques. We illustrate our approach with a Web-based hypermedia case study.  相似文献   

17.
One of today's challenges is producing reliable software in the face of an increasing number of interacting components. Our system CHET lets developers define specifications describing how a component should be used and checks these specifications in real Java systems. CHET is able to check a wide range of complex conditions in large software systems without programmer intervention. It does this by doing a complete and detailed flow analysis of the software and using this analysis to build a simpler, model program. This paper explores the motivations for CHET, the specification techniques that are used, and the methodology used in statically checking that the specifications are obeyed in a system.  相似文献   

18.
Test Case Generation as an AI Planning Problem   总被引:6,自引:0,他引:6  
While Artificial Intelligence techniques have been applied to a variety of software engineering applications, the area of automated software testing remains largely unexplored. Yet, test cases for certain types of systems (e.g., those with command language interfaces and transaction based systems) are similar to plans. We have exploited this similarity by constructing an automated test case generator with an AI planning system at its core. We compared the functionality and output of two systems, one based on Software Engineering techniques and the other on planning, for a real application: the StorageTek robot tape library command language. From this, we showed that AI planning is a viable technique for test case generation and that the two approaches are complementary in their capabilities.  相似文献   

19.
Multi-agent systems (MAS) based computing is the most appropriate paradigm for the problem domain, where data, control, expertise or resources are distributed and also it is interesting to the user only if the technologies address the issues of interest to the user. The MAS has the hypothesis that the agent based computing offers better approach to manage the complex systems and process. They are large-scale systems and collaborate with one another to achieve their functions in a highly modular and flexible way. In this point of view, the work presented in this paper is an enhanced attempt to validate the MAS based on application perspective. As a test-bed, a distributed MAS for software testing is constructed such that to provide a hybrid testing environment based on variety of agents, which possibly incorporate several testing techniques. The developed framework is validated on two perspectives namely, efficiency of the application domain, i.e. software testing using MAS and efficiency of the proposed framework. The validation of the later case has been carried out on two conditions: regular working environment and exceptional working environment. The second type of validation provided the guidelines for implementing proper exception handling mechanism in the enhanced MAS, which is being developed for software testing Purpose.  相似文献   

20.
Dual turbine-generator systems offer several operating advantages for large electric power generating plants. In order that these benefits be fully realized, it is necessary that the twin turbine-generator system, including its associated control systems, perform satisfactorily in a variety of normal and energy operating modes. This paper combines nonlinear simulation and linear multivariable systems analysis techniques to investigate system dynamic behavior and governor design. Specific results are reported for load following operation in which one turbine-generator is shut down.  相似文献   

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

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