Software Architecture

 

Responsible:

  • 2010: Fernando Barraza fbarraza@javerianacali.edu.co , fernando.barraza@gmail.com

Credits: 3

Requirements: Basic knowledge of Java programming language, UML and Software Engineering.

Schedule:
Saturdays 1:00-4:00 p.m, from 23th Feb to March 9 and
Fridays 6:00-9:00 p.m., from March 15 to Jun 7 (except Easter week)

Objectives

The main objective of the course is set out formal guidelines from software engineering to build applications that observed Software Architectures adjusted requirements and technological features within a software development process. These guidelines provide support for the concept of Software Architecture following methodologies for the design, implementation and testing of software architectures and using different languages for describing software architectures that allow them to rigorously representation according to the software specifications to build.

Content

  • Review of Software Engineering Basics
  • Software Architecture Foundations
  • Software Architecture vs. Design
  • Software Architectures Design & Analysis Methods
  • Software Architect Role
  • Views, Patterns and Styles
  • Architecture Description Languages (ADL’s)
  • Enterprise Arquitectures (SOA)

Evaluation

  • Homework: 30%
  • First miniproject : 20%
  • Second miniproject : 20%
  • Final Project : 30%

Syllabus 2011

Session
1: Software Engineering Review arqsoft_sesion1-2010.pdf
2: Software Architecture Foundations arqsoft_sesion2-2010.pdf
2A: Software Architecture Modelling s2_conceptosdemodelado.pdf
3: Software Architecture Structure and Attributes arqsoft_sesion3-2010.pdf
4: Software Architecture, Design and Architect Role arqsoft_sesion4-2010.pdf
5: Styles, Patterns and Views arqsoft_sesion5-2010.pdf
6: Implementation Techniques arqsoft_sesion6-2010.pdf
7: Arquitecture Description Languages arqsoft_sesion7-2010.pdf
8: Software Arquitecture Methods arqsoft_sesion8-2010.pdf
9: Model Driven Arquitecture (MDA) arqsoft_sesion9-2010.pdf
10: Software Oriented Architecture arqsoft_sesion10-2010.ppt
11: SOA technologies arqsoft_sesion11-2010.pdf
12: BPM, BPMN & BPEL arqsoft_puj_sesion12.pdf
13: Cloud Computing arqsoft_puj_sesion13.pdf
14: SaaS arqsoft_puj_sesion14.pdf

Lectures and Extra Material 2011

Title
0: UML Basics http://www.ibm.com/developerworks/rational/library/769.html
1: Software Architecture Introduction introarq.pdf
2: J2EE Tutorial, Parts 1 – 2 javaeetutorial_p1y2.pdf
3: .Net Architecture Framework dotnetarchframework.pdf
4: MVC patronmvc.pdf
5: Ajax ajax.pdf
6: Atributos de Calidads3_atributoscalidad.pdf
7: Styles and Patterns estiloypatron.pdf
8: Describing SA: modelo4_1.pdf mazeiar-kruchten-4_1.pdf fcgss_us_wp_applying_4_1_w_uml2.pdf describingsawithuml.pdf
9: UML profiles perfilesuml.pdf
10: ADL’s adl.pdf
11: MDA mda1.ppt mda2.pdf
12: Web Services webservices.pdf parteuml-ws.pdf
13: Rest rest_ws.pdf
14: GWT gwt.pdf
15: SOA soa-ibmvision.pdf soa2.pdf soa3.2.pdf
16: BPEL warwick-bpel.ppt jlap-wsfm.pdf
17: Pi-ADL oquendo.zip pi-uml.ppt

Laboratories and Tests

Title
0: Java First practice “Hello Name” Web (nb 6.8) http://netbeans.org/kb/docs/web/quickstart-webapps.html
1: Case 1 casodeestudio1.pdf
2: Java Spring Web MVC “Hello Name” http://netbeans.org/kb/docs/web/quickstart-webapps-spring.html
3: Primer Parcial parcial1-puj-maestria-as-2013-1.pdf

Evaluations

1: Results available at Javeriana university’s academic system

Bibliography

  1. Ian Gorton. Essential Software Architecture
  2. Philippe B. KruchtenThe 4+1 view model of architecture
  3. James Rumbaugh, Ivar Jacobson, Grady Booch The Unified Modeling Language reference manual. – 2ed
  4. Ramesh Nagappan Developing Java web services: Architecting and developing secure web services using Java
  5. Thomas Erl Service-Oriented Architecture : Concepts, Technology, and Design

Software