UD I. Introduction to Software Engineering
Topic 1. Introduction to Software Engineering
1.1. Software Engineering as a discipline
1.2. Software quality
1.3. Software development cycle models
1.4. The UML Modeling Language
UD II. Object Oriented Software Development
Topic 2. Concepts of Object Orientation
Topic 2. Concepts of Object Orientation
2.1. Classes, objects, state and behavior
2.1. Inheritance and Interfaces: Polymorphism
2.1. Generic and Enumerated Types
2.2. Object Oriented Design Patterns
2.3 Sorting and Search
UD III.- Advanced Aspects of Object-Oriented Programming
Topic 3. Exception Management
3.1. Definition and handling of Exceptions
3.2. Categories of Exceptions
3.3 Definition of Exceptions by the programmer
Topic 4. Entry/Exit Management
4.1. The Decorator pattern in Entry/Exit.
4.2. File types and data organization.
4.3. Input/Output to text and binary files
4.4. Random Access Files.
4.5. Object Serialization.
Topic 5. Graphical User Interfaces
5.1. The Framework as a design element.
5.2. Structure of a Framework for Graphic User Interfaces (GUI).
5.3. Design Elements in a GUI Framework.
5.4. Event management.
5.5. Design Management.
Topic 6. Relational Databases.
6.1. Database Fundamentals.
6.2. The Entity-Relationship Model.
6.3. The Relational Model. Transformations.
6.4. The SQL language.
UD IV.- Dynamic Data Structures
Topic 7. Sets.
Topic 8. Self-Referenced Structures.
Topic 9. Batteries.
Topic 10. Queues.
Topic 11. Linked Lists.
Topic 12. Trees.