Preloader
Infinite Planners Infinite Planners

Soluciones a tu medida para todo tipo de proyecto.

  • Home
  • Nosotros
  • Soluciones
    • Landing Page
    • Registro on Line
    • Accesos con QR
Contacto
bg_image
Design Developer 1611 days ago

10 Insights from Apple’s Human Interface Design Guidelines

admin_planners

10 diciembre, 2020

Join the Conversation

0 Comments

Share

Many people don’t really know the difference between software architecture and software design. Even for developers, the line is often blurry and they might mix up elements of software architecture patterns and design patterns.

The Definition of Software Architecture

In simple words, software architecture is the process of converting software characteristics such as flexibility, scalability, feasibility, reusability, and security into a structured solution that meets the technical and the business expectations.

The Characteristics of Software Architecture

As explained, software characteristics describe the requirements and the expectations of a software in operational and technical levels. Thus, when a product owner says they are competing in a rapidly changing markets, and they should adapt their business model quickly. The software should be “extendable, modular and maintainable” if a business deals with urgent requests that need to be completed successfully in the matter of time. As a software architect, you should note that the performance and low fault tolerance, scalability and reliability are your key characteristics. Now, after defining the previous characteristics the business owner tells you that they have a limited budget for that project, another characteristic

comes up here which is “the feasibility.”

Here you can find a full list of software characteristics, also known as “quality attributes,” here.

image

SOLID refers to Single Responsibility, Open Closed, Liskov substitution, Interface Segregation and Dependency Inversion Principles.

Software Design

While software architecture is responsible for the skeleton and the high-level infrastructure of a software, the software design is responsible for the code level design such as, what each module is doing, the classes scope, and the functions purposes, etc.

  • Single Responsibility Principle means that each class has to have one single purpose, a responsibility and a reason to change.
  • Open Closed Principle: a class should be open for extension, but closed for modification. In simple words, you should be able to add more functionality to the class but do not edit current functions in a way that breaks existing code that uses it
image

SOLID refers to Single Responsibility, Open Closed, Liskov substitution, Interface Segregation and Dependency Inversion Principles.

Thanks for reading! If you are interested in machine learning (or just want to understand what it is), check out my Machine Learning is Fun! series too.

Related Posts

admin_planners

12 febrero, 2020

environment 1913 days ago
Most modern-day psychologists agree there are five major personality types

Vitae semper quis lectus nulla at volutpat diam. Sed viverra ipsum nunc aliquet .

admin_planners

12 junio, 2020

environment 1792 days ago
Quarantine reading list: nature edition

Vitae semper quis lectus nulla at volutpat diam. Sed viverra ipsum nunc aliquet .

admin_planners

10 diciembre, 2020

Design Developer 1611 days ago
10 Insights from Apple’s Human Interface Design Guidelines

This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.

Post a comment Cancelar respuesta

Your email address will not be published.

Infinite Planners

© 2022 Infinite Planners S.A. de C.V. Todos lo Derechos Reservados

¡ Hola, Bienvenidos !

Estaremos emocionados de poder ayudarte Agenda aquí