compliance requirements for software