Introduit les fondamentaux de l'ingénierie logicielle, couvrant le traitement de l'instruction, les algorithmes, les langages de programmation, les abstractions, les tests, la sécurité et l'open source.
Explore la gestion des défauts, des stratégies d'essai et des défis en matière de qualité des logiciels, avec des exemples du monde réel et des études de cas.
Explore les processus de développement logiciel, comparant le modèle Waterfall aux méthodes Agile, en se concentrant sur Scrum, les valeurs, les principes et les rôles d'équipe.
Explore l'analyse automatisée de terminaison à l'aide de paires de dépendances, couvrant les techniques classiques et modernes, les concours annuels et des outils comme AProVE.
Offre un cours de crash en MATLAB, couvrant la représentation des données, l'indexation des tableaux, les opérations mathématiques, et les pièges communs.
Couvre les stratégies de test, en mettant l'accent sur la couverture et la qualité du code dans le développement de logiciels à travers diverses méthodologies de test et des exemples pratiques.