DEGREE CURRICULUM SOFTWARE ARCHITECTURES Degree in Computer Engineering. Teaching staff: GIL IRANZO, ROSA MARIA GARCIA GONZALEZ, ROBERTO



Similar documents
ENGSOF2 - Software Engineering II

IES - Introduction to Software Engineering

DEGREE CURRICULUM COMPUTER GRAPHICS AND MULTIMEDIA Master's Degree in Informatics Enginneering

Experiences with ALM tools in Software Engineering course

Middleware for Heterogeneous and Distributed Information Systems

DSA - Service and Application Design

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note

Course Portfolio. INFO4450 Web Design

Excerpts from Chapter 4, Architectural Modeling -- UML for Mere Mortals by Eric J. Naiburg and Robert A. Maksimchuk

Academic year DEGREE CURRICULUM GENERATION AND DISTRIBUTION OF ENERGY Master in Industrial Engineering. Teaching staff: Jerome Barrau

Enterprise Systems Development

Lecture Overview. Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes. Prof. Dr.

MISSISSIPPI STATE UNIVERSITY COLLEGE OF EDUCATION. DEPARTMENT of INSTRUCTIONAL SYSTEMS and WORKFORCE DEVELOPMENT COURSE SYLLABUS

Course Title: ITAP 4371: E-Commerce. Semester Credit Hours: 3 (3,0)

CSE 445/598 Distributed Software Development

ADSO-I5O01 - Operating Systems Administration

DEGREE CURRICULUM ELECTRICAL INSTALLATIONS AND HVAC SYSTEMS Master's Degree in Industrial Engineering

!! " "!! # $ % " & ' $ % (! %) * +, $ ( ) ' " -

Introduction. Observation Patterns. Accounting Patterns. How to use Patterns

Fridays, 15:30-16:30 (prior appointment 2 days in advance at: antoniorso10@gmail.com)

INSTITUTO POLITÉCNICO NACIONAL

Organization. Introduction to Software Engineering

Course Computer Science Academic year 2012/2013 Subject Software Engineering II ECTS 6

DEGREE CURRICULUM SIGNALS AND SYSTEMS Degree in Automation and Industrial Electronic Engineering

Agile Techniques for Object Databases

[2006] IEEE. Reprinted, with permission, from [M. Ye and K. Sandrasegaran, Teaching about Firewall Concepts using the inetwork Simulator, Information

Widener University School of Engineering. EE 482A Computer Networking and Data Communications. Syllabus Spring 2013

Indiana Content Standards for Educators COMPUTER EDUCATION

1.1 Issue Description

INF - Computer Science

Databases. DSIC. Academic Year

SI - Computer Security

PI - Internet Protocols

Sílabo del curso Global Supply Chain Management

GenericServ, a Generic Server for Web Application Development

COURSE GUIDE:Model-Driven Software Development (MDE)

Monfort College of Business Semester Course Syllabus ( ) COURSE PREFIX/TITLE: BAMG 354 Organizational Behavior Sem. Hrs. 3 Ed.

Services Marketing 2011/12. Master of Science Program Code Msc Services Management. Ana Côrte-Real. Topics and Objectives

240IOI21 - Operations Management

INSTITUTO POLITÉCNICO NACIONAL

Syllabus. MIS 690 Supply Chain Management and Strategy

MISSISSIPPI STATE UNIVERSITY COLLEGE OF EDUCATION. DEPARTMENT of LEADERSHIP & FOUNDATIONS COURSE SYLLABUS. Human Resources Administration

IST 256 Fall 2002 Sections 1

Information systems modelling UML and service description languages

Patterns in a Nutshell

Developing a Framework for Building Open Distance Learning Websites in the Literature and Culture Domain

PROBABILITY AND STATISTICS. Ma To teach a knowledge of combinatorial reasoning.

XFlash A Web Application Design Framework with Model-Driven Methodology

SOA with Java. Realizing Service-Orientation with Java Technologies UPPER SADDLE RIVER, NJ BOSTON INDIANAPOLIS SAN FRANCISCO

Software Design. Learning Guide Information for Students. 1. Description

NEW YORK CITY COLLEGE OF TECHNOLOGY, CUNY DEPARTMENT OF HOSPITALITY MANAGEMENT COURSE OUTLINE

California Subject Examinations for Teachers

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2015/16

Kommunikationssysteme [KS]

Implementing reusable software components for SNOMED CT diagram and expression concept representations

Week 06 Assignment 6-3. William Slater. CYBR 625 Business Continuity Planning and Recovery. Bellevue University

CHILD BEHAVIOUR MONITORING SYSTEM USING ANDROID APPLICATION

ITT Technical Institute. SD2670 Social Networking Applications and Technology Onsite and Online Course SYLLABUS

OIT 307/ OIT 218: Web Programming

The Different Types of Search and Execution Systems

TAEDDPE - Techniques of Statistic Analysis of Data and Design and Planning of Experiments

William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline

4143: Project Management

Curriculum Reform in Computing in Spain

Course Computer Science Academic year 2012/13 Subject Databases I ECTS 5

Course Syllabus Business Intelligence and CRM Technologies

IST659 Database Admin Concepts & Management Syllabus Spring Location: Time: Office Hours:

HUNTER COLLEGE DEPARTMENT OF EDUCATIONAL FOUNDATIONS & COUNSELING PROGRAMS COCO 715 FAMILY SYSTEMS

STATISTICS APPLIED TO BUSINESS ADMINISTRATION

MANAGEMENT ACCOUNTING AND CONTROL

Chapter 2: Designing XML DTDs

ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS

Syllabus Subject: Strategic Brand Management Degree: Titulación Superior en Dirección de Marketing y Gestión Comercial

Academic year

A methodology for secure software design

240EI032 - Human Resources Management

Course Content Core Courses

Accounting 2: Advanced Accounting

BACHELOR S DEGREE IN BUSINESS ADMINISTRATION

Data Modeling and Databases I - Introduction. Gustavo Alonso Systems Group Department of Computer Science ETH Zürich

SYLLABUS CIS 3660: OBJECT-ORIENTED SYSTEM ANALYSIS AND DESIGN SPRING 2010

Web and Enterprise Applications Developer Track

Teaching guide ECONOMETRICS

Real-World Object-Oriented Design Experience for Computer Science Students

Curriculum Vitae Lic. José Rafael Pino Rusconi Chio +52 (998)

Course Title: ITAP 4311: Database Management. Semester Credit Hours: 3 (3,0)

240ST Operations Management in the Supply Chain

COURSE SPECIFICATION DOCUMENT. Business and Economics. Masters of Business Administration. Dr Parviz Dabir-Alai

TEACHING PLAN FOR E-COMMERCE AND E-MARKETING. 1. Basic description

DIAMANT RUBEN GONZALEZ-RUBIO DÉPARTEMENT DE GÉNIE ÉLECTRIQUE ET DE GÉNIE INFORMATIQUE UNIVERSITÉ DE SHERBROOKE

SYLLABUS. OFFICE AND HOURS: Karnoutsos 536 (Access through K506) M 12, T 1, R 10, 12, 2 or by appointment. I am available by at all times.

MERGING ONTOLOGIES AND OBJECT-ORIENTED TECHNOLOGIES FOR SOFTWARE DEVELOPMENT

LIS 2635 Information Architecture Fall 2010, Monday 12:00-2:50 p.m.

International IT Topics. ECTS files

Web-Based Database Applications ITP 300x (3 Units)

Beck, L., L., Chizhik, A.W., and McElroy, A.C Cooperative learning

MIS630 Data and Knowledge Management Course Syllabus

TEACHING COURSE PLAN Strategic and Operational Marketing DEGREE IN ADVERTISING AND PUBLIC RELATIONS

A MODEL OF HETEROGENEOUS DISTRIBUTED SYSTEM FOR FOREIGN EXCHANGE PORTFOLIO ANALYSIS

RARITAN VALLEY COMMUNITY COLLEGE COMPUTER SCIENCE (CS) DEPARTMENT. CISY Computer Literacy

Transcription:

Academic year 2014-15 DEGREE CURRICULUM SOFTWARE ARCHITECTURES Degree in Computer Engineering Teaching staff: GIL IRANZO, ROSA MARIA GARCIA GONZALEZ, ROBERTO

Subject's general information Subject name Typology SOFTWARE ARCHITECTURES Compulsory ECTS credits 9 Semester 1st Semester Theoretical credits 4.5 Practical credits 4.5 Teaching load distribution between lectures and independent student work Total load: 225h - Lectures (40%) = 90h - Independent student work (60%) = 135h Groups 1 Modality Language Degree Presencial English Degree in Computer Engineering Course 4 Teaching staff Department GIL IRANZO, ROSA MARIA GARCIA GONZALEZ, ROBERTO Informàtica i Enginyeria Industrial Distribution of credits GIL IRANZO, ROSA MARIA (5.4) GARCIA GONZALEZ, ROBERTO (3.6) E-mail addresses Office and hour of attention Coordination rgil@diei.udl.cat rgarcia@diei.udl.cat To be agreed, contact rgil@diei.udl.cat or rgarcia@diei.udl.cat GARCIA GONZALEZ, ROBERTO 2

Learning objectives To present Web engineering and its fundamental applications patterns and architecture. To have a global vision of the existent technologies to implement enterprise applications using the previous patterns and architectures, especially Java, XML and the Web. To put into practice the previous concepts and technologies through the development of a Web application project using Java (Spring) and Javascript (AngularJS) and integrating XML technologies. Significant competences Strategic Competences CT2. Mastering a foreign language, especially English. CT3. Training Experience in the use of the new technologies and the information and communication technologies. Cross-disciplinary Competences EPS11. Capacity to understand the needs of the user expressed in a no technical language. Specific Competences GII-IS1. Capacity to develop, maintain and evaluate services and software systems that satisfy all the requirements of the user and behave in a reliable and efficient way, they can develop, keep and fulfil quality requirements, applying the theories, principles, methods and uses of the software engineering. GII-IS3. Capacity to give solution to problems of integration taking into account the strategies, standards and available technologies. GII-IS4. Capacity to identify and analyse problems and design, develop, implement, verify and find software solutions on the base of a suitable knowledge of the theories, models and current techniques. Subject contents 1. Web Applications Specification 1. Architecture 2. Analysis 3. Design 2. Application Patterns 1. Introduction and layered architecture 2. Patterns in the domain layer 3. Patterns in the integration layer 4. Patterns in the presentation layer 3

5. Technologies for pattern application 3. XML 1. Fundamentals 2. XML Schema 3. XQuery 4. Web Applications 1. Introduction to Web Applications Implementation 2. Web Applications using Java (Spring) and Javascript (AngularJS) 3. Developing and deploying web applications in Heroku Methodology The methodology is based on a Project Based Learning approach where an enterprise software application is developed, focusing on Web-based applications. The course starts with a review of Web development frameworks from an industrial point of view analysing the number of job offers, StackOverflow questions, LinkedIn mentions, etc. Based on these dimensions, Spring is selected for the server side and AngularJS for the client one. The first weeks of the course focus on fundamental aspects of software development, including project management ideas and development process concepts. Software architecture, specification, analysis and design are presented from a client/server and Web perspective, guided by enterprise application patterns. These concepts are the starting point for the students project development. The students select a project, under professors guidance, and complete a first deliverable where they apply these fundamental concepts to specify, analyse and design their project. The rest of the course focuses on the implementation of the defined project and the required concepts related to integrating external XML APIs, Spring or Angular are introduced as needed to complete the development of the project. Development plan Week 1: Web applications specification Weeks 2 4: Web Applications Patterns Weeks 5 7: XML, XML Schema and XQuery 1 st Deliverable Week 8: Midterm Exam Weeks 9 10: Java Web Applications Fundamentals and XML API Integration 4

2 nd Deliverable Weeks 11 15: Java Web Applications Week 18: Project Defence 3 rd Deliverable Evaluation The evaluation is fundamentally based on the development of a project, chosen by the students under the professor guidance, with two intermediate deliverables and a final one: 1st Deliverable: 10% grade Project specification. 2nd Deliverable: 20% grade Develop Web application skeleton and integrate external XML API. 3rd Deliverable: 30% grade Complete the development of the Web application, integrating all the previous work and completing the client (AngularJS) and server (Spring) parts. The evaluation is complemented with two exams: Midterm exam: 20% grade, individual evaluation that tests the competences related to conceiving and designing enterprise applications. Project defence: 20% grade, group evaluation where students present their project and their development and deployment skills are evaluated. Bibliography Main References Fowler, M.; Rice, D. (2003). Patterns of Enterprise Application Architecture. Addison-Wesley. Amuthan, G. (2014). Spring MVC: Beginner's guide Birmingham. Packt Publishing. Walmsley, P. (2007). XQuery. Sebastopol, CA: O Reilly Media. McLaughlin, B.; Edelson, J. (2006). Java and XML (3rd edition). O Reilly. Electronic Version 1 : http://proquest.safaribooksonline.com/059610149x Additional References XML Quick Reference, http://www.mulberrytech.com/quickref/xmlquickref.pdf Larman, C. (2002). UML y Patrones. Prentice-Hall (segunda edición). Larman, C. (2005). Applying UML and Patterns. Prentice-Hall (third edition). 5

Cummins, F. (2002). Enterprise Integration: An Architecture for Enterprise Application and System Integration. Wiley Publishing. Sommerlad, P.; Stal, M. (1996). Pattern-Oriented Software Architecture, Volume 1: A System of Patterns. John Wiley & Sons. Gamma, E.; Helm, R.; Jonson, R.; Vlissides, J. (2003). Patrones de Diseño. Elementos de software orientado a objetos reutilizable. Addison-Wesley. Gutiérrez Gallardo, Juan Diego. (2005). Manual imprescindible de XML. Anaya Multimedia. Hunter, D., Rafter, J., Fawcett, J., Vlist, E. van der, Ayers, D., Duckett, J., Watt, A., et al. (2007). Beginning XML, 4th Edition. Indianapolis, IN: Wrox. Ray, E.T. (2003) Learning XML, 2nd Edition. Sebastopol, CA: O'Reilly Media. Harold, E. R.; Jeans, W. S. (2004). XML in a Nutshell, 3rd Edition. Sebastopol, CA: O'Reilly Media. Walmsley, P. (2002). Definitive XML Schema. Upper Saddle River, NJ: Prentice Hall. Vlist, E. van der. (2002). XML Schema: The W3C s Object-Oriented Descriptions for XML. Sebastopol, CA: O Reilly Media. Brundage, M. (2004). XQuery: the XML query language. Boston, MA: Addison-Wesley Professional. Martín Quetglás, Gregorio. (2005). Curso de XML : introducción al lenguaje de la Web. Pearson educación. Harold, Elliotte Rusty. (2005). XML. Anaya Multimedia. Esposito, Dino. (2003). Programación en XML para Microsoft.NET. McGraw-Hill. Keogh, Jim. (2003). J2EE : manual de referencia. McGraw-Hill. Cauldwell, P.; Charla, R.; Chopra, V. (2002). Servicios Web XML. Anaya Multimedia. McGovern, J.; Tyagi, S.; Stevens, M. E.; Mathew, S. (2003). Java Web Services Architecture. Morgan Kaufmann. Monson-Haefel, R. (2004). J2EE Web services. Adisson-Wesley. Newcomer, E.; Lomow, G. (2004). Understanding SOA with web services. Addison-Wesley. Electronic Version 1 : http://proquest.safaribooksonline.com/0321180860 1 This book is accessible from the Universitat de Lleida network using this link 6

Personal annotations 7