Post on 14-Apr-2018
7/29/2019 IDP 00 Presentacion
1/17
Mster en Ingeniera del Software, Mtodos Formalesy Sistemas de Informacin
PRESENTACIN DE LAASIGNATURA
INGENIERA DE LA PROGRAMACIN
7/29/2019 IDP 00 Presentacion
2/17
Objetivos
Conocer los principios de la ProgramacinOrientada a Objetos
Conocer los principios de la Ingeniera del
Software Conocer el Lenguaje Unificado de
Modelado (UML) y ser capaz de realizar
todo tipo de diagramas, tanto a manocomo utilizando alguna herramienta
7/29/2019 IDP 00 Presentacion
3/17
Introduccin
Ingenieradel
Software HerramientasMetodologa
Notacin
7/29/2019 IDP 00 Presentacion
4/17
Modelo
Esquema simplificado que describe unsistema o realidad desde un determinadopunto de vista que facilita su estudio ycompresin
Sistema Software(complejo)
Se suelen utilizar representaciones visuales?
? ? Modelo(simplificado)
7/29/2019 IDP 00 Presentacion
5/17
Creacin de modelos
Modelos que presentan grficamentealguna vista del sistema. Se crean mediante:
Lpiz y Papel Herramientas genricas para diagramas (eg. Kivio
in Koffice, Microsoft Visio, Dia)
CASE : Computer Aided Software Engineering
Ejemplos: Rational Rose, System Architect, VisualParadigm,Modelio, Activiti, StarUML, ArgoUML, etc.
7/29/2019 IDP 00 Presentacion
6/17
Metodologa
En un proyecto de desarrollo de softwarela metodologa define Quin debe hacerQu, Cundo y Cmo debe hacerlo
Desarrollo deSoftware
equisitos Sistema
7/29/2019 IDP 00 Presentacion
7/17
Metodologas
Las metodologas de desarrollo desoftware se dividen en dos grandesgrupos:
Metodologas estructuradas Orientadas a procesos vs orientadas a datosJerrquicas vs no-jerrquicas Mixtas
Metodologas orientadas a objetos.Metodologas orientadas a sistemas de
tiempo real
7/29/2019 IDP 00 Presentacion
8/17
Metodologas estructuradas
Los mtodos estructurados comenzaron adesarrollarse a principio de los 70.A mediados de los 70 aparecieron tcnicas
para el Diseo primero y luego para elAnlisis. Enfocados a implementacionesusando lenguajes de 3ra generacin
Ejemplos de metodologas estructuradas
Gubernamentales: MERISE (Francia), MTRICA3 (Espaa), SSADM (Reino Unido)mbito acadmico: Gane & Sarson, Ward &
Mellor, Yourdon & DeMarco
7/29/2019 IDP 00 Presentacion
9/17
Metodologas OO
Historia unida a la evolucin de los lenguajesde Programacin Orientada a Objetos (POO) SIMULA (1967)
Smalltalk (1976) C++ (1981), Object Pascal (1986) -> Delphi
Ejemplos actuales POO estricto (todo es un obecto): Ruby, Scala
POO no estricto: Java, C#, Python, C++ Otros lenguajes no son POO pero incorporan
caractersticas de POO, como Basic (VB), Fortran,Cobol, PHP
7/29/2019 IDP 00 Presentacion
10/17
Metodologas OO
Mtodos OO anteriores a UML: OOAD(Booch), OOSE (Jacobson), Coad & Yourdon,Shaler & Mellor y OMT (Rumbaugh)
1995 aparece el Mtodo Unificado, queposteriormente se reorienta para dar lugar alUnified Modeling Language (UML), la notacinOO ms popular en la actualidad
Algunas metodologas orientadas a objetosbasadas en UML: Rational Unified Process(RUP), OPEN, MTRICA 3
7/29/2019 IDP 00 Presentacion
11/17
Notacin: UML como estndar
Es el lenguaje estndar de la industriapara el modelado visual de sistemasorientados a objetos y/o basados en
componentes
7/29/2019 IDP 00 Presentacion
12/17
UML es visual
7/29/2019 IDP 00 Presentacion
13/17
Qu es UML?
NO es: una metodologa o proceso
un lenguaje de programacin
Es un lenguaje estndar para visualizar,especificar, construir y documentar losartefactos que se generan en el proceso
de desarrollo de un sistema software
7/29/2019 IDP 00 Presentacion
14/17
Arquitectura/Ingeniera deEstructuras
Vistas Edificio Vista 3D
Alzado/Planta Perfil
Estructura del edificio Instalacin Elctrica
Instalacin Aire Acc.
...
Ingeniera Software Modelos UML del Sistema
Software Modelo de Casos de uso
Modelo Estructural
Modelo de Comportamiento
Modelo de Implementacin
Modelo de Despliegue
Herramientas Modelado (ej)Autocad
Herramientas Modelado (ej)Rational Rose
GrpFile
read()open()create()f i l lF i le()
rep
Repository
name : char* = 0readDoc()readFi le()
(from Persistence)
Fi leMgr
fetchDoc()sortByName()
DocumentList
add()delete()
Documentname : intdocid : intnumField : intget ()open()close()read()sortFileList()create()fillDocument()
fList
1
FileLi st
add()delete() 1
File
read()
read()f i l l thecode..
DocumentFileManager
GraphicFileFile
Repository DocumentList
FileList
usermainWndfileMgr :
FileMgrrepositorydocument :
DocumentgFile
1:Doc view request( )
2:fetchDoc( )
3:create ( )
4:create ( )
5:readDoc ( )
6:fillDocument( )
7:readFile ( )
8:fillFile ( )
9:sortByName ( )
.
.
.
Diagramas Diagramas
UML vs modeladoarquitectnico
7/29/2019 IDP 00 Presentacion
15/17
UML
RUP
USDP
IBMsRational Rose
Sparxs Enterprise Architect
Visual Paradigm
Freeware & open-source
UML, metodologas yherramientas
Ingenieradel
SoftwareHerramientasMetodologa
Notacin
7/29/2019 IDP 00 Presentacion
16/17
Temario
T1. Introduccin a los lenguajes de POOT2. Modelo estructural Diagrama de clases, de instancias, de
componentes y de despliegue
T3. Modelo funcional Anotaciones UML y OCL
T4. Modelo de procesos de negocio Diagramas de actividad
Diagramas de procesos (BPMN)T5. Modelo de comportamiento Diagramas de secuencia , colaboracin y estado
7/29/2019 IDP 00 Presentacion
17/17
Bibliografa
T. Budd, Introduccin a la programacinorientada a objetos. Addison Wesley. (Cap 1)
G. Booch, El lenguaje unificado demodelado. Addison Wesley 1999. (Cap.
2,3,4,5)J. Rumbaugh, Modelado y Diseo Orientado a
Objetos. Prentice Hall 1996. I. Jacobson, Object Oriented Software
Engineering: A Use Case Driven Approach.Addison Wesley, 1995. (Cap. 2,3) M. Fowler. UML gota a gota. Addison Wesley
1999.