in

What is software design?

Software design is the process of preparing the plan for the development of a software application while satisfying a problem’s functional requirements and not violating its non-functional constraints. During this process, tradeoffs need to be made, like the tradeoff between performance and resource consumption, so that the application is optimized to meet the non-functional requirements. There can be no tradeoffs among functional requirements because they all need to be met.

What (requirements) vs. how (design): The design process converts the “what” into the “how”.

There are 2 phases in the design process:

Step 1: Architectural Design – The process of carving up the app into components and assigning behavior/functionality to each component and detailing how the components are going to interact with each other.

Step 2: Detailed Design – The process of breaking down the individual components into classes and interfaces that can be implemented.

What do you think?

6700 points
Upvote Downvote

Written by Jason

Cellular pathways

What is 5G?