함수의 약속을 코드로
함수에 허용할 입력과 반환값이 지켜야 하는 조건을 명시한다. 상태가 유지해야 하는 불변식도 계약의 한 형태다. 함수가 어떤 값을 계산하는지만 아니라 어떤 예외를 내거나 외부에 영향을 주는지도 설명할 수 있다.
여러 검사 경로
계약을 런타임에 검사하거나 속성 기반 테스트 생성과 정적 검사에 사용할 수 있다. 형식 검증 기능도 별도의 분석 경로로 제공한다. 각 경로의 실행 여부와 지원 범위는 다르므로 데코레이터가 있다는 이유로 모두 증명되었다고 판단하면 안 된다.
점진적인 도입
필요한 함수부터 계약을 추가하는 접근을 지원한다. 런타임 검사는 활성화 여부를 선택할 수 있고 분석 도구의 의존성은 실제 서비스 실행 환경과 구분된다. 계약이 실제 요구를 정확히 표현하는지는 개발자가 검토해야 한다.