0% encontró este documento útil (0 votos)
144 vistas8 páginas

Informe Practica Unidad - 7

INFOTEC Curso fundamentos de programación
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
144 vistas8 páginas

Informe Practica Unidad - 7

INFOTEC Curso fundamentos de programación
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

24-9-2025

Informe de la práctica
Unidad 7. Proceso de desarrollo de
software y conceptos generales.

SERRANO TOVAR RUBÉN


CURSO FUNDAMENTOS DEL DESARROLLO DE SOFTWARE
Introducción.
Para el desarrollo del software se consideran metodologías de gestión de proyectos de las
ingenierías tradicionales, como la ingeniería civil, que corresponden a marcos de trabajo
utilizados desde los inicios de los años setenta. Estas metodologías se clasifican como lineales
ya que implica que el progreso se sigue una secuencia ordenada de fases, donde cada etapa
debe completarse antes de pasar a la siguiente, particularmente en el modelo tradicional en
cascada que considera de cinco a siete fases para la creación de un sistema computacional que
solucione algún problema planteado.

Los modelos lineales se caracterizan por ser poco flexibles, tienen su éxito en los proyectos como
la construcción de un puente para vehículos, en los que los riesgos asociados son muy altos, por
lo que se requiere una planeación muy extensa en la que se evalúan datos técnicos -composición
y dureza del suelo, costos de materiales- así como sociales -población, gasto vehicular- entre
otros, se realizan cálculos estructurales, presupuestos, modelado de funcionamiento; durante su
construcción se debe controlar cada aspecto y no se puede montar la losa, sin los cimientos no
están terminados y aprobados.

Un error en cualquiera de las etapas no solo implica pérdidas económicas enormes, sino también
riesgos muy importantes para la seguridad e incluso posibles tragedias humanas. Imaginemos
que el puente se derrumba o que un fallo de cálculos provoca un accidente laboral, este supuesto
justifica ampliamente el desarrollo de la construcción en etapas.

Los fallos en el software, aunque pueden ser costosos y requerir tiempo para corregir, no
conllevan el mismo grado de riesgo financiero y de seguridad. En los últimos años se ha
introducido el termino agilidad, es una filosofía para el desarrollo de productos y de gestión de
equipos y proyectos que surge entre finales de la década de los noventa e inicios de los años
dos mil en el ámbito del desarrollo del software.

La agilidad es una solución innovadora a los desafíos de la rigidez en la gestión de proyectos


tradicional, su enfoque es flexible y adaptable, es ideal en un entorno de desarrollo de software
donde los cambios rápidos y la incertidumbre son bastante comunes, aspectos en los que las
metodologías pesadas, heredas de la gestión de proyectos de otro tipo, no eran las más
adecuadas para las peculiaridades que tiene el desarrollo de software.

Los marcos de trabajo ágiles como Scrum o Kanban permiten a los equipos de desarrollo
responder rápidamente a los cambios del mercado, adaptar sus productos según la
retroalimentación de los usuarios y minimizar los costes de los errores al identificarlos y
corregirlos más rápidamente, mejorando continuamente el producto.

Estos marcos ayudan a organizar el trabajo, priorizar tareas y fomentar la transparencia, aspecto
muy valorado en la actualidad en la que se le da prioridad a la responsabilidad social de las
organizaciones, por lo que se han vuelto famosos y se tratan de implementar incluso en negocios
que no tienen nada que ver con el desarrollo de software, además de que en los últimos años se
ha acelerado el ritmo en el que las innovaciones y disrupciones generan cambios en los
mercados y sociedades de un mundo globalizado.

En esta práctica se razonará de forma individual en el proceso de desarrollo del software,


conforme a la rúbrica de evaluación, se considerará el enfoque lineal con seis fases: 1) planeación,
2) análisis, 3) diseño, 4) desarrollo, 5) pruebas y 6) mantenimiento, para simular los escenarios
para el desarrollo de un nuevo producto de software solicitado a una empresa por un cliente
dinámico que realiza encuestas en campo y que está dispuesto a colaborar en el desarrollo del
producto.

Es conveniente mencionar que el material didáctico proporcionado en el curso tiene un enfoque


en la gestión de proyectos tradicional, ya que especifica en el documento “ciclo de desarrollo
del software” que en la fase dos análisis “Se identifican y definen los requisitos de sistema. Se
realiza un estudio exhaustivo de las necesidades del usuario y del entorno en el que operará el
software” además de que en el documento “Fases de Desarrollo del Software” para la misma fase
señala que se debe “Analizar el estado actual”, “Determinar requerimientos del sistema” y
“Elaborar un reporte de requerimientos” una vez que se realizaron las actividades sugeridas para
la fase de planeación, que incluye establecer plazos y costos del desarrollo.

El material didáctico no comparte la visión de los modelos para el desarrollo de software en


cascada, incremental y en espiral, en los que los requerimientos del sistema y las necesidades
del usuario se identifican antes de efectuar la planeación detallada, las fuentes de referencia son:
El modelo en cascada en el desarrollo de software - IONOS México Diferencia entre modelo en
cascada, espiral e incremental Características y fases del modelo incremental | OBS Business
School Desarrollo de software: introducción al modelo espiral – Estudia en línea

Desarrollo.
El escenario es el siguiente: Yesenia, Haydee, Aldo, Brian y Rubén son jóvenes recién egresados
que deciden emprender formando una empresa de desarrollo de software, Aldo encargado de
las ventas, se entrevista Minerva líder de una compañía que realiza estudios de mercado, ella es
dinámica y desea innovar en la empresa, pasar del levantamiento de encuestas en cuestionarios
en papel, a un sistema integral de gestión para la captación de datos en campo utilizando la
tecnología de la información, considera que su uso abatirá los tiempos de procesamiento de
datos, dará más certeza de que los datos se levantaron en las viviendas al incluir datos con su
ubicación y brindar a sus clientes el valor agregado que sus datos encuestas responden la
pregunta, en que regiones se encuentran el fenómeno estudiado.

Minerva tiene varios proyectos de encuestas, sin embargo, le interesa iniciar con uno, por lo que
le plantea a Aldo: ”Requiero una aplicación para la captación de datos de una encuesta que se
realiza directamente en las viviendas para determinar el nivel socioeconómico de sus habitantes,
que me permita conocer su ubicación y que además transmita la base de datos de los
cuestionaros levantados al término de la jornada laboral diaria.” Además, entiende que la
empresa es de jóvenes emprendedores, por lo que le ofrece realizar un pago anticipado del 60%
del costo total del desarrollo, y cubrir el 40% restante siempre y cuando el aplicativo esté en
funcionamiento a más tardar en 70 días naturales, de no ser así no les pagará el saldo remanente.

Aldo muy ilusionado decide firmar el precontrato y convoca al equipo de trabajo para ofrecerle
una solución a Minerva desarrollando el sistema que les solicita, por lo que inician con el
proyecto elaborando un esquema lineal que les permita atenderlo, una vez concluida la reunión
obtienen lo siguiente esquema.

1) Fase de planeación
➢ Alcance.

Desarrollar una aplicación para la captación de datos de encuestas mediante la aplicación


de cuestionarios en dispositivos móviles, aprovechando su hardware para obtener los
detalles de su geolocalización y transmitir la información por la web.

➢ Recursos Humanos:
▪ Desarrollar especialista en Android Studio, con conocimientos en Java y Flutter.
▪ Especialista en diseño de instrumentos de captación, análisis de datos
estadísticos y marketing.
▪ Diseñador de la base de datos y el servicio mapas para la explotación por la
empresa.
▪ Líder del proyecto con experiencia en Project Manager.

➢ Recursos Materiales:
▪ 3 equipos de cómputo.
▪ 1 tableta con Android.
▪ Nota Android Studio y Flutter cuentan con licencia su uso libre para desarrollo
comercial y personal, se considera una licencia de Google Cloud.

➢ Presupuesto
Concepto Cantidad Precio Total
Sueldo desarrolladores y especialista 3 personas 4 $25,000 personas $300,000
meses mensual
Sueldo líder 5 meses $30,000 mensual $150,000
Sueldo y comisión del vendedor 2 meses más 5% $15,000 mensual $30,000
comisión
Tableta Android con SIM de telefonía 1 $5,000 $5,000
móvil
Licencia Google Cloud 4 meses $6,000 mensual, plan $24,000
inicial
Varios $30,000 $30,000
Total $539,000
Notas:
1. No se consideran gastos de oficina se utilizará la modalidad home office.
2. Cada desarrollador utilizará su equipo de cómputo, por lo que no se determina el costo asociado a
la depreciación por su uso en el proyecto.
3. El precio de Google Cloud es pesos, sin embargo, se parte del crédito gratuito que ofrecen de 300
USD mensuales.
4. El margen de utilidad esperado es del 20% mas los sueldos y comisiones
5. Presupuesto más impuestos

➢ Cronograma:

2) Fase de análisis
➢ Requerimientos de sistema.

La aplicación en la tableta debe tener las siguientes funcionalidades.

▪ Captar los datos correspondientes a las variables que se utilizan para


determinar el nivel socioeconómicos de los habitantes de vivienda, de acuerdo
con la metodología proporcionada por la empresa.
▪ Las variables son entre otras: domicilio, tipo de propiedad, numero de cuartos
que se usan para dormir, disponibilidad de regadera y baño, tipo de material
del piso, si tienen internet fijo, integrantes del hogar, nivel de estudio, tiempo
que estuvieron empleados en los últimos 12 meses, cantidad de vehículos.
▪ En la captación de datos se utilizará la opción de persianas desplegables para
elegir el dato a capturar.
▪ Respetar los “pases” de pregunta.
▪ Cumplir criterios de validación y congruencia metodológica.
▪ Ubicar la vivienda en Google Maps.
▪ Conectarse a una red wifi a las 18:00 hrs para transmitir los datos captados.

Con la base de datos en la nube deberá:

▪ Integrar los datos transmitidos por los dispositivos móviles con calidad.
▪ Determinar el nivel socioeconómico con el sistema de puntos proporcionado
por la empresa.
▪ Contar con un reporte de incidencias de los trabajos de campo.
▪ Obtener indicadores de la cobertura del levantamiento de la encuesta.
▪ Permitir la consulta al día siguiente a la transmisión de datos.
▪ Visualizar un mapa con la ubicación donde se realizaron las encuestas.

3) Fase de diseño

Dada la poca experiencia de los jóvenes emprendedores en la metodología de trabajo se


propone que investiguen y documenten sobre las herramientas bajo las cuales se
desarrollara la aplicación y el sistema, dando especial énfasis en el uso de los servicios
que Google ofrece de geocodificación, creación de mapas, cloud, además es importante
que todos los participantes entiendan que son los niveles socioeconómicos.

La metodología de trabajo incluye el seguimiento puntual que el líder realizará a las tareas
de cada uno de los integrantes, dado que se implementará la modalidad de trabajo home
office realizará reuniones virtuales con cada uno de ellos, además de las que sean
necesarias entre los equipos de trabajo.

Se emplearán las herramientas que la metodología Project Manager para el desarrollo de


software ofrece asegurar que se cumplan los objetivos dentro del tiempo, presupuesto y
calidad establecidos, con este enfoque se gestionarán los riesgos y se resolverán los
problemas técnicos y de organización, la documentación estará disponible para todos en
un sitio en la nube, sin embargo, corresponde al líder documentar el proceso
adecuadamente.

Para las soluciones específicas aplicación y bases de datos los desarrolladores se encargan
de diseñar la arquitectura de software, así como un plan de diseño detallado del mismo,
centrándose en componentes concretos, como interfaces, entornos de trabajo o
bibliotecas, la documentación se realizará bajo los diagramas UML, empleando GitHub
para guardar, compartir y colaborar en el desarrollo del proyecto.
El borrador preliminar con el plan de diseño del software, así como planes de prueba para
los diferentes componentes, se discutirá con todo el equipo de trabajo, adicionalmente
todos deberán probar los prototipos para su inmediata corrección.

4) Fase de desarrollo
La codificación de la aplicación se realizará en Java y Flutter, la base de datos en Google
Cloud se construirá con BigQuery, para los servicios de mapas se codificarán en JavaScript,
en todo momento se adoptarán las mejores prácticas para escribir código: Clean Code,
KISS, DRY; YAGNI

5) Fase de pruebas

Las pruebas principales que se realizaran son:

➢ Para que la aplicación sea acepta deberá


▪ Lograr la captación de los datos del cuestionario eficientemente.
▪ Ubicar con precisión la vivienda.
▪ Transmitir los datos sin perder información.

➢ La base de datos se tiene que cumplir con


▪ Integrar los datos.
▪ Calcular el nivel socioeconómico.
▪ Visualizar el tablero de control que incluye mapas.

El equipo de trabajo será el responsable de realizar las pruebas y retroalimentar a los


desarrolladores para que optimicen y depuren el código. Al final del proceso se habilitará
un periodo de diez días para que la empresa de marketing pruebe las soluciones
entregadas y manifieste sus observaciones.

6) Fase de mantenimiento
Para proteger y recuperar los datos con base datos y datos captados al aplicar los
cuestionarios se utilizarán los mecanismos que tiene a disposición Google Cloud, que
incluyen el acceso solo para usuarios autorizados -Confidencialidad-; protección contra
manipulación o corrupción -Integridad – y acceso garantizado –Disponibilidad-, además
de la encriptación en tránsito, la prevención de la perdida de datos, auditorias y
responsabilidad compartida.

Para proteger datos en los dispositivos móviles se implementarán las políticas de respaldo
y seguridad que sugiere Google Workspace y Cloud Identity:

▪ Contraseñas obligatorias y bloqueo de pantalla.


▪ Cifrado de dispositivos para proteger datos en caso de pérdida o robo.
▪ Borrado remoto de datos de empresa en dispositivos perdidos.
▪ Gestión de aplicaciones móviles: instalación forzada, eliminación automática
en caso de pérdida.
▪ Restricciones de copia de seguridad para evitar que se hagan respaldos en
nubes personales.
▪ Bloqueo de dispositivos vulnerados (rooteados).
▪ Verificación en dos pasos y acceso contextual según ubicación, o estado del
dispositivo.

Estas medidas facilitaran el mantenimiento a las aplicaciones y a la base datos, además de que
servirán como base para el desarrollo de siguientes soluciones que solicite la empresa de
marketing.

Consideraciones finales.
La práctica resulta didáctica, es útil cuando se plantean escenarios simulados, el enfoque
orientado a la gestión de proyectos lineal o tradicional, permite apreciar las diferencias con las
metodologías agiles, particularmente el scrum y el desarrollo en sprint que son la moda para el
desarrollo de software, estas ofrecen mayores ventajas sobre las metodologías pesadas.

Independientemente de las metodologías propuestas para el desarrollo de software, el éxito


depende de factor “humanwere” ya que las habilidades de las personas para definir cómo pasar
de la teoría a la práctica y las formas de adaptarlas a cada situación son las que definen la
gestionan adecuada de un proyecto para alcanzar el éxito.

El marco teórico una carta de navegación que el líder de utiliza de acuerdo con las circunstancias
que se presentan durante el desarrollo del proyecto, en el recae la responsabilidad principal de
que se cumpla el propósito, sin embargo la responsabilidad la comparte con su equipo de
trabajo, por lo que es fundamental que el líder establezca relaciones de coaching o mentoring
con el equipo de trabajo, además de los integrantes deben estar comprometidos a mejorar sus
habilidades o resolver bloqueos personales o profesionales, compartiendo conocimientos,
experiencias y consejos para su desarrollo profesional o personal.

En el entorno de las tecnologías de la información la capacitación continua es fundamental para


lograr la actualización tecnológica constante, para mejorar la calidad de los productos,
incrementar la productividad y aumentar la capacidad de innovación.

También podría gustarte