Congestion Control is a common telecom and network application to manage overload of data traffic through high-traffic Network Elements (NEs). Some slides offer an example of how to use A-TDD to decompose the requirements into User Stories, and develop scenarios for Acceptance Test in large, complex product development. You can find the slides on SlideShare here.
Been thinking a lot about A-TDD these days with ICST and the TDD workshop coming up next week. A-TDD can help you do more than validate your product against Acceptance criteria. A-TDD asks you to think about the definition of Acceptance in Customer terms, and prepares you to be Ready-Ready. This represents the black-box product tests that customers will run. A-TDD covers not only functional tests, but also covers tests related to performance, stability, reliability, security, and other “-ility” tests. A-TDD can help you do the following as well:
Feature teams as opposed to component teams allow you to organize in a way that maximizes architectural integrity and business value demonstration at the User Story level, and ultimately, at the feature level. Check out Catherine Louis’ slides on how to organize around a complex, multi-network element feature in the telecom domain. Really great work. You can find them here.
Thanks, Catherine, for sharing!
Melvin Conway introduced an idea in 1968:
…organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations.
Think about your product and it’s strengths and weaknesses. Can these strengths and weaknesses be mapped to the strengths and weaknesses of the communication paths in your organization? Component-based teams and human relationships are at the core of this idea. Continue reading