The software design process

Spread the word!

There is no unique general way to proceed when designing a system. I’m writing this list as personal reference, which can be updated over time according to new experience.

So these could be a possible path in the designing process.

  1. Collection of Requirements. This steps should be revisited multiple times, whenever new requirements are found:
    1. Problems Analysis. Think about all actors and each of them can behave in such a way to cause problems.
    2. Performance Criteria. What are the most important performance parameters? See also design consideration. More detailed list also available in list of system quality attributes.
    3. SWOT Analysis. The requirements coming in this stage depends on your (or your company) and environmental situation.
    4. Other requirements.
  2. Use-Case Diagram: it focuses on the goals of actors, i.e. functionalities offered by the system from the actors point of view.
  3. Activity Diagram: describes the order of the steps from start to end activity with all possible decisions.
  4. Context Diagram of the system: focus on inputs / outputs of the system. Together with previous diagrams could be used to define modules.
  5. UI Design: focus on maximizing usability and the user experience.
  6. System Architecture
  7. Entity-relationship diagram
  8. UML Sequence Diagram

Be the first to comment

Leave a Reply

Your email address will not be published.