Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view ·...
Transcript of Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view ·...
![Page 1: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/1.jpg)
Procesos de desarrollo de software y Proceso
UnificadoMarcelo Flores
Primera escuela de invierno 2006
![Page 2: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/2.jpg)
Procesos, métodos y metodologías
● Procesos vs. No procesos
● The mythical man month (F. Brooks)
● Procesos de desarrollo de software
![Page 3: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/3.jpg)
Procesos vs. No procesos● Procesos
Forma sistemática de desarrollo Se apropia y comparte el conocimiento adquirido Se incorpora la experiencia Es posible afrontar proyectos grandes
● No procesos Basado en el heroísmo individual Es posible aplicar a proyectos pequeños Sigue el estereotipo de desarrollador ermitaño, que logra
realizar hazañas por si solo. Mucha suerte
![Page 4: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/4.jpg)
Procesos vs. No procesos● Procesos
Se prepara para el siguiente proyecto● No procesos
No se prepara para algún proyecto posterior
Confía en la improvisaciónEl 90% de los programadoresde este tipo, lucha con problemas que ellos mismosse han creado.
![Page 5: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/5.jpg)
THE MYTHICAL MAN MONTH● Fred Brooks (premio A. Turing)Dado un proyecto de software que durará un año con 1
desarrollador. No es verdad que añadiendo 11 desarrolladores lo concluyan en 1 mes.
Si tuvieran que arar un campo.¿Que prefieren, dos bueyes o 1024 gallinas?
Corolario: es imposible atar 1024 gallinas y que tiren del mismo lado. -S. Cray
![Page 6: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/6.jpg)
Procesos ¿Por dónde comenzar?● ¿Que hacer para seguir un proceso de desarrollo?
Instanciarlo por lo menos una vez de forma completa. El 81% de los desarrolladores jamás han realizado esta labor en
forma conciente.● ¿Cuando seguir un proceso de desarrollo?
Es dificil realizar un proceso de cirugía de corazón abierto si no se es especialista del ramo. De la misma forma es difícil construir software de forma responsable sino hay una conciencia profesional.
● ¿Cómo escoger un proceso de desarrollo? Respira el aire, despues decide si esto es benéfico para tu vida.
No recuerdo el autor
![Page 7: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/7.jpg)
Actividad● ¿Que procesos de desarrollo conocen?
● ¿Que procesos de desarrollo han instanciado alguna vez?
● ¿Que componentes creen que tiene un proceso de software?
● ¿Que componentes tiene y cuales carece el proceso de desarrollo de su preferencia?
![Page 8: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/8.jpg)
Más sobre procesos● Procesos /= Documentación
La gente que no hace procesos argumenta que son simple documentación o su resultado es la documentación.
● Procesos /= ManualesLa gente que no hace procesos indica que la obtención de los
fastidiosamente llamados manuales técnicos u otros, son el único fín de hacer procesos
● Procesos /= TeoríaLos más indican que hacer procesos es pura teoría....... (huyen de los
procesos como los machitos huyen de las cremas humectantes)
![Page 9: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/9.jpg)
Aquel que rechaza el cambio es el arquitecto de la decadencia. La única institución humana que rechaza los
cambios, es el cementerio. H. Wilson 1967
● Los procesos van de acuerdo con la tecnología.● Una fábrica moderna no fabrica los jabones como los
fabricaba la abuela. ● Los procesos van de acuerdo con la magnitud del
proyecto.● Es impensable usar un rodillo compactador de calles si lo
que se desea compactar es la corbata.
![Page 10: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/10.jpg)
Las personas son más importantes que cualquier proceso. Buenas personas actuarán mejor que buenas personas sin
procesos. G. Booch
● Los procesos van de acuerdo con el tipo de proyecto
Un proyecto de sistema internacional de reserva de pasajes no se hace igual que un sistema de captura de correos por internet.
(Recordar que los procesos son conjuntos de actividades, tareas, roles, realizadores, dependencias, artefactos, etc)
● Los procesos son realizados por personas. No son de realización trivial. Los productos resultados de los procesos no solo contienen
símbolos del lenguaje usado sino también talento.
![Page 11: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/11.jpg)
Actividad● ¿Que tanto talento contiene un producto de
software? Otorgue una valoración de 1-100, donde: 1 es completamente producto del talento, confundiendose este con el arte. 100 es completamente carente de talento,tal que es posible realizar el
mismo producto de software por decreto
1.......................................100
![Page 12: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/12.jpg)
.....continuación Actividad ● ¿Cómo es posible controlar y administrar el
talento en los procesos de software?● El talento es innato, no se enseña ni se aprende, es
único y distinto en cada persona.● Buenas personas con talento llevarán a cabo los
procesos, mejor que buenas personas sin talento.
![Page 13: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/13.jpg)
Procesos vistos desde los cielos
● El modelo de cuatro niveles Object management group-http://www.omg.org
M3
M2
M1
M0 Ejecución/observación en el Mundo real
Descripción del proceso
Descripción del modeloque siguen los procesos
Descripción de la infraestructura de los modelos de procesos
![Page 14: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/14.jpg)
Un ejemplo● Haciendo una analogía con programación
EBNF
Un gramática para el lenguaje P
Un programa en el lenguaje P
Ejecución del programa P
![Page 15: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/15.jpg)
Otro ejemplo● Haciendo una analogía con Leyes
Constitución Política del Estado
Una ley sobre descentralización administrativa
Procedimientos, roles, artefactos sobre descentralización adm.
El prefecto (un rol) “bombombum” ejecuta la licitación(un procedimiento) para la compra de computadoras (artefactos)
![Page 16: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/16.jpg)
SPEM● Software Process Engineering Metamodel
Adivinar en que nivel se encuentra En camino de ser un estándar (OMG)
● Debe ser escrito de alguna forma● ¿Que tal si usamos un lenguaje estándar y unificado?
¿Tienen una idea de cual puede ser ese lenguaje?
![Page 17: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/17.jpg)
Actividad● Realizar un diagrama de cuatro niveles para mostrar
la vista desde los cielos de aquello relativo a Objeto y su representación
● Notar que el concepto de lenguaje es implícito para cualquier representación
![Page 18: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/18.jpg)
Retorno de los cielos● Donde actúan los procesos?
La línea de abstracción
+ Abstracto -Abstracto
Ideas,Requerimientos Producto de Software
Que lindo! Procesos 1er Intento
Bueno no es tan malo! Procesos 2do Intento
![Page 19: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/19.jpg)
Donde actúan los procesos● ...Continuación
Ouch! definitivo
SI los procesos son como una carretera, estos no son llanos ni rectos, ni siquiera estan asfaltados y habian faltado puentes, con pésimas señales de tránsito y neblina, como sólo en el cerro Siberia puede haber.
![Page 20: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/20.jpg)
Retornamos a los procesos
● Procesos no son determinísticos Procesos No son automáticos
● Procesos no son completos Experiencia/ práctica como componente fundamental.
● Procesos necesitan un lenguaje para ser definidos● Software necesita un lenguaje para ser
desarrollado Solución: La instanciación de los procesos
![Page 21: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/21.jpg)
Consideraciones sobre la línea de abstracción con:
● Método estructurado● Object Modelling Technique● The Unified Process● Model Driven Architecture
![Page 22: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/22.jpg)
Actividad
● Incluya en el diagrama de la línea de abstracción, el lenguaje
usado en cada punto donde el proceso tiene un indicador.
+ Abstracto -AbstractoIdeas,Requerimientos Producto de Software
Análisis Diseño Implementación
ADF, DFDs, Diccionario,
Pseudocódigo
DEP,DTE,Pseudocódigo
SQL,C, Ada,Fox
Caso del método Estructurado
![Page 23: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/23.jpg)
... continuación
.+ Abstracto -AbstractoIdeas,Requerimientos Producto de Software
Análisis Diseño Implementación
Diag. ObjetosDTE, DTrEven,
DFD-OO,Pseudocódigo
SQL,C,C++, Pascal Object, Java, etc.
Caso OMT
ObjetoDinámicoFuncional
Pseudocodigo, Diag. Objetos,
(ERD),DTE,DTrEven
SistemaObjeto
![Page 24: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/24.jpg)
... continuación
.
+ Abstracto -AbstractoIdeas,Requerimientos Producto de Software
Aná
lisis
Dis
eño
Impl
emen
taci
ón
Caso Proceso Unificado
Bus
ines
s M
odel
ing
Req
uerim
ient
os
WARNING!
UML es el lenguaje NO es el proceso!!
![Page 25: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/25.jpg)
● Comentarios● Preguntas
HTTP://ajayu.memi.umss.edu.bo
Fin día 1
![Page 26: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/26.jpg)
De la vida real
![Page 27: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/27.jpg)
De la vida real
![Page 28: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/28.jpg)
The Unified Process
● Guiado en casos de uso Mejor trabajo con el cliente Buena visión/división del proyecto
● Centrado en arquitectura Es impensable no considerar la arquitectura de forma seria en
los proyectos actuales
● Iterativo e incremental El 40% de requerimientos aparecen o se descubren, cuando el
cliente toma conciencia del producto al verlo! Repetitivo vs. Iterativo
![Page 29: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/29.jpg)
¿Cómo lograr un proceso iterativo e incremental?
● Cada disciplina contiene las siguientes fases: Inicio, Elaboración, Construcción, Transición
● Por que?. La coordinación de las actividades no es trivial, debe haber una administración y un control de cada miniproyecto
● Es el mecanismo para llevar a cabo la coordinación de las iteraciones y los incrementos
![Page 30: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/30.jpg)
Requerimientos
● Un hito en la línea de abstracción
● En este punto aún no se puede hablar de software...sólo es el reconocimiento del problema y su representación
● Es importante reconocer que es posible iniciar una arquitectura de acuerdo al nivel de representación
![Page 31: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/31.jpg)
Modelo de requerimientos
● El modelo resultante de esta disciplina, es el modelo de requerimientos
● Crucial para la planificación del desarrollo iterativo e incremental
● Algunas de sus actividades● Hallar casos de uso y actores
● WARNING:actores y casos de uso● Describir casos de uso● Modelar arquitectura● Detallar casos de uso● Modelar Interfaces de usuario????????????
![Page 32: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/32.jpg)
...Y como arma contra el mal tienen aquí los 20 casos de uso
● Use Case● Una porción del problema ser observado
delimitado en un escenario.● Finito, concreto, instanciable● Difícil de ser descrito y explicado
Para lo cual se usan varias convenciones sintacticas o linguísticas:
● Texto en lenguaje natural● Texto estructurado● Diagramas de Actividades
![Page 33: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/33.jpg)
..Crash!.Perdón, como les decía, aqui tienen los 10 casos de uso
● Nombrados e identificados con un diagrama de casos de uso
Sirve para observar de forma resumida los casos de uso Tratar de descubrir relaciones entre los casos de uso Descubrir los actores de la escena WARNING: Los componentes del diagrama de casos de uso
sólo son elementos sintácticos para: Nombrar e identificar (darles un nombre) a los casos de uso. No son los casos de
uso en sí. (ejemplo del carnet de identidad y la persona)
![Page 34: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/34.jpg)
Casos de uso vs. Casos de Mal uso (OBERTURE)
● WARNING: El que usa el diagrama de casos de uso para describir El menú del producto de software es un #%$·”@sn@Bush/&/
![Page 35: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/35.jpg)
Casos de uso vs. Casos de Mal uso (PART ONE)
● WARNING: Habrá callejón oscuro para el que usa el diagrama de casos de uso para mostrar Flujos de datos y habra regreso por el callejón si el afectado intenta explosionar los casos de uso
![Page 36: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/36.jpg)
Casos de uso vs. Casos de Mal uso(PART TWO)
● WARNING: EL que usa el que usa el diagrama de casos de uso paraFlujo de eventos, es un huEVO podrido
![Page 37: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/37.jpg)
Casos de Uso vs. Casos de Mal uso (CLOSE)
Definitivamenteesto es surrealismo!
![Page 38: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/38.jpg)
Más sobre el arteMuseo de Madrid 1970, Museo de arte rupestre Museo de Ciencias de la
de Nuena York 1973 computación Cochabamba 2006
![Page 39: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/39.jpg)
Actividad
● Observando los diagramas de casos de uso, encuentre una forma sistemática de buscar y hallar las interfaces de usuario necesarias
● ¿Que tipo de interfaces de usuario serán resultantes de esta actividad?
![Page 40: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/40.jpg)
Casos de uso, iteraciones e incrementos ¿Cual la relación?
● Miniproyectos● Planificación menos ampulosa
Actividades y tareas con mayor independencia Artefactos (diagramas, etc) más legibles, menos complicados,
menos ampulosos
● Una de las actividades centrales del proceso unificado para esta disciplina es:
● dar prioridad a los casos de uso Adivinanza ¿De que trata esta actividad?
![Page 41: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/41.jpg)
Priorizar casos de uso
● La llave del proceso iterativo e incremental● Una tarea bastante difícil● Mayor experiencia dará mejores resultados
Es una labor NO determinística Basada en múltiples factores No siempre técnicos
● Algunas técnicas usadas Buscar la más complicada Buscar la más crucial en el negocio Los complementos
![Page 42: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/42.jpg)
● Comentarios● Preguntas
http://atodonivel.blogspot.com
Fin día 2
![Page 43: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/43.jpg)
Arquitectura en Requerimientos
● Es simple y minimalista
● Es basado en aspectos funcionales encontrados en los casos de uso
● Los componentes arquitecturales son llamados: sistema, subsistema, paquete
● No se conoce aún lo que contienen estos componentes arquitecturales, pero SI se sabe que es lo que realizarán.
![Page 44: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/44.jpg)
Análisis
● Un hito en la línea de abstracción● El modelo de análisis● La disciplina del análisis que lleva a ese hito
Realización de casos de uso-análisis- Análisis de arquitectura Analisis de objetos/clases
● Se resuelven los problemas de una forma Ideal mediante la suposición de un universo reducido y conveniente
![Page 45: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/45.jpg)
Actividad
● Como reducir el universo??????
![Page 46: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/46.jpg)
¿Como reducir el Universo?
● Desde la perspectiva del paradigna OO el universo está
compuesto de objetos
● Una forma de reducir el universo es sencillamente reducir
los objetos Cantidad de objetos del universo
Tipos de objetos del universo (categorías)
● En otras palabras, quitar los grados de libertad del
diseñador para que se concentre en la solución genérica y
no en su detalle.
![Page 47: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/47.jpg)
¿Estabamos en reducir el
universo?● Concentramos la atención en únicamente tres
tipos de clases
● Cada tipo de clase tiene una semántica definida
asociado a ella Y estos son:
● Boundary
● Control
● Entity
![Page 48: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/48.jpg)
Sólo 3 tipos de objetos!!!
● Escritos en UML
Es bueno conocer que estos tipos de clases se traducen
sintácticamente en Estereotipos en UML, lo cual es un
mecanismo de extension del lenguaje.
‹‹Boundary››
‹‹Control››
‹‹Entity››
Nombre de claseNombre de clase
Nombre de clase Nombre de clase
Nombre de claseNombre de clase
![Page 49: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/49.jpg)
¿Patrones?● Afortunadamente las categorías de objetos encontradas
para el análisis no son al azar
● Son conocidas como: Modelo, Vista, Controlador (ver Design
Patterns, E. Gamma et al.)
● Con el patron MVC podemos obtener capacidades
adicionales como:● Ordenar la aparición de los objetos/clases en los diagramas del
análisis
● Dar a los objetos/Clases responsabilidades definidas en el
patrón
![Page 50: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/50.jpg)
Cómo iniciar el análisis● Realización de casos de uso
● Con la priorización determinada que da un orden a
los casos de uso, hacer: Para cada caso de uso
Instanciar el patrón
Recrear las interacciones entre los objetos
participantes
![Page 51: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/51.jpg)
Realización de casos de uso-análisis-
● Trata específicamente con la solución para un caso de uso
● Sintácticamente se debe reflejar estas ideas en algún(nos)
diagramas UML
● ¿Cuales definidos por UML serán apropiados?
● ¿Que consideraciones/cuidados hay que tomar con el lenguaje
en esta disciplina?
![Page 52: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/52.jpg)
. . .some designers live their brains in the lobby, get settled behind their keyboards and get busy drawing UML diagrams because doing so is a
much easier alternative than doing difficult software engineering work. Philippe Kruchten
● La colaboración que realiza un caso de uso, No debe verse como Flujo de datos.
● Es bueno seguir el patron MVC, eso guía a lograr una estructura
con componentes de alta cohesión y bajo acoplamiento
● No modelar las Interfaces de usuario cuando se use el
estereoptipo boundary
![Page 53: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/53.jpg)
Arquitectura en el Análisis
● Ya no es tan simple, involucra componentes arquitecturales que pueden no estar explícitos en los casos de uso
● Service packages
● Es posible conocer que “cosas” contiene cada componente arquitectural
● Tambien es posible conocer como se relacionan los componentes arquitecturales
● Mediante la observación de las relaciones de los objetos.
![Page 54: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/54.jpg)
Diseño
● Un hito en la línea de abstracción
● Es una instanciación del modelo de análisis
● Se debe resolver muchos problemas: Tecnología Lenguaje Persistencia Seguridad
![Page 55: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/55.jpg)
Diseño● Se mantiene el concepto de realización de casos de
uso
● Claro que la realización se hace a un nivel de
abstración menor
● Se deben detallar los objetos de diseño, de los
objetos del análisis
Realizando una extensión o especialización o instanciación.
![Page 56: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/56.jpg)
El universo es más amplio● No se trabaja más con objetos de las categorías
indicadas en el análisis
● Los tipos de objetos del diseño son dados por la
tecnologia, el lenguaje, el tipo de persistencia, etc.● No debe existir nada relacionado a tecnología
perfecta.
![Page 57: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/57.jpg)
Sobre representar el diseño
● El diseño se representa con las mismas herramientas
que se representa el análsis.● Lo que varía es el nivel de abstracción/ el universo de
objetos sobre el cual trata
Los objetos en el diseñó deben ser posibles
El universo de objetos esta dado por los lenguajes que se
usarán
![Page 58: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/58.jpg)
Realización de casos de Uso
● También existe el concepto de realización de casos de uso
● En este caso lo que hacen es realizar un caso de uso en
una forma menos abstracta
● La entrada para construir el modelo de diseño es el modelo
de análisis
● La s actividades de la disciplina de diseño tambien son las
mismas que la disciplina del análisis
![Page 59: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/59.jpg)
Recomendaciones
● Todo el trabajo se lo hace con visión de cada caso de uso
● Esto posibilita a No realizar diagramas enormes ni
complejos, sino diagramas simples de verificación o
validación sin complicaciones
● También hace posible la implementación simple
![Page 60: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/60.jpg)
Tips● Notar que el diseño de métodos viene de la necesidad de comunicaciñon
dada en las colaboraciones
![Page 61: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/61.jpg)
Ma tips
![Page 62: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/62.jpg)
actividad● Que operaciones deben implementar Venta y Pago
![Page 63: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/63.jpg)
Warning!● Que de extraño tiene este modelo?
![Page 64: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/64.jpg)
Más Warnings
![Page 65: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/65.jpg)
Y otros Warnings
![Page 66: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/66.jpg)
Design Patterns??
● Una forma inteligente de afrontar el diseño
● Reduce el tiempo de diseño de una solución
● Aumenta la confianza en el diseñador
● Existe una librería que recopila la experiencia de
muchos desarrolladores
● MVC de hecho es un patrón de diseño que se ha
extendido a otros aspectos del desarrollo.
![Page 67: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/67.jpg)
Arquitectura en el diseño
● Los componentes arquitecturales tienen ahora responsabilidades sobre objetos/clases concretas
● Las dependencias entres componentes
arquitecturales debe ser refinada e implementada
a tráves de interfaces
![Page 68: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/68.jpg)
Mas sobre el diseño● Las dependencias en el diseño van más allá del
software en desarrollo
Se toman en cuenta las dependencias con :
● Librerias
● Otros sistemas
● Beans, etc.
![Page 69: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/69.jpg)
Implementación● La transformación del diseño a un lenguaje
“computable”
● La implementación con proceso unificado se lo realiza
mediante componentes
● Cada componente implementa sobconjuntos de
deficiones de clases/interfaces incluyendo su
caracteristicas y comportamiento
![Page 70: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/70.jpg)
componentes
![Page 71: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/71.jpg)
Implementación de interfaces
● Package Sistema de registro;
● Public interface Inscripciones {
● Public RegistrarInscripcion(estudiante,plan, asignatura, grupo);}
Sistema de
registroInscripciones
![Page 72: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/72.jpg)
Arquitectura en la implementación
● Reconocimiento de nodos
● Asignación de paquetes/subsistemas a módulos
![Page 73: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/73.jpg)
Procesos Ágiles● Extreme programming
Principios fundamentales● El proceso en las personas
Centrado en las cualidades personales
![Page 74: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/74.jpg)
Bibliografía● Successful Software Development, Scott E. Donaldson-Stanley G. Siegel● The Unified Software Development Process, G. Booch, J. Rumbaugh, I. Jacobson● The Unified Modeling language-User Guide, G. Booch, J. Rumbaugh, I. Jacobson● The Unified Modeling language-reference Manual, G. Booch, J. Rumbaugh, I.
Jacobson● The Mythical Man Month, F. P. Brooks● The Unified Process -Inception Phase, Scott W. Ambler-Larry L. Constantine● The Unified Process -Elaboration Phase, Scott W. Ambler-Larry L. Constantine● The Unified Process -Transition and Production Phases, Scott W. Ambler-Larry L.
Constantine
![Page 75: Diapositiva 1 - Carreras de Informática y Sistemas --- UMSS€¦ · PPT file · Web view · 2008-07-18Procesos de desarrollo de software y Proceso Unificado Marcelo Flores Primera](https://reader031.fdocuments.ec/reader031/viewer/2022030801/5b0a6e3b7f8b9a0b0f8ba9a1/html5/thumbnails/75.jpg)
... Continuación Bibliografía
● UML y patrones, Graig Larman● Agile Alliance 2001a. Manifesto for Agile Software development● Agile Alliance 2001b. Principles: The Agile Alliance● Requirements Engineering, R . J. Wieringa● Análisis Patterns: Reusable Object Models, M. Fowler● The Rational Unified Process: An Introduction, Philip Kruchten● A System of Patterns: Pattern-Oriented Software Architecture, F. Buschman, R.
Meunier, H. Rohnert, P. Sommerland, M. Stal● Design Patterns: Elements of reusable Object Oriented Software, E. Gamma, R.
Helm, R. Johnson, J. Vlissides● Software Process Engineering Metamodel-SPEM, Object Management Group-
OMG● Death by UML fever, Alex E. Bell