La sécurité de l'information est un sujet extrêmement important dans le monde d'aujourd'hui. En tant qu'individus, nous cherchons à protéger nos informations personnelles, tandis que les entreprises pour lesquelles nous travaillons doivent protéger leurs fournisseurs, leurs clients et leurs actifs. Pour créer des logiciels sûrs, il faut mettre en œuvre des pratiques sécurisées le plus tôt possible dans le cycle de développement des logiciels (SDLC).
Cette Specializations se concentre sur la garantie de la sécurité dans le cadre de la conception de logiciels et s'adresse à toute personne ayant une certaine expérience professionnelle dans le développement de logiciels et qui a besoin d'un contexte, d'une perspective et de compétences pour reconnaître les aspects importants de la sécurité dans la conception de logiciels.
Vous prendrez en compte la conception sécurisée pour plusieurs modèles SDLC, les considérations d'architecture logicielle et les modèles de conception. Vous comprendrez comment identifier et mettre en œuvre une conception sécurisée en tenant compte des bases de données, de l'UML, des tests unitaires et de l'éthique. Les mentalités et les attitudes des concepteurs et des pirates informatiques qui ont réussi sont présentées, ainsi que les réussites et les échecs des projets.
L'expérience de l'utilisateur sera toujours au cœur de la conception frontale et vous aurez l'occasion d'assurer des interfaces utilisateur propres et efficaces qui servent également à fournir la meilleure sécurité. Les sujets liés au développement back-end, tels que la conception de bases de données, sont également abordés.
Projet d'apprentissage appliqué
Les étudiants créeront un diagramme de classes en langage de modélisation unifié (UML) et un diagramme de séquence UML à l'aide de l'outil de modélisation Rhapsody d'IBM pour un ensemble de classes et d'actions décrites dans les cours. Le téléchargement et l'activation de Rhapsody sont également abordés. Les étudiants téléchargeront et installeront également NetBeans pour Java et JUnit, un outil de test unitaire. Ils configureront NetBeans pour qu'il utilise JUnit et testera le code écrit pour les classes et les méthodes décrites dans le projet UML. Enfin, les étudiants étudieront des études de cas de conceptions réussies (Bitcoin) et non réussies (Therac-25).