CONSTRUCCIÓN Y ARQUITECTURA DEL SOFTWARE Ing. FREDYS SIMANCA HERRERA.

Slides:



Advertisements
Presentaciones similares
ingeniería de software
Advertisements

Redes de Computadoras II
CAMPAÑA DE PUBLICIDAD LANZAMIENTO DE YOIGO DICIEMBRE 2006
Valores Vitro.
Soluciones propuestas
Ingeniería de Software
Estructura de un Sistema Operativo
Plan de Negocios Julio Vela.
CARACTERÍSTICAS QUE HA TENER UN DISEÑO EFICAZ
Naturaleza de la consultoría Lic. Fabricio Moreno Baca
ALL THE WHIRLED A STAGE Paola del Rocio Lara Serrano.
AUTOESTIMA.
UNA ESTRATEGIA DE LA DIRECCIÓN EMPRESARIAL
Guia Diseño Robert Echeverria
APLICAR SU ENFOQUE DE VENTAS DE CAMPO
Yeimi Constanza Patiño
DIPLOMADO PROYECTO DE INVESTIGACIÓN
Ingeniería de Requisitos
MESA 1 Sistema de Acreditación de la calidad de la educación superior universitaria.
DISEÑO EN LA NATURALEZA I UNIDAD
Alternativas tegnologicas
GDP-Gestión de Proyectos-FADU GDP_FADU.
ADMINISTRACIÓN DE REQUERIMIENTOS
Ingeniería de Software Orientado a Objetos
Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS.
1 Diseño Orientado a Objetos Agustín J. González ELO-329: Diseño y Programación Orientados a Objetos 1er. Sem
PROCESO LECTOR Material preparado por: MARTA DONOSO PARRA
Ing. en Sistemas de Información
PRESENTADO POR: MARISOL CHACON COD: LISSETH DURAN COD:
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
Planeación de Sistemas Abiertos y Cultura Corporativa
PRESENTACIÓN Este trabajo se desarrolla sobre el tema de competencias, y basado en el Marco de Fundamentacion Conceptual Especificaciones de la Pruebas.
Ibáñez Montiel Eduardo Víctor Martínez Antonio
INGENIERIA DE SOFTWARE
Metodología de Desarrollo Unidad Educativa Bolívar Sebastián Torres 6° 18°
Ciclo de vida de un sistema
 Sara Isabel Osorio Alcaraz Ana Isabel Vallejo Grisales 10 Informática 1.
Guía metodológica para la gestión de proyectos de software en PyMEs que no son fábricas de software por medio de metodologías ágiles Tatiana Alejandra.
Roles de Open UP.
RADICALES CONSTRUYENDO SOCIEDAD DESARROLLO DE HABILIDADES
Conceptos sobre GESTIÓN DE PROYECTOS
GPC-FESI (2008) REFLEXIÓN EN LA PRÁCTICA Crítica de la visión de la competencia profesional como aplicación de teorías y técnicas derivadas de la investigación.
Primero definamos que entendemos por convergencia. Pues esta es el intercambio de datos entre un lugar y otro, ya varia su estilo en diferentes ambitos.
Coaching Potenciar conocimientos y habilidades propias, del cliente y compañeros Escuela de Líderes MINSA Octubre, 2010.
Simón Esneider Herrera Álvarez Media Técnica Casd 10-2
Modelo Prescriptivos de proceso
problemas de la calidad del software
GESTIÓN CURRICULAR Características del Currículo
“ NO HAY NADA MÁS DIFÍCIL DE CONSEGUIR, MÁS ARRIESGADO DE MANTENER NI MÁS INSEGURO DE TENER ÉXITO, QUE ESTAR A LA CABEZA EN LA INTRODUCCIÓN DE UN.
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
De Informaciòn Gerencial Lcda. Oly Mata.
UNIDAD : FUNDAMENTOS DE OPERACIONES Tema 2 La Producción y Logística
Organización y Métodos. ©Ian Sommerville 1995 Ingeniería de Software, 5a. edición Capitulo 4 Diapositiva * Ingeniería de Requerimientos ● Estableciendo.
LAS COMPETENCIAS.
QUÉ ES ITIl? (Information technology infrastucture library)
LILIANA JIMENEZ GARCIA FERANANDO CANO GOMEZ. El proceso de recopilar, analizar y verificar las necesidades del cliente para un sistema es llamado Ingeniería.
COMUNICACIÓN FAMILIAR
Capas de ingeniería del Software. Rosendo Antonio Manuel Ingeniería en Sistemas Computacionales.
República Bolivariana de Venezuela Universidad Nacional Experimental Politécnica de la Fuerza Armada (UNEFA) Carrera: Ingeniería de Sistemas Cátedra: Análisis.
Harware Software Yuneidy moreno 7-2 Tecnología i. E. devora Arango.
Especificación del Problema Partimos del hecho de un programador no puede resolver un problema que no entiende. Por esta razón, la primera etapa en todo.
Modelo de procesos de software
ELO-329: Diseño y Programación Orientados a Objetos1 Proceso de Desarrollo de SW Agustín J. González ElO329: Diseño y Programación Orientados a Objeto.
 La gestión de proyectos una disciplina que ha tomado fuerza en la medida en que buena parte de lo que se hace tanto a nivel personal como profesional.
Modelado Orientado a Objetos Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
Propósito Introducción Actividad de Consolidación Actividad de Consolidación Fuentes consultadas Fuentes consultadas Ciclo de Vida del Software Ciclo.
DISEÑO UN PROYECTO DE SERVICIO LICEO INDUSTRIAL DE SAN MIGUEL AGUSTÍN EDWARDS ROSS EDUCACIÓN TECNOLÓGICA 2011.
Arquitectura de Negocio ARQUITECTURA EMPRESARIAL (AE)
Competencias y Capacidades del área de Matemática
Transcripción de la presentación:

CONSTRUCCIÓN Y ARQUITECTURA DEL SOFTWARE Ing. FREDYS SIMANCA HERRERA

Someteremos el tema de arquitectura del software a una comparación con la ingeniería civil y el rol de los arquitectos de edificios. La razón de este enfoque es simple, una realidad poco conocida o comprendida, es más facil asimilar cuando es mostrada a traves de un símil con otra que si conocemos, o bien, con otra que puede intuirse coherentemente usando el sentido comun.

Empecemos por un par de ideas simples

La arquitectura es un instrumento cuya función principal es la de intervenir en favor el hombre – James M. Fitch.

 La arquitectura debe ser una respuesta, no una imposición.  Poder hacer una cosa no legitima hacerla.  Necesitamos soluciones para los problemas reales, no inventar problemas para poder empatar con nuevas soluciones. – Gleen Murcutt

 Viendo las cosas de esta manera, en realidad el rol de un arquitecto de edificaciones y un arquitecto de software parecen enfrentar los mismos retos.

Lo que si es claro que se debe de contar con un conjunto basico de habilidades y conocimientos para ejercer este tipo de roles.

No es lo mismo construir esto

Que esto

 Cada escenario plantea retos, condiciones y necesidades diferentes.  Qué herramientas, personas, presupuesto, conocimiento y tiempo necesitamos para cada escenario?

 Podemos decir entonces sin miedo a equivocarnos, que todas las consideraciones que se nos ocurran con respecto a definir la arquitectura de una edificación, deberán ser tenidas en cuenta también al momento de definir la arquitectura de un software.

Otro ejemplo  de_la_casa_winchester.php de_la_casa_winchester.php

Qué tiene que ver esto con la arquitectura del software?

 Resulta que esta situación en el contexto del Desarrollo del Software es más común de lo que se llegaría a pensar.  Cuando un programador es asignado a la tarea de mantener y evolucionar un sistema legado, cuya arquitectura tiene fallas o incluso que no esta debidamente documentada, elige construir partes o crear sus propias rutas dentro del código.

 Lo que ocurre finalmente es que las aplicaciones con el tiempo, terminan convirtiéndose con el tiempo en una colcha de retazos o bien en un laberinto como la mansión winchester, en donde si no tienes una guía y te pierdes, nadie te asegura que vuelvan a encontrarte.

 Programar sin una arquitectura en mente es como explorar una gruta sólo con una linterna, no sabes en donde estas, en donde as estado ni para donde vas.

 De aqui que la arquitectura represente entonces, la base de un sistema de software y que deba ser construida pensando tanto en satisfacer las necesidades actuales, como en proporcionar al software las capacidades necesarias para permitir su mantenimiento y evolución de acuerdo a las necesidades del negocio y las solicitudes de los clientes.

 El arquitecto de software es entonces el encargado de establecer a que nivel, con que estrategia, y que herramientas son necesarias para realizar una implementación que satisfaga los requisitos funcionales y no funcionales de los sistemas.

 Debe ser una persona capaz de identificar las necesidades de los negocios, las habilidades de su grupo de trabajo y la viabilidad de las tecnologías disponibles para el desarrollo de software.

 Un buen arquitecto de software debe estar en capacidad de entender todas las condiciones a las que se verá sometido un sistema y proponer una solución acorde a cada escenario en particular.