With the rise of distributed e-commerce in recent years, demand for automated negotiation has increased. In turn, this has facilitated a demand for ever more complex algorithms to conduct these negotiations. However, building robust automated negotiators able to survive and succeed in growing negotiation communities is difficult. As the complexity of these algorithms increases, our ability to reason about and predict their behaviour in an ever larger and more diverse negotiation environment decreases. In addition, with the proliferation of internet-based negotiation, any algorithm also has to contend with potential reliability issues in the underlying messagepassing infrastructure. These factors can create significant problems for building these algorithms, which need to incorporate methods for survival as well as negotiation. To aid our understanding of such complexity, and to promote better structured algorithms, straightforward techniques for specifying these negotiators are requir...