There should be different levels of licensing based on skills and areas of competence. Para-medics, depending on their competence and training, are certified to administer different levels of care to patients. A computer practitioner should only undertake tasks that they are competent to complete. Commitment to competence to apply the knowledge they have - 3 years working with another Licensed Computer Professional. Software development is not a purely theoretical discipline.
Competence is gained and shown by applying the theories on has learned.
This apprenticeship requirement is similar to CPA's. Commitment to follow the standards - sanctions for violations of the best practices and violations of the code of ethics. This clearly introduces a counter pressure for any pressure to develop shoddy product. This model of licensing meets the objections cited earlier and provides a base for further discussion.