Está en la página 1de 12

Universidad Autónoma de Nuevo León

Facultad de ingeniería mecánica y eléctrica

Materia: Administración de proyectos de software


Nombre: Bruno Alexander Lara Narváez
Matrícula: 2008297
1. WazyPark
Esta aplicación está entre los proyectos innovadores porque puede
hacernos ganar mucho tiempo a los que vivimos en una gran ciudad
donde aparcar es, cada vez más, una gran aventura. WazyPark
ayuda a los usuarios de su comunidad a encontrar plazas de
aparcamiento libres de forma cómoda y rápida. Además, para lograr
aumentar el número de usuarios que conforman la comunidad para
que haya cada vez más información, éstos tendrán la posibilidad de
ganar dinero por informar sobre el sitio para aparcar que dejan libre.

OBJETIVO
El objetivo principal de Wazypark es mejorar la experiencia de
estacionamiento y movilidad para los usuarios al proporcionar
información actualizada y colaborativa sobre la disponibilidad de
estacionamiento en tiempo real.
Facilitar el estacionamiento: Ayudar a los conductores a encontrar
lugares de estacionamiento disponibles de manera más rápida y
eficiente, reduciendo el tiempo y la frustración asociados con la
búsqueda de estacionamiento.
Colaboración entre usuarios: Fomentar la colaboración entre la
comunidad de usuarios para compartir información sobre la disponibilidad
de espacios de estacionamiento, eventos de tráfico y otros aspectos
relacionados con la movilidad.
Notificaciones y alertas: Proporcionar alertas en tiempo real sobre
eventos relevantes, como la proximidad a zonas de estacionamiento,
multas de tráfico, cierres de carreteras u otros incidentes que puedan
afectar la movilidad.
Mejora de la movilidad urbana: Contribuir a la mejora de la movilidad
urbana al proporcionar datos en tiempo real que pueden ayudar a
optimizar el tráfico y reducir la congestión en áreas urbanas.
Es importante verificar la información más reciente, ya que las
plataformas y sus objetivos pueden evolucionar con el tiempo.
VENTAJAS
Localización de estacionamiento: Proporciona a los usuarios la capacidad de
encontrar lugares de estacionamiento disponibles de manera más eficiente,
reduciendo el tiempo dedicado a la búsqueda de estacionamiento.

Información en tiempo real: Ofrece información en tiempo real sobre la


disponibilidad de espacios de estacionamiento, eventos de tráfico y otros datos
relevantes para la movilidad.

Colaboración comunitaria: Fomenta la colaboración entre la comunidad de


usuarios, permitiéndoles compartir información actualizada sobre
estacionamiento y condiciones del tráfico.

Alertas y notificaciones: Proporciona alertas y notificaciones en tiempo real


sobre eventos relevantes, como multas de tráfico, cierres de carreteras y otros
incidentes que puedan afectar la movilidad.

Optimización de la movilidad urbana: Contribuye a la mejora de la movilidad


urbana al proporcionar datos que pueden ayudar a optimizar el flujo de tráfico y
reducir la congestión en áreas urbanas.

Interfaz fácil de usar: Muchas aplicaciones de este tipo suelen tener interfaces
intuitivas y fáciles de usar, facilitando a los usuarios la navegación y el acceso a
la información que necesitan.

DESVENTAJA
Dependencia de la comunidad: La efectividad de Wazypark depende en gran
medida de la participación activa de la comunidad de usuarios. Si hay poca
participación o información desactualizada, la utilidad de la aplicación podría
verse afectada.
Disponibilidad geográfica limitada: La cobertura y la precisión de los datos
de estacionamiento en tiempo real pueden variar según la ubicación
geográfica. En algunas áreas, la información puede ser limitada o menos
precisa.

Privacidad y seguridad: Al compartir información en tiempo real sobre


ubicaciones y movimientos, algunos usuarios pueden tener preocupaciones
sobre la privacidad y la seguridad de sus datos. La plataforma debe
implementar medidas sólidas para proteger la información personal.

Dependencia de la conectividad: La aplicación depende de la conectividad a


Internet para proporcionar información en tiempo real. En áreas con conexiones
deficientes, la funcionalidad de la aplicación podría verse afectada.

Actualizaciones y cambios en el servicio: Las actualizaciones de la aplicación,


cambios en la interfaz de usuario o en la política de privacidad pueden no ser
del agrado de todos los usuarios. Algunas personas pueden resistirse a
adaptarse a cambios significativos en la plataforma.

INTERFAZ
La Interfaz de wazypark no es muy buena que digamos, ya que como dijimos
anteriormente la seguridad del software es muy mala a comparación de otras
funciones de un software, ya que tiene muchos errores al momento de dar click
en cualquiera de las opciones que tiene, ya que en si no tiene nada que ver las
opciones con la app, ya que por su seguridad la han hackeado, y eso habla mal
de un proyecto de software.

CICLIO DE VIDA
Concepción: En esta etapa, se identifican las necesidades del mercado y se
concibe la idea de la aplicación. Se pueden realizar investigaciones de
mercado, análisis de competencia y se definen los objetivos.
Desarrollo: La fase de desarrollo implica la creación real de la aplicación. Los
desarrolladores trabajan en la codificación, diseño, pruebas y la
implementación de características.

Pruebas: La aplicación se somete a pruebas exhaustivas para identificar y


corregir posibles errores y mejorar la calidad general. Esto puede incluir
pruebas de funcionalidad, rendimiento, seguridad y usabilidad.

Lanzamiento: La aplicación se lanza al público o a un grupo de usuarios


específico. Durante el lanzamiento, se pueden recopilar comentarios y realizar
ajustes finales.

Mantenimiento: Después del lanzamiento, la aplicación entra en una fase de


mantenimiento, donde se realizan actualizaciones, correcciones de errores y
mejoras continuas. Esto puede incluir el lanzamiento de nuevas características
y la optimización del rendimiento.

Evolución: Con el tiempo, la aplicación puede evolucionar para adaptarse a


cambios en el mercado, tecnología y necesidades de los usuarios. Esto puede
implicar actualizaciones significativas o cambios en la estrategia.

Posible descontinuación: En algunos casos, una aplicación puede ser


descontinuada si ya no es viable, relevante o sostenible. Los desarrolladores
pueden optar por cerrar el servicio, aunque esto generalmente se hace
después de proporcionar avisos y considerar las necesidades de los usuarios
existentes.

WazyPark
5
4,5
4
3,5
3
2,5
2
1,5
1
0,5
0
Categoría 1 Categoría 2 Categoría 3 Categoría 4

Definicion Planeacion Ejecucion Entrega


2. Docker
Docker es un proyecto open-source que ha marcado un antes y un después en
el mundo de los contenedores. Lo que hace es automatizar la instalación de
aplicaciones dentro de contenedores de software, proporcionando una capa de
virtualización que permite trabajar con esas aplicaciones en múltiples sistemas
operativos.
Hablamos por lo tanto de una herramienta que puede empaquetar cualquier
aplicación y sus dependencias en un contenedor virtual que se puede
posteriormente, ejecutar en cualquier servidor. De esta forma las empresas
ganan en flexibilidad y portabilidad en sus aplicaciones, ya sea en instalaciones
físicas, cloud pública, cloud privada, etc.

OBJETIVO
Los contenedores son entornos ligeros y portátiles que contienen todo lo
necesario para ejecutar una aplicación, incluidas bibliotecas,
dependencias y el propio código. El objetivo principal de Docker es
permitir la implementación de aplicaciones de manera consistente y
eficiente, independientemente del entorno de ejecución.
Algunos de los objetivos clave de Docker son:
Portabilidad: Docker permite que las aplicaciones se ejecuten de
manera consistente en cualquier entorno que admita Docker, lo que
facilita la migración y la implementación en diferentes plataformas.
Eficiencia: Los contenedores comparten el sistema operativo del host y
utilizan recursos de manera más eficiente que las máquinas virtuales
tradicionales, ya que no requieren un sistema operativo completo para
cada instancia.
Rapidez: Docker facilita la creación, distribución y ejecución rápida de
aplicaciones al encapsularlas en contenedores. Esto agiliza el desarrollo
y despliegue de software.
Aislamiento: Los contenedores proporcionan un nivel de aislamiento
para las aplicaciones, lo que garantiza que funcionen de manera
independiente y sin interferencias con otras aplicaciones en el mismo
sistema.
Escalabilidad: Docker facilita la escalabilidad de aplicaciones al permitir
la implementación de múltiples instancias de contenedores de manera
rápida y eficiente.

VENTAJAS
Portabilidad: Los contenedores Docker encapsulan una aplicación y todas sus
dependencias, lo que facilita su ejecución en diferentes entornos. Esto mejora
la portabilidad de las aplicaciones, ya que se pueden ejecutar de manera
consistente en entornos locales, en la nube o en cualquier sistema que admita
Docker.

Eficiencia de recursos: Los contenedores comparten el kernel del sistema


operativo subyacente, lo que reduce la sobrecarga en comparación con las
máquinas virtuales tradicionales. Esto permite ejecutar múltiples contenedores
en un solo host de manera eficiente, aprovechando al máximo los recursos
disponibles.

Rápido despliegue: Docker facilita la creación y el despliegue rápido de


aplicaciones. Los contenedores pueden iniciarse y detenerse en cuestión de
segundos, lo que acelera el ciclo de desarrollo y despliegue de software.

Aislamiento: Docker utiliza tecnologías de aislamiento a nivel de sistema


operativo para garantizar que los contenedores sean independientes y no
interfieran entre sí. Esto mejora la seguridad y evita conflictos entre
aplicaciones.

Orquestación de contenedores: Docker Swarm y Kubernetes son


herramientas que permiten la orquestación eficiente de contenedores,
facilitando la gestión, escalabilidad y mantenimiento de aplicaciones
distribuidas.

Desarrollo consistente: Al proporcionar un entorno de desarrollo consistente


en todas las etapas del ciclo de vida de una aplicación, Docker minimiza las
diferencias entre los entornos de desarrollo, prueba y producción.

Versiona miento de imágenes: Docker permite versionar las imágenes de


contenedor, lo que facilita la gestión y el control de versiones de las
aplicaciones. Los desarrolladores pueden garantizar que las aplicaciones se
ejecuten de la misma manera en cualquier entorno.
Integración con herramientas de CI/CD: Docker se integra fácilmente con
herramientas de integración continua (CI) y entrega continua (CD), lo que
automatiza el proceso de construcción, prueba y despliegue de aplicaciones.

AI: Con la llegada de la inteligencia artificial a la humanidad, Docker no se


quedó atrás y él puso su propia inteligencia artificial para que puedas tener más
flexibilidad y mayor rendimiento, ya que ellos están en constantes
actualizaciones

DESVENTAJAS
Complejidad inicial: Para aquellos que no están familiarizados con la
contenerización, Docker puede tener una curva de aprendizaje inicial.
Configurar correctamente los archivos de Docker, comprender la red y
gestionar volúmenes pueden resultar desafiantes al principio.

Requisitos de recursos: Aunque los contenedores son más ligeros que las
máquinas virtuales, Docker aún agrega cierta sobrecarga debido al uso
compartido del kernel del sistema operativo. En entornos con recursos
limitados, esto podría ser una consideración importante.

Seguridad: Aunque Docker proporciona un nivel de aislamiento mediante sus


contenedores, no es completamente inmune a vulnerabilidades de seguridad.
La incorrecta configuración de imágenes y contenedores, así como el uso de
imágenes no verificadas, pueden introducir riesgos de seguridad.

Persistencia de datos: La persistencia de datos en Docker puede ser


complicada, especialmente cuando se trata de almacenar datos de manera
persistente fuera del contenedor. Gestionar volúmenes y asegurar la
persistencia de datos puede requerir un enfoque cuidadoso.

Compatibilidad del sistema operativo: Docker funciona mejor en entornos


basados en Linux. Aunque hay versiones para Windows y macOS, a veces
puede haber pequeñas diferencias en el comportamiento o la compatibilidad
con algunas características.

Actualizaciones y cambios frecuentes: Docker y sus componentes asociados


a menudo reciben actualizaciones y cambios frecuentes. Esto puede ser
beneficioso para obtener nuevas características y mejoras de seguridad, pero
también puede requerir una gestión cuidadosa para evitar posibles
interrupciones.

Problemas de red: Configurar y gestionar la red de contenedores puede ser


complicado, especialmente en entornos distribuidos. La comunicación entre
contenedores y la exposición de puertos pueden requerir una planificación
cuidadosa.

Tamaño de las imágenes: Dependiendo de cómo se construyan las imágenes,


estas pueden volverse relativamente grandes. Esto puede aumentar los
tiempos de descarga y almacenamiento, especialmente en entornos con ancho
de banda limitado.

Es importante señalar que muchas de estas desventajas se pueden mitigar con


una comprensión adecuada de Docker y buenas prácticas en su
implementación. Además, el panorama de Docker y la tecnología de
contenedores sigue evolucionando, por lo que algunas de estas desventajas
pueden haberse abordado en versiones más recientes.

INTERFAZ
Docker en sí mismo no tiene una interfaz de usuario gráfica incorporada en la
línea de comandos, lo que significa que la interacción principal se realiza a
través de comandos en la terminal o la interfaz de línea de comandos (CLI).
Los usuarios interactúan con Docker utilizando comandos para crear, gestionar
y ejecutar contenedores.

Sin embargo, hay herramientas gráficas de terceros y interfaces de usuario


(GUI) disponibles que facilitan la gestión de Docker para aquellos que prefieren
una interfaz visual sobre la línea de comandos. Algunas de estas herramientas
incluyen:

Docker Desktop: Docker proporciona una interfaz gráfica a través de Docker


Desktop para Windows y macOS. Esta interfaz gráfica permite la gestión visual
de contenedores, imágenes y otros recursos de Docker.

Kitematic: Anteriormente conocido como Docker Toolbox, Kitematic es una


aplicación GUI de Docker que facilita la gestión de contenedores y la
visualización de información sobre imágenes y redes.

Portainer: Portainer es una plataforma de administración de contenedores que


ofrece una interfaz web gráfica para Docker. Facilita la administración de
contenedores, imágenes, volúmenes y redes a través de un navegador web.

CICLIO DE VIDA

Concepción y Planificación:
Concepción del Proyecto: Identificación de la necesidad o problema que
Docker puede abordar.

Planificación Inicial: Definición de objetivos, alcance y requisitos del proyecto.

Desarrollo Inicial:

Codificación y Construcción: Desarrollo del código fuente y construcción de


imágenes de Docker.

Pruebas Iniciales: Realización de pruebas unitarias y de integración para


validar la funcionalidad básica.

Pruebas y Refinamiento:

Pruebas Exhaustivas: Pruebas más amplias para identificar y corregir errores.

Optimización de Imágenes: Ajustes para reducir el tamaño de las imágenes y


mejorar el rendimiento.

Implementación y Despliegue:

Despliegue Inicial: Lanzamiento de las imágenes de Docker en entornos de


prueba o de desarrollo.

Despliegue en Producción: Implementación en entornos de producción.

Monitoreo y Mantenimiento:

Monitoreo Continuo: Supervisión del rendimiento y la estabilidad en producción.

Mantenimiento Regular: Actualizaciones, parches y correcciones de errores


según sea necesario.

Escalabilidad y Optimización:

Gestión de la Escalabilidad: Ajustes para manejar mayores cargas de trabajo si


es necesario.

Optimización Continua: Mejoras en la eficiencia y el rendimiento.

Actualizaciones y Nuevas Características:

Actualizaciones Programadas: Implementación de nuevas versiones de Docker


y actualizaciones regulares.

Desarrollo de Nuevas Características: Introducción de funcionalidades


adicionales según las necesidades del usuario.

Evolución Continua:

Adaptación al Cambio: Alineación con los cambios en el entorno tecnológico y


las necesidades del usuario.
Innovación: Exploración de nuevas tecnologías y enfoques para mejorar
Docker.

Posible Descontinuación:

Evaluación Continua: Monitoreo del rendimiento, la relevancia y la satisfacción


del usuario.

Descontinuación Planificada: Si es necesario, descontinuación del proyecto con


comunicación y transición adecuadas.

Docker
6

0
Categoría 1 Categoría 2 Categoría 3 Categoría 4

Definicion Planeacion Ejecucion Entrega

Bibliografías
http://ww16.wazypark.com/?sub1=20240206-0854-4109-9bc2-
71b0e599d3da&fbclid=IwAR11HWyTDHUjUGRP2HpCmhsEtAA5
DxPVE_8RGmtQSE1PsVRnvSVWxivSTSI

https://www.docker.com/

También podría gustarte