Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Desarrollo
de
Aplicaciones Web
Mdulo
Entornos de desarrollo
Ttulo: RD 686/2010 de 20 mayo
(BOE 12 de junio de 2010)
Currculo: D 230/2011 de 28 /08/2011
(DOCM 9 de agosto de 2011
Unidades
Semanas
1. Desarrollo de Sw
3. Diseo y realizacin de
pruebas
4. Optimizacin y documentacin
U1: Desarrollo de Sw
1.
Sw y programa informtico.
-Tipos de Sw
- Relacin Hw-Sw
2.
3.
4.
Lenguajes de programacin
5.
1. Sw y programa informtico.
SISTEMA DE INFORMACIN:
1. Sw y programa informtico.
SISTEMA DE INFORMACIN:
E/S
Proceso
Almacenamiento
SISTEMA INFORMTICO:
1. Sw y programa informtico.
HW:
Parte fsica
CPU
Memoria
Perifricos
Soportes almacenamiento
Otros
SW:
Parte lgica
Programas
Datos
Documentacin
Mtodos de desarrollo de sw
PROGRAMA:
1. Sw y programa informtico.
Relacin Hw-Sw
El software se ejecuta sobre el Hw
Los elementos Hw necesitan estar
instalados y configurados
correctamente para que el equipo
funcione
Relacin Hw-Sw desde dos puntos
de vista:
del Sistema Operativo
de las aplicaciones.
1. Sw y programa informtico.
Relacin Hw-Sw
Desde el punto de vista del sistema
operativo :
El sistema operativo es el encargado
de coordinar al hardware durante el
funcionamiento del ordenador,
actuando como intermediario entre
ste y las aplicaciones que estn
corriendo en un momento dado.
Todas las aplicaciones necesitan
recursos hardware durante su
ejecucin (tiempo de CPU, espacio en
la RAM, gestin de los dispositivos de
Entrada/Salida, .etc.).
1. Sw y programa informtico.
Relacin Hw-Sw
Desde el punto de vista de las
aplicaciones :
Los programas estn escritos en algn
lenguaje de programacin que el hardware
del equipo debe interpretar y ejecutar.
Las sentencias de los lenguajes de
programacin son fciles de aprender y
usar por el ser humano.
El hardware de un ordenador slo es
capaz de interpretar seales elctricas
(ausencias o presencias de tensin) que, en
informtica, se traducen en secuencias de
0 y 1 (cdigo binario).
1. Sw y programa informtico.
Tipos de Sw
Definiciones de SW:
Segn la RAE:
1. Sw y programa informtico.
Tipos de Sw
Clasificacin del SW, segn:
Su funcin
De sistema
De aplicacin
De desarrollo
El mtodo de distribucin:
Sahreware
Freeware
Adware
Multimedia
De uso especfico
Tipo de licencia:
Libre
Propietario
De dominio pblico
11
1. Sw y programa informtico.
Tipos de Sw
Segn su funcin, el Sw se clasifica en:
Sw de sistema (S.O. + drivers):
1. Sw y programa informtico.
Tipos de Sw
Ejercicio:
Completa la clasificacin de los tipos de SW
2. Desarrollo de Sw
Todo el proceso que ocurre desde que se
concibe una idea hasta que un programa
est implementado en el ordenador y
funcionando.
La construccin de software es un
proceso que puede llegar a ser muy
complejo y que exige gran coordinacin y
disciplina del grupo de trabajo que lo
desarrolle.
En todo proceso de desarrollo se ha de
pasar una serie de etapas
Definicin
del problema
Desarrollo de
la solucin
Mantenimiento
de la solucin
14
2. Desarrollo de Sw
Definicin del problema
= el QU
Se identifican los requisitos clave del sistema y
del Sw :
Qu restricciones, funcionalidad y
rendimiento se desea,
Tareas principales:
Planificacin
Anlisis de requisitos
15
2. Desarrollo de Sw
Desarrollo de la solucin propuesta:
= el CMO
Codificacin
Prueba del Sw
Documentacin
16
2. Desarrollo de Sw
Mantenimiento de la solucin:
Se centra en el CAMBIO:
Tipos de cambios:
Correccin
Adaptacin
Mejora o evolutivos
Prevencin
Tareas:
-
Explotacin
Mantenimiento
Unidad 2: Introduccin al
desarrollo de aplicaciones
informticas
17
2. Desarrollo de Sw
Segn estimaciones:
18
20
21
23
Entornos:
Conjunto de bancos de trabajo integrados
de alguna forma que ayudan a todo el
proceso (o a una parte substancial del
mismo).
24
CODIFICACIN.
PRUEBAS.
DOCUMENTACIN.
EXPLOTACIN.
MANTENIMIENTO.
25
CODIFICACIN.
Se elige un Lenguajes de Programacin y se
codifican los programas.
PRUEBAS.
Se prueban los programas para detectar
errores y se depuran.
DOCUMENTACIN.
De todas las etapas, se documenta y guarda
toda la informacin.
EXPLOTACIN.
Instalamos, configuramos y probamos la
aplicacin en los equipos del cliente.
27
MANTENIMIENTO.
Se mantiene el contacto con el cliente para
actualizar y modificar la aplicacin el futuro.
28
3. 1 Anlisis
la primera etapa del proyecto,
la ms complicada y
la que ms depende de la
capacidad del analista.
29
3. 1 Anlisis
ERS (Especificacin de Requisitos
Software) :
En este documento quedan especificados:
La planificacin de las reuniones que van a
tener lugar.
Relacin de los objetivos del usuario cliente y
del sistema.
Relacin de los requisitos funcionales y no
funcionales del sistema.
Relacin de objetivos prioritarios y
temporizacin.
Reconocimiento de requisitos mal planteados
o que conllevan contradicciones, etc.
30
3. 2 Diseo
Ya sabemos lo que hay que hacer, el siguiente
paso es Cmo hacerlo?
Se debe dividir el sistema en partes y
establecer qu relaciones habr entre ellas.
Decidir qu har exactamente cada parte.
En definitiva, debemos crear un modelo
funcional-estructural de los requerimientos
del sistema global, para poder dividirlo y
afrontar las partes por separado.
En este punto, se deben tomar decisiones
importantes, tales como:
Entidades y relaciones de las bases de datos.
Seleccin del lenguaje de programacin que
se va a utilizar.
Seleccin del Sistema Gestor de Base de
Datos.
31
Etc.
3. 3 Codificacin
Tiene que cumplir exhaustivamente
con todos los datos impuestos en el
anlisis y en el diseo de la aplicacin.
3. 5 PRUEBAS
Son imprescindibles para asegurar la validacin
y verificacin del software construido
33
3. 5 PRUEBAS
Beta Test:
Prueba final que se realiza sobre el entorno
de produccin donde el sw va a ser
utilizado por el cliente (a ser posible, en los
equipos del cliente y bajo un
funcionamiento normal de su empresa).
El perodo de prueba ser normalmente el
pactado con el cliente.
34
3. 6 DOCUMENTACION
Todas las etapas en el desarrollo de
software deben quedar perfectamente
documentadas.
Por qu?
Para dar toda la informacin a los usuarios
de nuestro software y poder acometer
futuras revisiones del proyecto.
35
3. 6 DOCUMENTACION
Los documentos a elaborar en el proceso de
desarrollo de software se pueden agrupar en:
Gua tcnica
Gua de uso
Gua de instalacin
36
3. 6 DOCUMENTACION
GUA TCNICA:
Documentos:
El diseo de la aplicacin
La codificacin de los programas
Las pruebas realizadas
Objetivo:
Facilitar un correcto desarrollo, realizar
correcciones en los programas y permitir
un mantenimiento futuro
Dirigido a:
37
3. 6 DOCUMENTACION
GUA de USO:
Documentos:
Descripcin de la funcionalidad de la
aplicacin.
Forma de comenzar su ejecucin
Ejemplos de uso del programa.
Requerimientos software de la
aplicacin.
Solucin de los posibles problemas que
se pueden presentar.
Objetivo:
Dar a los usuarios finales toda la
informacin necesaria para utilizar la
aplicacin
Dirigido a:
Los usuarios que van a usar la aplicacin
(clientes).
38
3. 6 DOCUMENTACION
GUA de USO:
Documentos:
Toda la informacin necesaria para:
Puesta en marcha.
Explotacin.
Seguridad del sistema.
Objetivo:
Dar toda la informacin necesaria para
garantizar que la implantacin de la
aplicacin se realice de forma segura,
confiable y precisa.
Dirigido a:
3. 7 EXPLOTACIN
La explotacin es la instalacin, puesta a
punto y funcionamiento de la aplicacin en
el equipo final del cliente
Una vez que las pruebas nos demuestran
que el software es fiable, carece de
errores y hemos documentado todas las
fases, el siguiente paso es la explotacin,
fase en la que los usuarios finales conocen
la aplicacin y comienzan a utilizarla.
1 Instalacin:
Proceso en el que los programas son
transferidos al computador del usuario
cliente y posteriormente configurados y
verificados.
Es recomendable que los futuros clientes
estn presentes en este momento e irles
comentando cmo se va planteando la
instalacin.
40
3. 7 EXPLOTACIN
2 Configuracin:
41
3. 7 EXPLOTACIN
3 Produccin normal.
42
3. 8 MANTENIMIENTO
En cualquier sector laboral, con la entrega
del producto, ha terminado su trabajo
PERO en el caso de la construccin de
software sto NO es as con la entrega de
nuestra aplicacin (la instalacin y
configuracin de nuestro proyecto en los
equipos del cliente).
ADEMS, la etapa de mantenimiento es la
ms larga de todo el ciclo de vida del sw
el sw deber actualizarse y evolucionar
con el tiempo, deber ir adaptndose a las
mejoras del hw y afrontar situaciones
nuevas que no existan cuando el software
se construy.
Siempre surgen errores que habr que ir
corrigiendo y nuevas versiones del
producto mejores que las anteriores
Pactar con el cliente un servicio de
mantenimiento de la aplicacin (que
tambin tendr un coste temporal y
econmico).
43
3. 8 MANTENIMIENTO
Tipos de cambios:
44
4. Lenguajes de programacin
Lenguaje de Programacin:
idioma creado de forma artificial, formado
por un conjunto de smbolos y normas que
se aplican sobre un alfabeto para obtener un
cdigo, que el hardware de la computadora
pueda entender y ejecutar.
Es un conjunto de:
Alfabeto: conjunto de smbolos
permitidos
Sintaxis: Normas de construccin
vlidas
45
4. Lenguajes de programacin
Clasificacin:
L. de alto nivel
L. Estructurados
L.OO
L.Visuales
46
4. Lenguajes de programacin
Clasificacin:
L. de alto nivel
L. Estructurados
L.OO
L.Visuales
47
4. Lenguajes de programacin
Lenguaje mquina:
Sus instrucciones son combinaciones de
unos y ceros.
Es el nico lenguaje que entiende
directamente el ordenador. (No necesita
traduccin).
Fue el primer lenguaje utilizado.
48
4. Lenguajes de programacin
Lenguaje ensamblador:
Sustituy al lenguaje mquina para
facilitar la labor de programacin.
En lugar de unos y ceros se programa
usando mnemotcnicos (instrucciones
complejas).
Necesita traduccin al lenguaje mquina
4. Lenguajes de programacin
Lenguaje de alto nivel:
Sustituyeron al lenguaje ensamblador
para facilitar ms la labor de
programacin.
En lugar de mnemotcnicos, se utilizan
lenguaje mquina).
Son ms cercanos al razonamiento
humano.
4. Lenguajes de programacin
TRADUCTORES
Programas que traducen programas al
lenguaje mquina para que un ordenador
pueda ejecutarlos
Programa
objeto
L. Mquina
001
1111000....
Intrpretes
Compiladores
Ensambladores
Bajo Nivel
Alto Nivel
Programa
fuente
51
4. Lenguajes de programacin
Lenguajes de programacin estructurada:
Los programas se tratan como un conjunto
ordenado de sentencias.
Sentencias bsicas:
Secuencia
Alternativa
Repetitiva
VENTAJAS:
Los programas son fciles de leer, sencillos y
rpidos.
El mantenimiento de los programas es
sencillo.
La estructura del programa es sencilla y
clara.
52
4. Lenguajes de programacin
Lenguajes de programacin estructurada:
INCONVENIENTES :
Todo el programa se concentra en un nico
bloque (si se hace demasiado grande es
difcil manejarlo).
4. Lenguajes de programacin
Lenguajes de programacin OO:
Los programas se componen de objetos
independientes que colaboran entre ellos para
realizar acciones
4. Lenguajes de programacin
Lenguajes de programacin OO:
VENTAJAS:
El cdigo es reutilizable.
4. Lenguajes de programacin
Lenguajes visuales:
Estn sustituyendo a los lenguajes de alto
4. Lenguajes de programacin
http://www.monografias.com/trabajos38/tipo
s-lenguajes-programacion/tiposlenguajes-programacion.shtml
57
4. Lenguajes de programacin
http://www.monografias.com/trabajos38/tipo
s-lenguajes-programacion/tiposlenguajes-programacion.shtml
58
5. Tipos de cdigo
Segn el lenguaje en el que est escrito un
programa, se le llama:
59
5. Tipos de cdigo
CODIGO FUENTE
Conjunto de instrucciones que el ordenador
deber realizar, escritas en un lenguaje de
alto nivel.
Para obtener el cdigo fuente de una
aplicacin informtica:
Se debe partir de las etapas anteriores de
anlisis y diseo
Se disear un algoritmo que simbolice los
pasos a seguir para la resolucin del
problema
Se elegir un Lenguajes de Programacin
de alto nivel apropiado para las
caractersticas del software que se quiere
codificar.
Se proceder a la codificacin del
algoritmo antes diseado.
60
5. Tipos de cdigo
CODIGO FUENTE
61
5. Tipos de cdigo
CODIGO OBJETO
62
5. Tipos de cdigo
CODIGO EJECUTABLE
63
5. Tipos de cdigo
Proceso de obtencin de cdigo
ejecutable:
PROGRAMA
FUENTE
COMPILADOR
PROGRAMA
OBJETO
ENLAZADOR
PROGRAMA
EJECUTABLE
64
5. Mquinas virtuales
Una mquina virtual de proceso es un tipo
especial de software cuya misin es separar
el funcionamiento del ordenador de los
componentes hardware instalados.
Acta de puente entre la aplicacin y el
hardware concreto del equipo donde se
instale.
Con el uso de mquinas virtuales podremos
desarrollar y ejecutar una aplicacin sobre
cualquier equipo, independientemente de las
caractersticas concretas de los
componentes fsicos instalados.
65
5. 4 Mquinas virtuales
66
5. Mquinas virtuales
Funciones principales de una mquina virtual:
67
5. Mquinas virtuales
Caractersticas de la mquina virtual:
5. ENTORNO DE EJECUCION
Conjunto de utilidades que permiten la
ejecucin de programas.
Es un servicio de mquina virtual que sirve
como base software para la ejecucin de
programas.
Est formado por:
mquina virtual, y
API's (bibliotecas de clases estndar
necesarias para que pueda ser ejecutada)
Puede:
pertenecer al propio sistema operativo, o
instalarse como software independiente
Runtime: tiempo que tarda un programa
en ejecutarse en la computadora.
69
5. ENTORNO DE EJECUCION
Durante la ejecucin, los entornos se
encargarn de:
Configurar la memoria principal
disponible en el sistema.
Enlazar los archivos del programa con
las bibliotecas existentes y con los
subprogramas creados. Considerando
que las bibliotecas son el conjunto de
subprogramas que sirven para desarrollar
o comunicar componentes software
pero que ya existen previamente y los
subprogramas sern aquellos que hemos
creado a propsito para el programa.
Depurar los programas: comprobar la
existencia (o no existencia) de errores
semnticos del lenguaje (los sintcticos
ya se detectaron en la compilacin).
70
71
5. FRAMEWORKS
Plataforma Sw de ayuda al programador
para desarrollar proyectos sin partir de
cero
5. FRAMEWORKS
VENTAJAS de utilizar un framework:
Desarrollo rpido de software.
Reutilizacin de partes de cdigo para
otras aplicaciones.
Diseo uniforme del software.
Portabilidad de aplicaciones de un
computador a otro, ya que los bytecodes
que se generan a partir del lenguaje
fuente podrn ser ejecutados sobre
cualquier mquina virtual.
INCONVENIENTES:
Gran dependencia del cdigo respecto al
framework utilizado (si cambiamos de
framework, habr que reescribir gran
parte de la aplicacin).
La instalacin e implementacin del
framework en nuestro equipo consume
bastantes recursos del sistema.
74