Skip to main content
Effective testing involves preparing test oracles and test cases, two activities which are too tedious to be effectively performed by humans, yet for the most part remain manual. The AutoTest unit testing framework automates both, by... more
    • by 
    •   11  
      Computer ScienceObject Oriented ProgrammingEiffelSoftware
ABSTRACT Classical views on testing and their associated testing models are not dealing with the question of fault repairing but only focus on fault detection. Diagnosis consists of determining the nature of a detected fault, of locating... more
    • by 
    •   10  
      Information SystemsSoftware EngineeringFault DetectionSoftware Measurement
Non-functional requirements such as performance, program size, and energy consumption significantly affect the quality of software systems. Small devices like PDAs and mobile phones have little memory, slow processors, and energy... more
    • by 
    •   12  
      Computer ScienceModeling LanguageCase StudyNon Functional Requirement
Object-Z is an object-oriented specification language which extends the Z language with classes, objects, inheritance and polymorphism that can be used to represent the specification of a complex system as collections of objects. There... more
    • by 
    •   11  
      Computer ScienceSoftware EngineeringObject Oriented ProgrammingSoftware Development
Bài báo trình bày những vấn đề về thiết kế theo hợp đồng, kiểm thử đơn vị cũng như những điểm mạnh và những hạn chế của chúng; từ đó đề ra giải pháp kết hợp thiết kế theo hợp đồng và kiểm thử đơn vị. Công cụ csUnit được sử dụng để kiểm... more
    • by 
    •   4  
      Object Oriented Software ModelingContract DesignUnit TestingDesign-by-Contract
The artifacts of Analysis and Design Methodologies are specified by means of modeling languages. In a relatively short period of time, UML has become the "lingua franca" in software engineering. Metamodeling and abstraction are... more
    • by 
    •   7  
      Software EngineeringTeaching and LearningModeling LanguageSeismic analysis and design
Web services have received a lot of attention from both researchers and the business IT sector. Most of web service research has been devoted to the issues of standards and supporting technologies. However, despite the considerable volume... more
    • by 
    •   3  
      Computer ScienceWeb ServiceDesign-by-Contract
The Java Modeling Language (JML) is widely used in academic research as a common language for formal methods tools that work with Java. JML is a design by contract language that can be used to specify detailed designs of Java programs,... more
    • by 
    •   7  
      Java ProgrammingJava Modeling LanguageAutomated Software EngineeringInformation Hiding
Design by contract is a practical methodology for evolving code together with its specification. The contract has important methodological implications on the design of the program. In addition, tools that instrument the code to check for... more
    • by  and +1
    •   5  
      Object Oriented ProgrammingJava ProgrammingFormal SpecificationDevelopment Process
This paper reports on a testing case study applied to a small Java application, partially specified in JML. It illustrates that JML can easily be integrated with classical testing tools based on combinatorial techniques and random... more
    • by 
    •   10  
      Java CardCase StudyJava Modeling LanguageSpecification Tests
The Java Modeling Language (JML) is a behavioral interface specification language (BISL) designed for Java. It was developed to improve functional software correctness of Java applications. However, the JML compiler explores the... more
    • by 
    •   7  
      Comparative StudyData StructureJava Modeling LanguageCode Generation
Statecharts constitute an executable language for modelling event-based reactive systems. The essential complexity of statechart models solicits the need for advanced model testing and validation techniques. In this article we propose a... more
    • by 
    •   5  
      StatechartsExecutable ModelsRuntime VerificationBehaviour Driven Development
This paper deals with the modeling, automatic implementation and runtime verification of constraints in component-based applications. Constraints have been assuming an ever more relevant role in modeling distributed systems as long as... more
    • by 
    •   7  
      EngineeringSoftware EngineeringDistributed SystemBusiness rules
In the last years, the concern with the correctness of programs has been leading programmers to enrich their programs with annotations following the principles of design-by-contract, in order to be able to guarantee their correct... more
    • by 
    •   3  
      Program verificationSpecification LanguageDesign-by-Contract
is a methodology to construct quality software. DbC associates the contract specification (pre and postconditions of methods of class and class invariant) with the design of a class. In this paper, we combine data flow testing and Design... more
    • by 
    •   4  
      Random testing of object oriented programsData Flow DiagramBoolean SatisfiabilityDesign-by-Contract
Assertions or formal program specifications are fundamental to build more reliable software. One of the most important applications of assertions is found in the Design by Contract metaphor: pre-conditions, invariants and postconditions.... more
    • by  and +1
    •   5  
      Formal SpecificationAspect Oriented ProgrammingProgram SpecificationFirst
Object-Z is an object-oriented specification language which extends the Z language with classes, objects, inheritance and polymorphism that can be used to represent the specification of a complex system as collections of objects. There... more
    • by 
    •   11  
      Software EngineeringObject Oriented ProgrammingSoftware DevelopmentSoftware
Predicate testing, also known as (branch) condition testing, is most often filed under structural (white box) test case design techniques. Nevertheless, contract-based specification techniques allow for adapting classical predicate... more
    • by 
    •   5  
      Computer ScienceSoftware TestingDesign-by-ContractFunctional Testing
Current embedded systems are increasingly more complex and heterogeneous, but they are expected to be more safe, reliable and adaptive. In consideration of all these aspects, their design is always a great challenge. Developing these... more
    • by 
    •   4  
      Model Based DesignDesign-by-ContractAADLVirtual integration
This paper describes the benefit of incorporating two ideas from Design-by-Contract [3] into the teaching of Cleanroom Software Engineering [4][5], namely the specification of method behavior in terms of inspector methods, and inheritance... more
    • by 
    •   5  
      Software EngineeringPolymorphismData representationDesign-by-Contract
We report on our experiences in teaching lightweight formal methods with Eiffel. In particular, we discuss how we introduce formal methods via Eiffel's design-by-contract and agent technologies, and how we integrate these techniques with... more
    • by 
    •   4  
      Formal methodTest Driven DevelopmentDesign-by-ContractTFM
Architecture description languages (ADLs) are used to specify high-level, compositional views of a software application. ADL research focuses on software composed of prefabricated parts, so-called software components. ADLs usually come... more
    • by 
    •   8  
      EngineeringSoftware ArchitectureMiddlewareArchitectural Design
    • by 
    •   10  
      Computer ScienceSoftware EngineeringSoftware QualityProduction Systems
The literature for deductive formal verification is quite rich; however, very few case studies have been done. The authors present a case study of using deductive formal verification of a navigation system from the avionics domain. Both... more
    • by 
    •   6  
      Java ProgrammingCase StudyJava Modeling LanguageFormal Verification
Considerable progress has been made towards automatic support for one of the principal techniques available to enhance program reliability: equipping programs with extensive contracts. The results of current contract inference tools are... more
    • by 
    •   16  
      Data MiningSoftware ReliabilityDecision TreesData Structure
Design by contract is a practical methodology for evolving code together with its specification. The contract has important methodological implications on the design of the program. In addition, tools that instrument the code to check for... more
    • by 
    •   5  
      Object Oriented ProgrammingJava ProgrammingFormal SpecificationDevelopment Process
Design by contract is a practical methodology for developing code together with its specification. The contract consists of class invariants and method preand postconditions. As the code is refactored, specifications of internal units... more
    • by  and +1
    •   3  
      Environment and DevelopmentAgileDesign-by-Contract
Testing is commonly used to check conformance in contract-based programs, as verification by formal proofs is hard to scale and static analysis is, sometimes, limited for detecting general nonconformances. Traditional test cases, with... more
    • by 
    • Design-by-Contract
Increasing effort in development of high quality distributed systems requires ground methodological base. Design by Contract approach looks very promising as a candidate since it helps to obtain component-wise specification and design, to... more
    • by 
    •   2  
      Asynchronous CommunicationDesign-by-Contract
This paper deals with the modeling and the automatic implementation of constraints in component based applications. Constraints have been assuming an ever more relevant role in modeling distributed systems as long as business rules... more
    • by 
    •   11  
      ModelingSoftware DevelopmentContractDistributed System
ESpec is a suite of tools that facilitates the testing and veriflcation of object-oriented Eifiel programs in an integrated environment. The suite includes unit testing tools (ES-Test) and Fit tables (ES-Fit for customer requirements)... more
    • by 
    •   5  
      Language UseMathematical ModelUnit TestingDesign-by-Contract
    • by 
    •   13  
      Cognitive ScienceStatic AnalysisJava ProgrammingJava Card
TIBO derivatives, as non-nucleoside reverse transcriptase inhibitors, have gained a definitive place in the treatment of HIV-1 infections. Some new TIBO-like derivatives have been designed by contraction of the b-ring (diazepine ring) of... more
    • by 
    •   7  
      MolecularDockingFree EnergyEnzyme
Las capacidades conversacionales de un agente pedagógico (la personi cación del entrenador) permiten una interacción social con los aprendices; luego, su aplicación en entornos virtuales 3D para el entrenamiento permite mejorar esta... more
    • by 
    •   7  
      Mechanical EngineeringSocial InteractionActivity TheoryScaffolding
    • by 
    •   13  
      Cognitive ScienceStatic AnalysisJava ProgrammingJava Card
The Java Modeling Language (JML) is a behavioral interface specification language (BISL) designed for Java. It was developed with the aim of improving the functional software correctness of Java applications. The JML compiler (jmlc)... more
    • by 
    •   14  
      Object Oriented ProgrammingSoftware TestingComparative StudyReflection
It is claimed in the literature that the contracts of a system present crosscutting structure during its realization. In this context, there has been attempts to improve separation of crosscutting contracts, e.g. by aspect-oriented... more
    • by 
    •   2  
      Aspect Oriented ProgrammingDesign-by-Contract
Aspect-oriented programming (AOP) is a popular technique for modularizing crosscutting concerns. In this context, researchers found that the realization of the design by contract (DbC) is crosscutting and fares better when modularized by... more
    • by  and +1
    •   2  
      Aspect Oriented ProgrammingDesign-by-Contract
Assertions are a basic programming ingredient. If the language you use does not support them in a proper way, at least you must use some kind of standardized comments, to express things like preconditions for functions. The comments can... more
    • by 
    •   11  
      Object Oriented ProgrammingLogic ProgrammingIndependent Component AnalysisEiffel
    • by 
    •   5  
      Computer ScienceFormal methodTest Driven DevelopmentDesign-by-Contract
Learning object design by contract is a proposal for formalization of learning object metadata in order to enhance the design of Web-based educational contents by augmenting their reusability. It basically consists of a formal notation... more
    • by 
    •   6  
      Object Oriented ProgrammingLearning ObjectLearning Object MetadataAutomatic code generation
Sulu is a programming language designed with automated unit testing specifically in mind. One aim of Sulu is to demonstrate how automated software testing can be more integrated into current software development processes. Sulu's runtime... more
    • by 
    •   18  
      Computer ScienceSoftware EngineeringProgramming LanguagesSoftware Testing
The Java Modeling Language (JML) is a behavioral interface specification language (BISL) designed for Java. It was developed with the aim of improving the functional software correctness of Java applications. The JML compiler (jmlc)... more
    • by 
    •   14  
      Object Oriented ProgrammingSoftware TestingTesting And VerificationComparative Study
Non-functional requirements such as performance, program size, and energy consumption significantly affect the quality of software systems. Small devices like PDAs and mobile phones have little memory, slow processors, and energy... more
    • by 
    •   11  
      Modeling LanguageCase StudyNon Functional RequirementMobile phone
Aspect oriented programming is a way of reducing the complexity of software development, in the sense that it is easier to reason about isolated concepts. The complexity of web applications has been increasing in the last few years,... more
    • by 
    •   6  
      Web DevelopmentAspect Oriented ProgrammingJava Server PagesWeb Pages
Assertions or formal program specifications are fundamental to build more reliable software. One of the most important applications of assertions is found in the Design by Contract metaphor: pre-conditions, invariants and postconditions.... more
    • by 
    •   9  
      Object Oriented ProgrammingSoftware ReliabilityFormal SpecificationFormal Verification
We present an approach for testing Java implementations of abstract data types (ADTs) against their specifications. The key idea is to reduce this problem to the run-time monitoring of contract annotated classes, which is supported today... more
    • by 
    •   2  
      Algebraic SpecificationDesign-by-Contract
... Index Terms—Object-oriented design methods, programming by contract, diagnostics, metrics. Ç 1 INTRODUCTION SEVERAL works advocate the use of assertions to improve software quality [1], [2], [3], [4], [5], but very few are actually... more
    • by 
    •   8  
      Information SystemsSoftware EngineeringObject Oriented DesignSoftware Quality
Abstract Design by contract is the principle that the interfaces between modules of a software system-especially a mission-critical one-should be governed by precise specifications. The contracts cover mutual obligations (pre-conditions),... more
    • by 
    •   5  
      Software Process ImprovementSoftware SystemsDesign-by-ContractComputer