首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 21 毫秒
1.
All current software quality assurance methods incorporate some form of formal technical review (FTR), because structured analysis of software artefacts by a team of skilled technical personnel has demonstrated an ability to improve quality. However, FTR methods come in a wide variety of forms with varying effectiveness, incur significant overhead on technical staff, and have little computer support. Measurements of these FTR methods are coarse-grained, frequently low quality, and expensive to obtain. This paper describes CSRS, a highly instrumented, computer-supported system for formal technical review, and shows how it is designed to collect high quality, fine-grained measures of FTR process and products automatically. The paper also discusses some results from over one year of experimentation with CSRS; describes how CSRS improves current process improvement approaches to FTR; and overviews several novel research projects on FTR that are made possible by this system.  相似文献   

2.
胡渊喆  王俊杰  李守斌  胡军  王青 《软件学报》2021,32(11):3372-3387
同行代码评审,即对提交代码进行人工评审,是减少软件缺陷和提高软件质量的有效手段,已被Github等开源社区以及很多软件开发组织广泛采用.在GitHub社区,代码评审是其pull-based软件开发模型的重要组成部分.开源项目往往存在成百上千个候选评审人员,为评审工作推荐合适的评审人员是一项很有价值且挑战性的工作.基于真实开源项目的数据分析发现,评审响应时间过长是普遍存在的问题,这会延长评审周期、降低参与人员积极性,而已有的代码评审人推荐工作均没有考虑响应时间这个因素.因此,提出了响应时间约束的代码评审人推荐问题,即推荐的评审人能否在约定时间内进行评审;进而提出了基于多目标优化的代码评审人推荐方法(MOC2R),该方法通过最大化代码评审人经验、最大化在约定时间内的响应概率、最大化人员最近时间内的活跃性这3个目标,使用多目标优化算法来推荐代码评审人员.基于6个开源项目的数据进行实验,结果表明,在不同时间窗约束下(2h、4h、8h),Top-1准确率为41.7%~61.5%,Top-5准确率为66.5%~77.7%,显著优于两条常用且业内领先的基线方法,且3个目标均对人员推荐有贡献,其中,约定时间内的响应概率目标对于人员推荐的贡献最大.该方法能够进一步提升代码评审效率,提高开源社区的活跃性.  相似文献   

3.
ContextThe power of open source software peer review lies in the involvement of virtual communities, especially users who typically do not have a formal role in the development process. As communities grow to a certain extent, how to organize and support the peer review process becomes increasingly challenging. A universal solution is likely to fail for communities with varying characteristics.ObjectiveThis paper investigates differences of peer review practices across different open source software communities, especially the ones engage distinct types of users, in order to offer contextualized guidance for developing open source software projects.MethodComparative case studies were conducted in two well-established large open source communities, Mozilla and Python, which engage extremely different types of users. Bug reports from their bug tracking systems were examined primarily, complemented by secondary sources such as meeting notes, blog posts, messages from mailing lists, and online documentations.ResultsThe two communities differ in the key activities of peer review processes, including different characteristics with respect to bug reporting, design decision making, to patch development and review. Their variances also involve the designs of supporting technology. The results highlight the emerging role of triagers, who bridge the core and peripheral contributors and facilitate the peer review process. The two communities demonstrate alternative designs of open source software peer review and their tradeoffs were discussed.ConclusionIt is concluded that contextualized designs of social and technological solutions to open source software peer review practices are important. The two cases can serve as learning resources for open source software projects, or other types of large software projects in general, to cope with challenges of leveraging enormous contributions and coordinating core developers. It is also important to improve support for triagers, who have not received much research effort yet.  相似文献   

4.
This paper describes our work exploring the suitability of formal specification methods for independent verification and validation (IV&V) of software specifications for large, safety-critical systems. An IV&V contractor often has to perform rapid analysis on incomplete specifications, with no control over how those specifications are represented. Lightweight formal methods show significant promise in this context, as they offer a way of uncovering major errors without the burden of full proofs of correctness. We describe a case study of the use of partial formal models for IV&V of the requirements for Fault Detection Isolation and Recovery on the space station. We conclude that the insights gained from formalizing a specification are valuable, and it is the process of formalization, rather than the end product, that is important. It was only necessary to build enough of the formal model to test the properties in which we were interested. Maintenance of fidelity between multiple representations of the same requirements (as they evolve) is still a problem, and deserves further study.  相似文献   

5.
As the use of formal methods for computer systems development is now widely taught and commonly practised, their use for business process modelling is now considered. In the same way that formal system models are used to rationalize the implementations of complex computer systems, formal process models may be used to rationalize system requirements of complex business processes. The paper examines this thesis by way of a case study in the use of formal modelling to analyse systems requirements for an order fulfilment process.  相似文献   

6.
It is argued that applying formal methods to standards making would result in more accurate, more understandable, and more useful standards. The main benefit seen in using formal methods in a standard's development and expression is improving the standard's quality. In the early stages of standards development, formal methods can result in considerable clarification during the development and expression of the underlying conceptual model for a standard or family of related standards. They can also define precisely the relation among the components of both the standard being developed and other standards. Later in the development process, formal methods can improve a standard's quality during its use by letting it be expressed clearly, unambiguously, and concisely in a way that natural language does not allow. Finally, formal methods can aid standards development at the maintenance stage, for example, by allowing the adequacy of a proposed change to be proved. Guidelines for applying formal methods in the standardization process are provided  相似文献   

7.
嵌入式控制软件是现代航空飞行器的核心部件之一。构建软件需求的形式化规约精确地刻画人们对软件期望的功能和运行场景,是确保此类安全攸关软件质量的根本途径。在工业界,形式化需求建模的大规模应用尽管有成功的案例,但仍面临众多的困难。其根本性难点在于缺少一种系统化的工程方法来引导工业界软件实践者,从原始需求开始最终完成形式化需求规约,并能确认该规约真实、充分地反映了人们对软件期望的功能。针对上述挑战,提出了一种面向机载控制软件需求建模的形式化工程方法ACSDL-MV,以形式化方法为理论基础,结合软件需求工程的基本原理,引导工程人员从原始需求出发以演化式的过程逐步完成需求规约的构建;定制了航空控制软件的形式化描述语言ACSDL,用以构建形式化规约;为了确认软件需求规约准确、充分地描述了人们对软件期望的功能,该方法给出了基于图形的静态审查和基于模型的动态模拟技术。在航空发动机公司中的实验结果表明,该方法相比传统方法探测到了更多的潜在错误。  相似文献   

8.
This paper studies the functions, impacts and dynamics of self‐organization in the fuzzy front end of innovation. Based on a case study approach, the new product development processes of five Austrian semiconductor companies are analysed. We adopt a complexity science perspective which stresses that self‐organization and emergence are key elements of the new product development process. We found that self‐organization mechanisms occur in two ways. First, self‐organizational activities support formal and top‐down managed new product development processes. In this way, they contribute to the acceleration and adaptation of the new product development process and are also a way to overcome bureaucratic structures. Second, we found evidence for the existence of purely emergent bottom‐up processes in many cases. In this context, employees intrinsically and without any explicit order or strategy took initiatives to innovate. Such activities run in parallel to or precede formal new product development processes and employees deliberately bypass and even ignore formal processes such as financial incentive systems, suggestion schemes and patenting rules in order to promote their ideas. These activities are often secret until they are mature enough to be presented to the management, when they are then, if evaluated positively, incorporated as official projects in the new product development process.  相似文献   

9.
为定量研究评审效用,改进软件过程,通过模拟定量计算评审在过程改进中的效用。基于系统动力学方法分析评审活动和软件过程,建立软件过程模型。结合实例,证明了模型的正确性,通过模拟定量分析评审对项目工作量和工期的作用。模拟结果证明在一定范围内增加评审投入可以有效地增加工作效率,提高进度。以成本为优化目标,设置生命周期各阶段评审比例,通过自动模拟,得到最优评审工作投入,为实施软件过程改进提供量化支持。  相似文献   

10.
Although more formal definitions of randomness exist, a colloquial one will suffice here: a random process is one whose consequences are unknown. Intuitively, this is why randomness is crucial in cryptographic applications - because it provides a way to create information that an adversary can't learn or predict. It's then the task of a good protocol designer to leverage this power in the best possible way to protect data and communication. In this paper, we'll look at some basic uses of randomness in cryptography and briefly review the process of securely generating randomness.  相似文献   

11.
The results of literature review show that the need for both reliability and flexibility is increasingly becoming important among the various classes of software applications. Developing reliable yet flexible software is a hard problem. Although modeling methods enjoy a lot of advantages, the use of just one of them, in many cases, may not guarantee the development of reliable and flexible software. Formal modeling methods ensure reliability. However, lack of knowledge and high cost practically force developers to use semi-formal methods instead. Semi-formal (visual) modeling methods, which are widely used in practical large-scale software development, are not good enough for reliable software development. This paper proposes a new practical approach to the development of reliable yet flexible software. In the proposed approach, formal (Object-Z) and semi-formal (UML) models are transformed into each other using a set of bidirectional formal rules. Formal modeling and refinement ensure the reliability of software. Visual models facilitate the interactions among stakeholders who are not familiar enough with the complex mathematical concepts of formal methods. Visual models help detect the unexpected behavior and inconsistencies of software. Applying design patterns to visual models improves the flexibility of software. The transformation of formal and visual models into each other through the iterative and evolutionary process, proposed in this paper, helps develop the software applications that need to be highly reliable yet flexible. The feasibility of the proposed approach is evaluated using the multi-lift case study.  相似文献   

12.
O'Connell  E. Saidian  H. 《Computer》2000,33(2):28-35
In the early 1989s, the US Department of Defense suffered many monetary, schedule, and performance costs because it misjudged the ability of its contractors to develop software. Recognizing that this was less a reflection on the organizations themselves than on the general immaturity of the software industry, the DoD helped create the Software Engineering Institute with the aim of studying ways to help the software industry grow responsibly. In 1987, the SEI established the software capability evaluation (SCE) as a formal way to determine an organization's software process maturity framework and generally measure its software development competence. SCEs are widely used to determine an organization's Capability Maturity Model rating, but their results can be misleading. The authors reveal how certain practices distort results and waste time and money, through intentional contractor vagueness and detail, inappropriate sample projects, and staff coaching. They go on to suggest ways to improve the process  相似文献   

13.
文章介绍了一般软件评审涉及的内容和软件评审中的各个角色与职责,重点说明软件评审的过程及评审的标准和评审中要注意的问题。同时也着重阐述了不同的软件开发可以根据此评审过程进行裁剪,评审过程是帮助作者提前发现评审对象的缺陷,而不是对评审对象的发布执行。  相似文献   

14.
形式化方法Designware、B的比较   总被引:1,自引:0,他引:1       下载免费PDF全文
用形式化方法开发软件是提高软件可靠性和开发效率的革命性途径。Designware、B是两种支持软件开发全过程的形式化方法。对它们的规约描述方法、规约求精方式、开发步骤进行比较,最后分析这两种方法各自的优缺点。  相似文献   

15.
ContextA Software Product Line is a set of software systems that are built from a common set of features. These systems are developed in a prescribed way and they can be adapted to fit the needs of customers. Feature models specify the properties of the systems that are meaningful to customers. A semantics that models the feature level has the potential to support the automatic analysis of entire software product lines.ObjectiveThe objective of this paper is to define a formal framework for Software Product Lines. This framework needs to be general enough to provide a formal semantics for existing frameworks like FODA (Feature Oriented Domain Analysis), but also to be easily adaptable to new problems.MethodWe define an algebraic language, called SPLA, to describe Software Product Lines. We provide the semantics for the algebra in three different ways. The approach followed to give the semantics is inspired by the semantics of process algebras. First we define an operational semantics, next a denotational semantics, and finally an axiomatic semantics. We also have defined a representation of the algebra into propositional logic.ResultsWe prove that the three semantics are equivalent. We also show how FODA diagrams can be automatically translated into SPLA. Furthermore, we have developed our tool, called AT, that implements the formal framework presented in this paper. This tool uses a SAT-solver to check the satisfiability of an SPL.ConclusionThis paper defines a general formal framework for software product lines. We have defined three different semantics that are equivalent; this means that depending on the context we can choose the most convenient approach: operational, denotational or axiomatic. The framework is flexible enough because it is closely related to process algebras. Process algebras are a well-known paradigm for which many extensions have been defined.  相似文献   

16.
增量ETL过程的并行化是提高ODS数据实时性的有效途径。结合通信顺序进程理论研究了增量ETL过程模型,形式化分析了增量ETL过程事件在并行环境下执行状态的变换过程,提出了增量ETL过程并行调度算法,解决了增量ETL过程在并行环境下调度策略的问题。应用及实践表明,模型及算法具有源系统负载小、数据的实时性高等特点。  相似文献   

17.
随着工程管理信息系统的应用和发展,该系统逐渐渗透到电力行业的各个部门。在为某电力公司工程科设计工程管理信息系统的过程中,为了提高审查工作效率,针对审查系统中冗余数据和工作量,提出其设计思路。首先介绍了系统的需求分析,然后详细探讨了审查系统流程建立、功能和界面以及数据库建立等关键技术,最后说明了系统的性能测试结果。通过3个方面的全面阐述,将为审查系统的设计奠定良好的基础。  相似文献   

18.
We propose a development framework that extends the scope of structured review by supplementing the structured review with model-based verification. The proposed approach uses the Unified Modeling Language (UML) as a modeling notation. We discuss a set of correctness arguments that can be used in conjunction with formal verification and validation (V&V) in order to improve the quality and dependability of systems in a cost-effective way. Formal methods can be esoteric; consequently, their large scale application is hindered. We propose a framework based on the integration of lightweight formal methods and structured reviews. Moreover, we show that structured reviews enable us to handle aspects of V&V that cannot be fully automated. To demonstrate the feasibility of our approach, we have conducted a study on a security-critical system - a patient document service (PDS) system.  相似文献   

19.
Peer review meetings (PRMs) are formal meetings during which peers systematically analyze artifacts to improve their quality and report on non-conformities. This paper presents an approach based on protocol analysis for quantifying the influence of participant roles during PRMs. Three views are used to characterize the seven defined participant roles. The project view defines three roles: supervisor, procedure expert and developer. The meeting view defines two roles: author and reviewer, and the task view defines the roles reflecting direct and indirect interest in the artifact under review. The analysis, based on log-linear modeling, shows that review activities have different patterns, depending on their focus: form or content. The influence of each role is analyzed with respect to this focus. Interpretation of the quantitative data leads to the suggestion that PRMs could be improved by creating three different types of reviews, each of which collects together specific roles: form review, cognitive synchronization review and content review.  相似文献   

20.
Fiona Polack 《Software》2001,31(8):757-780
This paper presents an approach using derivation of a formal model to review the diagram‐and‐text specification of an information system specification, based on concepts from the formal and structured integrated method, SAZ. Extraction of the formal model is outlined, and the approach is illustrated with a simplified extract from an industrial trial. Some empirical findings from the trial, which reviewed a pre‐existing commercial specification, are presented, and the general applicability of the review approach is discussed. Copyright © 2001 John Wiley & Sons, Ltd.  相似文献   

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

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