Introducci贸n al curso

1

Introducci贸n al curso de Profesional de Arquitectura de Software

Atributos de calidad

2

Definici贸n

3

Atributos: Idoneidad funcional

4

Atributos: Eficiencia de ejecuci贸n

5

Atributos: Compatibilidad

6

Atributos: Usabilidad

7

Atributos: Confiabilidad

8

Atributos: Seguridad

9

Atributos: Mantenibilidad

10

Atributos: Portabilidad

11

Tensiones entre atributos

12

Analizando PlatziServicios

Patrones de arquitectura

13

Patrones monol铆ticos vs distribuidos

14

Patrones: Modelo Vista Controlador

15

Patrones: Capas

16

Patrones: Orientado a eventos / Provisi贸n de eventos.

17

Patrones: Microkernel - Plug-ins

18

Patrones: Comparte-nada

19

Patrones: Microservicios

20

Patrones: CQRS

21

Patrones: Hexagonal - Puertos y adaptadores

22

Patrones: Dise帽o orientado al dominio

23

Combinando patrones de arquitectura

24

Analizando nuevamente PlatziServicios

Dise帽o de una arquitectura

25

Pararse en hombros de gigantes

26

Herramientas y partes de un dise帽o: Tipos de conectores

27

Conectores: Llamado asincr贸nico / sincr贸nico. Modelo Cliente servidor.

28

Conectores: Enrutador, difusi贸n

29

Conectores: Pizarra, repositorio, colas, modelo PUBSUB

30

Escenarios y t谩cticas

31

Escenarios: Disponibilidad, detecci贸n, reparaci贸n

32

Escenarios: Reintroducci贸n y prevenci贸n

33

Escenarios: Mantenibilidad

34

Escenarios: Prevenir efectos domin贸 y diferir enlace

35

Escenarios: Eficiencia de ejecuci贸n

36

Escenarios: Seguridad

37

Escenarios: Capacidad de prueba

38

Escenarios: Usabilidad

39

Validar las decisiones de dise帽o: Arquitectura en evoluci贸n

40

脷ltimo an谩lisis a PlatziServicios

Modelado y documentaci贸n de arquitectura

41

C贸mo comunicar la arquitectura: Vistas y Puntos de vista

42

Documentaci贸n vs implementaci贸n

43

Conclusiones del curso

A煤n no tienes acceso a esta clase

Crea una cuenta y contin煤a viendo este curso

Atributos: Portabilidad

10/43
Recursos

Aportes 13

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesi贸n.

Portabilidad

  • Adaptabilidad -> Analizamos que tanto depende nuestro sistema de un entorno especifico.
  • Capacidad de instalaci贸n -> 驴Cuantos pasos se tienen que realizar? 驴Que tan dif铆cil son?
  • Capacidad de remplazo -> Entender cuales son los requerimientos que cumplen los sistemas actuales y como se puede aprovechar para remplazarlo objetivamente.
  • Adaptabilidad: La podemos medir analizando cu谩n fuertemente depende nuestro sistema de un entorno especifico.

  • Capacidad de Instalaci贸n: La podemos medir analizando cu谩n fuertemente necesitamos requerimientos en el el entorno de despliegue.

  • Capacidad de Reemplazo: La podemos medir conociendo los nuevos requerimientos o facilidades que hay hoy y configurarlo a favor de nuestro sistema.

Hola, le dejo mi resumen de atributos de calidad por si les sirve.

ATRIBUTOS DE CALIDAD
Expectativas de usuario de cuan bien funciona el producto
IDONEIDAD FUNCIONAL
Completitud
Exactitud
Pertinencia
EFICIENCIA DE EJECUCION
Tiempo a comportamiento: tiempo entre pedido y respuesta
Uso de recursos: consumo de recursos y el esperado (en RAM)
Capacidad: limite de usuarios
COMPATIBILIDAD
Cuanto puede el sistema vivir en un contexto mas grande
Interoperabilidad: cuan f谩cil es comunicarse con este sistema
Disponibilidad de esquemas( Json, api, SOAP)
Coexistencia: cuanto el sistema soporta o no estar con otros sistemas (se mide con cantidad de fallos por razones externas en un tiempo dado)
USABILIDAD
Reconocimiento de idoneidad: relaci贸n entre conceptos de dominio y acciones de sistema
Curva de aprendizaje: cuan f谩cil o dif铆cil es aprender a usar un sistema
Operabilidad: cantidad de pasos para lograr un objetivo
Proteccion a errores: cantidad de intentos fallidos
Estetica de la interfaz: encuestas de apreciaci贸n de est茅tica. (medir con encuestas)
Accesibilidad: adhesi贸n de est谩ndares.
CONFIABILIDAD
Cuanto el sistema nos permite a traves del tiempo usarlo de forma normal
Madures: cuanto menos falle, mas maduro el sistema
Disponibilidad: cantidad de tiempo fuera de servicio
Tolerancia a fallos: como el sistema puede seguir dando servicio por q hayan fallos
Capacidad de recuperaci贸n: cuanto tarda el sistema en volver a dar servicio luego de un fallo (tiempo medio de recuperaci贸n)
SEGURIDAD
Cuando el sistema protege la informaci贸n del usuario
Confidencialidad: como el sistema autoriza a acceder a cierta informacion
Integridad: cuando el sistema toma recaudos para proteger la informaci贸n.
Traza de responsabilidad: como se conecta la acci贸n con el usuario.
Comprobaci贸n de hechos:
Autenticidad:
MANTENIBILIDAD
Todo lo q hace q un sistema pueda cambiar. (an谩lisis est谩tico de c贸digo)
Modularidad: capacidad del sistema de ser separado en partes
Reusabilidad: cuanto podemos volver a usar el c贸digo para una funcionalidad diferente
Capacidad de modificaci贸n: cuan f谩cil o dif铆cil es cambiar el c贸digo (test automatizados para medirlo)
Capacidad de an谩lisis: cuanto podemos entender el problema que estamos resolviendo.
Capacidad de Prueba: dificultad para crear test en el sistema.
PORTABILIDAD
Adaptabilidad: dependencia a entornos espec铆ficos (MAC, Windows)
Capacidad de instalaci贸n: requerimientos del entorno de despliegue
Capacidad de reemplazo: cuales son los requerimientos de los entornos actuales y su implementaci贸n.

Capacidad de Reemplazo: Medir entregables que cumplen con los requerimientos actuales y como el sistema los puede aprovechar, ejemplo: Los sistemas distribuidos sirven para reemplazarlo.

Apuntes:

Portabilidad

Adaptabilidad. Cu谩n fuertemente depende nuestro sistema de un entorno espec铆fico.

Capacidad de instalaci贸n. Cu谩n fuertemente tenemos requerimientos del entorno de despliegue.

Capacidad de reemplazo. La podemos medir entendiendo cu谩les son los requerimientos que hoy cumplen o c贸mo cumplen esos requerimientos los sistemas actuales y c贸mo nuestro sistema puede aprovechar ese entorno actual y reemplazarlo efectivamente.

Atributo Potabilidad:
Adaptabilidad: en ella podemos medir cuando dependiente es nuestro sistema de un entorno especifico. por ejemplo sistemas que dependen del sistema operativo. Ese tipo de caracter铆sticas afectan la adaptabilidad.
Capacidad de instalaci贸n: cuanto requerimientos de despliegue posee el sistema, cuan complejos son esos requerimientos
Capacidad de reemplazo: como cumple los requerimientos el sistema actual y como puede aprovechar ese entorno actual y reemplazarlo exitosamente. Un sistema muy grande que es monol铆tico y es muy dif铆cil remplazar una de sus partes al contrario una ventaja de sistemas distribuidos es la facilidad de reemplazar sus partes.

Portabilidad
Dificultad para usar nuestro software en diferentes sistemas operativos
Adaptabilidad
Cuanto depende nuestro sistema de un entorno en espec铆fico
Ejemplo: S贸lo funciona en Linux, Windows o MacOS
Capacidad de instalaci贸n
Nivel de complejidad para instalar nuestro software
Capacidad de remplazo
Est谩ndares o herramientas de carga o conversi贸n de datos. Implementaci贸n de interfaces comunes

Como capacidad de instalaci贸n se puede considerar cuantos recursos posee el sistema a instalar para proveerle al entorno de instalaci贸n y asi evitar descargas de dependencias que no existan en dicho entorno.
Asi esto podr铆a dar un mejor resultado de adaptabilidad.

馃馃馃

Portabilidad:
Grado de eficacia y eficiencia con el que un sistema, producto o componente puede transferirse de un hardware, software u otro entorno operacional o de uso a otro. Esta caracter铆stica se compone de las siguientes subcaracter铆sticas:
鈥 Adaptabilidad, Grado en el cual un producto o sistema puede ser adaptado efectiva y eficientemente para hardware, software u otros entornos operacionales o de uso diferentes o en evoluci贸n.
Abstracci贸n y separaci贸n.
鈥 Instalabilidad, Grado de eficacia y eficiencia con el que un producto o sistema puede instalarse y / o desinstalarse con 茅xito en un entorno espec铆fico.

鈥 Reemplazabilidad, Grado en el cual un producto puede reemplazar otro producto de software especificado para el mismo prop贸sito en el mismo entorno.

Adaptabilidad: Cuanto depende del sistema de un entorno? Ej. sistemas operativos.

Capacidad de instalaci贸n: Cuantos pasos toma al usuario instalar nuestro sistema?

Capacidad de reemplazo: Cuales son los requerimientos nuevos y como se pueden configurar a nuestro favor?

Estos puntos son importantes para poder tener claro los limitantes que tienen nuestras soluciones, la pregunta es si estos los puedo ir evaluando cada interacci贸n para aumentar el porcentaje de potabilidad?