Architectural Design In Software Engineering