Home - Log in

Software Engineering and Design Pattern

2I1AC3 Software Engineering and Design Pattern Computer Science S7
Cours : 9 h TD : 8 h TP : 16 h Projet : 0 h Total : 33 h
Responsable : Regis Clouard
Pré-requis
Software engineering and Object Oriented Design
Java and Object Oriented Programming
Objectifs de l'enseignement
Software programming with object-oriented language goes beyond simple coding with classes. This introduces a new paradigm for analyzing and designing software.
The pedagogical objective of this course is to raise awareness of the advanced paradigms of analysis and object-oriented design based on a set of principles of good practice and in particular on the use of design patterns. This also involves specifying some principles for organizing the code into the packages.
Programme détaillé

  • SOLID principles of object-oriented design.
  • Reusability in software design.
  • The basic design patterns (GoF design patterns).
  • Architectural patterns.
  • Principles of package design.
Applications (TD ou TP)
Development of a large software system using advanced design principles, design patterns and a project method. Teams are composed of 8 students.
Compétences acquises

  • Develop a critical thinking about software design by taking a step back.
  • Know how to evaluate the quality of a design and realize that it tends to rot.
  • Know how to produce a design that is:

    • Robust, for its reliability and performance,
    • Maintainable, for its correction and its evolution,
    • Reusable, to capitalize on its achievements.

  • Know how to reuse a design:

    • Know and appreciate the existing.
    • Adapt an existing solution.

  • Know how to organize its code into packages to promote:

    • Development,
    • Maintenance,
    • Reuse.

Bibliographie

  • E. Gamma, R. Helm, R. Johnson, J. Vlissides. « Design Patterns Catalogue de modèles de conception réutilisables », Addison-Wesley, 1995/1999.
  • A. Shalloway, J. R. Trott. « Design Patterns par la pratique », 2002.
    F. Bushmann, R. Meunier, H. Rohnert, M. Stal, « Pattern-oriented software architecture: a system of patterns », Wiley & Sons, 1996.
  • B. Bates, E. Freeman, E. Freeman, K. Sierra « Head First Design Patterns », O'Reilly Media, 2004.
    Robert Martin, « Agile software development: principles, patterns, and practices », Pearson Education, 2002.
  • Martin Fowler, David Rice, Matthew Foemmel, Edward Hieatt, Robert Mee, and Randy Stafford, « Patterns of Enterprise Application Architecture », Addison-Wesley, 2002.

© 2024 - ENSICAEN ( Legal Notices - Credits )