Fundamental Concepts and Issues in Software Requirements and