Qué necesitas saber antes de
comenzar

Inicio 4 June 2026 04:14

Fin 4 June 2026

00 Días
00 Horas
00 Minutos
00 Segundos
course image

Prácticas de Desarrollo de Software

Domina el desarrollo de software con UML, Git, Docker, pipelines de CI/CD e integración de IA. Adquiere habilidades prácticas en la recopilación de requisitos, prácticas ágiles, depuración, pruebas y estrategias de DevOps.
Birla Institute Of Technology And Science–Pilani (BITS–Pilani) via Coursera

Birla Institute Of Technology And Science–Pilani (BITS–Pilani)

2865 Cursos


2 days 23 hours 38 minutes

Actualización opcional disponible

Principiante

Avanza a tu propio ritmo

Paid Course

Actualización opcional disponible

Resumen

Welcome to the Software Development Practices course! In this course, you will explore techniques for eliciting and documenting software requirements, including the creation of use cases and user stories.

You will learn to design software systems using visual modeling methods such as UML diagrams and Data Flow Diagrams (DFDs). Throughout this learning journey, you will acquire the skills to produce high-quality code, leverage libraries and APIs, and efficiently manage code with version control tools like Git and GitHub.

You will also delve into contemporary deployment and DevOps strategies, encompassing debugging, testing, Docker implementation, and CI/CD pipelines, to ensure robust and reliable software development. With a blend of practical hands-on experience and theoretical insights, this course equips you with the expertise needed to thrive in software development.

Get ready to embark on an exciting learning journey that will enhance your proficiency in Software Development Practices.

Programa

  • Introducción al Curso
  • ¡Bienvenido al curso de Prácticas de Desarrollo de Software! En este curso, explorarás técnicas para elicitación y documentación de requisitos de software, incluyendo la creación de casos de uso e historias de usuario. Aprenderás a diseñar sistemas de software utilizando métodos de modelado visual como diagramas UML y Diagramas de Flujo de Datos (DFDs). A lo largo de este viaje de aprendizaje, adquirirás habilidades para producir código de alta calidad, aprovechar bibliotecas y APIs, y gestionar eficientemente el código con herramientas de control de versiones como Git y GitHub. También profundizarás en estrategias contemporáneas de implementación y DevOps, abarcando depuración, pruebas, implementación de Docker y pipelines CI/CD, para garantizar un desarrollo de software robusto y confiable. Con una combinación de experiencia práctica y conocimientos teóricos, este curso te equipa con la experiencia necesaria para prosperar en el desarrollo de software. Prepárate para embarcarte en un emocionante viaje de aprendizaje que mejorará tu competencia en Prácticas de Desarrollo de Software.
  • Visión General de las Prácticas de Desarrollo de Software
  • Este módulo ofrece una visión general integral del desarrollo de software, incluyendo metodologías y prácticas esenciales. Los estudiantes explorarán el Ciclo de Vida del Desarrollo de Software (SDLC) y compararán metodologías clave como Waterfall, Agile y DevOps. Se enfatizará la importancia de la iteración y la retroalimentación en el proceso de desarrollo para resaltar la mejora continua y la adaptación. Este módulo introduce a los estudiantes en aplicaciones prácticas de conceptos de desarrollo de software a través de estudios de caso. Al examinar aplicaciones web desarrolladas en Java y Python, los estudiantes obtendrán ideas sobre escenarios del mundo real. Además, una descripción general de la estructura del curso mostrará cómo cada módulo está interconectado y se relaciona con los estudios de caso, proporcionando una hoja de ruta para el viaje de aprendizaje.
  • Requisitos de Software y Prácticas Ágiles
  • El módulo "Requisitos de Software" ofrece una introducción completa a las técnicas y prácticas esenciales para recopilar, documentar y gestionar requisitos de software. Los aprendices explorarán las mejores prácticas para la recopilación de requisitos y la creación de casos de uso e historias de usuario efectivas. Además, el módulo ofrece una visión general del marco de Scrum, cubriendo roles, artefactos y eventos para mejorar las habilidades de gestión de proyectos ágiles. A través de un estudio de caso práctico sobre un sistema de cajeros automáticos bancarios, los participantes aplicarán sus conocimientos para desarrollar requisitos del mundo real y organizarlos en sprints, asegurándose de que puedan gestionar eficazmente proyectos de software desde el inicio hasta la finalización.
  • Diseño de Software
  • El módulo "Diseño de Software" equipa a los aprendices con las habilidades necesarias para diseñar eficazmente sistemas de software a través de la gestión práctica de proyectos y el uso de técnicas de modelado visual. Este módulo cubre la creación de casos de uso, historias de usuario y planes de sprint para iniciar un proyecto. También aborda los diagramas del Lenguaje de Modelado Unificado (UML), enseñando a los aprendices cómo construir e interpretar diagramas de casos de uso, clases, componentes, secuencias y actividades. Además, el módulo se centra en diseñar el flujo de datos con diagramas de contexto y Diagramas de Flujo de Datos (DFDs). Al final de este módulo, los aprendices serán capaces de diseñar sistemas de software robustos y representar visualmente su arquitectura y procesos de datos con precisión.
  • Desarrollando Código Efectivamente: Herramientas, Prácticas y Revisiones
  • Este módulo se centra en los aspectos esenciales de escribir código de alta calidad, utilizando eficazmente bibliotecas y APIs, y realizando revisiones exhaustivas del código. Los aprendices explorarán la importancia del código limpio, comprenderán los estándares de codificación y las mejores prácticas, y aprenderán cómo aplicar estos principios en su trabajo. Además, el módulo cubre la integración y el uso avanzado de bibliotecas y APIs, junto con herramientas para generar documentación. Finalmente, los aprendices obtendrán conocimientos sobre cómo llevar a cabo recorridos y revisiones productivas de código, utilizando herramientas comunes para dar retroalimentación constructiva.
  • Proyectos de Desarrollo de Software
  • Este módulo proporciona una introducción completa a los Entornos de Desarrollo Integrado (IDEs) y demuestra su aplicación en un proyecto práctico. Los aprendices explorarán las características fundamentales de los IDEs populares, comprenderán cómo configurar y configurar un IDE para sus proyectos, y descubrirán complementos que mejoran la productividad. El módulo también incluye una demostración práctica del proyecto, guiando a los aprendices a través del proceso de entender los requisitos del proyecto, la implementación y la ejecución en una máquina local.
  • Construcción de Código y Control de Versiones
  • Este módulo proporciona una comprensión profunda de los procesos y herramientas esenciales para construir, gestionar y controlar código fuente en el desarrollo de software. Cubre todo el ciclo de vida del código, desde la compilación hasta el control de versiones y la aplicación práctica de Git y GitHub. A través de una serie de lecciones y demostraciones prácticas, los aprendices desarrollarán las habilidades necesarias para gestionar eficientemente el código y colaborar en proyectos de software.
  • Depuración y Pruebas
  • El módulo "Depuración y Pruebas" proporciona a los aprendices una comprensión completa de los conceptos y prácticas esenciales en aseguramiento de la calidad del software. A través de tres lecciones enfocadas, los participantes explorarán conceptos introductorios de pruebas, técnicas prácticas de depuración y enfoques de pruebas estándar en la industria. Combinando el conocimiento teórico con ejercicios prácticos, este módulo equipa a los aprendices con las habilidades necesarias para asegurar la calidad y confiabilidad de los productos de software en entornos de desarrollo del mundo real.
  • Prácticas de Despliegue de Software
  • Este módulo ofrece una visión general completa de las prácticas modernas de despliegue de software, centrándose en la evolución de servidores físicos a máquinas virtuales y contenedores, con énfasis en la tecnología Docker. A través de una serie de lecciones, los aprendices obtendrán conocimientos básicos sobre Docker, aprenderán a crear y utilizar Dockerfiles, y adquirirán habilidades prácticas en el despliegue de imágenes de Docker y el uso de DockerHub.
  • DevOps
  • Este módulo proporciona una introducción completa a DevOps, cubriendo su necesidad, definición y dimensiones principales. Profundiza en prácticas esenciales de DevOps como la Integración Continua y la Entrega/Despliegue Continuos, detallando su implementación dentro de pipelines de CI/CD. Además, ofrece demostraciones prácticas para solidificar conceptos teóricos a través de la aplicación práctica. Al final, los aprendices estarán equipados para entender, explicar e implementar prácticas de DevOps eficazmente.
  • Tendencias Actuales en Prácticas de Desarrollo de Software
  • El módulo introduce a los aprendices al papel transformador de la inteligencia artificial en el desarrollo de software moderno. Este módulo primero cubre la implementación del caso de estudio discutido a lo largo del curso; y luego cubre la integración de la IA en diversas etapas del ciclo de vida del desarrollo de software, incluyendo el desarrollo, las pruebas y el despliegue. Los participantes explorarán tendencias actuales, herramientas y técnicas que aprovechan la IA para mejorar la productividad, precisión y eficiencia. A través de las lecciones sobre prácticas impulsadas por IA, casos de uso del mundo real y tendencias futuras, los aprendices obtendrán el conocimiento y las habilidades necesarias para incorporar efectivamente tecnologías de IA en sus procesos de desarrollo de software.
  • Examen Integral

Impartido por

Shreyas Suresh Rao, Prof. Akanksha Bharadwaj, and Punit Galav


Materias

Programming