Beautifully covering requirements

What am I talking about? Software design. Helping the programmer in software implementation, it is a process that transform user requirements into a suitable form.

What we know?

If you’ve been following my blog posts, we’ve already talked about SDLC, and SRS where we discussed that a document is created to specify user and software requirements. It is important to make it specific, and make use of software terms. The first step in SDLC is Software Design, which changes the view of problem into solution.

Levels

slide_7

  • The architectural design is the most superficial and abstract version of the system. It identifies software as a bunch of components that interact with one another. This is were developers take an idea of a proposed solution.
  • The high-level design breaks the “multiple components” concept of the architectural design, where a view of modules is portrayed and it shows where they interact with each other.
  • The detailed design deals with the implementation part, and its sub-systems, bringing together both previous designs. Defines the logical structure of each module.

Modules?

Modularization is used to divide a system into multiple and independent modules. These modules are expected to carrying out independent functions, and may work as the base for the entire system.

Want to know more?

Read this blog post, where there is a more thorough explanation on the topic.

Video:

Reference

https://www.tutorialspoint.com/software_engineering/software_design_basics.htm