Back to top

Software Design

Software Design

The design phase is the most delicate in a system’s life cycle. Why is that so? Because in the best case scenario, the final requirement are utterly unknown both to the client and the designer. A good designer needs to follow an iterative process, every phase of which lowers the uncertainty on what actually needs to be done.

The only constant element in software development is the changing of requirements. A good designer needs to engineer a system for the “present”, keeping in mind that it will be used in the “future” without being re-written.

Creating such a system with less than qualified staff is a waste of resources, while defining a flexible project with qualified designers is an investment.

Our designers can offer:

  • Innovative design
  • Adapting design
  • Variable design

We split up our iterative design activity in the following standard phases, each of which includes the creation of one or more documents describing the phase input and output:

  • Situation assessment: we interview all the stakeholders.
  • Feasibility study: where needed we make specific prototypes for single low level functionalities.
  • Logical and functional design: we define what the system will do and above all what it will not do. This phases involves regular meetings with the system’s final users.
  • Scaling: we define the non functional requirements of the system.
  • Testing: we create functional, interface and integration prototypes.

Request informations

Software Design