XSL Content

Software Engineering26017

Centre
Faculty of Economics and Business. Álava Department
Degree
Doble Grado en ADE + Ingeniería Informática de Gestión y Sistemas de Información
Academic course
2023/24
Academic year
3
No. of credits
6
Code
26017

TeachingToggle Navigation

Distribution of hours by type of teaching
Study typeHours of face-to-face teachingHours of non classroom-based work by the student
Lecture-based4567.5
Applied laboratory-based groups1522.5

Teaching guideToggle Navigation

Description and Contextualization of the SubjectToggle Navigation

The general objective of the course is to design and implement applications, the requirements of which have been previously captured. To develop software products following a systematic process, active methodologies and multi-layer software architectures will be applied, relying on tools that improve the quality of the software.



To be able to study Software Engineering without undue difficulty, it is recommended to have previously acquired the following skills:



- In the "Modular and Object Oriented Programming" subject:

* Know and understand the fundamentals of the Object Orientation paradigm and the corresponding

elements in an Object Oriented programming language

* Understand the difference between classes and objects; the relationship between classes,

inheritance and polymorphism

* Develop small programs applying all the concepts about programming acquired

* Knowledge and use of exceptions as an error control mechanism for the correct operation of

programs

- In the subject "Data Structures and Algorithms" subject:

* Knowledge and ability to apply Abstract Data Types to problems of medium complexity: Lists,

Stacks, Queues, Hash Tables, Trees and Graphs

* Knowledge and ability to analyze the main algorithms for the treatment of data structures:

Search, Sorting, and Enumeration

* Ability to efficiently select, design and implement the best data structure for solving a problem

Skills/Learning outcomes of the subjectToggle Navigation

C1: Know how to distinguish the various stages that make up any software engineering process.

C2: Know how to understand an object-oriented software system in the UML language.

C3: Know how to design a software system in a multi-layer architecture based on the analysis previously conducted.

C4: Know how to implement a system based on the design of the application.



Transversal competencies:



C9b: Know how to communicate and transmit knowledge, abilities and skills of the profession of Computer Engineering

Theoretical and practical contentToggle Navigation

UT1: Introduction to Software Engineering

- Motivation and life cycle of the software

- Objectives, properties and associated programming technologies.

UT2: Specification of UML artifacts

- Study of the different artifacts existing in UML

UT3: Multi-layer software architectures: Presentation, Business Logic and Data

- Design of the different layers that make up a software system

UT4: Object Oriented Design and Programming

- Functionality design

UT5: Implementation of a specific product

- Implementation of a software system using a set of languages and current tools

MethodologyToggle Navigation

As it is a substantially practical subject, the MASTER classes (M) will be used for the exposition of the theoretical concepts necessary in the practical classes, as well as for the resolution of doubts raised by the students. In the same way, the concepts acquired through the resolution of exercises will be reinforced, either individually or in small groups.



The COMPUTER PRACTICES (CP) classes will be used to apply the active Project-Based Learning methodology. At the beginning of the semester, students will be provided with a project statement that realistically brings together the contents of the subject. They will carry out this project in groups of 2-4 people, following the agile SCRUM methodology. This methodology proposes to develop the project in an incremental way, through successive iterations, in each of which a partial product is obtained that adds new functionality to the previous one. Each iteration is also associated with the realization of its corresponding documentation.

Assessment systemsToggle Navigation

  • Continuous Assessment System
  • Final Assessment System
  • Tools and qualification percentages:
    • Written test to be taken (%): 60
    • Team projects (problem solving, project design)) (%): 40

Ordinary Call: Orientations and DisclaimerToggle Navigation

The evaluation of the subject in the ORDINARY call will be made through continuous evaluation or final evaluation. By default, all students will take continuous assessment, unless they resign it.



* EVALUATION THROUGH FINAL EVALUATION



The student can renounce the continuous evaluation to carry out the final evaluation. This resignation must be submitted in writing to the responsible teachers within the terms stipulated in Article 8.3 of the regulations on student assessment. Exceptional cases or waivers of continuous evaluation will not be accepted after the dates enabled for it.



Students who have waived continuous assessment will undergo a test that represents 100% of the

course grade in which both theoretical and practical (competences addressed in the

project) aspects worked on in the subject will be evaluated. To pass, the student must obtain a minimum grade of 5 out of 10 in

both parts (theoretical and practical). When a student fails the subject having passed the

theoretical part or the practical part, that part will be kept for the extraordinary call.



The student can give up the continuous evaluation to carry out the final evaluation. This waiver will

must submit in writing to the responsible faculty within the deadlines stipulated in Article 8.3 of the regulations

about student assessment. Exceptional cases or waivers of continuous evaluation will not be accepted.

after the dates enabled for it.







* CONTINUOUS ASSESSMENT



The default assessment of the subject is done through continuous assessment, unless the student has expressly waived it.



The final grade for the course is calculated based on the test scores and a project to be developed as a team. The final grade is calculated with the following weights:

- 40% based on a series of deliveries on a project (deliverables).

- 60% by taking different tests that will always include 3 exams.



In this evaluation, the student takes two exams throughout the semester.

The student must obtain at least 4 out of 10 in each of the exams, being the average at least 5 out of 10, and 5 out of 10 in the project in order to pass. Otherwise, the grade obtained will be the average of the exams (and in no case will it exceed 4 points out of 10). When a student fails the subject having

passed the theoretical part (has obtained an average mark in the exams equal to or greater than 5, obtaining at least 4

points out of 10 in each of the partials) or the practical part, that part will be kept for the extraordincary call.



If it is not possible to carry out a face-to-face evaluation of the subject, the pertinent changes will be made to do it online by using the existing computer tools at the UPV / EHU. The characteristics of this online evaluation will be made public.



* WAIVER OF THE RIGHT TO EXAM



The student or the student who, having selected to take the final evaluation, does not appear for the exam in the ordinary call, will obtain the final grade "Not Presented".



The students who follow the continuous evaluation may make the waiver of the call in accordance with the provisions of Article 12 of the regulations on student evaluation.



* COPY CASES:

Article 11 of the current regulations regarding the evaluation of students will apply.

Extraordinary Call: Orientations and DisclaimerToggle Navigation

Students who have not passed the subject in the ordinary call will undergo a test that represents 100% of the

the course mark in which both theoretical and practical (competences addressed in the

project) aspects worked on in the subject will be evaluated. To pass, the student must obtain a minimum grade of 5 in

both parts (theoretical and practical). The theoretical part will account for 60% of the final mark and the practical part 40%.

Students who have passed one of the parts (theoretical or practical) in the ordinary call must only

do the pending part.



To waive the right to the exam, it will be enough to not show up.





If it is not possible to carry out a face-to-face evaluation of the subject, the pertinent changes will be made to do it online by using the existing computer tools at the UPV / EHU. The characteristics of this online evaluation will be made public.





* COPY CASES:

Article 11 of the current regulations regarding the evaluation of students will apply.

Compulsory materialsToggle Navigation

Material shared in eGela.

BibliographyToggle Navigation

Basic bibliography

Ingeniería del Software. Un enfoque práctico. Roger S. Pressman. MacGraw-Hill, 2001. 5a Edición.



Ingeniería El Proceso Unificado de Desarrollo de Software Jacobson, Booch, Rumbaugh. Editorial Addison Wesley, 1999



Design Patterns, Elements of Reusable Object-Oriented Software. Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides, 1995



A Pattern Language: Towns, Buildings, Construction. Christopher Alexander, Sara Ishikawa, Murray Silverstein, 1977



Java 8 in Action

Lambdas, streams, and functional-style programming. Raoul-Gabriel Urma, Mario Fusco, and Alan Mycroft. Manning. 2014

In-depth bibliography

Construcción de Software Orientado a Objetos. Bertrand Meyer. Prentice-Hall. 1998a

Web addresses

http://www.uml.org/
Sitio oficial de UML donde se puede encontrar su especificación y documentación complementaria.

http://www.visual-paradigm.com/product/vpuml/
Sitio oficial de la herramienta Visual Paradigm.

Libros sobre patrones:
http://hillside.net/patterns/books/
http://www.javacamp.org/designPattern/
http://www.dofactory.com/net/design-patterns