InfoQ Homepage Contract First Development Content on InfoQ
Articles
RSS Feed-
Delivering Great Developer Experiences with Platform Engineering
Companies increasingly turn to platform engineering to help scale their development teams and increase developer experience for engineer efficiency. In this virtual panel, we’ll discuss how teams build platforms, set others up for success, work with developers who use their platform, measure their progress, and adapt to new challenges.
-
Contract-Driven Development – a Real-World Adoption Journey
Contract-driven development adoption is not just about tooling or practices, it involves changing how people work with each other and in order to influence such changes, the roadmap for adoption should account for the learning curve and demonstrate value incrementally at each stage to individual team members and the organization as a whole.
-
Microservices Integration Done Right Using Contract-Driven Development
Build your microservices and micro-frontend in parallel and deploy them independently without worrying about integration issues, by leveraging API specifications such as OpenAPI and AsyncAPI as executable contracts to shift left the identification of compatibility bugs with Contract Driven Development using Specmatic, thereby removing the need for integration testing.
-
Code Contracts in C#
This article discusses the concepts and ideas of Code Contracts and the way they are handled in C#. Unless you happen to have used a language supporting Design by Contract before, you may sometimes find yourself unsure of how to proceed with Code Contracts. If you're using it in conjunction with Test Driven Development, what should you write first - the contract or the implementation?
-
"Code First" Web Services Reconsidered
In this article, Dennis Sosnoski questions the conventional wisdom that a contract-first approach to web services development, i.e. starting from WSDL, is superior to starting from code. He shows how the JiBX framework can be used to practice start-from-code development without incurring the disadvantages, specifically without coupling implementation and interface too tightly.