adds functional specification