Máster en Desarrollo de Software
Maestría
Online

Descripción
-
Tipología
Maestría
-
Metodología
Online
-
Horas lectivas
1500h
-
Duración
12 Meses
-
Inicio
Fechas disponibles
-
Campus online
Sí
-
Clases virtuales
Sí
Para participar de una de las áreas con mayor proyección en el sector informático, el profesional debe capacitarse científica y tecnológicamente, así como prepararse para poder enfrentar, de forma eficiente, los retos que surgen en el ejercicio profesional de la ingeniería del software, este Programa está orientado a lograr un alto dominio del Desarrollo de Software, a través de los
últimos avances y desarrollos en este campo, mediante una metodología de estudio de máximo impacto y extraordinaria flexibilidad.
Información importante
Documentos
- 6-maestria-desarrollo-software--.pdf
Sedes y fechas disponibles
Ubicación
inicio
inicio
Información relevante sobre el curso
Objetivos generales Capacitar científica y tecnológicamente, así como preparar para el ejercicio profesional de la ingeniería del Software, todo ello con una capacitación transversal y versátil adaptada a las nuevas tecnologías e innovaciones en este campo Obtener amplios conocimientos en el campo de la ingeniería del Software, pero también en el campo de la computación y la estructura de computadoras, todo ello incluyendo la base matemática, estadística y física imprescindible en una ingeniería Objetivos específicos Módulo 1. Fundamentos de programación Comprender la estructura básica de un ordenador, el Software y de los lenguajes de Programación de propósito general Aprender a diseñar e interpretar algoritmos, que son la base necesaria para poder desarrollar programas informáticos Módulo 2. Estructura de datos Aprender los fundamentos de la Programación en el lenguaje C++, incluyendo clases, variables, expresiones condicionales y objetos Entender los tipos abstractos de datos, los tipos de estructuras de datos lineales, estructuras de datos jerárquicas simples y complejas, así como su implementación en C++ Módulo 3. Algoritmia y complejidad Aprender las principales estrategias de diseño de algoritmos, así como los distintos métodos y medidas para de cálculo de los mismos Conocer los principales algoritmos de ordenación usados en el desarrollo de Software
El objetivo de esta capacitación es ofrecer a los profesionales que trabajan en el Desarrollo Software, los conocimientos y habilidades necesarios para realizar su actividad utilizando los protocolos y técnicas más avanzados del momento. Mediante un planteamiento de trabajo totalmente adaptable al alumno, este Máster Título Propio te llevará progresivamente a adquirir las competencias que lo impulsarán hacia un nivel profesional superior.
Este Máster Título Propio en Desarrollo de Software contiene el programa más completo y actualizado del mercado. Tras la superación de la evaluación, el alumno recibirá por correo postal con acuse de recibo su correspondiente título de Máster Propio emitido por TECH Universidad Tecnológica. El título por TECH Universidad Tecnológica expresará la calificación que haya obtenido en el Máster Título Propio y reunirá los requisitos comúnmente exigidos por las bolsas de trabajo, oposiciones y comités evaluadores de carreras profesionales. Título: Máster Título Propio en Desarrollo de Software N.º Horas Oficiales: 1.500 h.
Nuestra escuela es la primera en el mundo que combina el estudio de casos clínicos con un sistema de aprendizaje 100% online basado en la reiteración, que combina 8 elementos diferentes que suponen una evolución con respecto al simple estudio y análisis de casos. Esta metodología, a la vanguardia pedagógica mundial, se denomina Relearning. Nuestra escuela es la primera en habla hispana licenciada para emplear este exitoso método, habiendo conseguido en 2015 mejorar los niveles de satisfacción global (calidad docente, calidad de los materiales, estructura del curso, objetivos…) de los estudiantes que finalizan los cursos con respecto a los indicadores de la mejor universidad online en habla hispana.
Recibida su solicitud, un responsable académico del curso le llamará para explicarle todos los detalles del programa, así como el método de inscripción, facilidades de pago y plazos de matrícula.
En primer lugar, necesitas un ordenador (PC o Macintosh), conexión a internet y una cuenta de correo electrónico. Para poder realizar los cursos integramente ON-LINE dispone de las siguientes opciones: Flash - Instalando Flash Player 10 o posterior (http://www.adobe.com/go/getflash), en alguno de los siguientes navegadores web: - Windows: Internet Explorer 6 y posteriores, Firefox 1.x y posteriores, Google Chrome, Opera 9.5 y posteriores - Mac: Safari 3 y posteriores, Firefox 1.x y posteriores, Google Chrome - Linux: Firefox 1.x y posteriores HTML5 - Instalando alguno de los navegadores web: - Google Chrome 14 o posterior sobre Windows o Mac - Safari 5.1 o posterior sobre Mac - Mobile Safari sobre Apple iOS 5.0 o posterior en iPad/iPhone Apple iOS - Articulate Mobile Player; Apple iOS 5.0 o posterior en iPad.
Opiniones
Logros de este Centro
Todos los cursos están actualizados
La valoración media es superior a 3,7
Más de 50 opiniones en los últimos 12 meses
Hace 4 años que este centro está en Emagister.
Materias
- Desarrollo del software
- Programación
- Fundamentos
- Técnicas descriptivas
- Problemas
- Software
- Lenguaje C++
- Operadores
- Función y utilidad
- Prototipo
Profesores

Docente Docente
Profesor
Plan de estudios
Módulo 1. Fundamentos de programación
1.1. Introducción a la programación
1.1.1. Estructura básica de un ordenador
1.1.2. Software
1.1.3. Lenguajes de programación
1.1.4. Ciclo de vida de una aplicación informática
1.2. Diseño de algoritmos
1.2.1. La resolución de problemas
1.2.2. Técnicas descriptivas
1.2.3. Elementos y estructura de un algoritmo
1.3. Elementos de un programa
1.3.1. Origen y características del lenguaje C++
1.3.2. El entorno de desarrollo
1.3.3. Concepto de programa
1.3.4. Tipos de datos fundamentales
1.3.5. Operadores
1.3.6. Expresiones
1.3.7. Sentencias
1.3.8. Entrada y salida de datos
1.4. Sentencias de control
1.4.1. Sentencias
1.4.2. Bifurcaciones
1.4.3. Bucles
1.5. Abstracción y modularidad: funciones
1.5.1. Diseño modular
1.5.2. Concepto de función y utilidad
1.5.3. Definición de una función
1.5.4. Flujo de ejecución en la llamada de una función
1.5.5. Prototipo de una función
1.5.6. Devolución de resultados
1.5.7. Llamada a una función: parámetros
1.5.8. Paso de parámetros por referencia y por valor
1.5.9. Ámbito identificador
1.6. Estructuras de datos estáticas
1.6.1. Arrays
1.6.2. Matrices. Poliedros
1.6.3. Búsqueda y ordenación
1.6.4. Cadenas. Funciones de E/S para cadenas
1.6.5. Estructuras. Uniones
1.6.6. Nuevos tipos de datos
1.7. Estructuras de datos dinámicas: punteros
1.7.1. Concepto. Definición de puntero
1.7.2. Operadores y operaciones con punteros
1.7.3. Arrays de punteros
1.7.4. Punteros y arrays
1.7.5. Punteros a cadenas
1.7.6. Punteros a estructuras
1.7.7. Indirección múltiple
1.7.8. Punteros a funciones
1.7.9. Paso de funciones, estructuras y arrays como parámetros de funciones
1.8. Ficheros
1.8.1. Conceptos básicos
1.8.2. Operaciones con ficheros
1.8.3. Tipos de ficheros
1.8.4. Organización de los ficheros
1.8.5. Introducción a los ficheros C++
1.8.6. Manejo de ficheros
1.9. Recursividad
1.9.1. Definición de recursividad
1.9.2. Tipos de recursión
1.9.3. Ventajas e inconvenientes
1.9.4. Consideraciones
1.9.5. Conversión recursivo iterativa
1.9.6. La pila de recursión
1.10. Prueba y documentación
1.10.1. Pruebas de programas
1.10.2. Prueba de la caja blanca
1.10.3. Prueba de la caja negra
1.10.4. Herramientas para realizar las pruebas
1.10.5. Documentación de programas
Módulo 2. Estructura de datos
2..1. Introducción a la programación en C++
2.1.1. Clases, constructores, métodos y atributos
2.1.2. Variables
2.1.3. Expresiones condicionales y bucles
2.1.4. Objetos
2.2. Tipos abstractos de datos (TAD)
2.2.1. Tipos de datos
2.2.2. Estructuras básicas y TAD
2.2.3. Vectores y Arrays
2.3. Estructuras de datos lineales
2.3.1. TAD Lista definición
2.3.2. Listas enlazadas y doblemente enlazadas
2.3.3. Listas ordenadas
2.3.4. Listas en C++
2.3.5. TAD Pila
2.3.6. TAD Cola
2.3.7. Pila y Cola en C++
2.4. Estructuras de datos jerárquicas
2.4.1. TAD Árbol
2.4.2. Recorridos
2.4.3. Árboles n-arios
2.4.4. Árboles binarios
2.4.5. Árboles binarios de búsqueda
2.5. Estructuras de datos jerárquicas: árboles complejos
2.5.1. Árboles perfectamente equilibrados o de altura mínima
2.5.2. Árboles multicamino
2.5.3. Referencias bibliográficas
2.6. Montículos y Cola de prioridad
2.6.1. TAD Montículos
2.6.2. TAD Cola de prioridad
2.7. Tablas Hash
2.7.1. TAD Tabla Hash
2.7.2. Funciones Hash
2.7.3. Función Hash en tablas Hash
2.7.4. Redispersión
2.7.5. Tablas Hash abiertas
2.8. Grafos
2.8.1. TAD Grafo
2.8.2. Tipos de Grafo
2.8.3. Representación gráfica y operaciones básicas
2.8.4. Diseño de Grafo
2.9. Algoritmos y conceptos avanzados sobre Grafos
2.9.1. Problemas sobre Grafos
2.9.2. Algoritmos sobre caminos
2.9.3. Algoritmos de búsqueda o recorridos
2.9.4. Otros algoritmos
2.10. Otras estructuras de datos
2.10.1. Conjuntos
2.10.2. Arrays paralelos
2.10.3. Tablas de símbolos
2.10.4. Tries
Módulo 3. Algoritmia y complejidad
3.1. Introducción a las estrategias de diseño de algoritmos
3.1.1. Recursividad
3.1.2. Divide y conquista
3.1.3. Otras estrategias
3.2. Eficiencia y análisis de los algoritmos
3.2.1. Medidas de eficiencia
3.2.2. Medir el tamaño de la entrada
3.2.3. Medir el tiempo de ejecución
3.2.4. Caso peor, mejor y medio
3.2.5. Notación asintónica
3.2.6. Criterios de análisis matemático de algoritmos no recursivos
3.2.7. Análisis matemático de algoritmos recursivos
3.2.8. Análisis empírico de algoritmos
3.3. Algoritmos de ordenación
3.3.1. Concepto de ordenación
3.3.2. Ordenación de la burbuja
3.3.3. Ordenación por selección
3.3.4. Ordenación por inserción
3.3.5. Ordenación por mezcla (Merge Sort)
3.3.6. Ordenación rápida (QuickSort)
3.4. Algoritmos con árboles
3.4.1. Concepto de árbol
3.4.2. Árboles binarios
3.4.3. Recorridos de árbol
3.4.4. Representar expresiones
3.4.5. Árboles binarios ordenados
3.4.6. Árboles binarios balanceados
3.5. Algoritmos con Heaps
3.5.1. Los Heaps
3.5.2. El algoritmo HeapSort
3.5.3. Las colas de prioridad
3.6. Algoritmos con grafos
3.6.1. Representación
3.6.2. Recorrido en anchura
3.6.3. Recorrido en profundidad
3.6.4. Ordenación topológica
3.7. Algoritmos Greedy
3.7.1. La estrategia Greedy
3.7.2. Elementos de la estrategia Greedy
3.7.3. Cambio de monedas
3.7.4. Problema del viajante
3.7.5. Problema de la mochila
3.8. Búsqueda de caminos mínimos
3.8.1. El problema del camino mínimo
3.8.2. Arcos negativos y ciclos
3.8.3. Algoritmo de Dijkstra
3.9. Algoritmos Greedy sobre Grafos
3.9.1. El árbol de recubrimiento mínimo
3.9.2. El algoritmo de Prim
3.9.3. El algoritmo de Kruskal
3.9.4. Análisis de complejidad
3.10. Backtracking
3.10.1. El Backtracking
3.10.2. Técnicas alternativas
Módulo 4. Bases de datos
4.1. Aplicaciones y propósitos de los sistemas de base de datos
4.1.1. Aplicaciones de los diferentes sistemas de base de datos
4.1.2. Propósito en los diferentes sistemas de base de datos
4.1.3. Visión de los datos
4.2. Base de datos y arquitectura
4.2.1. Base de datos relacionales
4.2.2. El diseño de base de datos
4.2.3. Bases de datos basadas en objetos y semiestructuradas
4.2.4. Almacenamiento de datos y consultas
4.2.5. Gestión de transacciones
4.2.6. Minería y análisis de datos
4.2.7. Arquitectura de las bases de datos
4.3. El modelo relacional: estructura, operaciones y álgebra relacional extendida
4.3.1. La estructura de las BD relacionales
4.3.2. Operaciones fundamentales en el álgebra relacional
4.3.3. Otras operaciones del álgebra relacional
4.3.4. Operaciones del álgebra relacional extendida
4.3.5. Valores nulos
4.3.6. Modificación de la base de datos
4.4. SQL (I)
4.4.1. ¿Qué es SQL?
4.4.2. La definición de datos
4.4.3. Estructura básica de las consultas SQL
4.4.4. Operaciones sobre conjuntos
4.4.5. Funciones de agregación
4.4.6. Valores nulos
Máster en Desarrollo de Software