Public University of Navarre



Academic year: 2021/2022 | Previous academic years:  2020/2021 
Bachelor's degree in Computer Science at the Universidad Pública de Navarra
Course code: 250601 Subject title: SOFTWARE ARCHITECTURE
Credits: 6 Type of subject: Mandatory Year: Period: 2º S
Department: Estadística, Informática y Matemáticas
Lecturers:
ARDAIZ VILLANUEVA, OSCAR (Resp)   [Mentoring ]

Partes de este texto:

 

Module/Subject matter

Módulo: Obligatorio de Ingeniería del Software

Materia: Desarrollo de Sistemas Informáticos

 

Up

Contents

 
 

Arquitectura del Software.Tipos y patrones de arquitectura del software.Arquitecturas Web. J2EE.

En esta asignatura se pretende que el alumno alcance los siguientes resultados de aprendizaje:
  • Manejar los conceptos básicos de la arquitectura de los componentes que conforman el software.
  • Analizar los problemas específicos de las arquitecturas de 3 capas.
  • Conocer los patrones de diseño que se utilizan para modelar la arquitectura de los componentes software.
  • Resolver eficientemente los problemas que plantea una arquitectura reusable de carácter Enterprise.

 

Up

General proficiencies

-   G1: Capacidad para concebir, redactar, organizar, planificar, desarrollar y firmar proyectos en el ámbito de la ingeniería en informática que tengan por objeto, de acuerdo con los conocimientos adquiridos según lo establecido en el apartado 5 de la Resolución de 8 de Junio de 2009 de la Secretaría General de Universidades (BOE de 4 de agosto de 2009) para los ámbitos tecnológicos de Ingeniería del Software, Computación y Tecnologías de la Información, la concepción, el desarrollo o la explotación de sistemas, servicios y aplicaciones informáticas.
-    G4: Capacidad para definir, evaluar y seleccionar plataformas hardware y software para el desarrollo y la ejecución de sistemas, servicios y aplicaciones informáticas, de acuerdo con los conocimientos adquiridos según lo establecido en el apartado 5 de la Resolución de 8 de Junio de 2009 de la Secretaría General de Universidades (BOE de 4 de agosto de 2009) para los ámbitos tecnológicos de Ingeniería del Software, Computación y Tecnologías de la Información. 
-    G5: Capacidad para concebir, desarrollar y mantener sistemas, servicios y aplicaciones informáticas empleando los métodos de la ingeniería del software como instrumento para el aseguramiento de su calidad, de acuerdo con los conocimientos adquiridos según lo establecido en el apartado 5 de la Resolución de 8 de Junio de 2009 de la Secretaría General de Universidades (BOE de 4 de agosto de 2009) para los ámbitos tecnológicos de Ingeniería del Software, Computación y Tecnologías de la Información.
-      G6: Capacidad para concebir, desarrollar y mantener sistemas, servicios y aplicaciones informáticas empleando los métodos de la ingeniería del software como instrumento para el aseguramiento de su calidad, de acuerdo con los conocimientos adquiridos según lo establecido en el apartado 5 de la Resolución de 8 de Junio de 2009 de la Secretaría General de Universidades (BOE de 4 de agosto de 2009) para los ámbitos tecnológicos de Ingeniería del Software, Computación y Tecnologías de la Información.
-      G9: Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero Técnico en Informática.
-      G10: Conocimientos para la realización de mediciones, cálculos, valoraciones, tasaciones, peritaciones, estudios, informes, planificación de tareas y otros trabajos análogos de informática, de acuerdo con los conocimientos adquiridos según lo establecido en el apartado 5 de la Resolución de 8 de Junio de 2009 de la Secretaría General de Universidades (BOE de 4 de agosto de 2009) para los ámbitos tecnológicos de Ingeniería del Software, Computación y Tecnologías de la Información.

 

Up

Specific proficiencies

FC2 Capacidad para planificar, concebir, desplegar y dirigir proyectos, servicios y sistemas informáticos en todos los ámbitos, liderando su puesta en marcha y su mejora continua y valorando su impacto económico y social.
FC3 Capacidad para comprender la importancia de la negociación, los hábitos detrabajo efectivos, el liderazgo y las habilidades de comunicación en todos los  entornos de desarrollo de software.
FC4 Capacidad para elaborar el pliego de condiciones técnicas de una instalación informática que cumpla los estándares y normativas vigentes.

 
IS1 Capacidad para desarrollar, mantener y evaluar servicios y sistemas software que satisfagan todos los requisitos del usuario y se comporten de forma fiable y eficiente, sean asequibles de desarrollar y mantener y cumplan normas de calidad, aplicando las teorías, principios, métodos y prácticas de la Ingeniería del Software.
IS2 Capacidad para valorar las necesidades del cliente y especificar los requisitos software para satisfacer estas necesidades, reconciliando objetivos en conflicto mediante la búsqueda de compromisos aceptables dentro de las limitaciones derivadas del coste, del tiempo, de la existencia de sistemas ya desarrollados y de las propias organizaciones.
IS3 Capacidad de dar solución a problemas de integración en función de las estrategias, estándares y tecnologías disponibles.
IS4 Capacidad de identificar y analizar problemas y diseñar, desarrollar, implementar, verificar y documentar soluciones software sobre la base de un conocimiento adecuado de las teorías, modelos y técnicas actuales.
IS5 Capacidad de identificar, evaluar y gestionar los riesgos potenciales asociados que pudieran presentarse.

 

Up

Learning outcomes

R1. Manejar los conceptos básicos de la arquitectura de los componentes que conforman el software.

R2. Analizar los problemas específicos de las arquitecturas de 3 capas

R3. Conocer los patrones de diseño que se utilizan para modelar la arquitectura de los componentes software, en particular para aplicaciones informáticas Enterprise.

R4. Resolver eficientemente los problemas que plantea una arquitectura reusable de carácter Enterprise.

 

Up

Methodology

Off-site Activities Hours
Material Study 12
Project Preparation 25
Practice Work Preparation 10
Project Development 50
Presentation Preparation 3
TOTAL 90
On-site Activities Hours
Participatory/ Expositive Classes 20
Guided Practices 14
Project Mentoring 16
Group Activities 10
Evaluation Test 2
TOTAL  60

Up

Evaluation

Learning Outcome Evaluation Method  Weight (%) Recoverable
 R1, R2, R3 Written Test on Theory Material 25%, Minimum to pass: 4/10  Yes
 R4 Lab Test on Practice Material 25%, Minimum to pass: 4/10.  Yes
 R1, R2, R3  Continuous Onsite Small Works 10%  No
 R4  Practice PBL Project  40%, Minimum to pass: 5/10.  Yes

 

Up

Agenda

-1: Software architectural patterns. MVC pattern in Android and Single Page Apps. Distributed Applications.

-2: Web Architectures From CGIs to Web Services and Single Page Apps.

-3: 3-tier Architectures. Presentation, business logic and data tiers.

-4: Enterprise Architectures: J2EE, Frontend-backend architectures. Cloud services.

-5: Development project: an enterprise Android App with MVC pattern following clean code practices.

Up

Bibliography

Access the bibliography that your professor has requested from the Library.


Basic

-Ian Gorton "Essential Software Architecture" Second Edition,Springer-Verlag, 2011.

-Benjamin Aumialle "J2EE. Desarrollo de aplicaciones Web", Ediciones ENI, 2002.

-Nazim Benbourahala, Android 4 : principios del desarrollo de aplicaciones Java, 2013. 

- Jesús Tomás, El Gran libro de Android avanzado. 2014.

-Robert Martin "Clean Code: A Handbook of Agile Software Craftsmanship", 2008.

Complementary

-Len Bass, Paul Clements, Rich Kazman, "Software Architecture in Practice",Second Edition, Addison-Wesley, 2003

-Inderjeet Singh, Beth Stearns, Mark Johnson, and the Enterprise Team "Designing Enterprise Applications with the J2EE TM Platform", Second Edition, Addison-Wesley, 2002.

-Stefanov, Stoyan, JavaScript patterns, Editorial O'Reilly, 2010

 

Up

Languages

Spanish

English

Up

Location

Aulario

Up