Introducción al Proceso de Desarrollo de Software

Slides:



Advertisements
Presentaciones similares
Subject Pronouns and “Ser”.  What word do you use to talk about yourself?  What word do you use to talk about yourself and someone else?  What word.
Advertisements

 1. Why should a person learn Spanish? Give at least 3 reasons in your explanation.  2. What Spanish experiences have you had? (None is not an option.
How to make questions en español
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
Rational Unified Process (RUP)
Rational Unified Process (RUP)
Subject pronouns In order to use verbs, you will need to learn about subject pronouns. A subject pronoun replaces the name or title of a person or thing.
MORE CONVERSATION TOOLS
Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad.
Introducción al Proceso de Desarrollo de Software
Definition
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: material asignatura CS169,Software Engineering,
Introducción a UML Departamento de Informática Universidad de Rancagua
Introducción AOO. Contenido - Introducción - Repaso de Orientación a Objetos - UML - Casos de Uso.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
ESPAÑOL 1 8 de febrero de LA CAMPANA  ¿Cómo es tu mejor amigo?  Escribe 5-7 frases completas de tu amigo. La participación #1.
ESPAÑOL 1 Lesson 50 5 y 8 de febrero de LA CAMPANA  ¿Cómo es tu mejor amigo?  Escribe 5-7 frases completas de tu amigo. La participación #1.
Preparación/ Review Hoy es miércoles el 23 de septiembre de 2015 Today is day, September 23, 2015 ¿Te gusta o no te gusta? What do you like and what you.
Time Expression with Hacer p. 58 Tema 1B. Time Expression with Hacer Use hacer to describe an action that began in the past and has continued into the.
Tell your partner about: 1. Two things you wish you had/hadn't done when you were younger. 2. Two regrets you have and you want to overcome.
Week 22. Para Empezar 1 de febrero Please respond to the following question in Spanish: ¿Qué te gusta hacer con tu familia?
Ingeniería de Software
¿Cuándo? – When? Normalmente – Normally A veces - Sometimes A menudo - Often Cada año – Each year Siempre – Always Generalmente - Generally.
Ingeniería de Software: Metodologías
Agenda: Boot verbs and jugar. La Familia. Tener: Quack Video
1  Introducción a Rational Unified Process (RUP) Profesor Abraham Oliver Jara Miranda – JornSoft S.A.
Ingeniería de Software
Question Formation Español Uno.
To be, or not to be? Let’s start out with one of the most important verbs in Spanish: ser, which means “to be.”
To be, or not to be? Let’s start out with one of the most important verbs in Spanish: ser, which means “to be.”
Gustar V. Encantar.
My Spanish 2 classes are 2nd and 3rd periods
Los verbos ser, Tener, estar
Las clases de Sra. Schwarz Realidades 1
Time Expression with Hacer
SALES SKILLS MAQUINA DE MERCADEO 10% 90% MERCADO OFERTA MERCADEO
Notes #8 Uses of the Subjunctive
Getting to know you more!
First Grade Dual High Frequency Words
Para Empezar: ¿Cómo se dice…? 1) You like to paint. - Te gusta pintar.
Ingeniería de Software
Día número 24 Español 1—Acelerado
Para Empezar tres de enero
Hoy es miercoles, el diez de agosto
Los pronombres relativos que y quien
A pronoun is a word that takes the place of a noun.
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
Rational Tool Overview. Introduction Requirements-Driven Software Development with Rational Analyst Studio. Tafadzwa Nzara Analysis & Design Consultant.
Indefinite Articles ¿cuánto? mucho poco
Communicative Objective:
Introducción a las finanzas de los sistemas de agua potables
Gramática (pg 9 del paquete rosado)
Los números.
Los pronombres relativos que y quien
“To Be” or not “To Be” Ser vs. Estar.
PRESENT CONTINUOUS(1) We form the Present Continuous like this: Be + (verb)-ing form: I am eating a sandwich Here are the forms of the Present Continuos:
GUSTAR –to like, to be pleasing to
Las profesiones.
Kindergarten Spanish High Frequency Words
Señora Daniele, Profesora de Español
Indirect Questions First Day on the Job 11 Focus on Grammar 4 Part X, Unit 28 By Ruth Luman, Gabriele Steiner, and BJ Wells Copyright © Pearson Education,
Question Formation Spanish I Page 52.
Trabajo de la campana Traduce las frases de inglés al español:
1.12 Repaso 2 de septiembre.
Saber and Conocer Saber and conocer both mean to know, but in a different sense. Saber means to know facts or information. Here are the conjugations of.
Welcome to PowerPoint gdskcgdskfcbskjc. Designer helps you get your point across PowerPoint Designer suggests professional designs for your presentation,
Ingeniería de Software: Metodologías
How much? - How many? English Grammar. When we want to know the quantity or amount of something, we ask questions starting with How much and How many.
Globalization Politics and the preservation of nation state.
Transcripción de la presentación:

Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad Politécnica de Valencia

Contenidos Motivación Notación Metodología Herramientas Discusión

I. Motivación Construcción de una casa para “fido” Puede hacerlo una sola persona Requiere: Modelado mínimo Proceso simple Herramientas simples Extraida desde la presentación “Software Architecture and UML” de Grady Booch (Rational Software).

I. Motivación Construcción de un Chalet Extraida desde la presentación “Software Architecture and UML” de Grady Booch (Rational Software). Construido eficientemente y en un tiempo razonable por un equipo Requiere: Modelado Proceso bien definido Herramientas más sofisticadas

I. Motivación Construcción de un Rascacielos Extraida desde la presentación “Software Architecture and UML” de Grady Booch (Rational Software).

I. Motivación Claves en el Desarrollo de SI Notación Figura “Triangle for Success” adaptada desde “Visual Modeling with Rational Rose and UML” de Terry Quatrani Herramientas Metodología

II. Notación “El modelado captura las partes esenciales del sistema” Orden Item envío Proceso de Negocios Sistema Computacional

II. Notación Modelado para manejar la Complejidad “... Hay dos formas de construir software: una es hacerlo tan simple que obviamente no existan deficiencias, otra es hacerlo tan complejo que no existan deficiencias obvias” C:A.R. Hoare, Turing Award Lecture 1980.

II. Notación Modelado de la Arquitectura del SW Interface de Usuario (Visual Basic, Java, ..) Lógica del Negocio (C++, Java, ..) Extreme Programming in the Quick-change Era 'Beware of the religion of the code-generating modeling tool.' by Alexandra Weber Morales About 30 years ago, Barry Boehm theorized that the cost of software change increased exponentially over time; that is, if an error caught in requirements gathering cost $1, an error caught during deployment would cost $1000. "What if," said Robert Martin, a former preacher who now uses his persuasive speaking skills to promote Smalltalk guru Kent Beck's Extreme Programming (XP) methodology, "you took a moment to suspend disbelief and considered that--due to today's technology--the cost of change is essentially flat. When costs don't change over time, up-front speculative work is a liability. Ambiguity and volatility are reasons to delay." In such a world, Martin told a packed room at the UML World conference in New York city on June 14, developers need a process that exploits a flat change/cost curve?and XP is that process. The five-year-old methodology values communication (but not on paper), simplicity, feedback and courage. It's designed for small to medium-sized teams of no more than 12 people who work in a common area, integrate and test their code constantly, pair program on single computers and use whiteboards hung on the periphery to hash out designs. Source code is the preferred archival medium, and cards containing "user stories"(requirements written by customers) and tasks are the "high-density storage mechanism," according to Martin, who runs a training firm called Object Mentor out of Green Oaks, IL. "Where does modeling fit in?" asked an audience member, reminding Martin that his talk, at this point nearly over, had promised to describe the interaction between the UML and XP. "Paper and pencil or whiteboards are the best CASE tools I know of. In Kent's case, he uses CRC cards, not the UML," said Martin. "But whether it's Booch notation or UML, you do the highest-level map you can, but you don't do all your design up front. Remember, in XP it's not an archival resource, it's a communication device. The only archive I want is the code and a few poignant, incisive documents explaining why I made certain decisions." Does this mean that ever more sophisticated modeling tools have no place in XP? Not exactly, said Martin. "If a code-generating tool works for you, use it. After all, that's what a compiler does. But beware of the religion of modeling tools that spit out executable prototypes. Sometimes getting the code from the tool is more time-consuming than writing it yourself." Servidor de BDs (C++ & SQL, ..) “Modelar el sistema independientemente del lenguaje de implementación”

II. Notación Modelado para promover la Reutilización Múltiples Sistemas Componentes Reutilizados

III. Metodología ¿Qué es una Metodología? En un proyecto de desarrollo de software la metodología define Quién debe hacer Qué, Cuándo y Cómo debe hacerlo No existe una metodología de software universal. Las características de cada proyecto (equipo de desarrollo, recursos, etc.) exigen que el proceso sea configurable Sistema nuevo o modificado Requisitos nuevos o modificados Proceso de Desarrollo de Software

III. Metodología Procesos y Metodologías La Ingeniería de Software como disciplina Algunos modelos de proceso de desarrollo son: desarrollo en Cascada, usando Prototipos, Basado en Componentes, en Espiral (Incremental, Iterativo), Programación Automática. Las metodologías se basan en alguna combinación de estos enfoques Las metodologías (tanto comerciales como en el ámbito académico y de investigación) pueden ser agrupadas en dos grandes corrientes: Metodologías Estructuradas y Metodologías Orientadas a Objetos

III. Metodología Metodologías Estructuradas Los métodos estructurados comenzaron a desarrollar-se a fines de los 70’s con la Programación Estructurada, luego a mediados de los 70’s aparecieron técnicas para el Diseño primero y luego para el Análisis. Enfocados a implementaciones usando lenguajes de 3ra generación Ejemplos de metodologías estructuradas gubernamentales: MERISE (Francia), MÉTRICA 3 (España), SSADM (Reino Unido) Ejemplos de métodos estructurados en el ámbito académico: Gane & Sarson, Ward & Mellor, Yourdon & DeMarco e Information Engineering

III. Metodología Metodologías Orientadas a Objetos (OO) Su historia va unida a la evolución de los lenguajes de programación orientada a objeto, los más representativos: a fines de los 60’s SIMULA, a fines de los 70’s Smalltalk-80, la primera versión de C++ por Bjarne Stroustrup en 1981 y actualmente Java o C#. A fines de los 80’s comenzaron a consolidarse algunos métodos Orientadas a Objeto En 1995 aparece el Método Unificado, que posteriormente se reorienta para dar lugar al Unified Modeling Language (UML), la notación OO más popular en la actualidad Algunos métodos OO con notaciones predecesoras de UML: OOAD (Booch), OOSE (Jacobson), Coad & Yourdon, Shaler & Mellor y OMT (Rumbaugh) Algunas metodologías orientadas a objetos basadas en UML: Rational Unified Process (RUP), OPEN, MÉTRICA 3

III. Metodología Elementos de un Proceso SW Actividades Herramientas Personas Proceso SW Roles Artefactos Notación

IV. Herramientas CASE CASE es un acrónimo para Computer-Aided Software Engineering, aunque existen algunas variaciones para lo que actualmente se entiende por CASE: C Computer A Aided Assisted Automated S Software Systems E Engineering

IV. Herramientas CASE ¿Qué es una CASE? En “Terminology for Software Engineering and Computer-aided Software Engineering”, B.Terry & D.Logee, Software Engineering Notes, Abril 1990, CASE es definido como: “Herramientas individuales para ayudar al desarrollador de software o administrador de proyecto durante una o más fases del desarrollo de software (o mantenimiento).” En “The CASE Experience”, Carma McClure, BYTE Abril 1989 p.235 se ofrece la siguiente definición: “Una combinación de herramientas de software y metodo-logías de desarrollo”

V. Discusión ¿Cuál es vuestro contexto? ¿Cuál es vuestra Situación Actual Notación - Metodología - Herramientas?

Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad Politécnica de Valencia