Formal Agent Theory to Model Applications Reusuable ACL defining conversations with peer-to-peer protocol Inner langauge defining common application syntax/terms Could be implemented in OOP but commitments define technology.