Behaviour driven framework