Functional Vs Non Functional Requirements