Birla Institute of Technology & Science, Pilani

Software Development Practices

Développez vos compétences avec Coursera Plus pour 239 $/an (habituellement 399 $). Économisez maintenant.

Ce cours n'est pas disponible en Français (France)

Nous sommes actuellement en train de le traduire dans plus de langues.
Birla Institute of Technology & Science, Pilani

Software Development Practices

Shreyas Suresh Rao
Prof. Akanksha Bharadwaj
Punit Galav

Instructeurs : Shreyas Suresh Rao

Obtenez un aperçu d'un sujet et apprenez les principes fondamentaux.
niveau Débutant

Expérience recommandée

7 semaines à compléter
à 10 heures par semaine
Planning flexible
Apprenez à votre propre rythme
Obtenez un aperçu d'un sujet et apprenez les principes fondamentaux.
niveau Débutant

Expérience recommandée

7 semaines à compléter
à 10 heures par semaine
Planning flexible
Apprenez à votre propre rythme

Ce que vous apprendrez

  • Analyze and apply techniques for gathering and documenting software requirements, including creating use cases and user stories.

  • Design software systems using visual modeling techniques, including UML diagrams and Data Flow Diagrams (DFDs).

  • Write high-quality code, utilize libraries and APIs, and manage code with version control systems like Git and GitHub.

  • Implement debugging, testing, Docker deployment, and CI/CD pipelines for efficient and reliable software development.

Compétences que vous acquerrez

  • Catégorie : Systems Design
  • Catégorie : DevOps
  • Catégorie : Code Review
  • Catégorie : Software Development
  • Catégorie : Requirements Analysis
  • Catégorie : Application Deployment
  • Catégorie : Version Control
  • Catégorie : Functional Requirement
  • Catégorie : Software Design Documents
  • Catégorie : Software Design
  • Catégorie : User Requirements Documents
  • Catégorie : Software Documentation
  • Catégorie : CI/CD
  • Catégorie : Software Development Life Cycle
  • Catégorie : Containerization
  • Catégorie : Debugging

Outils que vous découvrirez

  • Catégorie : Git (Version Control System)
  • Catégorie : Unified Modeling Language
  • Catégorie : Docker (Software)
  • Catégorie : GitHub

Détails à connaître

Évaluations

137 devoirs

Enseigné en Anglais

Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées

 logos de Petrobras, TATA, Danone, Capgemini, P&G et L'Oreal

Il y a 12 modules dans ce cours

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.

Inclus

3 vidéos1 lecture1 sujet de discussion

This module provides a comprehensive overview of software development, including essential methodologies and practices. Students will explore the Software Development Life Cycle (SDLC) and compare key methodologies such as Waterfall, Agile, and DevOps. The importance of iteration and feedback in the development process will be emphasized to highlight continuous improvement and adaptation. This module introduces students to practical applications of software development concepts through case studies. By examining web applications developed in Java and Python, students will gain insights into real-world scenarios. Additionally, an overview of the course structure will show how each module is interconnected and relates to the case studies, providing a roadmap for the learning journey.

Inclus

15 vidéos4 lectures14 devoirs1 sujet de discussion

The "Software Requirements" module provides a comprehensive introduction to the techniques and practices essential for gathering, documenting, and managing software requirements. Learners will explore best practices for requirements gathering, and the creation of effective use cases and user stories. Additionally, the module offers an overview of the Scrum framework, covering roles, artifacts, and events to enhance agile project management skills. Through a practical case study on a Bank ATM system, participants will apply their knowledge to develop real-world requirements and organize them into sprints, ensuring they can effectively manage software projects from inception to completion.

Inclus

16 vidéos3 lectures16 devoirs1 sujet de discussion

The "Software Design" module equips learners with the skills to effectively design software systems through practical project management and the use of visual modeling techniques. This module covers the creation of use cases, user stories, and sprint plans to kickstart a project. It also delves into Unified Modeling Language (UML) diagrams, teaching learners how to construct and interpret use case, class, component, sequence, and activity diagrams. Additionally, the module focuses on designing data flow with context diagrams and Data Flow Diagrams (DFDs). By the end of this module, learners will be able to design robust software systems and visually represent their architecture and data processes accurately.

Inclus

16 vidéos3 lectures15 devoirs1 sujet de discussion

This module focuses on the essential aspects of writing high-quality code, effectively utilizing libraries and APIs, and conducting thorough code reviews. Learners will explore the importance of clean code, understand coding standards and best practices, and learn how to apply these principles in their work. Additionally, the module covers the integration and advanced use of libraries and APIs, along with tools for generating documentation. Finally, learners will gain insights into conducting productive code walkthroughs and reviews, using common tools to provide constructive feedback.

Inclus

18 vidéos4 lectures19 devoirs1 sujet de discussion

This module provides a comprehensive introduction to Integrated Development Environments (IDEs) and demonstrates their application in a practical project. Learners will explore the fundamental features of popular IDEs, understand how to set up and configure an IDE for their projects, and discover productivity-enhancing plugins. The module also includes a hands-on project demonstration, guiding learners through the process of understanding project requirements, implementation, and execution on a local machine.

Inclus

12 vidéos3 lectures11 devoirs1 sujet de discussion

This module provides a thorough understanding of the essential processes and tools for building, managing, and controlling source code in software development. It covers the entire lifecycle of code from compilation to version control and practical application of Git and GitHub. Through a series of lessons and practical demonstrations, learners will develop the skills needed to efficiently manage code and collaborate on software projects.

Inclus

16 vidéos5 lectures13 devoirs1 sujet de discussion

The "Debugging and Testing" module provides learners with a comprehensive understanding of essential concepts and practices in software quality assurance. Through three focused lessons, participants will explore introductory testing concepts, practical debugging techniques, and industry-standard testing approaches. By combining theoretical knowledge with hands-on exercises, this module equips learners with the skills needed to ensure the quality and reliability of software products in real-world development environments.

Inclus

13 vidéos4 lectures10 devoirs1 sujet de discussion

This module provides a comprehensive overview of modern software deployment practices, focusing on the evolution from physical servers to virtual machines and containers, with an emphasis on Docker technology. Through a series of lessons, learners will gain foundational knowledge of Docker, learn how to create and use Dockerfiles, and acquire practical skills in deploying Docker images and utilizing DockerHub.

Inclus

16 vidéos4 lectures14 devoirs1 sujet de discussion

This module provides a comprehensive introduction to DevOps, covering its need, definition, and core dimensions. It delves into essential DevOps practices like Continuous Integration and Continuous Delivery/Deployment, detailing their implementation within CI/CD pipelines. Additionally, it offers practical demonstrations to solidify theoretical concepts through hands-on application. By the end, learners will be equipped to understand, explain, and implement DevOps practices effectively.

Inclus

15 vidéos4 lectures12 devoirs1 sujet de discussion

The module introduces learners to the transformative role of artificial intelligence in modern software development. This module first covers the implementation of the case study discussed throughout the course; and then covers the integration of AI in various stages of the software development lifecycle, including development, testing, and deployment. Participants will explore current trends, tools, and techniques that leverage AI to enhance productivity, accuracy, and efficiency. Through the lessons on AI-driven practices, real-world use cases, and future trends, learners will gain the knowledge and skills necessary to effectively incorporate AI technologies into their software development processes.

Inclus

15 vidéos3 lectures12 devoirs1 sujet de discussion

Inclus

1 devoir

Instructeurs

Shreyas Suresh Rao
Birla Institute of Technology & Science, Pilani
2 Cours2 362 apprenants
Prof. Akanksha Bharadwaj
Birla Institute of Technology & Science, Pilani
1 Cours663 apprenants
Punit Galav
Birla Institute of Technology & Science, Pilani
1 Cours663 apprenants

Offert par

En savoir plus sur Software Development

Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?

Felipe M.

Étudiant(e) depuis 2018
’Pouvoir suivre des cours à mon rythme à été une expérience extraordinaire. Je peux apprendre chaque fois que mon emploi du temps me le permet et en fonction de mon humeur.’

Jennifer J.

Étudiant(e) depuis 2020
’J'ai directement appliqué les concepts et les compétences que j'ai appris de mes cours à un nouveau projet passionnant au travail.’

Larry W.

Étudiant(e) depuis 2021
’Lorsque j'ai besoin de cours sur des sujets que mon université ne propose pas, Coursera est l'un des meilleurs endroits où se rendre.’

Chaitanya A.

’Apprendre, ce n'est pas seulement s'améliorer dans son travail : c'est bien plus que cela. Coursera me permet d'apprendre sans limites.’
Coursera Plus

Ouvrez de nouvelles portes avec Coursera Plus

Accès illimité à 10,000+ cours de niveau international, projets pratiques et programmes de certification prêts à l'emploi - tous inclus dans votre abonnement.

Faites progresser votre carrière avec un diplôme en ligne

Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne

Rejoignez plus de 3 400 entreprises mondiales qui ont choisi Coursera pour les affaires

Améliorez les compétences de vos employés pour exceller dans l’économie numérique

Foire Aux Questions