SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones

                            Metodología de la programación
    CONTEXTO DE LA PROGRAMACIÓN EN LA CONSTRUCCIÓN DE SOFTWARE




Nombre __________________________________________________________________


INTRODUCCIÓN


Ya se han hecho consideraciones sobre el concepto errado de reconocer la
programación como la propia construcción o desarrollo de software, concluyendo que la
codificación o la generación de código es solo una parte de una conjunto denominado
construcción del software que a su vez hace parte del acumulado desarrollo de software
o construcción del sistema de información.


Sin embargo, es importante también hacer consideraciones sobre la importancia y el
papel que la programación juega hoy día en el entorno local, nacional e internacional. Es
clave que las personas que se dediquen a aprender la programación de computadoras
reconozcan en su orden: la disciplina que requieren para ello, la documentación con la
que deben contar, las tendencias en los paradigmas utilizados y el papel de los actuales y
los próximos lenguajes de programación. Todo lo anterior, obedeciendo a una temática,
tarea o actividad tan cambiante como la programación de sistemas de información.


DISCIPLINA REQUERIDA PARA PROGRAMAR


En la década de los 1940 y tiempos cercanos a ella, el proceso de desarrollo de
software originalmente consistía en la mera fase de codificación. Software era sinónimo
de programación, de programa, y todo era hecho por una sola persona dado que el
problema a resolver era de amplio dominio. No se consideraba la necesidad de
requisitos, de análisis, de diseño e incluso de mantenimiento. Las personas lograron
amplio reconocimiento en esta área y eso las llevó a generar costumbre de tranquilidad
y luego de descuido frente al funcionamiento de sus programas.



                                    INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                      Metodología de la programación
                                                                Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones

Hoy, es de suma importancia reconocer que la programación no puede ser un tema de
momento, de moda o de deseo. Si bien, se han logrado avances interesantes en formar
a l@s ingenier@s para que hagan con seriedad el desarrollo del software, la historia sigue
siendo tan fuerte que uno de los aspectos relevantes para el programador, en este caso,
es la disciplina para que no repita la historia.


Actualmente las personas que se formen en programación o que se dediquen a ello
deben considerar seriamente tres aspectos para una buena labor: 1. la comprensión de
los diferentes paradigmas y sobre todo el que se utilizará, 2. Los lenguajes de
programación y sobre todo el que se ajuste a su problema y, 3. La preparación del
entorno de desarrollo o de programación que le permite llevar a cabo, con la comodidad
del caso, la tarea de resolver el problema.




                    Figura 1. Aspectos necesarios para la labor de programación


La disciplina inicia por reconocer el orden adecuado en el que se deben comprender y
preparar los aspectos según la gráfica. Luego, la labor se encamina en la dedicación



                                        INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                          Metodología de la programación
                                                                       Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones

responsable que se tenga con la solución del programa según la estimación de esfuerzo
que se haya realizado.


DOCUMENTACIÓN


En tres sentidos cobra importancia el tema de la documentación a la hora de
programar.


     1. Documentación del código generado: es importante escribir, a manera de
        comentarios o de cualquier otra forma, mensajes que ayuden en el futuro a
        entender el código y las razones de haber colocado cada porción del mismo en
        determinado lugar. Se logra simplemente escribiendo, de manera organizada,
        texto adicional y pensando que alguien más deberá entender lo que se está
        escribiendo.
     2. Documentación para el usuario del programa: es común creer que se está
        haciendo programas de fácil comprensión y por ello no se lleva a cabo la tarea
        de generar documentación para los usuarios finales. Esta es indispensable al
        momento de liberar una versión determinada para las pruebas.
     3. Documentación para el programador: consiste en la documentación que
        debemos tener como parte de la disciplina al inicio de la labor de programación,
        es decir, documentación disponible sobre el paradigma utilizado, documentación
        sobre el lenguaje y documentación sobre el entorno de desarrollo utilizado. Toda
        esta documentación debe estar disponible y a la mano para las personas que
        llevan a cabo la tarea de programar.


TENDENCIAS EN LOS PARADIGMAS


Al   momento     de comprender determinado          paradigma de programación,           es
recomendable también tener mente abierta para entender el camino que recorrerá ese
paradigma y el tiempo en el que podrá ser reemplazado por uno nuevo. Aunque la
historia de la programación nos ha enseñado cuatro paradigmas relevantes: imperativo,
funcional, lógico y orientado a objetos; es bueno revisar la forma en que algunos de estos
se han ramificado y han intentado explorar más allá, inclusive, de las ciencias
                               INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                 Metodología de la programación
                                                                Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones

computacionales. La programación de aspectos, programación de eventos, desarrollo
rápido de aplicaciones, etc.; son algunas de las ramas que han surgido de los
paradigmas estandarizados, pero se debe tener cuidado al momento de elegir una
filosofía de programación que parece ser una tendencia adecuada al problema que se
pretende solucionar, pero que más tarde puede colocar al equipo de programación en
apuros, precisamente por la falta de documentación y de estandarización de la elección.


Ahora bien, aunque algunos Autores coinciden en que no existe una frontera bien
definida para cada paradigma, si es importante ubicarse en uno de ellos antes de elegir
un lenguaje de programación para iniciar la codificación.                   Aunque finalmente la
experiencia podrá dar cuenta de lenguajes que permiten resolver problemas aplicando
varios paradigmas; a estas herramientas de desarrollo se les conoce como lenguajes
multiparadigmas.


Un caso de multiparadigma lo muestra la Universidad de Guadalajara con el proyecto de
investigación denominado MOPHOUA que consiste en la creación de un lenguaje de
programación que integra los enfoques orientado a objetos, orientado a roles y
orientado a eventos, todo ello en un modelo de programación denominado COOP
(Context Object Oriented Programming)


EL PAPEL DEL LENGUAJE DE PROGRAMACIÓN


En 1995, en un ensayo que pretendía responder la pregunta ¿Por qué hay tantos
lenguajes de programación y siguen apareciendo nuevos?, la Dra. Hanna Oktaba (Oktaba,
1995), reconocida investigadora en el tema del software y la programación, hizo la
siguiente consideración:


       <<   La computadora, a diferencia de otras herramientas que en general apoyan el esfuerzo físico
       de los humanos, fue inventada para facilitar el trabajo intelectual. Si el hombre tiene algún
       problema, por ejemplo "sumar dos y dos", el diseñador define el algoritmo que resuelve el
       problema, el programador lo codifica en un lenguaje de programación, el cual la computadora es
       capaz de "entender", luego la computadora ejecuta el algoritmo expresado como programa en el
       lenguaje de programación en cuestión, y listo. La máquina le entrega al hombre la respuesta "4",
       sin que éste tuviera que esforzar sus neuronas.
                                           INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                             Metodología de la programación
                                                                         Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones


       ¿Cuál es el papel del lenguaje de programación en este proceso? Es muy importante, el lenguaje
       de programación es el medio de comunicación entre el hombre y la máquina. El modelo general
       de las computadoras, desde que fue esbozado por von Neumann, no ha cambiado mucho,
       mientras que la invención humana para proponerse nuevos problemas a resolver, usando la
       computadora, parece no tener límites. En consecuencia, los lenguajes de programación tienen
       que adaptarse a éstas crecientes necesidades y aumentar la expresividad para poder resolver
       problemas muy diversos y cada vez más complejos. Además, tienen que ofrecer cierta eficiencia
       en la ejecución. Es un logro difícil de alcanzar y por lo tanto, se requiere una búsqueda constante
       de nuevos lenguajes para ello..>>


Según su tesis, los lenguajes nacen con la concepción de adaptarse a los nuevos
problemas y las nuevas necesidades, lo que los deja inmersos en un mundo dinámico y
competente. Esto también, exige de parte de la persona que se dedica a la
programación, un esfuerzo adicional al momento de elegir el lenguaje adecuado.


Cada lenguaje de programación parte de un paradigma o una filosofía de programación;
en este orden de ideas, existen lenguajes imperativos, lógicos, funcionales orientados a
objetos y, siendo coherentes con el capítulo anterior, también existen lenguajes
productos de las ramificaciones de los paradigmas estandarizados y de las intenciones
multiparadigmas. A continuación, la evolución de los lenguajes hasta el año 2000 en la
figura 2.




                                           INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                             Metodología de la programación
                                                                          Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones




                  Figura 2. Evolución de los lenguajes de programación


En conclusión, quien piense que elegir un lenguaje de programación es cuestión de moda
o de dificultad/facilidad, debe re-pensar en los paradigmas, las tendencias, los lenguajes
o lo que cada uno de ellos llega a resolver. La selección de un lenguaje adecuado es un
compromiso con el que un buen diseñador/programador se compromete a tener en
cuenta en primera instancia el problema que se quiere resolver y su adaptación a
determinado paradigma, luego el nivel de abstracción deseado del problema y el nivel de
abstracción que ofrecen los lenguajes, para, finalmente, evaluar la arquitectura
hardware y el alcance de todo el sistema de información con el que interactuará la
solución deseada. Así, el lenguaje de programación no juega un papel de estética, ni de
moda, sino de compañero o “partner” en la solución que se busca para un problema
objeto de solución computacional
                                    INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                      Metodología de la programación
                                                               Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones

BIBLIOGRAFÍA

ANSI. (s.f.). ISO 9241-12:1998. Recuperado el 05 de Marzo de 2010, de American
       National Standards Institute:
       http://webstore.ansi.org/RecordDetail.aspx?sku=ISO+9241-
       12%3a1998&source=google&adgroup=iso8&keyword=iso%209241-
       12&gclid=CITKpIXYoKACFQ-bnAodyE8_Zw
Calderón, A., Valverde Rebaza, S. D., & J. C. (2007). Metodologías Ágiles. Recuperado el
       18 de Abril de 2010, de Sociedad de Estudiantes de Ciencia de la Computación:
       http://www.seccperu.org/files/Metodologias%20Agiles.pdf
Carrillo Pérez, I., Pérez González, R., & Rodríguez Martín, A. D. (Octubre de 2008).
       Metodologías de desarrollo de software. Recuperado el 15 de Mayo de 2010, de
       solusoft-g11.googlecode.com/files/Metodologias%20de%20desarrollo.pdf
Casas, S. I., & Reinaga, H. H. (s.f.). Aspectos Tempranos: Un Enfoque Basado en Tarjetas
       CRC. Recuperado el 20 de Abril de 2010, de Escuela de Sistemas Universidad
       Nacional de Colombia:
       http://pisis.unalmed.edu.co/avances/archivos/ediciones/Edicion%20Avances
       %202009%201/09.pdf
Fernández Enrich, M. (2003). Crystal Methodologies. Recuperado el 12 de Mayo de
       2010, de Departamento de Sistemas Informáticos y Computación, Universidad
       Politécnica de Valencia:
       www.dsic.upv.es/asignaturas/facultad/lsi/trabajos/282002.ppt
Fernández Lanvin, D. (2004). Desarrollo de una Metodología para un nuevo Paradigma
       de Desarrollo de Software. Recuperado el 28 de Enero de 2010, de
       Departamento de Informática Universidad de Oviedo:
       www.di.uniovi.es/~dflanvin/home/?download=pi-lanvin.pdf
Fowler, M. (2003). La Nueva Metodología. Recuperado el 12 de Mayo de 2010, de
       Programación Extrema:
       http://www.programacionextrema.org/articulos/newMethodology.es.html
IEEE. (2010). Publications & Standards. Recuperado el 18 de 10 de 2009, de The
       Institute of Electrical and Electronics Engineers, Inc:
       http://www.ieee.org/web/standards/home/index.html


                                       INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                         Metodología de la programación
                                                                 Luis Eduardo Peláez Valencia
FACULTAD CIENCIAS BÁSICAS E INGENIERÍA
Ingeniería de Sistemas y Telecomunicaciones

IEEE, Computer Society. (2004). SWEBOK - Software Engineering Body Of Knowledge.
       California: IEEE Computer Society.
Oktaba, H. (1995). El Lenguaje de programación: ¿Por qué hay tantos lenguajes y
       aparecen nuevos? Soluciones avanzadas.
Oktaba, H. (s.f.). Lecciones aprendidas del desarrollo de la norma internacional ISO/IEC
       29110 basada en MoProSoft. Recuperado el 26 de Marzo de 2010, de
       Slidechared: http://www.slideshare.net/RevistaSG/lecciones-aprendidas-del-
       desarrollo-de-la-norma-internacional-isoiec-29110-basada-en-moprosoft
Rumbaugh, J., Blaha, M., Lorensen, W., & Frederick, E. (1991). Object-Oriented Modeling
       and Design. Prentice-Hall.
Weitzenfeld, A. (2002). INGENIERIA DE SOFTWARE ORIENTADA A OBJETOS. México:
       Thomson.
Yourdon, E. (1997). Análisis estructurado moderno. México: Prentice Hall.




                                    INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES
                                                      Metodología de la programación
                                                                Luis Eduardo Peláez Valencia

Más contenido relacionado

La actualidad más candente

Comprensión de los Requerimientos
Comprensión de los Requerimientos Comprensión de los Requerimientos
Comprensión de los Requerimientos Mauricio Blandon
 
Estudio de factibilidad técnica (enfoque informático)
Estudio de factibilidad técnica  (enfoque informático)Estudio de factibilidad técnica  (enfoque informático)
Estudio de factibilidad técnica (enfoque informático)Ronald Rivas
 
Proyecto de software
Proyecto de softwareProyecto de software
Proyecto de softwaremonik1002
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semanticoAreli Gómez
 
Planificacion de software - Sistemas II
Planificacion de software - Sistemas IIPlanificacion de software - Sistemas II
Planificacion de software - Sistemas IIJohn Anthony Peraza
 
Tecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de softwareTecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de softwareReynaldo Mayz
 
Manual tecnico y manual de usuario
Manual tecnico y manual de usuarioManual tecnico y manual de usuario
Manual tecnico y manual de usuarioD MT
 
Mobile D (programacion dispositivos moviles)
Mobile D (programacion dispositivos moviles)Mobile D (programacion dispositivos moviles)
Mobile D (programacion dispositivos moviles)David Hernandez
 
SRS Ejemplo, Sistema Tarifado de Transito
SRS Ejemplo, Sistema Tarifado de TransitoSRS Ejemplo, Sistema Tarifado de Transito
SRS Ejemplo, Sistema Tarifado de TransitoJuan Jose Lucero
 
Calidad Y El Mundo Globalizado
Calidad Y El Mundo GlobalizadoCalidad Y El Mundo Globalizado
Calidad Y El Mundo GlobalizadoSistemOper
 
Analista de sistema
Analista de sistemaAnalista de sistema
Analista de sistemajobeca4
 
Equipo 4. Ingeniería de Requerimientos
Equipo 4. Ingeniería de RequerimientosEquipo 4. Ingeniería de Requerimientos
Equipo 4. Ingeniería de Requerimientosliras loca
 

La actualidad más candente (20)

Comprensión de los Requerimientos
Comprensión de los Requerimientos Comprensión de los Requerimientos
Comprensión de los Requerimientos
 
Estudio de factibilidad técnica (enfoque informático)
Estudio de factibilidad técnica  (enfoque informático)Estudio de factibilidad técnica  (enfoque informático)
Estudio de factibilidad técnica (enfoque informático)
 
Proyecto de software
Proyecto de softwareProyecto de software
Proyecto de software
 
Mapa mental de Ing. de requisito y requerimiento
Mapa mental de Ing. de requisito y requerimientoMapa mental de Ing. de requisito y requerimiento
Mapa mental de Ing. de requisito y requerimiento
 
Analisis semantico
Analisis semanticoAnalisis semantico
Analisis semantico
 
Clases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programaciónClases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programación
 
Planificacion de software - Sistemas II
Planificacion de software - Sistemas IIPlanificacion de software - Sistemas II
Planificacion de software - Sistemas II
 
CLASE 1 DIAGRAMA DE PROCESOS.pdf
CLASE 1 DIAGRAMA DE PROCESOS.pdfCLASE 1 DIAGRAMA DE PROCESOS.pdf
CLASE 1 DIAGRAMA DE PROCESOS.pdf
 
Tecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de softwareTecnicas y herramientas para el desarrollo de software
Tecnicas y herramientas para el desarrollo de software
 
Manual tecnico y manual de usuario
Manual tecnico y manual de usuarioManual tecnico y manual de usuario
Manual tecnico y manual de usuario
 
Mobile D (programacion dispositivos moviles)
Mobile D (programacion dispositivos moviles)Mobile D (programacion dispositivos moviles)
Mobile D (programacion dispositivos moviles)
 
SRS Ejemplo, Sistema Tarifado de Transito
SRS Ejemplo, Sistema Tarifado de TransitoSRS Ejemplo, Sistema Tarifado de Transito
SRS Ejemplo, Sistema Tarifado de Transito
 
Desarollo de sofware con algoritmos genéticos
Desarollo de sofware con algoritmos genéticosDesarollo de sofware con algoritmos genéticos
Desarollo de sofware con algoritmos genéticos
 
Calidad Y El Mundo Globalizado
Calidad Y El Mundo GlobalizadoCalidad Y El Mundo Globalizado
Calidad Y El Mundo Globalizado
 
Analista de sistema
Analista de sistemaAnalista de sistema
Analista de sistema
 
Paradigmas de la programación
Paradigmas de la programación Paradigmas de la programación
Paradigmas de la programación
 
Equipo 4. Ingeniería de Requerimientos
Equipo 4. Ingeniería de RequerimientosEquipo 4. Ingeniería de Requerimientos
Equipo 4. Ingeniería de Requerimientos
 
Lógica de programación
Lógica de programaciónLógica de programación
Lógica de programación
 
¿Qué es SRS?
¿Qué es SRS?¿Qué es SRS?
¿Qué es SRS?
 
Editores de texto
Editores de textoEditores de texto
Editores de texto
 

Similar a Metodología de programación en ingeniería de sistemas

1 estado arte_software
1 estado arte_software 1 estado arte_software
1 estado arte_software Delita Paulina
 
Resolver Problemas Por Medio De La Ingeniería De Sistemas
Resolver Problemas Por Medio De La Ingeniería De SistemasResolver Problemas Por Medio De La Ingeniería De Sistemas
Resolver Problemas Por Medio De La Ingeniería De SistemasAndrés Felipe Montoya Ríos
 
Fundamentos básicos de programación
Fundamentos básicos de programaciónFundamentos básicos de programación
Fundamentos básicos de programaciónVICTORALEXANDERMENDO2
 
Metodologia de desarrollo
Metodologia de desarrolloMetodologia de desarrollo
Metodologia de desarrolloDiego
 
Libro 3: tareas y saber del programaador
Libro 3: tareas y saber del programaadorLibro 3: tareas y saber del programaador
Libro 3: tareas y saber del programaadorsocrates12854
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de softwareMonica Glez
 
Ingeniería de software
Ingeniería de software Ingeniería de software
Ingeniería de software Monica Glez
 
Ha2 nm50 canseco g ana-sweb
Ha2 nm50 canseco g ana-swebHa2 nm50 canseco g ana-sweb
Ha2 nm50 canseco g ana-swebANA CANSECO
 
U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...
U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...
U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...Luis Eduardo Pelaez Valencia
 
Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.Sandy Montoya Reyes
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacionyamy matin
 
Técnica en informatica
Técnica en informaticaTécnica en informatica
Técnica en informaticamirocukasta
 

Similar a Metodología de programación en ingeniería de sistemas (20)

1 estado arte_software
1 estado arte_software 1 estado arte_software
1 estado arte_software
 
Resolver Problemas Por Medio De La Ingeniería De Sistemas
Resolver Problemas Por Medio De La Ingeniería De SistemasResolver Problemas Por Medio De La Ingeniería De Sistemas
Resolver Problemas Por Medio De La Ingeniería De Sistemas
 
Fundamentos básicos de programación
Fundamentos básicos de programaciónFundamentos básicos de programación
Fundamentos básicos de programación
 
13BarreroN4.pdf
13BarreroN4.pdf13BarreroN4.pdf
13BarreroN4.pdf
 
Niebla sortillon jesus francisco actividad1.1 si5 1
Niebla sortillon jesus francisco actividad1.1 si5 1Niebla sortillon jesus francisco actividad1.1 si5 1
Niebla sortillon jesus francisco actividad1.1 si5 1
 
Metodologia de desarrollo
Metodologia de desarrolloMetodologia de desarrollo
Metodologia de desarrollo
 
Metodologia de software
Metodologia de softwareMetodologia de software
Metodologia de software
 
Libro 3: tareas y saber del programaador
Libro 3: tareas y saber del programaadorLibro 3: tareas y saber del programaador
Libro 3: tareas y saber del programaador
 
Galdamez mejia
Galdamez mejiaGaldamez mejia
Galdamez mejia
 
Ingeniería de software
Ingeniería de softwareIngeniería de software
Ingeniería de software
 
Ingeniería de software
Ingeniería de software Ingeniería de software
Ingeniería de software
 
Esis
EsisEsis
Esis
 
Ha2 nm50 canseco g ana-sweb
Ha2 nm50 canseco g ana-swebHa2 nm50 canseco g ana-sweb
Ha2 nm50 canseco g ana-sweb
 
U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...
U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...
U1T2 - El concepto de la programación Vs el concepto de la MetodologíaU1 t2 e...
 
Mi estudio de caso
Mi estudio de casoMi estudio de caso
Mi estudio de caso
 
Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.Tabla comparativa de programacion orientada , objetos y estructurada.
Tabla comparativa de programacion orientada , objetos y estructurada.
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacion
 
Técnica en informatica
Técnica en informaticaTécnica en informatica
Técnica en informatica
 
Programmer visions
Programmer visionsProgrammer visions
Programmer visions
 
Comunicacion y colaboracion
Comunicacion y colaboracionComunicacion y colaboracion
Comunicacion y colaboracion
 

Más de Luis Eduardo Pelaez Valencia

El Anteproyecto en el contexto de un Proyecto de Ingeniería
El Anteproyecto en el contexto de un Proyecto de IngenieríaEl Anteproyecto en el contexto de un Proyecto de Ingeniería
El Anteproyecto en el contexto de un Proyecto de IngenieríaLuis Eduardo Pelaez Valencia
 
El proyecto en Tecnología en Desarrollo de Software
El proyecto en Tecnología en Desarrollo de SoftwareEl proyecto en Tecnología en Desarrollo de Software
El proyecto en Tecnología en Desarrollo de SoftwareLuis Eduardo Pelaez Valencia
 
Sesión 01 presentación del curso investigación en tecnología-tds-public
Sesión 01 presentación del curso investigación en tecnología-tds-publicSesión 01 presentación del curso investigación en tecnología-tds-public
Sesión 01 presentación del curso investigación en tecnología-tds-publicLuis Eduardo Pelaez Valencia
 
Sesión 01-Presentación del Curso de Anteproyecto
Sesión 01-Presentación del Curso de AnteproyectoSesión 01-Presentación del Curso de Anteproyecto
Sesión 01-Presentación del Curso de AnteproyectoLuis Eduardo Pelaez Valencia
 
Presentación en Sala de Coordinadores-informe de escuela de pares
Presentación en Sala de Coordinadores-informe de escuela de paresPresentación en Sala de Coordinadores-informe de escuela de pares
Presentación en Sala de Coordinadores-informe de escuela de paresLuis Eduardo Pelaez Valencia
 
SQA versión 2: la calidad en el proceso y el producto
SQA versión 2: la calidad en el proceso y el productoSQA versión 2: la calidad en el proceso y el producto
SQA versión 2: la calidad en el proceso y el productoLuis Eduardo Pelaez Valencia
 
SQA-Sesión 01-Presentación de Fundamentos SQA-16x9
SQA-Sesión 01-Presentación de Fundamentos SQA-16x9SQA-Sesión 01-Presentación de Fundamentos SQA-16x9
SQA-Sesión 01-Presentación de Fundamentos SQA-16x9Luis Eduardo Pelaez Valencia
 
Pico y placa para dispositivos móviles en la casa
Pico y placa para dispositivos móviles en la casaPico y placa para dispositivos móviles en la casa
Pico y placa para dispositivos móviles en la casaLuis Eduardo Pelaez Valencia
 

Más de Luis Eduardo Pelaez Valencia (20)

Seguridad social presentacion.pptx
Seguridad social presentacion.pptxSeguridad social presentacion.pptx
Seguridad social presentacion.pptx
 
20180802 inicio-public
20180802 inicio-public20180802 inicio-public
20180802 inicio-public
 
El Anteproyecto en el contexto de un Proyecto de Ingeniería
El Anteproyecto en el contexto de un Proyecto de IngenieríaEl Anteproyecto en el contexto de un Proyecto de Ingeniería
El Anteproyecto en el contexto de un Proyecto de Ingeniería
 
El proyecto en Tecnología en Desarrollo de Software
El proyecto en Tecnología en Desarrollo de SoftwareEl proyecto en Tecnología en Desarrollo de Software
El proyecto en Tecnología en Desarrollo de Software
 
Sesión 01 presentación del curso investigación en tecnología-tds-public
Sesión 01 presentación del curso investigación en tecnología-tds-publicSesión 01 presentación del curso investigación en tecnología-tds-public
Sesión 01 presentación del curso investigación en tecnología-tds-public
 
Sesión 01-Presentación del Curso de Anteproyecto
Sesión 01-Presentación del Curso de AnteproyectoSesión 01-Presentación del Curso de Anteproyecto
Sesión 01-Presentación del Curso de Anteproyecto
 
Presentación en Sala de Coordinadores-informe de escuela de pares
Presentación en Sala de Coordinadores-informe de escuela de paresPresentación en Sala de Coordinadores-informe de escuela de pares
Presentación en Sala de Coordinadores-informe de escuela de pares
 
SQA versión 2: la calidad en el proceso y el producto
SQA versión 2: la calidad en el proceso y el productoSQA versión 2: la calidad en el proceso y el producto
SQA versión 2: la calidad en el proceso y el producto
 
SQA-Sesión 01-Presentación de Fundamentos SQA-16x9
SQA-Sesión 01-Presentación de Fundamentos SQA-16x9SQA-Sesión 01-Presentación de Fundamentos SQA-16x9
SQA-Sesión 01-Presentación de Fundamentos SQA-16x9
 
SQA-Presentación ejecutiva del seminario-4x3
SQA-Presentación ejecutiva del seminario-4x3SQA-Presentación ejecutiva del seminario-4x3
SQA-Presentación ejecutiva del seminario-4x3
 
SQA-Propuesta de proyecto para el seminario
SQA-Propuesta de proyecto para el seminarioSQA-Propuesta de proyecto para el seminario
SQA-Propuesta de proyecto para el seminario
 
SQA-Presentación detallada del seminario-16x9
SQA-Presentación detallada del seminario-16x9SQA-Presentación detallada del seminario-16x9
SQA-Presentación detallada del seminario-16x9
 
Visibilidad de la producción académica
Visibilidad de la producción académicaVisibilidad de la producción académica
Visibilidad de la producción académica
 
Curso de Estructuradores de Proyectos Red CTeI
Curso de Estructuradores de Proyectos Red CTeICurso de Estructuradores de Proyectos Red CTeI
Curso de Estructuradores de Proyectos Red CTeI
 
Curso de Estructuradores de Proyectos Red CTeI
Curso de Estructuradores de Proyectos Red CTeICurso de Estructuradores de Proyectos Red CTeI
Curso de Estructuradores de Proyectos Red CTeI
 
Curso de Estructuradores de Proyectos Red CTeI
Curso de Estructuradores de Proyectos Red CTeICurso de Estructuradores de Proyectos Red CTeI
Curso de Estructuradores de Proyectos Red CTeI
 
Política y Niveles de Educcación
Política y Niveles de EduccaciónPolítica y Niveles de Educcación
Política y Niveles de Educcación
 
Pico y placa para dispositivos móviles en la casa
Pico y placa para dispositivos móviles en la casaPico y placa para dispositivos móviles en la casa
Pico y placa para dispositivos móviles en la casa
 
Diccionario de Datos
Diccionario de DatosDiccionario de Datos
Diccionario de Datos
 
Taller 080364 sgbd-0102 - java&amp;postgre sql
Taller 080364 sgbd-0102 - java&amp;postgre sqlTaller 080364 sgbd-0102 - java&amp;postgre sql
Taller 080364 sgbd-0102 - java&amp;postgre sql
 

Último

Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOCUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOEveliaHernandez8
 
los cinco reinos biologicos 0 de los seres vivos
los cinco reinos biologicos 0 de los seres vivoslos cinco reinos biologicos 0 de los seres vivos
los cinco reinos biologicos 0 de los seres vivosOrdinolaSernaquIrene
 
MEDIACIÓN INTERNACIONAL MF 1445 vl45.pdf
MEDIACIÓN INTERNACIONAL MF 1445 vl45.pdfMEDIACIÓN INTERNACIONAL MF 1445 vl45.pdf
MEDIACIÓN INTERNACIONAL MF 1445 vl45.pdfJosé Hecht
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfssuser50d1252
 
SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...
SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...
SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...GIANCARLOORDINOLAORD
 
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...MagalyDacostaPea
 
El PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/F
El PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/FEl PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/F
El PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/FJulio Lozano
 
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdfBITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdfsolidalilaalvaradoro
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...DavidBautistaFlores1
 
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfFichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfssuser50d1252
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.monthuerta17
 
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...Martin M Flynn
 
Presentación de cita directa según el Manual de APA
Presentación de cita directa según el Manual de APAPresentación de cita directa según el Manual de APA
Presentación de cita directa según el Manual de APAlcolon
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 

Último (20)

Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADOCUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
CUADERNILLO DE EJERCICIOS PARA EL TERCER TRIMESTRE, SEXTO GRADO
 
los cinco reinos biologicos 0 de los seres vivos
los cinco reinos biologicos 0 de los seres vivoslos cinco reinos biologicos 0 de los seres vivos
los cinco reinos biologicos 0 de los seres vivos
 
MEDIACIÓN INTERNACIONAL MF 1445 vl45.pdf
MEDIACIÓN INTERNACIONAL MF 1445 vl45.pdfMEDIACIÓN INTERNACIONAL MF 1445 vl45.pdf
MEDIACIÓN INTERNACIONAL MF 1445 vl45.pdf
 
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdfFichas de MatemáticA QUINTO DE SECUNDARIA).pdf
Fichas de MatemáticA QUINTO DE SECUNDARIA).pdf
 
SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...
SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...
SESIÓN DE APRENDIZAJE Leemos un texto para identificar los sinónimos y los an...
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
4° SES COM MAR 09 Leemos una noticia del dengue e identificamos sus partes (1...
 
El PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/F
El PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/FEl PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/F
El PROGRAMA DE TUTORÍAS PARA EL APRENDIZAJE Y LA FORMACIÓN INTEGRAL PTA/F
 
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdfBITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
 
¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...
 
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdfFichas de matemática DE PRIMERO DE SECUNDARIA.pdf
Fichas de matemática DE PRIMERO DE SECUNDARIA.pdf
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.
 
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
DIGNITAS INFINITA - DIGNIDAD HUMANA; Declaración del dicasterio para la doctr...
 
Sesión ¿Amor o egoísmo? Esa es la cuestión
Sesión  ¿Amor o egoísmo? Esa es la cuestiónSesión  ¿Amor o egoísmo? Esa es la cuestión
Sesión ¿Amor o egoísmo? Esa es la cuestión
 
Presentación de cita directa según el Manual de APA
Presentación de cita directa según el Manual de APAPresentación de cita directa según el Manual de APA
Presentación de cita directa según el Manual de APA
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 

Metodología de programación en ingeniería de sistemas

  • 1. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones Metodología de la programación CONTEXTO DE LA PROGRAMACIÓN EN LA CONSTRUCCIÓN DE SOFTWARE Nombre __________________________________________________________________ INTRODUCCIÓN Ya se han hecho consideraciones sobre el concepto errado de reconocer la programación como la propia construcción o desarrollo de software, concluyendo que la codificación o la generación de código es solo una parte de una conjunto denominado construcción del software que a su vez hace parte del acumulado desarrollo de software o construcción del sistema de información. Sin embargo, es importante también hacer consideraciones sobre la importancia y el papel que la programación juega hoy día en el entorno local, nacional e internacional. Es clave que las personas que se dediquen a aprender la programación de computadoras reconozcan en su orden: la disciplina que requieren para ello, la documentación con la que deben contar, las tendencias en los paradigmas utilizados y el papel de los actuales y los próximos lenguajes de programación. Todo lo anterior, obedeciendo a una temática, tarea o actividad tan cambiante como la programación de sistemas de información. DISCIPLINA REQUERIDA PARA PROGRAMAR En la década de los 1940 y tiempos cercanos a ella, el proceso de desarrollo de software originalmente consistía en la mera fase de codificación. Software era sinónimo de programación, de programa, y todo era hecho por una sola persona dado que el problema a resolver era de amplio dominio. No se consideraba la necesidad de requisitos, de análisis, de diseño e incluso de mantenimiento. Las personas lograron amplio reconocimiento en esta área y eso las llevó a generar costumbre de tranquilidad y luego de descuido frente al funcionamiento de sus programas. INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 2. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones Hoy, es de suma importancia reconocer que la programación no puede ser un tema de momento, de moda o de deseo. Si bien, se han logrado avances interesantes en formar a l@s ingenier@s para que hagan con seriedad el desarrollo del software, la historia sigue siendo tan fuerte que uno de los aspectos relevantes para el programador, en este caso, es la disciplina para que no repita la historia. Actualmente las personas que se formen en programación o que se dediquen a ello deben considerar seriamente tres aspectos para una buena labor: 1. la comprensión de los diferentes paradigmas y sobre todo el que se utilizará, 2. Los lenguajes de programación y sobre todo el que se ajuste a su problema y, 3. La preparación del entorno de desarrollo o de programación que le permite llevar a cabo, con la comodidad del caso, la tarea de resolver el problema. Figura 1. Aspectos necesarios para la labor de programación La disciplina inicia por reconocer el orden adecuado en el que se deben comprender y preparar los aspectos según la gráfica. Luego, la labor se encamina en la dedicación INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 3. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones responsable que se tenga con la solución del programa según la estimación de esfuerzo que se haya realizado. DOCUMENTACIÓN En tres sentidos cobra importancia el tema de la documentación a la hora de programar. 1. Documentación del código generado: es importante escribir, a manera de comentarios o de cualquier otra forma, mensajes que ayuden en el futuro a entender el código y las razones de haber colocado cada porción del mismo en determinado lugar. Se logra simplemente escribiendo, de manera organizada, texto adicional y pensando que alguien más deberá entender lo que se está escribiendo. 2. Documentación para el usuario del programa: es común creer que se está haciendo programas de fácil comprensión y por ello no se lleva a cabo la tarea de generar documentación para los usuarios finales. Esta es indispensable al momento de liberar una versión determinada para las pruebas. 3. Documentación para el programador: consiste en la documentación que debemos tener como parte de la disciplina al inicio de la labor de programación, es decir, documentación disponible sobre el paradigma utilizado, documentación sobre el lenguaje y documentación sobre el entorno de desarrollo utilizado. Toda esta documentación debe estar disponible y a la mano para las personas que llevan a cabo la tarea de programar. TENDENCIAS EN LOS PARADIGMAS Al momento de comprender determinado paradigma de programación, es recomendable también tener mente abierta para entender el camino que recorrerá ese paradigma y el tiempo en el que podrá ser reemplazado por uno nuevo. Aunque la historia de la programación nos ha enseñado cuatro paradigmas relevantes: imperativo, funcional, lógico y orientado a objetos; es bueno revisar la forma en que algunos de estos se han ramificado y han intentado explorar más allá, inclusive, de las ciencias INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 4. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones computacionales. La programación de aspectos, programación de eventos, desarrollo rápido de aplicaciones, etc.; son algunas de las ramas que han surgido de los paradigmas estandarizados, pero se debe tener cuidado al momento de elegir una filosofía de programación que parece ser una tendencia adecuada al problema que se pretende solucionar, pero que más tarde puede colocar al equipo de programación en apuros, precisamente por la falta de documentación y de estandarización de la elección. Ahora bien, aunque algunos Autores coinciden en que no existe una frontera bien definida para cada paradigma, si es importante ubicarse en uno de ellos antes de elegir un lenguaje de programación para iniciar la codificación. Aunque finalmente la experiencia podrá dar cuenta de lenguajes que permiten resolver problemas aplicando varios paradigmas; a estas herramientas de desarrollo se les conoce como lenguajes multiparadigmas. Un caso de multiparadigma lo muestra la Universidad de Guadalajara con el proyecto de investigación denominado MOPHOUA que consiste en la creación de un lenguaje de programación que integra los enfoques orientado a objetos, orientado a roles y orientado a eventos, todo ello en un modelo de programación denominado COOP (Context Object Oriented Programming) EL PAPEL DEL LENGUAJE DE PROGRAMACIÓN En 1995, en un ensayo que pretendía responder la pregunta ¿Por qué hay tantos lenguajes de programación y siguen apareciendo nuevos?, la Dra. Hanna Oktaba (Oktaba, 1995), reconocida investigadora en el tema del software y la programación, hizo la siguiente consideración: << La computadora, a diferencia de otras herramientas que en general apoyan el esfuerzo físico de los humanos, fue inventada para facilitar el trabajo intelectual. Si el hombre tiene algún problema, por ejemplo "sumar dos y dos", el diseñador define el algoritmo que resuelve el problema, el programador lo codifica en un lenguaje de programación, el cual la computadora es capaz de "entender", luego la computadora ejecuta el algoritmo expresado como programa en el lenguaje de programación en cuestión, y listo. La máquina le entrega al hombre la respuesta "4", sin que éste tuviera que esforzar sus neuronas. INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 5. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones ¿Cuál es el papel del lenguaje de programación en este proceso? Es muy importante, el lenguaje de programación es el medio de comunicación entre el hombre y la máquina. El modelo general de las computadoras, desde que fue esbozado por von Neumann, no ha cambiado mucho, mientras que la invención humana para proponerse nuevos problemas a resolver, usando la computadora, parece no tener límites. En consecuencia, los lenguajes de programación tienen que adaptarse a éstas crecientes necesidades y aumentar la expresividad para poder resolver problemas muy diversos y cada vez más complejos. Además, tienen que ofrecer cierta eficiencia en la ejecución. Es un logro difícil de alcanzar y por lo tanto, se requiere una búsqueda constante de nuevos lenguajes para ello..>> Según su tesis, los lenguajes nacen con la concepción de adaptarse a los nuevos problemas y las nuevas necesidades, lo que los deja inmersos en un mundo dinámico y competente. Esto también, exige de parte de la persona que se dedica a la programación, un esfuerzo adicional al momento de elegir el lenguaje adecuado. Cada lenguaje de programación parte de un paradigma o una filosofía de programación; en este orden de ideas, existen lenguajes imperativos, lógicos, funcionales orientados a objetos y, siendo coherentes con el capítulo anterior, también existen lenguajes productos de las ramificaciones de los paradigmas estandarizados y de las intenciones multiparadigmas. A continuación, la evolución de los lenguajes hasta el año 2000 en la figura 2. INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 6. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones Figura 2. Evolución de los lenguajes de programación En conclusión, quien piense que elegir un lenguaje de programación es cuestión de moda o de dificultad/facilidad, debe re-pensar en los paradigmas, las tendencias, los lenguajes o lo que cada uno de ellos llega a resolver. La selección de un lenguaje adecuado es un compromiso con el que un buen diseñador/programador se compromete a tener en cuenta en primera instancia el problema que se quiere resolver y su adaptación a determinado paradigma, luego el nivel de abstracción deseado del problema y el nivel de abstracción que ofrecen los lenguajes, para, finalmente, evaluar la arquitectura hardware y el alcance de todo el sistema de información con el que interactuará la solución deseada. Así, el lenguaje de programación no juega un papel de estética, ni de moda, sino de compañero o “partner” en la solución que se busca para un problema objeto de solución computacional INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 7. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones BIBLIOGRAFÍA ANSI. (s.f.). ISO 9241-12:1998. Recuperado el 05 de Marzo de 2010, de American National Standards Institute: http://webstore.ansi.org/RecordDetail.aspx?sku=ISO+9241- 12%3a1998&source=google&adgroup=iso8&keyword=iso%209241- 12&gclid=CITKpIXYoKACFQ-bnAodyE8_Zw Calderón, A., Valverde Rebaza, S. D., & J. C. (2007). Metodologías Ágiles. Recuperado el 18 de Abril de 2010, de Sociedad de Estudiantes de Ciencia de la Computación: http://www.seccperu.org/files/Metodologias%20Agiles.pdf Carrillo Pérez, I., Pérez González, R., & Rodríguez Martín, A. D. (Octubre de 2008). Metodologías de desarrollo de software. Recuperado el 15 de Mayo de 2010, de solusoft-g11.googlecode.com/files/Metodologias%20de%20desarrollo.pdf Casas, S. I., & Reinaga, H. H. (s.f.). Aspectos Tempranos: Un Enfoque Basado en Tarjetas CRC. Recuperado el 20 de Abril de 2010, de Escuela de Sistemas Universidad Nacional de Colombia: http://pisis.unalmed.edu.co/avances/archivos/ediciones/Edicion%20Avances %202009%201/09.pdf Fernández Enrich, M. (2003). Crystal Methodologies. Recuperado el 12 de Mayo de 2010, de Departamento de Sistemas Informáticos y Computación, Universidad Politécnica de Valencia: www.dsic.upv.es/asignaturas/facultad/lsi/trabajos/282002.ppt Fernández Lanvin, D. (2004). Desarrollo de una Metodología para un nuevo Paradigma de Desarrollo de Software. Recuperado el 28 de Enero de 2010, de Departamento de Informática Universidad de Oviedo: www.di.uniovi.es/~dflanvin/home/?download=pi-lanvin.pdf Fowler, M. (2003). La Nueva Metodología. Recuperado el 12 de Mayo de 2010, de Programación Extrema: http://www.programacionextrema.org/articulos/newMethodology.es.html IEEE. (2010). Publications & Standards. Recuperado el 18 de 10 de 2009, de The Institute of Electrical and Electronics Engineers, Inc: http://www.ieee.org/web/standards/home/index.html INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia
  • 8. FACULTAD CIENCIAS BÁSICAS E INGENIERÍA Ingeniería de Sistemas y Telecomunicaciones IEEE, Computer Society. (2004). SWEBOK - Software Engineering Body Of Knowledge. California: IEEE Computer Society. Oktaba, H. (1995). El Lenguaje de programación: ¿Por qué hay tantos lenguajes y aparecen nuevos? Soluciones avanzadas. Oktaba, H. (s.f.). Lecciones aprendidas del desarrollo de la norma internacional ISO/IEC 29110 basada en MoProSoft. Recuperado el 26 de Marzo de 2010, de Slidechared: http://www.slideshare.net/RevistaSG/lecciones-aprendidas-del- desarrollo-de-la-norma-internacional-isoiec-29110-basada-en-moprosoft Rumbaugh, J., Blaha, M., Lorensen, W., & Frederick, E. (1991). Object-Oriented Modeling and Design. Prentice-Hall. Weitzenfeld, A. (2002). INGENIERIA DE SOFTWARE ORIENTADA A OBJETOS. México: Thomson. Yourdon, E. (1997). Análisis estructurado moderno. México: Prentice Hall. INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES Metodología de la programación Luis Eduardo Peláez Valencia