Análisis y Diseño de Sistemas
|
|
- José Ignacio Jaime Muñoz Herrero
- hace 6 años
- Vistas:
Transcripción
1 Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Clase 21 Especificación Formal Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] 1er. CUATRIMESTRE 2006 Métodos Formales Los métodos formales para desarrollo de software son técnicas de base matemática para describir las propiedades del sistema. Proporcionan el marco de referencia para especificar, desarrollar y verificar los sistemas de manera sistemática. Su uso está difundido en áreas de desarrollo de sistemas críticos con fuertes exigencias de confiabilidad, seguridad y protección. Lenguajes de Especificación Un método formal posee una base matemática estable, generalmente dada por un lenguaje de especificación formal. Especificaciones Formales en el Proceso de Desarrollo de SW COSTOS DE DESARROLLO DE SW Un lenguaje de especificación formal es un lenguaje con vocabulario, sintaxis y semántica formalmente definidos. Costo Especificación Diseño e Implementacion Validación Especificación Formal Especificación Informal Enfoques de Especificación Formal Existen dos enfoques de especificación formal: Algebraico: el sistema se describe en términos de operaciones y sus relaciones. Basado en modelos: se construye un modelo del sistema utilizando elementos matemáticos como conjuntos y sucesiones. Las operaciones del sistema se definen tomando en cuenta cómo modifican el estado del sistema. Lenguajes de Especificación Formal Algebraicos Secuencial Larch (Guttag et al., 1985,1993) OBJ (Futatsugi et al., 1985) Concurrente Lotos (Bolognesi y Brinksma, 1987) Basados en Modelos Secuencial Z (Spivey, 1992) VDM (Jones, 1980) B (Wordsworth, 1996) Concurrente CSP (Hoare, 1985). Petri Nets (Peterson, 1981) 1
2 Especificaciones Algebraicas Se utilizan álgebras como formalismo matemático. Las especificaciones algebraicas definen al sistema como un álgebra heterogénea. Álgebra heterogénea: colección de conjuntos diferentes en los cuales se definen diferentes operaciones. Especificaciones Algebraicas Álgebra homogénea: un solo conjunto y varias operaciones. Las álgebras tradicionales son homogéneas. Ejemplo: números enteros y sus operaciones. Ejemplo de álgebra heterogénea: Las cadenas de caracteres con operaciones de concatenación y longitud. La longitud de la cadena es un número natural. Existe relación entre álgebras heterogéneas y tipos de datos abstractos. Especificaciones Algebraicas La colección de conjuntos que componen el álgebra heterogénea es llamada la signatura del álgebra. Para definir un álgebra heterogénea: Especificar la signatura. Especificar las operaciones involucradas. Especificar dominios y rangos de las operaciones. Esto se denomina la sintaxis del álgebra. Ejemplo - Larch algebra EspecString; introduces sorts String, Char, Nat, Bool; operations nueva: () -> String; concatenar : String, String -> String; agregar: String, Char -> String; longitud: String -> Nat; esvacia: String -> Bool. Ejemplo Escrito en lenguaje similar a Larch. nueva no tiene argumentos, es una manera de representar valores constantes. Falta definir la semántica, el significado de las operaciones. Para definir la semántica se usan ecuaciones, que definen las propiedades esenciales que deben ser siempre verdaderas al aplicar la función. Las ecuaciones muchas veces son llamados axiomas del álgebra. Uso de Especificaciones Algebraicas Un enfoque de desarrollo consiste en definir subsistemas que se desarrollan luego en forma independiente. En estos casos se requiere especificaciones precisas de las interfaces. La especificación de interfaz suministra información sobre los servicios que están disponibles y cómo se pueden acceder a ellos. 2
3 Especificación de Comportamiento Las técnicas algebraicas en general son apropiadas para definir interfaces, donde las operaciones son independientes del estado del objeto. Un enfoque alternativo es la especificación basada en modelos: la especificación del sistema se expresa como un modelo de estados del sistema. Las operaciones se especifican definiendo cómo afectan el estado del modelo del sistema, esto es, se define comportamiento. RAISE Rigurous Approach to Industrial Software Engineering RAISE Métodologías para Desarrollo de Software RAISE: Rigorous Approach to Industrial Software Engineering Ad Hoc: sin métodos. Sistemáticos: AE - AOO y DOO. Ya las estudiamos!! Consiste de : Método para desarrollo de software. Un lenguaje de especificación formal: RSL RAISE Specification Language. Herramientas automáticas. Rigurosos: aplican especificaciones formales pero no tratan de probar todos los pasos RAISE. Formales: prueban todos los pasos. Características de RAISE El método RAISE se basa en un número de principios: Desarrollo por partes. Desarrollo paso a paso. Inventar y verificar. Rigor. Desarrollo por partes Una especificación actúa como un contrato que indica precisamente propiedades esenciales de los elementos especificados. Importancia de las especificaciones: El desarrollo de sistemas es una actividad de descomposición y composición. En la mayoría de los sistemas existen personas trabajando sobre componentes distintas en simultáneo. 3
4 Desarrollo Paso a Paso El desarrollo de software involucra una secuencia de pasos. Usando el método RAISE Encontrar los requerimientos (mayor nivel de abstracción). Iterar: refinar tomando decisiones de diseño (evoluciones en la especificación). Inventar y verificar - Rigor Inventar y verificar Las justificaciones de RAISE usan técnicas de transformación, pero aplicadas a expresiones lógicas (no a programas). Inventar y verificar es un estilo que fuerza a los desarrolladores a inventar un nuevo diseño y luego verificar su correctitud. Rigor Es impractico probar todo. Se requiere de métodos formales para las justificaciones. Método RAISE Requerimientos Especificación n Especificación n n Programa Pasos del Desarrollo Inventar y Verificar RSL, RAISE Spec. Language RSL es el lenguaje de especificación del método RAISE. Características del lenguaje: Es formal. Posee facilidades de estructuración. Es un lenguaje de amplio espectro: Orientado a modelos y a propiedades. Aplicativo e imperativo. Secuencial y concurrente. RAISE... Background: Orientados a Modelos: VDM, Z,... Orientados a Propiedades: Clear,... Concurrentes: CSP,... Modulares: ML,... Herramientas Técnicas de Especificaciones Formales Orientadas a Modelos: El analista construye un único modelo a partir de estructuras de datos y primitivas de construcción, ofrecidas por el lenguaje. Ejemplo: Z, VDM Orientadas a Propiedades: El analista declara una lista de nombres de funciones y por defecto hay muchos modelos que proveen, de diferentes maneras. Ejemplo: Especificaciones algebraicas. 4
5 Objetivos de RSL Soportar grandes especificaciones modulares. Proveer distintos estilos de especificación: Axiomáticas y basadas en modelos. Aplicativas e imperativas. Secuenciales y concurrentes. Soportar un amplio rango de especificación: Abstractas (cercana a los requerimientos). Concretas (cercana a la implementación). Especificación en RSL Modelo Matemático describe Mundo real Especificación RSL Programa Ejemplo (Orientado a modelos) scheme Base_Datos = class Base = Persona-set, Persona = Text vacia : Base = {}, insertar : Persona >< Base -> Base insertar (p, b) b {p}, check: Persona >< Base -> Bool check (p, b) p b Ejemplo (Orientado a propiedades) scheme Base_Datos = class Base, Persona vacia : Base, insertar : Persona >< Base -> Base check: Persona >< Base -> Bool axiom p: Persona check(p, vacia) false, p, p1: Persona, b: Base check(p1, insertar(p,b)) p1 = p check(p1,b) end Verificado adelante end Especificaciones en RSL Una especificación en RSL consiste de definiciones de módulos. Los módulos son el medio para descomponer una especificación en módulos manejables, comprensibles y reusables.. Un módulo puede ser usado para definir otro módulo. En RSL existen dos clases de módulos: objetos y esquemas. Modulo Un módulo contiene definiciones de: Types Value: constantes y funciones Variable Channel: canales de entrada y salida Modules (object, schema) Axioms: propiedades lógicas que siempre se deben mantener. No se requiere un orden especial en las definiciones. 5
6 Ejemplo scheme SISTEMA_DE_COORDENADAS = class Posicion = Real >< Real origen : Posicion, distancia : Posicion >< Posicion -> Real axiom origen (0.0, 0.0) x1,y1,x2,y2: Real distancia((x1,y1),(x2,y2)) ((x2-x1)^2 + (y2-y1) ^2) ^0.5 Abstracción en RSL Qué en lugar de Cómo RSL permite: Abstracción de datos. Abstracción de operaciones. end Ejemplos de Abstracciones de Datos Base = Persona-set Base = Persona* Base Persona = Text Persona = Nat Persona Abstracción de Operaciones Definiciones de Funciones: Explícitas (Ejemplo 1) Axiomáticas (Ejemplo 2) Implícitas (Ejemplo 3) Ejemplo 1 Definición Explícita Definición de funciones explícita: check: Persona >< Base -> Bool check (p, b) p b Ejemplo 2 Definición Axiomática Definición de funciones axiomática: check: Persona >< Base -> Bool axiom p: Persona check(p, vacia) false, p, p1: Persona, b: Base check(p1, insertar(p,b)) p1= p check(p1,b) 6
7 Ejemplo 3 Definición Implicita Definición de funciones implícitas: raiz: Real -~-> Real raiz (r) as s post s * s = r s 0.0 pre r 0.0 Un Paso del Desarrollo Base de Datos Abstracta Base de Datos utilizando Conjuntos Relación de Refinamiento Especificación n Anterior Especificación n Nueva 1. Preserva Signaturas: La nueva signatura incluye la anterior. 2. Preserva Propiedades: Las propiedades anteriores se mantienen en la nueva (condiciones de refinamiento). Validación y Verificación Validación: es el chequeo de que se está creando lo correcto, esto es, lo que piden los requerimientos: resolviendo el problema correcto. Como los requerimientos son en lenguaje natural, la validación es informal. Verificación: chequea que el proceso de desarrollo es correcto. Incluye la formulación y justificación de relaciones formales entre pasos del desarrollo: resolviendo el problema correctamente. Puede tener distintos grados de formalidad Condiciones de Refinamiento p: Persona check(p, vacia) false, p, p1: Persona, b: Base check(p1, insertar(p,b)) p1 = p check(p1,b) Verificación check(p1, insertar(p,b)) p1 = p check(p1,b) unfold insertar: check(p1, b {p}) p1 = p check(p1,b) unfold check: p1 (b {p}) p1 = p p1 b pertenece a la unión: p1 b p1 {p} p1 = p p1 b pertenece al conjunto unitario: p1 b p1 = p p1 = p p1 b conmutativa: p1 = p p1 b p1 = p p1 b reducción: true qed 7
8 Resumen RAISE Desarrollo paso a paso Inventar y verificar Riguroso Herramientas Lenguaje de Especificación (RSL) Formal Amplio Espectro Facilidades de Estructuración Temas de la clase de hoy Especificaciones Formales. Generalidades Especificaciones Algebraicas Especificaciones orientadas a Modelo RAISE RSL Presentación del Método. Bibliografía: Ingeniería de Software Ian Sommerville (6ta Edición). Capítulo 9. The RAISE Method Introducción (Capítulo i) The RAISE Specification Language 8
Ingeniería de Requerimientos. requiere de un Sistema de Software.
Ingeniería de uestableciendo lo que el cliente requiere de un Sistema de Software. Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva 1 Objetivos u Introducción a la Noción
Más detallesAlgoritmos y programas. Algoritmos y Estructuras de Datos I
Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de
Más detallesRequerimientos de Software
Requerimientos de Software Ingeniería de Requerimientos Se define como el proceso de establecer los servicios que el consumidor requiere de un sistema y las restricciones sobre las cuales de funcionar
Más detallesUniversidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas 1er.Cuatrimestre de 2006.
Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Clase 3 Principios y Ciclo de Vida Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] Repaso
Más detallesDiseño arquitectónico 1ª edición (2002)
Unidades temáticas de Ingeniería del Software Diseño arquitectónico 1ª edición (2002) Facultad de Informática objetivo Los sistemas grandes se descomponen en subsistemas que suministran un conjunto relacionado
Más detallesTipos Abstractos de Datos
Objetivos Repasar los conceptos de abstracción de datos y (TAD) Diferenciar adecuadamente los conceptos de especificación e implementación de TAD Presentar la especificación algebraica como método formal
Más detallesMétodos Formales y Análisis de Herramientas para la Producción de Software
Métodos Formales y Análisis de Herramientas para la Producción de Software Aristides Dasso, Ana Funes {arisdas, afunes}@unsl.edu.ar Universidad Nacional de San Luis Universidad Nacional de San Luis 2006
Más detallesDESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA
DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA Nombre del Módulo: PROGRAMACIÓN EN JAVASCRIPT Código: CSTI0087 total: 51 Horas Objetivo General: Crear contenido web basado en
Más detallesDesarrollo Rápido de Software. Objetivos
Desarrollo Rápido de Software Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1 Objetivos Explicar como un proceso iterativo e evolutivo de desarrollo conduce a una entrega más
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detalles1. Asignar Responsabilidades a componentes de software es la habilidad más importante del AOO. Porque:
Análisis y Diseño O.O. Preguntas del diseño : Cómo podrían asignarse responsabilidades a las clases de los objetos? Cómo podrían interactuar los objetos? Qué deberían hacer las clases? Patrones : Ciertas
Más detallesAnálisis y Diseño de Sistemas
Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Bibliografía Material Bibliográfico Análisis Estructurado Moderno Edward Yourdon. Fundamentals of
Más detallesCARRERA DE INGENIERÍA CIVIL EN INFORMÁTICA COMPETENCIAS ESPECÍFICAS Y SUS NIVELES DE DOMINIO
CARRERA DE INGENIERÍA CIVIL EN INFORMÁTICA COMPETENCIAS ESPECÍFICAS Y SUS NIVELES DE DOMINIO Responsables Prof. Oriel Herrera Gamboa Prof. Marcela Schindler Nualart Prof. Gustavo Donoso Montoya Prof. Alejandro
Más detallesAnálisis y Diseño de Sistemas
Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Clase 6 Modelo de Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] 1er. CUATRIMESTRE 2006
Más detallesPrograma de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET
Programa de actualización profesional ACTI.NET Desarrollo de aplicaciones locales y web con tecnología VB.NET OBJETIVOS: Conocer de las bondades del paradigma de orientación a objetos en.net y su lenguaje
Más detallesINTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008
INTRODUCCIÓN Estructura de Datos Tipos Abstractos de Datos (TAD S) Para poder obtener un programa que resuelva un problema dado, son necesarios varios pasos : La formulación y especificación del problema
Más detallesAnálisis y Diseño de Sistemas
Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Clase 10 Modelo Dinámico Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] 1er. CUATRIMESTRE
Más detallesTÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.
TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS. HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS 1. Nombre de la asignatura Ingeniería de
Más detallesDISEÑO DEL SISTEMA DE INFORMACION (DSI)
DISEÑO DEL SISTEMA DE INFORMACION (DSI) El objetivo del proceso de Diseño del Sistema de Información (DSI) es la definición de la arquitectura del y del entrono tecnológico que le va a dar soporte, junto
Más detallesPROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I
PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I Table of contents 1 INFORMACIÓN GENERAL...2 2 INTRODUCCIÓN... 2 3 OBJETIVOS GENERALES DE LA ASIGNATURA... 3 4 OBJETIVOS, TEMAS Y SUBTEMAS... 3 5 PLAN TEMÁTICO...6
Más detallesAlgoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
Más detallesIngeniería del Software Ingeniería del Software de Gestión. Tema 3 Metodologías de Desarrollo de Software
Ingeniería del Software Ingeniería del Software de Gestión Tema 3 Metodologías de Desarrollo de Software Félix Óscar García Rubio Crescencio Bravo Santos Índice 1. Definiciones 2. Objetivos 3. Conceptos
Más detallesTÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN
TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS 1. Nombre de la asignatura Introducción al análisis y diseño de sistemas.
Más detallesTema 1. Introducción a los TAD
Tema 1. Introducción a los TAD Objetivos En este tema nos ocupamos inicialmente del concepto de abstracción, dedicando la mayor atención a la abstracción de datos, estudiando aspectos relacionados con
Más detallesRequerimientos del software
Requerimientos del software Ian Sommerville 6ª. Edición, Capítulo 5 Requerimientos del software! Comprender la naturaleza de los problemas puede ser muy difícil, especialmente si es nuevo.! Son las descripciones
Más detallesUNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA VICERRECTORADO ACADÉMICO COORDINACION DE PRE-GRADO PROYECTO DE CARRERA DE INGENIERIA INDUSTRIAL
VICERRECTORADO ACADÉMICO COORDINACION DE PRE-GRADO PROYECTO DE CARRERA DE INGENIERIA INDUSTRIAL PROGRAMA: PROGRAMACION I CÓDIGO ASIGNATURA: 1215-208 PRE-REQUISITO: 1215-102 SEMESTRE: II (SEGUNDO) UNIDADES
Más detallesCIDE, SA. RIF: J NIT: MODELO FUNCIONAL
MODELO FUNCIONAL SIGA C O NTE NlD O Introducción Aspectos Conceptuales Definición de modelo Requisitos de un Modelo Funcional Modelando la Funcionalidad del Sistema: Diagrama de Casos de Uso Definición
Más detallesTEMA 1: SISTEMAS MODELADOS POR ECUACIONES DIFERENCIALES EN INGENIERÍA QUÍMICA. CLASIFICACIÓN. GENERALIDADES.
TEMA 1: SISTEMAS MODELADOS POR ECUACIONES DIFERENCIALES EN INGENIERÍA QUÍMICA. CLASIFICACIÓN. GENERALIDADES. 1. INTRODUCCIÓN. PLANTEAMIENTO DE PROBLEMAS EN INGENIERÍA QUÍMICA 2. PROBLEMAS EXPRESADOS MEDIANTE
Más detallesTema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
Más detallesALGEBRA DE BOOLE George Boole C. E. Shannon E. V. Hungtington [6]
ALGEBRA DE BOOLE El álgebra booleana, como cualquier otro sistema matemático deductivo, puede definirse con un conjunto de elementos, un conjunto de operadores y un número de axiomas no probados o postulados.
Más detallesCENTRO UNIVERSITARIO MONTEJO A.C. SECUNDARIA Temario Matemáticas 1
BLOQUE 1 Convierte números fraccionarios a decimales y viceversa. Conoce y utiliza las convenciones para representar números fraccionarios y decimales en la recta numérica. Representa sucesiones de números
Más detallesINSTITUTO TECNOLOGICO DE LAS AMERICAS CARRERA DE TECNOLOGO EN DESARROLLO DE SOFTWARE PRECALCULO
INSTITUTO TECNOLOGICO DE LAS AMERICAS CARRERA DE TECNOLOGO EN DESARROLLO DE SOFTWARE PRECALCULO Nombre de la asignatura: Nomenclatura del Curso: Prerrequisitos: Nomenclatura del prerrequisito Número de
Más detallesFundamentos de programación JAVA
Pág. N. 1 Fundamentos de programación JAVA Familia: Editorial: Autor: Computación e informática Macro Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-238-7 N. de páginas: 296 Edición: 2. a 2014 Medida:
Más detallesPRECALCULO INSTITUTO TECNOLÒGICO DE LAS AMÈRICAS CARRERA DE TECNÓLOGO EN MECATRONICA. Precálculo. Nombre de la asignatura: MAT-001
INSTITUTO TECNOLÒGICO DE LAS AMÈRICAS CARRERA DE TECNÓLOGO EN MECATRONICA PRECALCULO Nombre de la asignatura: Nomenclatura del Curso: Precálculo MAT-001 Prerrequisitos: Nomenclatura del prerrequisito Ninguno
Más detallesArquitectura de Aplicaciones
1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento
Más detalles1. Computadores y programación
1. Computadores y programación Informática y computadora (RAE) Informática (Ciencia de la computación) Conjunto de conocimientos científicos y técnicos que hacen posible el tratamiento automático de la
Más detallesConceptos de Programación Orientada a Objetos
Paradigmas de programación Prog. orientada a objetos Conceptos de Programación Orientada a Objetos Abstracción de Programación estructurada Programación imperativa 2 Programación estructurada (I) Programación
Más detallesTema 3.- Predicados y sentencias condicionales
UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO PROGRAMACIÓN DECLARATIVA INGENIERÍA INFORMÁTICA ESPECIALIDAD DE COMPUTACIÓN CUARTO CURSO PRIMER
Más detallesFundamentos de Programación Visual Basic
Pág. N. 1 Fundamentos de Programación Visual Basic Familia: Editorial: Tecnología de información y computación Macro Autor: Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-236-3 N. de páginas: 280
Más detallesSe utiliza para representar los tipos de objetos dentro del sistema (proceso) y las diversas relaciones estáticas que existen entre ellos
Diagrama de clase Se utiliza para representar los tipos de objetos dentro del sistema (proceso) y las diversas relaciones estáticas que existen entre ellos Contenido Generalidades de un diagrama de clase...
Más detallesFUNDAMENTOS DE PROGRAMACIÓN
ASIGNATURA DE GRADO: FUNDAMENTOS DE PROGRAMACIÓN Curso 2015/2016 (Código:71901020) 1.PRESENTACIÓN DE LA ASIGNATURA El objetivo de esta guía es orientar al alumno en el estudio de la asignatura de Fundamentos
Más detallesPROGRAMA DE CURSO. Metodologías de Diseño y Programación. Nombre en Inglés. Design and Programming Methodologies.
Código CC3002 Nombre Nombre en Inglés PROGRAMA DE CURSO Metodologías de Diseño y Programación Design and Programming Methodologies SCT es Docentes Horas de Cátedra Horas Docencia Auxiliar Horas de Trabajo
Más detallesINDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes
INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los
Más detallesEl Proceso. Capítulo 2 Roger Pressman, 5 a Edición. El Proceso de Desarrollo de Software
El Proceso Capítulo 2 Roger Pressman, 5 a Edición El Proceso de Desarrollo de Software Qué es? Marco de trabajo de tareas a realizar para desarrollar Software de alta calidad. Es sinónimo de Ingeniería
Más detallesPROGRAMA DE ESTUDIOS SIMULTÁNEOS DE GRADO EN MATEMÁTICAS Y GRADO EN INGENIERÍA INFORMÁTICA
PROGRAMA DE ESTUDIOS SIMULTÁNEOS DE EN MATEMÁTICAS Y EN INGENIERÍA INFORMÁTICA EXPOSICION DE MOTIVOS En los últimos años, con la puesta en marcha de los títulos de Grado dentro del plan del Espacio Europeo
Más detallesMaestría en Ingeniería Énfasis en Sistemas y Computación
Maestría en Ingeniería Énfasis en Sistemas y Computación Facultad de Ingeniería Pontificia Universidad Javeriana Cali Abril de 2008 Contenido 1 Objetivos 2 3 4 Objetivos (1) Formar investigadores con habilidades
Más detallesIntroducción a la Programación
Introducción a la Programación Grupo F y G Semana 4 Andrés Felipe Barco Santa Ingeniero en Sistemas anfelbar@javerianacali.edu.co Facultad de Ingeniería Pontificia Universidad Javeriana-Cali América del
Más detallesAnálisis y Diseño de Sistemas
Análisis y Diseño de Sistemas Dpto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Clase 14 Metodología Estructurada Modelo Funcional Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar]
Más detallesDiagrama de secuencia (interacción)
Diagrama de secuencia (interacción) Se utiliza para representar el intercambio de información entre actores, módulos o componentes; enfatizando la sucesión de eventos en el tiempo. Contenido Generalidades
Más detalles5. Los objetivos de la Calidad de los Datos (OCD) y la Evaluación de la
5. Los objetivos de la Calidad de los Datos (OCD) y la Evaluación de la Calidad de los Datos (ECD) en el Ciclo de Vida de los Datos de un Proyecto. Los objetivos de calidad de los datos, OCD, se mencionaron
Más detallesEl ente básico de la parte de la matemática conocida como ANÁLISIS, lo constituye el llamado sistema de los número reales.
EL SISTEMA DE LOS NÚMEROS REALES Introducción El ente básico de la parte de la matemática conocida como ANÁLISIS, lo constituye el llamado sistema de los número reales. Números tales como:1,3, 3 5, e,
Más detallesLos defectos en el desarrollo de Software Corporativo
Grado en Informática Los defectos en el desarrollo de Software Corporativo Desarrollo de Sistemas de Información Corporativos Departamento de Informática Contenido Definición de defecto Clasificación de
Más detallesUniversidad Autónoma Metropolitana Unidad Azcapotzalco. División de Ciencias Básicas e Ingeniería. Licenciatura en Ingeniería en Computación
Universidad Autónoma Metropolitana Unidad Azcapotzalco División de Ciencias Básicas e Ingeniería Licenciatura en Ingeniería en Computación Propuesta de Proyecto Terminal Clasificación de servicios web
Más detallesEl Lenguaje Unificado de Modelado (UML)
El Lenguaje Unificado de Modelado (UML) Enrique Hernández Orallo(ehernandez@disca.upv.es) Cualquier rama de ingeniería o arquitectura ha encontrado útil desde hace mucho tiempo la representación de los
Más detallesUniversidad de Managua
Universidad de Managua Introducción a la Programación Tema 7 Introducción a la programación en lenguaje C# Objetivos - Describir la estructura básica de un programa en Lenguaje C# - Explicar las estructuras
Más detallesProgramación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.
Programación n Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño o Vargas MsC. Variables y expresiones aritméticas Variables Conceptos de Memoria Una variable es un espacio en la memoria
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez
PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Elementos de lenguaje: Identificadores Tipos de datos 2 Tipos de datos primitivos 3 Tipos de datos referenciados Clases Interfaces Arrays
Más detallesALGORITMOS, ESTRUCTURAS Y PROGRAMACION
VICERRECTORADO ACADÉMICO DIRECCIÓN DE GESTIÓN, DESARROLLO E INNOVACIÓN CURRICULAR FACULTAD: INGENIERIA ESCUELAS: COMPUTACION - SISTEMA UNIDAD CURRICULAR: ALGORITMOS, ESTRUCTURAS Y PROGRAMACION FECHA DE
Más detallesPrueba, caso de prueba, defecto, falla, error, verificación, validación.
Modelos de Prueba Prueba, caso de prueba, defecto, falla, error, verificación, validación. Prueba: Las Pruebas son básicamente un conjunto de actividades dentro del desarrollo de software, es una investigación
Más detallesUniversidad Rey Juan Carlos Facultad de CC. Jurídicas y Sociales (Campus de Vicálvaro)
Universidad Rey Juan Carlos Facultad de CC. Jurídicas y Sociales (Campus de Vicálvaro) CURSO 2009-2010 Titulación: DIPLOMATURA EN CIENCIAS EMPRESARIALES Órgano responsable de la docencia: ECONOMÍA FINANCIERA
Más detallesINGENIERÍA DEL SOFTWARE I Práctica 5 Modelado de Diseño
INGENIERÍA DEL SOFTWARE I Práctica 5 Modelado de Diseño Univ. Cantabria Fac. de Ciencias Patricia López Introducción al Diseño Modelamos la estructura software del sistema (incluida la arquitectura) para
Más detallesJava Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.
Java Avanzado. Guía 1 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 2 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo
Más detallesEstimación para Proyectos Software
Nilda M. Pérez Otero Sistemas de Información II Cursada 2011 Facultad de Ingeniería - UNJu Fuentes: Ingeniería del Software. Un Enfoque Práctico 6ta. Ed. - Roger S. Pressmann - Capítulo 23 Visión general
Más detallesAdministración de Proyectos de TI
Administración de Proyectos de TI VI Jornadas Universitarias de Sistemas de Información en Salud Lic. Gustavo Sobota Oficina de Proyectos Departamento de Informática en Salud Hospital Italiano de Buenos
Más detallesJava para programadores
Java para programadores Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Variables. Tipos
Más detallesEsquema Lógico F1. EXAMEN 1 de diciembre de EQUIPO (NOMBRE:cadena) CP (NOMBRE) DIRECTOR (NOMBRE:cadena) CP (NOMBRE)
Esquema Lógico F1 EQUIPO (NOMBRE:cadena) CP (NOMBRE) EXAMEN 1 de diciembre de 2006 DIRECTOR (NOMBRE:cadena) CP (NOMBRE) DIRIGE (EQUIPO:cadena, DIRECTOR:cadena) CP (EQUIPO) CAlt (DIRECTOR) CAj (EQUIPO)
Más detallesNOMBRE DEL CURSO: Matemática Básica 1
UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA ESCUELA DE CIENCIAS, DEPARTAMENTO DE MATEMÁTICA NOMBRE DEL CURSO: Matemática Básica 1 http://mate.ingeniería.usac.edu.gt CÓDIGO: 101 CRÉDITOS:
Más detallesFundamentos de JAVA. Angel Kuri Enero, /2/2006
Fundamentos de JAVA Angel Kuri Enero, 2006 Enunciados y Expresiones Los siguientes son enunciados sencillos: int i = 1 import java.awt.font System.out.println( Esta moto es una + color + + marca); m.enginestate
Más detallesMatemáticas Básicas para Computación
Matemáticas Básicas para Computación MATEMÁTICAS BÁSICAS PARA COMPUTACIÓN 1 Sesión No. 6 Nombre: Álgebra Booleana Objetivo Durante la sesión el participante identificará las principales características
Más detallesORGANISMO COORDINADOR DEL SISTEMA ELÉCTRICO NACIONAL INTERCONECTADO DE LA REPÚBLICA DOMINICANA
ORGANISMO COORDINADOR DEL SISTEMA ELÉCTRICO NACIONAL INTERCONECTADO DE LA REPÚBLICA DOMINICANA OC-GC-14-REQPATE-2016-V0 PARA: ORGANISMO COORDINADOR PREPARADO POR: GERENCIA COMERCIAL V0 PREPARADO POR REVISADO
Más detallesb) Qué tipo de variable son las de la línea 6? Cuál es su visibilidad? Explique su
Universidad de La Laguna. Escuela Técnica Superior de Ingeniería Informática Tercero del Grado de Informática LENGUAJES Y PARADIGMAS DE PROGRAMACION. SEGUNDA PARTE 5 páginas Nombre: Alu: 1. Cuál es la
Más detallesJesús Manuel Carrera Velueta José Juan Almeida García Fecha de elaboración: Mayo 6 de 2010 Fecha de última actualización:
PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Ingeniería Ambiental Sustantiva profesional. Programa elaborado por: PROGRAMACIÓN APLICADA Horas teóricas: 1 Horas prácticas:
Más detallesDispositivos Digitales. EL-611 Complemento de Diseño Lógico y. Dispositivos Digitales
EL-611 Complemento de Diseño Lógico y Objetivos y Evaluación Segundo Curso de Sistemas Digitales Complementar Materia Enfoque Diseños de Mayor Envergadura 1 Control + Examen y 6 Ejercicios (aprox.) Tareas
Más detallesANÁLISIS Y DISEÑO DE SISTEMAS
ANÁLISIS Y DISEÑO DE SISTEMAS Clase XVIII: Modelo Dinámico Diagramas de Actividades Primer Cuatrimestre 2013 Diagrama de Actividades (DA) Un grafo o diagrama de actividad (DA) es un tipo especial de máquina
Más detalles2. Codificar de forma sistemática la secuencia de instrucciones en un lenguaje.
Modulo 1. Introducción a los lenguajes de programación La solución de problemas mediante en uso de un computador nos lleva a desarrollar programas o aplicaciones, la construcción de estos programas debe
Más detallesIngeniería del Software de Gestión II 2 de febrero de 2005 Pág: 1/8. Apellidos: Nombre: Núm.:
Ingeniería del Software de Gestión II 2 de febrero de 2005 Pág: 1/8 Apellidos: Nombre: Núm.: PD1 (4 Ptos.): Responda razonadamente a las siguientes cuestiones: 1. Qué diferencia existe entre un diagrama
Más detallesPRECALCULO. Nomenclatura del Curso : MAT-001. Nombre del Curso : Precalculo. Prerrequisitos : Ninguno. Número de Créditos : 5. Horas Teóricas : 45
Nomenclatura del Curso : MAT-001 Nombre del Curso : Precalculo Prerrequisitos : Ninguno Número de Créditos : 5 Horas Teóricas : 45 Horas prácticas : 30 Horas Investigación : 45 Docente : INTRODUCCION PRECALCULO
Más detallesProgramación Avanzada. Desarrollo Orientado a Objetos basado en UML
Programación Avanzada Desarrollo Orientado a Objetos basado en UML Proceso de Desarrollo Qué es? Un proceso de desarrollo de software describe un enfoque para construir, instalar y mantener sistemas de
Más detallesAspectos de los LP. Diseño de compiladores. Estático vs. Dinámico. Estático vs. Dinámico. Scope. Scope 24/03/2015
Aspectos de los LP Diseño de compiladores Lenguajes de Programación Antes de comenzar con la construcción de un compilador, debemos comprender los conceptos basicos del lenguaje de programación con el
Más detallesLenguajes y Gramáticas
Lenguajes y Gramáticas Teoría de Lenguajes Fernando Naranjo Introduccion Se desarrollan lenguajes de programación basados en el principio de gramática formal. Se crean maquinas cada vez mas sofisticadas
Más detallesESTRUCTURA Y TECNOLOGÍA DE LOS COMPUTADORES I. TEMA 4 Algebra booleana y puertas lógicas
ESTRUCTURA Y TECNOLOGÍA DE LOS COMPUTADORES I TEMA 4 Algebra booleana y puertas lógicas TEMA 4. Algebra booleana y puertas lógicas 4.1 Definición de álgebra de Boole 4.2 Teoremas del álgebra de Boole 4.3
Más detallesUNIVERSIDAD LIBRE PROGRAMAS ANALÍTICOS SECCIONAL: PEREIRA FACULTAD: INGENIERIAS. PROGRAMA ACADÉMICO: Ingeniería de Sistemas
PROGRAMAS ANALÍTICOS SECCIONAL: PEREIRA FACULTAD: INGENIERIAS PROGRAMA ACADÉMICO: Ingeniería de Sistemas JORNADA: DIURNA 1.- INFORMACION DEL DOCENTE E-mail institucional: E-mail personal: 2.- ESTUDIOS
Más detallesLógica Proposicional. Sergio Stive Solano Sabié. Marzo de 2012
Lógica Proposicional Sergio Stive Solano Sabié Marzo de 2012 Lógica Proposicional Sergio Stive Solano Sabié Marzo de 2012 Proposiciones Definición 1.1 Una proposición (o declaración) es una oración declarativa
Más detallesObjetivos. Plan. Cambios de grupos Prof. sustituto: Alicia Villanueva
Ingeniería de Requerimientos Prácticas Curso 2007/08 Objetivos Aprender el manejo de una herramienta avanzada para el desarrollo rápido de prototipos: Visual Prolog Plan Semana 1: Recomendaciones IEEE
Más detallesClasificación de sistemas
Capítulo 2 Clasificación de sistemas 2.1 Clasificación de sistemas La comprensión de la definición de sistema y la clasificación de los diversos sistemas, nos dan indicaciones sobre cual es la herramienta
Más detallesFundamentos del diseño 3ª edición (2002)
Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software
Más detallesProgramación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.
Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Variables Conceptos de Memoria Una variable es un espacio en la memoria del PC Cada variable tiene un nombre, un tipo, un tamaño y un valor
Más detallesnorma española UNE-EN EXTRACTO DEL DOCUMENTO UNE-EN Seguridad funcional
norma española UNE-EN 61511-1 Enero 2006 TÍTULO Seguridad funcional Sistemas instrumentados de seguridad para el sector de las industrias de procesos Parte 1: Marco, definiciones, requisitos para el sistema,
Más detallesDiseño Web Avanzado con HTML5 y CSS3
Diseño Web Avanzado con HTML5 y CSS3 METODOLOGÍA DE LOS CURSOS Cursos interactivos sobre materias especializadas en los que el alumno avanza de forma guiada bajo una concepción learning by doing (aprender
Más detallesUNIDAD 1: CONCEPTOS BA SICOS DE BASE DE DATOS
UNIDAD 1: CONCEPTOS BA SICOS DE BASE DE DATOS [Escriba el subtítulo del documento] Qué es un gestor de base de datos? Un gestor de base de datos o sistema de gestión de base de datos (SGBD o DBMS) es un
Más detallesSERVICIO NACIONAL DE APRENDIZAJE SENA SISTEMA INTEGRADO DE GESTIÓN Procedimiento Ejecución de la Formación Profesional Integral GUÍA DE APRENDIZAJE
Nº 1 1. IDENTIFICACIÓN DE LA GUIA DE APRENDIZAJE Programa de Formación: Técnico en programación de software Nombre del Proyecto: Sistema de información para la gestión empresarial Fase del proyecto: FASE
Más detallesBLOQUE 1. LOS NÚMEROS
BLOQUE 1. LOS NÚMEROS Números naturales, enteros y racionales. El número real. Intervalos. Valor absoluto. Tanto el Cálculo como el Álgebra que estudiaremos en esta asignatura, descansan en los números
Más detallesESCUELA DE INFORMÁTICA
TÉCNICO EN SISTEMAS LABORAL SUBMODULO TEMA 1 (Visual Basic for Application) Microsoft VBA (Visual Basic for Applications) es el lenguaje de macros de Microsoft Visual Basic que se utiliza para programar
Más detallesOperadores y Expresiones
Operadores y Expresiones Los programas Java constan de datos, sentencias de programas y expresiones. Una expresión es normalmente, una ecuación matemática, tal como 3 * x + 5 * z. En esta expresión, los
Más detallesUNIDAD 1 GENERALIDADES HTML
UNIDAD 1 GENERALIDADES HTML GENERALIDADES HTML5 Una página web es un archivo con texto en el que se insertan diferentes etiquetas HTML, para que ese contenido pueda ser interpretado por el navegador web.
Más detallesStreams basados en RSL para métricas de Posicionamiento Web
Streams basados en RSL para métricas de Posicionamiento Web C. Salgado, M. Peralta, D. Riesco, G. Montejano Departamento de Informática Universidad Nacional de San Luis San Luis, Capital, Argentina Ejército
Más detallesExpresiones y sentencias
Expresiones y sentencias Expresión Construcción (combinación de tokens) que se evalúa para devolver un valor. Sentencia Representación de una acción o una secuencia de acciones. En Java, todas las sentencias
Más detallesFifth Grade/Quinto Grado Report Card Details Informe Información de la Tarjeta
Fifth Grade/Quinto Grado Report Card Details Informe Información de la Tarjeta Este trimestre se centra en las siguientes normas: ENGLISH/LANGUAGE ARTS/INGLÉS ARTES Estándares Estatales Comunes: Reading
Más detallesTEORÍA DE GRAFOS Ingeniería de Sistemas
TEORÍA DE GRAFOS Ingeniería de Sistemas Código: MAT-31114 AUTORES Ing. Daniel Zambrano Ing. Viviana Semprún UNIDADES DE LA ASIGNATURA» UNIDAD I. Relaciones» UNIDAD II. Estructuras Algebraicas» UNIDAD III.
Más detallesDefinir los módulos del SI y la manera de interactuar unos con otros, intentando que cada módulo trate total o parcialmente un proceso específico y
$FWLYLGDG'6,'LVHxRGHOD$UTXLWHFWXUDGH 0yGXORVGHO6LVWHPD 2EMHWLYRV Definir los módulos del SI y la manera de interactuar unos con otros, intentando que cada módulo trate total o parcialmente un proceso específico
Más detalles