0% encontró este documento útil (0 votos)
11 vistas14 páginas

Unidad Intro - Guía de Estudio

Cargado por

dani baca martin
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)
11 vistas14 páginas

Unidad Intro - Guía de Estudio

Cargado por

dani baca martin
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
Está en la página 1/ 14

Cómo crear aplicaciones de

principio a fin

Guía de estudio

Cómo crear aplicaciones de principio a fin 1 Guía de estudio


Index

Introducción al curso .....................................................................................................3


¡Bienvenidos! ........................................................................................................................3
¿Qué es Aptugo? ..................................................................................................................4
¿No código? Entonces… ¿Qué es la programación? ........................................................5
¿Qué es un proyecto de software? ................................................................................6
Etapas de un Proyecto de software ...............................................................................9
Discovery ..............................................................................................................................9
Diseño .................................................................................................................................10
Coding..................................................................................................................................11
Testing .................................................................................................................................12
Deployment.........................................................................................................................13
Maintenance .......................................................................................................................13
Conclusiones ................................................................................................................14

Cómo crear aplicaciones de principio a fin 2 Unidad Intro - Guía de estudio


Introducción al curso

¡Bienvenidos!

¡Hola! Te damos la bienvenida a este nuevo curso de Aptugo. Durante nuestro


recorrido, te propondremos diferentes instancias donde aprenderás todo lo necesario
para desarrollar un software funcional y eficiente, de principio a fin.

Comenzaremos con el proceso de identificación del problema o necesidad, bosquejo


y diseño, seguidamente abordaremos la producción del mismo, cómo probarlo e ir
mejorándolo, para finalizar en la publicación del proyecto a un servidor para su uso
general. Como habrás notado, en ningún momento mencionamos el código, ya que
Aptugo se encargará de hacerlo por nosotros, con diferentes elementos y
funcionalidades, podrás diseñar y elaborar proyectos en poco tiempo, sin necesidad
de escribir miles de líneas de código para conseguirlo.

Al finalizar el curso, podrás pensar como un programador, tendrás todas las


herramientas necesarias para desarrollar aplicaciones web, y el código de las
mismas se generará como si estuviera escrito por un programador tradicional. Con
esto último, no solo podrás dar rienda suelta a tu creatividad, sino también contarás
con una ventaja fundamental, que separa a desarrolladores junior de senior: sabrás
diseñar proyectos por tí mismo, respondiendo a problemas puntuales, y con una
ejecución definida.

Si decides aprender código o si ya sabes, Aptugo te dará muchísimas ventajas, por


ejemplo: podrás acelerar tu curva de aprendizaje y construir desarrollos complejos,
incorporando tu propio código mediante elementos integrados de la plataforma,
observando cambios en tiempo real y sin necesidad de realizar tareas repetitivas.

Todo esto y mucho más lo irás descubriendo a lo largo de cada clase.

Al finalizar el curso, podrás pensar como un programador,


tendrás todas las herramientas necesarias para desarrollar
software de todo tipo y para todo tipo de dispositivos, y el
código de tus aplicaciones tendrá el nivel y capacidad de un
programador experto.

Cómo crear aplicaciones de principio a fin 3 Unidad Intro - Guía de estudio


¿Qué es Aptugo?

Aptugo es una herramienta visual de desarrollo de software, que permite realizar


todo tipo de aplicaciones de manera rápida, segura y con calidad profesional.

Desde un punto de vista técnico, la plataforma se funda en el concepto de “Atomic


Programming” o “Programación Atómica”. Cada elemento que provee Aptugo posee su
propio código independiente y encapsulado. Estos pueden combinarse entre sí,
permitiendo la incorporación de diferentes funciones a la aplicación en la cual se esté
trabajando. Es decir, podemos armar y desarmar la aplicación según lo necesitemos,
con solo arrastrar y soltar elementos (método mejor conocido como “drag and
drop”).

Además, al ser un generador de software totalmente visual, permite crear aplicaciones


completas de forma rápida y sencilla, solucionando uno de los principales problemas
de la programación actual: el tiempo.

Cómo crear aplicaciones de principio a fin 4 Unidad Intro - Guía de estudio


¿No código? Entonces… ¿Qué es la programación?

Tal vez el mito más importante que Aptugo viene a derrumbar es el que establece que
la parte más importante del desarrollo de software es escribir código. La
programación es mucho más que escribir instrucciones línea por línea durante
semanas enteras, necesita de ingenio y creatividad para generar soluciones a los
diferentes problemas que enfrentamos día a día.

La programación es un proceso creativo.

“The art of computer programming” Donald Knuth, 1968 menciona que la


computación es un arte, porque se aplica el conocimiento acumulado de cada
individuo al mundo. Dicho conocimiento no consiste en la ejecución mecánica de
diferentes acciones, como si de robots se tratara, sino que está intervenido por la
imaginación e ingenio. Desde la funcionalidad hasta la estética, la programación piensa
en cada detalle, generando un producto único e individual.

Escribir código es la parte específica del proceso de programación, donde podemos


medir objetivamente aspectos como funcionalidad, optimización, eficiencia… y, a partir
de las diferentes conclusiones, ir mejorando cada vez más el proyecto.

Si bien el código lleva más tiempo y es a lo que más se le suele


dar protagonismo, está lejos de ser lo más importante de un
proyecto de software.

Entonces, podemos decir que la programación conjuga dos aspectos: es un proceso


creativo ya que se crean y planifican Apps, Tools, soluciones y features apoyado por el
diseño, y un proceso de ingeniería, correspondiente a la ejecución específica del
código.

Para realizar un proyecto eficiente y funcional, se necesita que ambos aspectos se


desarrollen de forma armónica. Si bien el código lleva más tiempo y es a lo que más
se le suele dar protagonismo, está lejos de ser lo más importante de un proyecto de
software.

Cómo crear aplicaciones de principio a fin 5 Unidad Intro - Guía de estudio


¿Qué es un proyecto de software?

Para definir qué es un proyecto de software, podemos comenzar con una definición
sencilla de las palabras que lo componen:

Proyecto: Es la planificación de diferentes actividades orientadas a


resolver un problema o satisfacer una necesidad.

Software: Es el conjunto de programas o instrucciones que permiten


ejecutar diversas funciones dentro de un entorno tecnológico.

En conclusión, podemos decir que un proyecto de software es la planificación de


diferentes instrucciones o actividades que le indicaremos al medio tecnológico
vigente (navegador, computadora, celular, etc) con el fin de resolver un problema o
necesidad.

Todo proyecto de software se puede dividir en etapas muy definidas:

La mejor forma de visualizarlas


1. Discovery (Descubrimiento)
es tomar un ejemplo práctico:
2. Design (Diseño) imaginemos un programador que,
durante su vida profesional, ha
3. Coding (Codeo) desarrollado programas de diversa
índole: ecología de peces para un
4. Testing - QA (Testeo) laboratorio, un sistema de stock
de un supermercado, y
5. Deployment (Lanzamiento)
administración de un centro de
6. Maintenance (Mantenimiento) salud ¿Será necesario ser un
conocedor de todas estas áreas?
Seguramente ayude, pero no es
requisito.

Cómo crear aplicaciones de principio a fin 6 Unidad Intro - Guía de estudio


Discovery

En esta etapa se definen los objetivos del software, las funciones que deberá cumplir,
y todos aquellos detalles que podrían ser de utilidad para la elaboración del proyecto.
Este paso puede hacer una gran diferencia en cuanto al tiempo de construcción,
porque se vincula directamente a la funcionalidad del software.

Diseño del proyecto

El Discovery da paso a la segunda fase: ¿Cómo organizaremos nuestro proyecto? ¿Qué


datos guardaremos? ¿Qué pantallas tendrá nuestro sistema? Estas preguntas se
vinculan al Diseño del proyecto. Al finalizar este paso, ¡se obtiene un boceto del
sistema completo! Y todo sin escribir una línea de código. Esto también es
fundamental, ya que todo tipo de cambio involucra miles de líneas de código (lo cual,
en programación tradicional, implicaría semanas de trabajo).

Este proceso nos permite revisitar el anterior. ¿Nos faltó hacer discovery? ¿Cómo
llenamos los huecos? Estos dos pasos iniciales nos permiten también pensar a futuro,
anticipándonos a funcionalidades que se podrían necesitar más adelante.

Cómo crear aplicaciones de principio a fin 7 Unidad Intro - Guía de estudio


Coding

El tercer paso es el coding. Sin Aptugo, este proceso normalmente lleva varios meses
e involucra a varios programadores. Con ayuda de Aptugo, podemos reducirlo
considerablemente.

Testing

La siguiente parada, una vez terminado el coding, es probar el sistema. Debemos


ajustar las pequeñas diferencias entre las expectativas y lo que sucede. Si hicimos
nuestro discovery y diseño bien, entonces los ajustes sólo serán en el código, algún
que otro error en las más de 60 mil líneas de código (en programación tradicional).

Deployment

Una vez probado, es momento de subirlo a su destino final. Existen numerosos


proveedores (Servers) que nos permiten alojar nuestro proyecto. Algunos muy simples
y generales, otros mucho más específicos para los requisitos de nuestro software.

Mantenimiento

Pero el proyecto no termina ahí. Ahora viene el mantenimiento: Ir aplicando cambios a


nuestro sistema a pedido del cliente. Cambian las reglas, cambia el software. El
mantenimiento es muy importante para garantizar el correcto funcionamiento de la
aplicación y todo lo que dependa de ella (datos, logística, turnos…)

¡No cometas el error de pensar que una etapa importa más que otra!

En definitiva, estas son las 6 etapas básicas que podemos encontrar en un proyecto de
software. Si quieres ser un desarrollador exitoso, o desarrollar exitosamente un
proyecto, ¡No cometas el error de pensar que una etapa importa más que otra! En las
próximas páginas veremos cada una de estas etapas en detalle.

Cómo crear aplicaciones de principio a fin 8 Unidad Intro - Guía de estudio


Etapas de un Proyecto de software

En este apartado ampliaremos los concepto introductorios de las etapas de un


proyecto de software ¡y entraremos en detalles más apasionantes y útiles!

Discovery

El objetivo del discovery es justamente: Tener toda la información necesaria para


pasar a diseñar nuestra aplicación.

Con el tiempo y la experiencia, podremos ir asumiendo partes del diseño. Por ejemplo:

1 ¿Nuestra aplicación tendrá una página principal y abierta a todo el mundo?


→ Esta pregunta nos da la pauta de si necesitamos involucrar un diseño atractivo o si
con sólo un diseño funcional alcanzará.

2 ¿Los usuarios pueden crear sus propias cuentas?


→ Hay una página de registro.

3 ¿Los usuarios tendrán diferentes roles?


→ Habrá administradores con acceso irrestricto, mientras que otros usuarios podrán
acceder a secciones particulares.

Haz el ejercicio, imagina que te


dicen “Quiero hacer un sistema en
donde yo pueda entrar en
contacto con mis amigos, y que
cuando suba una foto, todos
puedan verla”, esto es,
seguramente, la primera frase
que el equipo de programación
de Instagram recibió al comenzar
a hacer su discovery. ¡Imagina
ahora las preguntas que harías!

Cómo crear aplicaciones de principio a fin 9 Unidad Intro - Guía de estudio


Recuerda tu objetivo: Poder hacer un diseño de tu sistema. En la Guia
de Ejercicios de la Clase 1 te proponemos profundizar en esta etapa
pensando en tu propio proyecto.

Diseño

Nuestro discovery nos dijo que “Desde la página


principal tendremos que tener la posibilidad de subir
una foto”, y nuestro diseño lo refleja, entonces,
dibujando un botón que nos lleva a la página de
“subir foto”.

Parece algo obvio, sin embargo, descubriremos la


cantidad de trabajo involucrado en nuestro ejemplo:
“instagram para fiambrerías” a través de las páginas
que tiene, páginas que seguro no habías pensado
cuando lo imaginaste: “Recuperar contraseña”,
“solicitud de amistad”, “enviar mensaje”.
Rápidamente nuestro sistema pasará de nuestras
dos páginas (“página principal” y “subir foto”) a un
compendio de unas 50 páginas diferentes unidas
entre sí.

Al tener nuestro diseño en papel, estamos


posibilitados de armar el esquema de nuestra base
de datos. Por ejemplo: Sabemos que tendremos un
listado de fiambrerías, que tendremos muchas fotos por fiambrería, que una fiambrería
tendrá un nombre seguramente, además de una dirección, tal vez la ciudad en la que
se encuentra. ¿Nuestro sistema funciona en varios países? El país entonces.

Y así, luego de unas cuantas páginas, terminamos con el diseño de lo que va a ser
nuestro sistema. Esto no es foráneo y sucede en todo proceso creativo. Una fábrica de
automóviles necesita del diseño inicial para comenzar a armarlos, hasta el pintor
menos estructurado sabe que tiene que hacer un planeamiento mínimo antes de
comenzar a plasmar su idea en el lienzo. Como desarrollador de aplicaciones, ¡cada

Cómo crear aplicaciones de principio a fin 10 Unidad Intro - Guía de estudio


pantalla de tu sistema es un lienzo! Y cuando todas las pantallas tienen sentido,
cuando no hay puntos que no llevan a ningún lugar, y cuando sabemos que nuestro
sistema tiene la capacidad de realizar la tarea para la cual fue concebido podemos
pasar al siguiente paso: El código.

Coding

El código es el punto en el que el 67% de los proyectos de software falla, y


generalmente esto sucede porque no se ha hecho un buen trabajo en los primeros dos
pasos. Nos apuramos, lo hicimos más complicado de lo que era necesario,
organizamos mal los datos. Sea la razón que sea, una vez que comenzamos la parte
del código, cada error lo pagamos con muchas horas de nuestras vidas. Así que el
primer paso de “Coding” es: revisar nuevamente nuestro diseño y ver si nos faltó algo
de discovery.

Si por el contrario, nuestro diseño en papel es sólido y sin fallas, con programación
tradicional este paso puede llegar a ser el más aburrido, repetitivo y tedioso. Con
Aptugo, convertimos este proceso a uno visual, en donde el código es escrito por
nosotros de la manera que nosotros pretendamos.

Con solo entender la lógica de nuestro proyecto, podremos ir combinando elementos


de manera visual y Aptugo generará el código en tiempo real. Código que podremos
visualizar, editar, expandir y escalar, tanto dentro como fuera de Aptugo, ahorrando
asi, cientos de horas de trabajo, reduciendo la posibilidad de errores insalvables en
nuestro sistema y permitiéndonos generar desarrollos mucho más complejos de los
alcanzables con nuestro nivel de conocimiento actual.

Cómo crear aplicaciones de principio a fin 11 Unidad Intro - Guía de estudio


Testing

La etapa de testing o testeo consiste en la verificación de que todo el software


funciona de manera correcta y de la manera solicitada por el cliente, y se la conoce
también como QA. Esta etapa es quizás la menos fascinante, pero es fundamental y se
realiza antes de entregar al cliente su producto final. Permite identificar a tiempo
errores o problemas en el software facilitando su resolución antes de la entrega, y
garantizando calidad, seguridad, confiabilidad y rendimiento. Además, un buen QA nos
ayudará también a identificar y evitar posibles errores a futuro.

Durante esta etapa se realizan distintos tipos de pruebas que pueden ser
funcionales (verificar que cada función del software actúe de la manera esperada y en
conjunto con el resto) o no funcionales (que evalúan otros aspectos como
rendimiento, usabilidad y confiabilidad)

Llevado a la práctica, verificaríamos por ejemplo que cuando un cliente incluye nueva
información (como un pedido), este dato se cargue correctamente en la base de datos
del software que hemos creado. Otros casos simples de testeo tienen que ver con las
rutas que utilizamos para conectarnos a sistemas externos, como sistema de pagos,
redes sociales, entre otros.

Cómo crear aplicaciones de principio a fin 12 Unidad Intro - Guía de estudio


Deployment

El deployment es la etapa de lanzamiento o "release" del producto. Se trata de ese


momento tan ansiado del "pasaje a producción" para hacer disponible la versión de
nuestro software a los consumidores. Cada software tiene sus propias
características y complejidades, por lo cual no existe una única definición o proceso
paso a paso de esta etapa. De este modo, el deployment abarca todo los
requerimientos necesarios para que nuestro sistema de software o nuestra
actualización pueda estar disponible para los usuarios. La mayoría de los sistemas de
software hoy requieren de actualizaciones, correcciones y nuevas funcionalidades que
se despliegan a través de una combinación de procesos manuales y automatizados.

La etapa de deployment puede tener distintas partes pero, de modo sencillo


implicaría colocar en posición, habilitar para uso o, simplemente, publicar nuestro
software.

Maintenance

La etapa de Mantenimiento puede incluir desde actualizaciones programadas, o


cambios adicionales hasta caídas de servicio o eventos inesperados entre otros.

Pensemos por ejemplo que nuestro software tiene un conector que va desde su página
principal a una red social donde sus usuarios pueden dejarle “likes” y comentarios.
Dicha red, un día, decide hacer una actualización que incorpora nuevas instrucciones
para conectarse a la página. Esta es la etapa en la que deberemos actualizar y adaptar
el software a cambios no anticipados para garantizar que la función siga ejecutándose
con normalidad

De la misma manera, podría ser que nuestro software está teniendo un éxito rotundo,
completamente inesperado, y este alto tráfico hacia su sitio está haciendo que el
sistema se trabe y ande tan lento que los potenciales clientes se van. ¿Se debe a un
problema con la capacidad de nuestro servidor? Todos estos aspectos son parte de la
etapa final pero continua del desarrollo de un proyecto de software.

Cómo crear aplicaciones de principio a fin 13 Unidad Intro - Guía de estudio


Conclusiones

Ahora ya tenemos en claro las distintas etapas que involucra el desarrollo de


software y la importancia de cada una de ellas. Como vimos, el código es una parte
más de este proceso, pero no necesariamente la más importante. Lo que distinguirá a
un buen programador no será su conocimiento de más o menos lenguajes de
programación, sino su capacidad de comprender y estructurar de manera lógica,
simple y sustentable el proyecto a encarar.

Cómo crear aplicaciones de principio a fin 14 Unidad Intro - Guía de estudio

También podría gustarte