What are the main problems associated with software