Marketing involvement is also known as software requirements analysis. Because software development may involve compromising or going beyond what is required by the client, a software development project may stray into processes not usually associated with engineering such as market research, human resources, risk management, intellectual property, budgeting, crisis management, etc.