SlideShare una empresa de Scribd logo
09/09/10 By MEM
09/09/10 By MEM INDICE Calendario del curso Distribución del horario de clase Temario – Desglose fechas horas Temario detallado por partes 1ª Parte: Introducción ; Desarrollo de aplicaciones informáticas, Metodologías de programación y Ciclos de vida  2ª Parte: Algoritmos y Estructuras de datos  , estructuras de programación 3ª Parte: Lenguajes de programación ; Lenguaje C 4ª Parte: Diseño de Bases de datos y lenguaje SQL 5ª Parte : Herramientas Case, UML y Calidad del software ,
09/09/10 By MEM Días festivos 11 y 12 de Octubre 1 de Noviembre 6,7,8 de Diciembre Del 24 de Diciembre al 7 de Enero ambos inclusive Fecha de Comienzo de Curso 30 de Septiembre Fecha Fin de curso 14 de marzo + los días del modulo de Medioambiente Días y Horario Lunes a Viernes de 17:00 a 21:00 horas CALENDARIO
09/09/10 By MEM Las clases se dividen dos partes de 1 hora y tres cuartos de duración cada  una, con un descanso de media hora , con el siguiente esquema; De 17:00 a 18:45 primera parte De 18:45 a 19:15 descanso De 19:15 a 21:00 segunda parte DISTRIBUCIÓN DEL HORARIO DE CLASE
09/09/10 By MEM TEMARIO CONTENIDO CURSO COMPLETO - 5 PARTES  DESGLOSE EN SESIONES / HORAS / FECHAS 1ª PARTE – Introducción ; Desarrollo de aplicaciones informáticas, Metodologías de programación y Ciclos de vida  1 Sesión - 4 Horas 30 de Septiembre 2ª PARTE Programación; Algoritmos y Estructuras de datos  , estructuras de programación 19 Sesiones - 76 Horas Del 1 de Octubre al 29 de Octubre 4 ª PARTE – Diseño de Bases de datos y lenguaje SQL 20 Sesiones – 80 Horas Del 31 de Enero al  25 de Febrero 3ª PARTE –  Lenguajes de programación ; Lenguaje C y ?? 50 Sesiones - 200 Horas  Del 2 de Noviembre al 28 de Enero 5 ª PARTE - Herramientas Case ,  UML  y  Calidad del software 10 Sesiones - 40 Horas Del 28 de Febrero al 14 de Marzo
09/09/10 By MEM Desarrollar aplicaciones Informáticas Versus Programación Programación Mediante un lenguaje crear una serie de sentencias para que el ordenador realice un trabajo Para que el ordenador realice este trabajo habrá que explicárselo en un lenguaje que el entienda Los lenguajes de programación se podrían clasificar dependiendo de lo cercano que están al lenguaje que entiende la maquina , el que realmente entiende el procesador es el  lenguaje maquina Se puede decir que lo que comúnmente se conoce como programación es una fase del desarrollo del software Desarrollo de aplicaciones informáticas Del desarrollo de software  se encarga lo que conocemos como ingeniería del software  o ingeniería de sistemas Nos ayuda a desarrollar todas las fases necesarias para que crear una aplicación informática Para crear estas aplicaciones tendremos que considerar que pasos vamos a seguir y de que modo, y mediante que procedimientos vamos a seguir estos pasos, o lo que es lo mismo , que  metodología  vamos a utilizar .  Por tanto; la ingeniería del software nos enseñará los métodos que utilizaremos para desarrollar el software y lo que se obtiene en cada fase, lo que conocemos como  ciclo de vida del software Es decir como lo hacemos y las partes que tiene Introducción Tradicionalmente  no se hablaba de desarrollo de aplicaciones informáticas sino de programación, el programa se realizaban por una misma persona a base de  codificar  (generar código ) y probar , y si fallaba se depuraba. No se consideraba una tarea de conjunto, no se hacia un análisis del problema a resolver , no se planificaba previamente ni por su puesto se documentaba.  Aunque hoy en día este tipo de desarrollo aun se da en ciertas organizaciones, la mayoría de las grandes empresas de desarrollo, o el desarrollo de los grandes proyectos, se realiza con un conjunto coordinado de personas que utilizan una metodología común y que siguen una serie de fases de desarrollo.
09/09/10 By MEM Resumen Aplicaciónes Informáticas METODOLOGIA CICLOS DE VIDA COMO LO HACEMOS QUE PARTES TIENE
09/09/10 By MEM Década 1950-60: Software como un añadido Aplicaciones sencillas Desarrollo artesanal, a medida Lenguajes de bajo nivel Década 1960-70: Software como producto Primeras aplicaciones complejas Década lenguajes y compilación “ Crisis del software” Década 1970-80: Programación estructurada Modelo relacional Primeras etapas Ingeniería del Software Primeros métodos estructurados Modelado de datos Década 1980-90: Programación OO 4GLs C/S Tecnología de SGBDs, SOs Métodos estructurados Primeros métodos OO Tecnología CASE (1ª generación) Computer Aided Software Engineering 1ª PARTE - Desarrollo de aplicaciones informáticas Perspectiva histórica del desarrollo de software Década 1990-00 Generalización POO - Programación visual Tecnología de componentes Interoperabilidad (CORBA) Nuevas plataformas (Java, .NET) Análisis/Diseño OO Fin “Guerra de los métodos” UML (UnifiedModelingLanguage, 1997) Patrones Tecnología CASE (2ª generación) Popularización de Internet Década 2000-10 Generalización comercio electrónico Web 2.0 Desarrollo Web Seguridad Arquitecturas basadas en servicios (SOA) Métodos ágiles GSD: Global Software Development Desarrollo opensource MDE: Model -DrivenEngineering
09/09/10 By MEM Metodologías del software  En la década de los 70 los programas fueron creciendo en complejidad, surge entonces la necesidad de seguir una metodología a la hora de crear software, ya no  vale el método de  code&fix (codificar y corregir) , nos plantearnos dividir los grandes proyectos informáticos, en módulos mas pequeños para saber que entradas y que salidas produce cada etapa y que acciones se llevan a cabo en cada una de ellas para que de esta manera el resultado sea el deseado  1ª PARTE - Desarrollo de aplicaciones informáticas
09/09/10 By MEM Metodologías tradicionales * Desarrollo de sistemas de Jackson (JSD). De los años 80. (artículo en wikipedia en inglés External link) * Ingeniería de la información. De los 80 también (artículo en wikipedia en inglés External link) * Structured System Analysis and Design Method (SSADM). También de los 80. Muy popular en Europa, ya que tiene su origen el Reino Unido. (artículo en wikipedia en inglés External link) * Nuestra querida metodología METRICA, promovida por el Ministerio de las Administraciones Públicas. (Artículo en Wikipedia External link) (Página de la metodología External link) Algunas, como las dos primeras (Jackson, Ingeniería de la información), tienen un interés principalmente histórico. Otras, como SSADM o MÉTRICA, tienen cierta vigencia, en especial en lo que concierne a proyectos públicos. 1ª PARTE - Desarrollo de aplicaciones informáticas
09/09/10 By MEM Metodologías del software II Entre las metodologías modernas * Rapid Application Development (Desarrollo rápido de aplicaciones - RAD). (artículo en wikipedia en inglés External link) * Scrum (artículo en wikipedia en inglés External link) * Extreme programming. (Programación extrema - XP) (artículo en wikipedia en inglés External link) * Rational Unified Process. (Proceso Racional Unificado - RUP) (artículo en wikipedia en inglés External link) * Agile Unified Process. (Proceso Ágil Unificado - AUP) (artículo en wikipedia en inglés External link ** Read more:  http:// latecladeescape.com /w0/ ingenieria -del-software/ metodologias -de-desarrollo-del- software.html#ixzz0x4dyg0BE 1ª PARTE - Desarrollo de aplicaciones informáticas
09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas
09/09/10 By MEM Ciclo de Vida del software Proceso o etapas principales que sigue el desarrollo de un producto de software 1ª PARTE - Desarrollo de aplicaciones informáticas Primer etapa : Análisis y Definición de requisitos  En esta etapa el problema principal se centra en la formulación correcta del problema en cuestión. Resulta imprescindible conocer el problema en profundidad para poder construir la aplicación ; igualmente el desarrollo de aplicaciones de información para la empresa será imprescindible estudiar las necesidades de información de la estructura empresarial en su conjunto.  Segunda etapa : Especificación funcional  En esta etapa se trata de expresar la estructura de la solución, centrándonos en las necesidades del usuario de tal forma que éste pueda comprender de la forma más correcta posible sus necesidades. En esta etapa nos aseguramos de haber entendido las necesidades del usuario Tercera etapa : Diseño  En esta etapa el ingeniero basándose en la técnica existente, redacta los documentos que tendrán como destinatario al programador. En esta etapa se ha de expresar el problema y la solución en términos informáticos para que el programador pueda realizar su trabajo.   Cuarta etapa : Realización ( Codificación / Implementación / Programación) En esta etapa se generan los programas que componen la aplicación.   Quinta etapa : Prueba  En esta etapa se comprueba que todos los componentes de la aplicación funcionan correctamente juntos.  Sexta etapa : Mantenimiento  Con la utilización de la aplicación se van descubriendo funcionamientos defectuosos, ya que el código libre de error al 100% es prácticamente imposible de conseguir, o ausencia de funcionalidad que no había sido descrita con anterioridad. En el mantenimiento se suele volver a iniciar las etapas del ciclo de vida.  DOCUMENTACION
09/09/10 By MEM Ciclo de Vida del software Proceso o etapas principales que sigue el desarrollo de un producto de software 1ª PARTE - Desarrollo de aplicaciones informáticas Primer etapa : Análisis y Definición de requisitos  JEFE DE PROYECTO Segunda etapa : Especificación funcional  ANALISTA PROGRAMADOR Tercera etapa : Diseño  ANALISTA PROGRAMADOR Cuarta etapa : Realización ( Codificación / Implementación / Programación) PROGRAMADOR.  Quinta etapa : Prueba  PROGRAMADORES Y ANALISTAS Sexta etapa : Mantenimiento TODOS  DOCUMENTACION
09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Cascada -  ROYCE 1970 Características Es el mas ampliamente seguido , el numero de fases para este tipo de ciclo suele variar pero esencialmente son las siguientes: Cada fase empieza cuando termina la anterior Idealmente cada fase podría hacerla un equipo diferente Admite iteraciones : como ejemplo; si se cambia algo en el diseño hay que volver a pasar por el resto de las fases Después de terminar una fase se realiza una revisión por parte de los técnicos o usuarios para comprobar si se puede pasar a al a siguiente Ventajas : La planificación es sencilla La calidad del producto resultante es alta Permite trabajar con personal poco cualificado Ayuda a prevenir que se sobrepasen fechas de entrega y costes Inconvenientes Se necesitan todos los requisitos al principio No se tiene el producto hasta el final Si se comete un error al principio no se detecta hasta el final Mas lento que los demás mayor coste Análisis de requisitos  Diseño Preliminar  Diseño Detallado Codificación y pruebas Explotación y Mantenimiento
09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Cascada Incremental Características Se basa en construir incrementando las funcionalidades, es decir , se construyen módulos , y se aplica a cada modulo las fases del modelo en cascada puro a partir del análisis Al final de cada ciclo se le entrega una versión al cliente que incluye la ultima funcionalidad Se crea todo el software añadiéndole funcionalidades, componentes funcionales que se conocen con el nombre de  INCREMENTOS Ventajas : No es necesario tener todos los requisitos al principio Nos permite realizar entregas antes de finalizar todo el proyecto Si se detecta un error grave solo se deshace la ultima iteración Inconvenientes Errores en la detección de requisitos se detectan tarde Funcionalidad1 - Incremento 1  Funcionalidad2 - Incremento 2  Funcionalidad N - Incremento N  1 1 2 1 2 N ..
09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Espiral -  BOEHM 1988 Características Consta de una serie de ciclos repetitivos . Cada ciclo tiene las mismas fases cuando se termina un ciclo se tiene en cuenta el concepto de riesgo En cada ciclo se recomienda recopilar la siguiente información  Al terminar cada iteración se comprueba que lo que se ha hecho efectivamente cumple los requisitos y se verifica que funcione correctamente Ventajas : No necesita un a evaluación completa de los requisitos Inconvenientes Se necesitan todos los requisitos al principio No se tiene el producto hasta el final Objetivos  : Se entrevista al cliente Alternativas : las diferentes formas de conseguir los objetivos Características del producto Formas de gestionar el producto. Restricciones  :  Desde el punto de vista del producto Desde el punto de vista organizativo; coste, tiempo, material Riesgos Identificación Resolución
09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Espiral -  BOEHM 1988
09/09/10 By MEM Que es programar? Crear un programa    Conjunto de instrucciones , sentencias u ordenes que debemos darle a un ordenador para que realice un cierto trabajo Paradigmas de la programación    (FLOYD)  los modelos que seguiremos para el diseño y la implementación de programas. Dependiendo del autor se consideran diferentes paradigmas  1ª PARTE - Desarrollo de aplicaciones informáticas Imperativa Funcional Lógica Orientada a Objetos
09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Imperativa La programación consiste en la ejecución paso a paso de algoritmos (secuencias condicionales o repetitivas de instrucciones) que modifican los contenidos de variables (espacios de memoria) Procedural Estructurado
09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Lógica El paradigma lógico difiere de forma importante de otros paradigmas. No sólo en su sintaxis o semántica, sino que en él la lógica representa conocimiento, el cual es manipulado mediante inferencias. A diferencia de los demás paradigmas, trabajar en este significa especificar qué hacer y no cómo hacerlo, por ello son llamados lenguajes declarativos. El proceso general de la programación lógica es que a partir de un conjunto de reglas (axiomas) e inferencias podamos comprobar nuevas proposiciones que nos sean relevantes. Este proceso está basado en reglas de lógica de primer orden. Prolog es el lenguaje más representativo en este paradigma,pero se aprecia nmejor con Structured Query Language (SQL), un lenguaje para operar bases de datos y el cual representa otra de las aplicaciones de la programación lógica
09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Orientada a Objetos Programar bajo este paradigma es como tratar de simular o modelar los objetos del mundo real. Es el mas común actualmente Una mascota como un perro podría servir para un ejemplo introductorio: Un objeto está compuesto por estados y métodos. Los estados son propiedades del objeto y están representados por variables con valores únicos para cada objeto y que son llamadas variables de instancia. En este ejemplo, podríamos pensar en cosas como: edad, color, tener hambre,tener ganas de salir al parque, etc., propiedades todas que son intrínsecas a cada perro pero cuyos valores son únicos en cada uno; altura, anchura,etc.. Los métodos son representaciones de los comportamientos que el objeto es capaz de hacer. Por ejemplo, mi perro en particular tendría los métodos: sentarse, echarse, comer, saludar, dormir y bailar, entre otros, y que son comportamientos que probablemente presentan otros perros; las caracteristicas principales deestos lenguajes son:   Herencia   Polimorfismo Algún ejemplo de algunos lenguajes orientados a objetos pueden ser: Simula, Smalltalk, C++, Java, Visual Basic .NET, etc.
09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Funcional El paradigma funcional considera al programa como una función matemática, donde el dominio representaría el conjunto de todas las entradas posibles (inputs) y el rango sería el conjunto de todas las salidas posibles (outputs). La forma en que funciona puede ser entendida como una caja negra. LISP
09/09/10 By MEM Como crear un programa Análisis del problema  Plasmarlo en documentos y representaciones graficas Esquemas de modelado Codificación del problema Convertir el algoritmo en el  lenguaje correspondiente que resolverá el problema. Para realizar la conversión del algoritmo en programa se deben sustituir las palabras reservadas en español por sus homónimos en inglés, y las operaciones/instrucciones indicadas en lenguaje natural expresarlas en el lenguaje de programación correspondiente. Diseño o Desarrollo del Algoritmo Un algoritmo es un método para resolver un problema Las herramientas mas utilizadas para el diseño de algoritmos son: Diagramas de flujo Pseudocódigo Para llegar a la realización de un programa es necesario el diseño previo de un algoritmo, de modo que sin algoritmo no puede existir un programa. Los algoritmos son independientes tanto del lenguaje de programación en que se expresan como del ordenador que los ejecuta. En cada problema el algoritmo se puede expresar en un lenguaje diferente de programación y ejecutarse en un ordenador distinto; sin embargo, el algoritmo será siempre el mismo. Así, por ejemplo, en una analogía con la vida diaria, una receta de un plato de cocina se puede expresar en español, inglés o francés, pero cualquiera que sea el lenguaje, los pasos para la elaboración del plato se realizarán sin importar el idioma del cocinero. 1ª PARTE - Desarrollo de aplicaciones informáticas

Más contenido relacionado

DOCX
Taller 2 generalidasdes
DOCX
Metodologia de software
PPTX
Ingeniería de software
PPTX
Ingeniería de software
DOCX
Investigación de ingeniería de software
DOCX
Desarrollo de software
DOCX
Comunicación y colaboración
PPTX
Metodologías para el desarrollo de aplicaciones móviles
Taller 2 generalidasdes
Metodologia de software
Ingeniería de software
Ingeniería de software
Investigación de ingeniería de software
Desarrollo de software
Comunicación y colaboración
Metodologías para el desarrollo de aplicaciones móviles

La actualidad más candente (19)

DOCX
Comunicacion y colaboracion
PDF
DOCX
Calidad del desarrollo de software
PPTX
Analisis y desarrollo de sistemas de informacion
PDF
tablas
PPT
Intoduccion A La Ingenieria Del Software
PPTX
Presentacion tecnología informatica
PDF
Tg analisis y desarrollo de sistemas de informacion (v.101)
PDF
Metodologias agiles
PDF
Joel yar ensayose (2)
PPTX
Desarrollo de software
PPTX
Expo modelocascada
DOCX
Teoria de sistema Venta y reparacion de equipos
PDF
Ornelas muñizdavid actividad1.1_grupo_si5-2
DOCX
TEMAS DE INVESTIGACION DE COMPUTACION
PPTX
Metodologias para el desarrollo de aplicaciones web
PPT
Hernandez borquez mario alberto actividad 1.3 grupo si5 1
Comunicacion y colaboracion
Calidad del desarrollo de software
Analisis y desarrollo de sistemas de informacion
tablas
Intoduccion A La Ingenieria Del Software
Presentacion tecnología informatica
Tg analisis y desarrollo de sistemas de informacion (v.101)
Metodologias agiles
Joel yar ensayose (2)
Desarrollo de software
Expo modelocascada
Teoria de sistema Venta y reparacion de equipos
Ornelas muñizdavid actividad1.1_grupo_si5-2
TEMAS DE INVESTIGACION DE COMPUTACION
Metodologias para el desarrollo de aplicaciones web
Hernandez borquez mario alberto actividad 1.3 grupo si5 1
Publicidad

Destacado (20)

PPT
Flexigas Symposium 2013 - Biogas opwaarderen met membranen - Jort Langerak
PPT
Tecnologia colombiana 03
PPTX
Exposicion equipo 2
PPTX
New highs for newer apartments
PDF
Oficialismo femenino
PPT
Шістидесятники
PPTX
تاريخ الأدب العربي sejarah dan kesusasteraan arab
DOC
Г.Янжиндулам Б.Түмэнжаргал - Жижиг дунд үйлдвэрлэлийг хөгжүүлэхэд факторингий...
PPTX
Reunión con los campeones de la e 10-12-11
PPTX
PPTX
Animales en peligro de extincion
PDF
Kaartje
PPT
Realizing Full Potential Teaser
PPTX
Ministerio de educación
PPTX
California transport
PPTX
Contabilización de recursos ii
PDF
Guia legal para_hacer_negocios_en_colombia_2012_capitulo_7
PPTX
Finlandia
PDF
En A.L. la comunicación, un derecho humano Sánchez J.E. CORECOM 2014
Flexigas Symposium 2013 - Biogas opwaarderen met membranen - Jort Langerak
Tecnologia colombiana 03
Exposicion equipo 2
New highs for newer apartments
Oficialismo femenino
Шістидесятники
تاريخ الأدب العربي sejarah dan kesusasteraan arab
Г.Янжиндулам Б.Түмэнжаргал - Жижиг дунд үйлдвэрлэлийг хөгжүүлэхэд факторингий...
Reunión con los campeones de la e 10-12-11
Animales en peligro de extincion
Kaartje
Realizing Full Potential Teaser
Ministerio de educación
California transport
Contabilización de recursos ii
Guia legal para_hacer_negocios_en_colombia_2012_capitulo_7
Finlandia
En A.L. la comunicación, un derecho humano Sánchez J.E. CORECOM 2014
Publicidad

Similar a Programacion (20)

PPT
Clase
PPTX
Presentación de software
PPTX
Presentación de software
PPTX
Presentación de software
PPTX
Presentación de software
PPTX
Plan
PDF
Resumen Modelamiento de software para ingenieros
PPT
4688839.ppt
PPT
ingenieria-del-proceso-del-software.ppt
PPT
ingenieria-DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
PPTX
Ingeniería de software
PPTX
Trabajo diapositiva Software por Jhonatan Ruiz
PPTX
Trabajo diapositiva modulo 3 de jhonatan
DOC
SEMANA1_trabajos1.doc
PPTX
Introducción a Programación I (Clase1).pptx
PPTX
Trabajo diapositiva modulo 3 de josue
PPTX
Ingeniería de software
PPTX
Edwin alexande mata escobar
PPT
Clase3 Is 0702 V1
PPTX
Ingeniería de software
Clase
Presentación de software
Presentación de software
Presentación de software
Presentación de software
Plan
Resumen Modelamiento de software para ingenieros
4688839.ppt
ingenieria-del-proceso-del-software.ppt
ingenieria-DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Ingeniería de software
Trabajo diapositiva Software por Jhonatan Ruiz
Trabajo diapositiva modulo 3 de jhonatan
SEMANA1_trabajos1.doc
Introducción a Programación I (Clase1).pptx
Trabajo diapositiva modulo 3 de josue
Ingeniería de software
Edwin alexande mata escobar
Clase3 Is 0702 V1
Ingeniería de software

Último (20)

PDF
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
DOCX
PROYECTO DE APRENDIZAJE para la semana de fiestas patrias
PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
PDF
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
PDF
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
TOMO II - LITERATURA.pd plusenmas ultras
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
PPTX
Presentación de la Cetoacidosis diabetica.pptx
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
PDF
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
PDF
Metodologías Activas con herramientas IAG
DOCX
2 GRADO UNIDAD 5 - 2025.docx para primaria
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
PPTX
AGENTES PATÓGENOS Y LAS PRINCIPAL ENFERMEAD.pptx
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
PROYECTO DE APRENDIZAJE para la semana de fiestas patrias
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
Unidad de Aprendizaje 5 de Educacion para el Trabajo EPT Ccesa007.pdf
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
TOMO II - LITERATURA.pd plusenmas ultras
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
Presentación de la Cetoacidosis diabetica.pptx
Escuelas Desarmando una mirada subjetiva a la educación
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
ACERTIJO Súper Círculo y la clave contra el Malvado Señor de las Formas. Por ...
Metodologías Activas con herramientas IAG
2 GRADO UNIDAD 5 - 2025.docx para primaria
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
AGENTES PATÓGENOS Y LAS PRINCIPAL ENFERMEAD.pptx
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf

Programacion

  • 2. 09/09/10 By MEM INDICE Calendario del curso Distribución del horario de clase Temario – Desglose fechas horas Temario detallado por partes 1ª Parte: Introducción ; Desarrollo de aplicaciones informáticas, Metodologías de programación y Ciclos de vida 2ª Parte: Algoritmos y Estructuras de datos , estructuras de programación 3ª Parte: Lenguajes de programación ; Lenguaje C 4ª Parte: Diseño de Bases de datos y lenguaje SQL 5ª Parte : Herramientas Case, UML y Calidad del software ,
  • 3. 09/09/10 By MEM Días festivos 11 y 12 de Octubre 1 de Noviembre 6,7,8 de Diciembre Del 24 de Diciembre al 7 de Enero ambos inclusive Fecha de Comienzo de Curso 30 de Septiembre Fecha Fin de curso 14 de marzo + los días del modulo de Medioambiente Días y Horario Lunes a Viernes de 17:00 a 21:00 horas CALENDARIO
  • 4. 09/09/10 By MEM Las clases se dividen dos partes de 1 hora y tres cuartos de duración cada una, con un descanso de media hora , con el siguiente esquema; De 17:00 a 18:45 primera parte De 18:45 a 19:15 descanso De 19:15 a 21:00 segunda parte DISTRIBUCIÓN DEL HORARIO DE CLASE
  • 5. 09/09/10 By MEM TEMARIO CONTENIDO CURSO COMPLETO - 5 PARTES DESGLOSE EN SESIONES / HORAS / FECHAS 1ª PARTE – Introducción ; Desarrollo de aplicaciones informáticas, Metodologías de programación y Ciclos de vida 1 Sesión - 4 Horas 30 de Septiembre 2ª PARTE Programación; Algoritmos y Estructuras de datos , estructuras de programación 19 Sesiones - 76 Horas Del 1 de Octubre al 29 de Octubre 4 ª PARTE – Diseño de Bases de datos y lenguaje SQL 20 Sesiones – 80 Horas Del 31 de Enero al 25 de Febrero 3ª PARTE – Lenguajes de programación ; Lenguaje C y ?? 50 Sesiones - 200 Horas Del 2 de Noviembre al 28 de Enero 5 ª PARTE - Herramientas Case , UML y Calidad del software 10 Sesiones - 40 Horas Del 28 de Febrero al 14 de Marzo
  • 6. 09/09/10 By MEM Desarrollar aplicaciones Informáticas Versus Programación Programación Mediante un lenguaje crear una serie de sentencias para que el ordenador realice un trabajo Para que el ordenador realice este trabajo habrá que explicárselo en un lenguaje que el entienda Los lenguajes de programación se podrían clasificar dependiendo de lo cercano que están al lenguaje que entiende la maquina , el que realmente entiende el procesador es el lenguaje maquina Se puede decir que lo que comúnmente se conoce como programación es una fase del desarrollo del software Desarrollo de aplicaciones informáticas Del desarrollo de software se encarga lo que conocemos como ingeniería del software o ingeniería de sistemas Nos ayuda a desarrollar todas las fases necesarias para que crear una aplicación informática Para crear estas aplicaciones tendremos que considerar que pasos vamos a seguir y de que modo, y mediante que procedimientos vamos a seguir estos pasos, o lo que es lo mismo , que metodología vamos a utilizar . Por tanto; la ingeniería del software nos enseñará los métodos que utilizaremos para desarrollar el software y lo que se obtiene en cada fase, lo que conocemos como ciclo de vida del software Es decir como lo hacemos y las partes que tiene Introducción Tradicionalmente no se hablaba de desarrollo de aplicaciones informáticas sino de programación, el programa se realizaban por una misma persona a base de codificar (generar código ) y probar , y si fallaba se depuraba. No se consideraba una tarea de conjunto, no se hacia un análisis del problema a resolver , no se planificaba previamente ni por su puesto se documentaba. Aunque hoy en día este tipo de desarrollo aun se da en ciertas organizaciones, la mayoría de las grandes empresas de desarrollo, o el desarrollo de los grandes proyectos, se realiza con un conjunto coordinado de personas que utilizan una metodología común y que siguen una serie de fases de desarrollo.
  • 7. 09/09/10 By MEM Resumen Aplicaciónes Informáticas METODOLOGIA CICLOS DE VIDA COMO LO HACEMOS QUE PARTES TIENE
  • 8. 09/09/10 By MEM Década 1950-60: Software como un añadido Aplicaciones sencillas Desarrollo artesanal, a medida Lenguajes de bajo nivel Década 1960-70: Software como producto Primeras aplicaciones complejas Década lenguajes y compilación “ Crisis del software” Década 1970-80: Programación estructurada Modelo relacional Primeras etapas Ingeniería del Software Primeros métodos estructurados Modelado de datos Década 1980-90: Programación OO 4GLs C/S Tecnología de SGBDs, SOs Métodos estructurados Primeros métodos OO Tecnología CASE (1ª generación) Computer Aided Software Engineering 1ª PARTE - Desarrollo de aplicaciones informáticas Perspectiva histórica del desarrollo de software Década 1990-00 Generalización POO - Programación visual Tecnología de componentes Interoperabilidad (CORBA) Nuevas plataformas (Java, .NET) Análisis/Diseño OO Fin “Guerra de los métodos” UML (UnifiedModelingLanguage, 1997) Patrones Tecnología CASE (2ª generación) Popularización de Internet Década 2000-10 Generalización comercio electrónico Web 2.0 Desarrollo Web Seguridad Arquitecturas basadas en servicios (SOA) Métodos ágiles GSD: Global Software Development Desarrollo opensource MDE: Model -DrivenEngineering
  • 9. 09/09/10 By MEM Metodologías del software En la década de los 70 los programas fueron creciendo en complejidad, surge entonces la necesidad de seguir una metodología a la hora de crear software, ya no vale el método de code&fix (codificar y corregir) , nos plantearnos dividir los grandes proyectos informáticos, en módulos mas pequeños para saber que entradas y que salidas produce cada etapa y que acciones se llevan a cabo en cada una de ellas para que de esta manera el resultado sea el deseado 1ª PARTE - Desarrollo de aplicaciones informáticas
  • 10. 09/09/10 By MEM Metodologías tradicionales * Desarrollo de sistemas de Jackson (JSD). De los años 80. (artículo en wikipedia en inglés External link) * Ingeniería de la información. De los 80 también (artículo en wikipedia en inglés External link) * Structured System Analysis and Design Method (SSADM). También de los 80. Muy popular en Europa, ya que tiene su origen el Reino Unido. (artículo en wikipedia en inglés External link) * Nuestra querida metodología METRICA, promovida por el Ministerio de las Administraciones Públicas. (Artículo en Wikipedia External link) (Página de la metodología External link) Algunas, como las dos primeras (Jackson, Ingeniería de la información), tienen un interés principalmente histórico. Otras, como SSADM o MÉTRICA, tienen cierta vigencia, en especial en lo que concierne a proyectos públicos. 1ª PARTE - Desarrollo de aplicaciones informáticas
  • 11. 09/09/10 By MEM Metodologías del software II Entre las metodologías modernas * Rapid Application Development (Desarrollo rápido de aplicaciones - RAD). (artículo en wikipedia en inglés External link) * Scrum (artículo en wikipedia en inglés External link) * Extreme programming. (Programación extrema - XP) (artículo en wikipedia en inglés External link) * Rational Unified Process. (Proceso Racional Unificado - RUP) (artículo en wikipedia en inglés External link) * Agile Unified Process. (Proceso Ágil Unificado - AUP) (artículo en wikipedia en inglés External link ** Read more: http:// latecladeescape.com /w0/ ingenieria -del-software/ metodologias -de-desarrollo-del- software.html#ixzz0x4dyg0BE 1ª PARTE - Desarrollo de aplicaciones informáticas
  • 12. 09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas
  • 13. 09/09/10 By MEM Ciclo de Vida del software Proceso o etapas principales que sigue el desarrollo de un producto de software 1ª PARTE - Desarrollo de aplicaciones informáticas Primer etapa : Análisis y Definición de requisitos En esta etapa el problema principal se centra en la formulación correcta del problema en cuestión. Resulta imprescindible conocer el problema en profundidad para poder construir la aplicación ; igualmente el desarrollo de aplicaciones de información para la empresa será imprescindible estudiar las necesidades de información de la estructura empresarial en su conjunto. Segunda etapa : Especificación funcional En esta etapa se trata de expresar la estructura de la solución, centrándonos en las necesidades del usuario de tal forma que éste pueda comprender de la forma más correcta posible sus necesidades. En esta etapa nos aseguramos de haber entendido las necesidades del usuario Tercera etapa : Diseño En esta etapa el ingeniero basándose en la técnica existente, redacta los documentos que tendrán como destinatario al programador. En esta etapa se ha de expresar el problema y la solución en términos informáticos para que el programador pueda realizar su trabajo. Cuarta etapa : Realización ( Codificación / Implementación / Programación) En esta etapa se generan los programas que componen la aplicación. Quinta etapa : Prueba En esta etapa se comprueba que todos los componentes de la aplicación funcionan correctamente juntos. Sexta etapa : Mantenimiento Con la utilización de la aplicación se van descubriendo funcionamientos defectuosos, ya que el código libre de error al 100% es prácticamente imposible de conseguir, o ausencia de funcionalidad que no había sido descrita con anterioridad. En el mantenimiento se suele volver a iniciar las etapas del ciclo de vida. DOCUMENTACION
  • 14. 09/09/10 By MEM Ciclo de Vida del software Proceso o etapas principales que sigue el desarrollo de un producto de software 1ª PARTE - Desarrollo de aplicaciones informáticas Primer etapa : Análisis y Definición de requisitos JEFE DE PROYECTO Segunda etapa : Especificación funcional ANALISTA PROGRAMADOR Tercera etapa : Diseño ANALISTA PROGRAMADOR Cuarta etapa : Realización ( Codificación / Implementación / Programación) PROGRAMADOR. Quinta etapa : Prueba PROGRAMADORES Y ANALISTAS Sexta etapa : Mantenimiento TODOS DOCUMENTACION
  • 15. 09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Cascada - ROYCE 1970 Características Es el mas ampliamente seguido , el numero de fases para este tipo de ciclo suele variar pero esencialmente son las siguientes: Cada fase empieza cuando termina la anterior Idealmente cada fase podría hacerla un equipo diferente Admite iteraciones : como ejemplo; si se cambia algo en el diseño hay que volver a pasar por el resto de las fases Después de terminar una fase se realiza una revisión por parte de los técnicos o usuarios para comprobar si se puede pasar a al a siguiente Ventajas : La planificación es sencilla La calidad del producto resultante es alta Permite trabajar con personal poco cualificado Ayuda a prevenir que se sobrepasen fechas de entrega y costes Inconvenientes Se necesitan todos los requisitos al principio No se tiene el producto hasta el final Si se comete un error al principio no se detecta hasta el final Mas lento que los demás mayor coste Análisis de requisitos Diseño Preliminar Diseño Detallado Codificación y pruebas Explotación y Mantenimiento
  • 16. 09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Cascada Incremental Características Se basa en construir incrementando las funcionalidades, es decir , se construyen módulos , y se aplica a cada modulo las fases del modelo en cascada puro a partir del análisis Al final de cada ciclo se le entrega una versión al cliente que incluye la ultima funcionalidad Se crea todo el software añadiéndole funcionalidades, componentes funcionales que se conocen con el nombre de INCREMENTOS Ventajas : No es necesario tener todos los requisitos al principio Nos permite realizar entregas antes de finalizar todo el proyecto Si se detecta un error grave solo se deshace la ultima iteración Inconvenientes Errores en la detección de requisitos se detectan tarde Funcionalidad1 - Incremento 1 Funcionalidad2 - Incremento 2 Funcionalidad N - Incremento N 1 1 2 1 2 N ..
  • 17. 09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Espiral - BOEHM 1988 Características Consta de una serie de ciclos repetitivos . Cada ciclo tiene las mismas fases cuando se termina un ciclo se tiene en cuenta el concepto de riesgo En cada ciclo se recomienda recopilar la siguiente información Al terminar cada iteración se comprueba que lo que se ha hecho efectivamente cumple los requisitos y se verifica que funcione correctamente Ventajas : No necesita un a evaluación completa de los requisitos Inconvenientes Se necesitan todos los requisitos al principio No se tiene el producto hasta el final Objetivos : Se entrevista al cliente Alternativas : las diferentes formas de conseguir los objetivos Características del producto Formas de gestionar el producto. Restricciones : Desde el punto de vista del producto Desde el punto de vista organizativo; coste, tiempo, material Riesgos Identificación Resolución
  • 18. 09/09/10 By MEM 1ª PARTE - Desarrollo de aplicaciones informáticas Ciclo de vida en Espiral - BOEHM 1988
  • 19. 09/09/10 By MEM Que es programar? Crear un programa  Conjunto de instrucciones , sentencias u ordenes que debemos darle a un ordenador para que realice un cierto trabajo Paradigmas de la programación  (FLOYD) los modelos que seguiremos para el diseño y la implementación de programas. Dependiendo del autor se consideran diferentes paradigmas 1ª PARTE - Desarrollo de aplicaciones informáticas Imperativa Funcional Lógica Orientada a Objetos
  • 20. 09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Imperativa La programación consiste en la ejecución paso a paso de algoritmos (secuencias condicionales o repetitivas de instrucciones) que modifican los contenidos de variables (espacios de memoria) Procedural Estructurado
  • 21. 09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Lógica El paradigma lógico difiere de forma importante de otros paradigmas. No sólo en su sintaxis o semántica, sino que en él la lógica representa conocimiento, el cual es manipulado mediante inferencias. A diferencia de los demás paradigmas, trabajar en este significa especificar qué hacer y no cómo hacerlo, por ello son llamados lenguajes declarativos. El proceso general de la programación lógica es que a partir de un conjunto de reglas (axiomas) e inferencias podamos comprobar nuevas proposiciones que nos sean relevantes. Este proceso está basado en reglas de lógica de primer orden. Prolog es el lenguaje más representativo en este paradigma,pero se aprecia nmejor con Structured Query Language (SQL), un lenguaje para operar bases de datos y el cual representa otra de las aplicaciones de la programación lógica
  • 22. 09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Orientada a Objetos Programar bajo este paradigma es como tratar de simular o modelar los objetos del mundo real. Es el mas común actualmente Una mascota como un perro podría servir para un ejemplo introductorio: Un objeto está compuesto por estados y métodos. Los estados son propiedades del objeto y están representados por variables con valores únicos para cada objeto y que son llamadas variables de instancia. En este ejemplo, podríamos pensar en cosas como: edad, color, tener hambre,tener ganas de salir al parque, etc., propiedades todas que son intrínsecas a cada perro pero cuyos valores son únicos en cada uno; altura, anchura,etc.. Los métodos son representaciones de los comportamientos que el objeto es capaz de hacer. Por ejemplo, mi perro en particular tendría los métodos: sentarse, echarse, comer, saludar, dormir y bailar, entre otros, y que son comportamientos que probablemente presentan otros perros; las caracteristicas principales deestos lenguajes son:  Herencia  Polimorfismo Algún ejemplo de algunos lenguajes orientados a objetos pueden ser: Simula, Smalltalk, C++, Java, Visual Basic .NET, etc.
  • 23. 09/09/10 By MEM Paradigmas de la programación… 1ª PARTE - Desarrollo de aplicaciones informáticas Funcional El paradigma funcional considera al programa como una función matemática, donde el dominio representaría el conjunto de todas las entradas posibles (inputs) y el rango sería el conjunto de todas las salidas posibles (outputs). La forma en que funciona puede ser entendida como una caja negra. LISP
  • 24. 09/09/10 By MEM Como crear un programa Análisis del problema Plasmarlo en documentos y representaciones graficas Esquemas de modelado Codificación del problema Convertir el algoritmo en el lenguaje correspondiente que resolverá el problema. Para realizar la conversión del algoritmo en programa se deben sustituir las palabras reservadas en español por sus homónimos en inglés, y las operaciones/instrucciones indicadas en lenguaje natural expresarlas en el lenguaje de programación correspondiente. Diseño o Desarrollo del Algoritmo Un algoritmo es un método para resolver un problema Las herramientas mas utilizadas para el diseño de algoritmos son: Diagramas de flujo Pseudocódigo Para llegar a la realización de un programa es necesario el diseño previo de un algoritmo, de modo que sin algoritmo no puede existir un programa. Los algoritmos son independientes tanto del lenguaje de programación en que se expresan como del ordenador que los ejecuta. En cada problema el algoritmo se puede expresar en un lenguaje diferente de programación y ejecutarse en un ordenador distinto; sin embargo, el algoritmo será siempre el mismo. Así, por ejemplo, en una analogía con la vida diaria, una receta de un plato de cocina se puede expresar en español, inglés o francés, pero cualquiera que sea el lenguaje, los pasos para la elaboración del plato se realizarán sin importar el idioma del cocinero. 1ª PARTE - Desarrollo de aplicaciones informáticas