Problem Definition In Software Engineering