Bilgisayar programlama ve bilgisayar bilimleri alanında, işletme sözleşmeleri, belirli bir işlevin bir program içindeki farklı öğeleri nasıl değiştireceğini belirtmenin veya belgelemenin bir yoludur. Bir soyut programlama arayüzü (API) veya bir arayüz kontrol belgesinin aksine, işlem sözleşmeleri, bir bilgisayar uygulaması veya sistemi yaratmanın geliştirme ve modelleme aşamasında yardımcı olmak için kullanılır. En temel düzeyde, sözleşme operasyonun dört özelliğini, özellikle operasyonun adını, tasarımın diğer alanlarındaki operasyonlara yapılan referansları, operasyondan önce giriş veya durum için herhangi bir şartı ve operasyonun durumunu tanımlar. işlem yapıldıktan sonra sistem veya değişkenler. Sözleşme, operasyonun dahili olarak nasıl işlediği hakkında özel bir şey tanımlamamakta ve bunun yerine sadece programın durumunun kullanımından nasıl etkilendiğiyle ilgilenmektedir.
Genel olarak operasyon sözleşmeleri, bir program modeli dahilindeki her operasyon için yapılmamıştır. Bunun yerine, özellikle karmaşık veya izlemesi zor olan işlemlere ayrılmıştır. Birleşik Modelleme Dili (UML) gibi bazı bilgisayar modelleme dilleri, işlem sözleşmelerini desteklemekte ve işlem gerçekleştikten sonra bir programın durumunun nasıl değişebileceğini görselleştirmeye yardımcı olacak yollar sunmaktadır.
İşlem sözleşmeleri oluşturmak için gereken ilk iki tanım, herhangi bir şey olabilen işlemin adı ve çapraz referanslardır. Çapraz referans, tanımlanmış işlemi kullanan veya işlemin işlemesinde kullanacağı bir program modelinin diğer işlemlerinin veya alanlarının listesidir. Bu, genel bir tasarımın nasıl etkileşime girdiğini görmeye yardımcı olur ve özellikle modelin bir alanındaki değişikliklerin diğer alanları nasıl etkileyeceğini görmede yararlıdır.
Operasyon sözleşmeleri daha sonra operasyonu yürütmek için gerekli ön koşulları tanımlar. Bu, belirli değişkenlerin uygun değerlerle yüklenmesini gerektirebilir veya programın belirli bölümlerinin belirli bir durumda olmasını gerektirebilir. İşlem yürütülürken ön koşullar yerine getirilmezse, işlem gerçekleşmeyecek veya tamamen başarısız olabilir. Sözleşme soyut bir araç olarak kullanıldığından, ön koşullar genellikle oldukça geneldir ve programın durumunu belirli değişkenlerden daha fazla içerir.
Operasyon sözleşmelerinin son kısmı herhangi bir post-koşulunu tanımlar. Son koşullar, programın yürütülmesi nedeniyle değiştirilen program modeli içindeki öğelerin bir listesidir. Bu, veri yapısındaki değişiklikleri veya kontrolün ayrı bir modüle kaydırılması gibi programın durumundaki değişiklikleri belirleyebilir. İyi tanımlanmış işletme sözleşmelerinin kullanılması sayesinde, programlar gerçek uygulama başlamadan önce etkili bir şekilde modellenebilir ve değiştirilebilir.


