Ingeniería de software vs Ciencias de computacion

532 views
Skip to first unread message

Diego

unread,
Sep 13, 2013, 8:33:52 AM9/13/13
to sp...@googlegroups.com
Estimados soy diego limas, estoy por acabar mi carrera técnica de computación e informática, y mi pregunta es cual elegir para Ingeniería de software o Ciencias de computación para seguir mis estudios universitarios, y cual universidad recomiendan?

Muchas gracias!

Raul Gallegos

unread,
Sep 13, 2013, 11:19:25 AM9/13/13
to sp...@googlegroups.com
Antes que muchos te recomienden una u otra, hay q dejar claro que una no es mejor que otra, mucho depende de tus preferencias, si quieres saber más de las curriculas aqui esta justamente lo que necesitas:


Lastimosamente, muchas veces esto no se cumple en el Perú, asi que si vas a decidir por alguna universidad, sería muy bueno que obtengas los sílabos de la universidad que tengas en mente.

EN MI CASO, te envio la malla de la UCSP en Arequipa (es Ciencia de la Computación), aqui puedes ver todo el detalle en el punto 4 (checa los cursos obligatorios).


2013/9/13 Diego <rus...@gmail.com>
Estimados soy diego limas, estoy por acabar mi carrera técnica de computación e informática, y mi pregunta es cual elegir para Ingeniería de software o Ciencias de computación para seguir mis estudios universitarios, y cual universidad recomiendan?

Muchas gracias!

--
--
Para enviar mensajes al grupo: sp...@googlegroups.com
Para retirarse del grupo: spc-l-un...@googlegroups.com
Para mas opciones: http://groups.google.com/group/spc-l?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "Sociedad Peruana de Computación (SPC)" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a spc-l+un...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.



--
Raul O. Gallegos Hidalgo

Ernesto Cuadros-Vargas

unread,
Sep 13, 2013, 10:19:52 AM9/13/13
to Sociedad de Computacion
> Hola Diego,
>
>> Estimados soy diego limas, estoy por acabar mi carrera técnica de computación e informática, y mi pregunta es cual elegir para Ingeniería de software o Ciencias de computación para seguir mis estudios universitarios, y cual universidad recomiendan?

Ciencia de la computación esta orientada a la creación de software.

Productos como: Google, gmail, Windows, Linux, word, Excel, compiladores, etc son creaciones de gente de ciencia de la computación.

En esta línea mi percepción es que hay 2 posibilidades interesantes. La CS-UCSP en Arequipa que ya esta en esa línea desde 2006, la CS-UNSA que tiene la carrera desde 2010. La UCSP por ejemplo tiene más del 50% de los doctores en computación de todo el país.

En relación a Ing de SW hay algunas que en realidad son lo mismo que las carreras previas pero han "modernizado" el nombre. Yo tengo opinión en contra de tener esa línea en pregrado especialmente cuando no se observa una definición clara. Sin embargo, dejo el espacio para que más personas puedan explicar las carreras que ellos consideren que son recomendables en esas líneas.

En cualquiera de los dos casos algo importante es verificar o preguntar:

Cuantos profesores con maestrías y doctorados en la línea escogida (CS o SWE) hechos fuera del país a tiempo completo tiene la carrera.

Si es en ingeniería de software por ejemplo chequea cuantos docentes estudiaron a tiempo completo maestrías o doctorados en el exterior en ingeniería de software. Eso te un buen indicador.

Siempre hay gente que te dirá que maestrías y/o doctorados no son necesarios pero esa es la regla en todo el mundo y son grados que ayudan mucho en la educación que los chicos reciben.

Espero no provocar que alguien se corte las venas. Mi recomendación es que si quieres crear software debes buscar ciencia de la computación ... Si deseas aprender a usar software hecho fuera hay decenas de opciones de toda los precios.

Término diciendo que esa es mi opinión. Dejo a otros colegas para que explique. Las carreras que no mencione explícitamente.

Saludos
Er

Mauricio Lopez

unread,
Sep 13, 2013, 1:07:07 PM9/13/13
to SPC-List
Hola Diego,

La carrera de Ingeniería de Software te prepara para desarrollar software de gran complejidad y/o de gran escala. Por ejemplo software de Google, Facebook, NASA, etc. En tales casos el software tiene que cumplir requisitos definidos como ser robusto (e.g., cero bugs), eficiente (e.g., gran escalabilidad), etc. pero a la vez debe poderse cambiar y actualizar rápidamente sin romper los requisitos (e.g., no introducir bugs ni degradar la performance). Todo esto sujeto a restricciones del entorno (e.g., fechas de entrega fijas o presupuesto limitado). 

Para cumplir con los objetivos es necesario tener en cuenta varios aspectos:
      - Conocer los fundamentos de ciencias de la computación: sistemas operativos, compiladores, bases de datos, algoritmos y estructuras de datos, etc.
      - Ingeniería de Software: crear código de baja complejidad usando patrones de diseño, inyección de dependencias, aspectos, componentes, servicios, frameworks, APIs, testing unitario y refactoring.
       - Saber trabajar en equipo, saber manejar tu tiempo, planificar tu trabajo (dividirlo, estimarlo, medir los costos en tiempo y dinero, proyectar futuros cambios, etc.), focalizarte en los resultados, saber hacer los compromisos necesarios (el diseño en ingeniería es acerca de saber hacer compromisos teniendo en cuenta el contexto), tener ética.

Ingeniería de Software es la carrera que apunta a cubrir esos conocimientos. No creo que exista una universidad en Peru que enseñe IS según los estándares, pero hay varias que estan proximas a ello, quizás la PUPC. Otra opción es estudiar Ciencias de la Computación y complementar los aspectos de IS por tu cuenta mientras haces tus prácticas pre-profesionales.

Saludos,
Mauricio


Date: Fri, 13 Sep 2013 10:19:25 -0500
Subject: Re: [spc-l] Ingeniería de software vs Ciencias de computacion
From: raul...@gmail.com
To: sp...@googlegroups.com

Elmer Puma

unread,
Sep 13, 2013, 3:59:17 PM9/13/13
to sp...@googlegroups.com
LES RECOMIENDO QUE BAYAN A LA CARRERA DE ING INFORMATICA Y DE SISTEMAS DE LA UNIVERSIDAD SAN ANTONIO ABAD DE CUSCO HAY TE SACAN LA MUGRE  ING DE SOFWARE .
Elmer Puma Ttito
Ing. Informatico y de Sistemas- Consultor:
Proyectos TIC y Firmas Digitales y Microformas
Cel:973111007

Rudy Godoy

unread,
Sep 13, 2013, 3:51:13 PM9/13/13
to sp...@googlegroups.com
Perdona que intervenga en el hilo, Mauricio tengo una pregunta. 

On Sep 13, 2013, at 12:07 PM, Mauricio Lopez wrote:

Hola Diego,

La carrera de Ingeniería de Software te prepara para desarrollar software de gran complejidad y/o de gran escala. Por ejemplo software de Google, Facebook, NASA, etc. En tales casos el software tiene que cumplir requisitos definidos como ser robusto (e.g., cero bugs), eficiente (e.g., gran escalabilidad), etc. pero a la vez debe poderse cambiar y actualizar rápidamente sin romper los requisitos (e.g., no introducir bugs ni degradar la performance). Todo esto sujeto a restricciones del entorno (e.g., fechas de entrega fijas o presupuesto limitado). 


¿Puede entonces la ingeniería de software asegurar que existe software sin errores? Me parece una afirmación más que audaz y suena más a argumento de venta que a hechos concretos que se pueden verificar formalmente.

signature.asc

Jorge Neyra

unread,
Sep 13, 2013, 2:22:45 PM9/13/13
to Sociedad Peruana de Computacion
Aclarando un punto ya discutido anteriormente :)

2013/9/13 Mauricio Lopez <skull...@hotmail.com>

....

Para cumplir con los objetivos es necesario tener en cuenta varios aspectos:
      - Conocer los fundamentos de ciencias de la computación: sistemas operativos, compiladores, bases de datos, algoritmos y estructuras de datos, etc.
      - Ingeniería de Software: crear código de baja complejidad usando patrones de diseño, inyección de dependencias, aspectos, componentes, servicios, frameworks, APIs, testing unitario y refactoring.


 Todo lo mencionado en el segundo ítem, durante los últimos 10 años generó (y sigue generando) mucha controversia (ver Real Software Engineering http://www.youtube.com/watch?v=taoPYaOg9Uc ) sobre si esto, realmente, es "Ingeniería de Software", muchos desarrolladores dentro del mundo del agillismo [y académico] prefieren llamarlo "Software Development". 

 Revisen la página 162 de la "Computer Science Curricula 2013 (Draft v 1.0) - http://ai.stanford.edu/users/sahami/CS2013/ironman-draft/cs2013-ironman-v1.0.pdf es descrito como Software Development Fundamentals: Code Reviews, Unit Testing, OOP, Design Patterns, AOP, Refactoring,  APIs, Programación Defensiva (Manejo de Excepciones, etc.), Test Development Driving, ....

Carlos Valderrama

unread,
Sep 13, 2013, 7:02:43 PM9/13/13
to sp...@googlegroups.com
Deberiamos llamarlo "Software Craftmanship"


2013/9/13 Jorge Neyra <jorge...@gmail.com>



--
Carlos Valderrama V.

Mauricio Lopez

unread,
Sep 13, 2013, 7:10:09 PM9/13/13
to SPC-List
Bueno, es un punto interesante para discutir, quizás en otro hilo. 

Las ciencias de la computación dicen que es posible escribir algoritmos con cero bugs. Teniendo en cuenta que un algoritmo es una representación abstracta que se "ejecuta" en una maquina abstracta donde tienes infinita memoria e infinito disco duro. Es más, se puede probar matemáticamente que un algoritmo es correcto. Sin embargo, al implementar ese algoritmo en un lenguaje X y compilarlo ya estamos en peligro porque el compilador puede tener bugs, el sistema operativo sobre el cual se ejecutará puede tener bugs y las librerías y componentes que usamos pueden tener bugs e inclusive la máquina física puede tener mal un transistor. Osea, en el mundo real seguro que no podemos asegurar 100% de "bug free".

Por otro lado, hay sistemas tan críticos (de los que dependen las vidas de las personas) que tienen que acercarse lo máximo posible a 100% de "bug free". Y en esos casos tienes que seguir la Ingeniería de Software con total disciplina si quieres conseguir el objetivo.


Subject: Re: [spc-l] Ingeniería de software vs Ciencias de computacion
Date: Fri, 13 Sep 2013 14:51:13 -0500
To: sp...@googlegroups.com

Mauricio Lopez

unread,
Sep 13, 2013, 7:10:56 PM9/13/13
to SPC-List
Estas en lo cierto. La ingeniería de Software ciertamente tiene que ser mucho más rigurosa y necesita avanzar más su cuerpo de conocimientos. Pero tampoco es que la que tenemos ahora es totalmente inútil, no. Ha demostrado ser extremadamente útil así con todo lo que tiene. Seguro que tienen que ponerse las pilas y seguir desarrollándola. Por otro lado, ¿no te llama la atención que en Ciencias de la Computación se enseñe "Software Development"?, parece redundante ¿no?. Pero no lo es. Una cosa es saber ciencias de la computación y otra es saber hacer software, no siempre vienen ambas de la mano. Ingeniería de Software trata acerca de eso: saber hacer software.



From: jorge...@gmail.com
Date: Fri, 13 Sep 2013 13:22:45 -0500

Subject: Re: [spc-l] Ingeniería de software vs Ciencias de computacion

Ernesto Cuadros-Vargas

unread,
Sep 13, 2013, 7:51:30 PM9/13/13
to Sociedad Peruana de Computacion, Mauricio Lopez
Mauricio,

   No te llama la atencionm que en la propuesta cs2013 haya una de las 18 lineas que sea Software Engineering y otra separada llamada Software Development?
Significa que es lo mismo o que son diferentes?

En relacion a tu afirmacion

Estas en lo cierto. La ingeniería de Software ciertamente tiene que ser mucho más rigurosa y necesita avanzar más su cuerpo de conocimientos. Pero tampoco es que la que tenemos ahora es totalmente inútil, no. Ha demostrado ser extremadamente útil así con todo lo que tiene. Seguro que tienen que ponerse las pilas y seguir desarrollándola. Por otro lado, ¿no te llama la atención que en Ciencias de la Computación se enseñe "Software Development"?, parece redundante ¿no?. Pero no lo es. Una cosa es saber ciencias de la computación y otra es saber hacer software, no siempre vienen ambas de la mano. Ingeniería de Software trata acerca de eso: saber hacer software.

Tu mismo lo dices ... EN ciencia de la computacion se ensenha software development ... la palabra en significa dentro .... inside ... Ciencia de la Computacion es la carrera y tiene 18 lineas troncales.

Saludos
Er



--
**************************************************************
Ernesto Cuadros-Vargas. PhD
Dean of the School of Engineering and Computing
San Pablo Catholic University, Arequipa-Peru (www.ucsp.edu.pe)
http://socios.spc.org.pe/ecuadros
(+51)958.339.127  (+51)(54)608020 Ext 326 (Office) 
(+51)(54)281517(Fax)
*************************************************************

Ernesto Cuadros-Vargas

unread,
Sep 13, 2013, 7:48:21 PM9/13/13
to Sociedad Peruana de Computacion
Bueno, es un punto interesante para discutir, quizás en otro hilo. 

Las ciencias de la computación dicen que es posible escribir algoritmos con cero bugs.

No Mauricio, ese es el discurso de la Ing de Software ... los de Ciencia de la Computacion saben que hacer software es algo muy complicado y que no hay recetas magicas para que todo funcione bien ... lo unico que podemos hacer es utilizar le mejor que se pueda el cerebro y la abstraccion paa hacer software solido y escalable.

Saludos
er



--

Ernesto Cuadros-Vargas

unread,
Sep 13, 2013, 7:45:05 PM9/13/13
to Sociedad Peruana de Computacion, Mauricio Lopez
Estimado Mauricio,

     Emails como el que acabas de enviar son la razon de tanta confusion en el pais. Google fue hecho fundado por gente que estudiaba ciencia de la computacion en Stanford:
http://www.google.com/about/company/history/ Ojo que el link es de la propia Google.

Facebook fue creado por Mark Zuckerberg que eztudiaba Ciencia de la Computacion en Harvard

El detalle es que el puesto laboral de los que trabajan construyendo software es llamado Software Engineer ... sin embargo una cosa es el puesto laboral y otra es el titulo profesional.

Todas las areas que mencionas son parte de Ciencia de la Computacion. Ve www.cs2013.org

Tambien ve todos los topicos de SWE que se estudian en la carrera de Ciencia de la Computacion:

Te pido encarecidamente que ayudemos a aclarar esta situacion y no aumentar la confusion que nos esta costando mucho trabajo corregir por culpa de los 4 ultimas decadas de no haber entendido que era la computacion en el pais.

Saludos
er




2013/9/13 Mauricio Lopez <skull...@hotmail.com>



--

Alfredo Paz-Valderrama

unread,
Sep 13, 2013, 9:13:21 PM9/13/13
to Sociedad Peruana de Computacion
Hola Jorge, siendo mi amigo y conociendo que eres una persona honesta,
inteligente y de buenas intenciones, me veo en la obligación de
discrepar con lo que dices, señalando los siguiente:

1) La discusión a la que haces referencia de los últimos 10 años, me
parece que tiene muchos más. He conocido a muchas personas profundas
en Ciencia de la Computación y varios de ellos desprecian el área de
Ingeniería del Software, por que no es una ciencia, no hay hechos
comprobables ni repetibles, ni las demostraciones teóricas que ellos
adoran y respetan (eso opinan ellos). Incluso algunos de ellos llegan
a "minimizar" la necesidad de programar sus algoritmos. Algo similar
le ocurría Ciencia de la Computación con la Matemática.
2) La Computer Science Curricula 2013 que mencionas es de Ciencia de
la Computación y "NO es representativa de toda el área" de
computación. El único documento que podría hablar de varias áreas de
computación sería la "Computing Curricula" y no la "Computer Science
Curricula" que es específica para Ciencia de la Computación. Desde mi
punto de vista que el hecho de que la curricula de Ciencia de la
Computación diga Desarrollo de Software y no Ingeniería del Software,
tiene que ver con que quieren diferenciarse de la otra carrera
(Ingeniería del Software), pero en cualquier caso esto no tiene ningún
efecto o manifiesta alguna intención de opinar sobre el nombre de otra
especialidad de computación (Ingeniería del Software) eso no sería
académico.

Respondiendo a la pregunta original le recomiendo leer esto:

http://computingcareers.acm.org/?page_id=58

Estas es documentación oficial de la ACM (ver dominio), allí
encontrarán un Brochure y Poster sobre las carreras de computación,
incluso en español. Siempre es mejor consultar la fuente original de
la información y no tanto las opiniones. Ahora, si estas carreras se
dan así en el Perú, es otra historia :-)

Antes de caer en una discusión sin sentido (generadora de Spam) sobre
si los nombres son o no los correctos les recomiendo leer el libro
"Selected Papers on Computer Science" de Donald E. Knuth
http://www-cs-faculty.stanford.edu/~uno/cs.html donde literalmente se
dice sobre el propio nombre de Computer Science:

"The search for a perfect name is somewhat pointless, of course, since
the underlying concepts are much more important than the name."

"La búsqueda de un nombre perfecto es algo sin sentido, por supuesto,
ya que los conceptos subyacentes son mucho más importantes que el
nombre."

Por lo demás, coincido bastante con la opinión de Mauricio, pero es
mejor que cada quién se haga la suya propia, leyendo las fuentes
originales de la información

Antes de terminar aprovecho para mencionar que hoy es el día
Internacional del Programador en varios países del mundo:
http://en.wikipedia.org/wiki/Programmers'_Day

Así que felicidades a todos los fanáticos y amantes de la programación
que encontramos el disfrute de esta área.

Saludos

-------
Alfredo Paz-Valderrama
Docente Asociado Universidad Nacional de San Agustín
Docente Auxiliar Universidad Católica San Pablo

2013/9/13 Jorge Neyra <jorge...@gmail.com>:
Alfredo Paz-Valderrama

Jorge Neyra

unread,
Sep 13, 2013, 10:27:44 PM9/13/13
to Sociedad Peruana de Computacion
Hola Alfredo, gracias por las palabras :)

  Mi intención era, simplemente, aclarar sobre el ítem mencionado por Mauricio como Ingenería de Software, no es exactamente Ingenería de Software (en CS 2013 se la identifica claramente como "Software Development Fundamentals"), si hubiera enumerado algo como: Formal Methods, Software Reliability, Requirements Engineering, Software Process, etc. no hubiera tenido discrepancia :)

 Mi intervención era sobre eso puntualmente. Parece que sobredimensionaste mi corta intervención. 

2013/9/13 Alfredo Paz-Valderrama <alfre...@gmail.com>

Hola Jorge, siendo mi amigo y conociendo que eres una persona honesta,
inteligente y de buenas intenciones, me veo  en la obligación de
discrepar con lo que dices, señalando los siguiente:

1) La discusión a la que haces referencia de los últimos 10 años, me
parece que tiene muchos más. He conocido a muchas personas  profundas
en Ciencia de la Computación y varios de ellos desprecian el área de
Ingeniería del Software, por que no es una ciencia, no hay hechos
comprobables ni repetibles, ni las demostraciones teóricas que ellos
adoran y respetan (eso opinan ellos). Incluso algunos de ellos llegan
a "minimizar" la necesidad de programar sus algoritmos. Algo similar
le ocurría Ciencia de la Computación con la Matemática.

Basta ver los últimos "Chaos Report" para entender por qué la Ingeniería de Software es de las "Ingenierías" la que tuvo enormes mayores pérdidas en su corta tiempo de vida (comparado con ingenierías tradicionales).
 
 
2) La Computer Science Curricula 2013 que mencionas es de Ciencia de
la Computación y "NO es representativa de toda el área" de
computación. El único documento que podría hablar de varias áreas de
computación sería la "Computing Curricula" y no la "Computer Science
Curricula" que es específica para Ciencia de la Computación. Desde mi
punto de vista que el hecho de que la curricula de Ciencia de la
Computación diga Desarrollo de Software y no Ingeniería del Software,
tiene que ver con que quieren diferenciarse de la otra carrera
(Ingeniería del Software), pero en cualquier caso esto no tiene ningún
efecto o manifiesta alguna intención de opinar sobre el nombre de otra
especialidad de computación (Ingeniería del Software) eso no sería
académico.


Sólo hacía referencia, mi intención no era caer en discusión en ese punto. Esta diferenciación que mencionas no sólo se ve en el lado académico sino mucho más en el laboral (Ingeniería de Software Tradicional vs Agilismo).
 
Respondiendo a la pregunta original le recomiendo leer esto:

http://computingcareers.acm.org/?page_id=58

Estas es documentación oficial de la ACM (ver dominio), allí
encontrarán un Brochure y Poster sobre las carreras de computación,
incluso en español. Siempre es mejor consultar la fuente original de
la información y no tanto las opiniones. Ahora, si estas carreras se
dan así en el Perú, es otra historia :-)



Rescato tu última frase :)  y repregunto ¿cómo se dan estas carreras en el Perú?

Alfredo Paz Valderrama

unread,
Sep 13, 2013, 10:00:24 PM9/13/13
to Sociedad Peruana de Computacion
Es mi "opinión personal", pero eso no es trascendente.

Lo importante es leer las fuentes originales de la información y que
cada quién se haga su propia opinión.

No tengo más que decir.

saludos

Alfredo

2013/9/13 Ernesto Cuadros-Vargas <ecuadro...@icloud.com>:
> Alfredo,
>
> Es necesario parar de confundir este tema.
>
> Tu dices literalmente:
> "Desde mi punto de vista que el hecho de que la curricula de Ciencia de la Computación diga Desarrollo de Software y no Ingeniería del Software, ..."
>
> Eso esta equivocado !!! No es que diga SW Development y no Ing de SW !!!!
>
> Hay una línea llamada software Development fundamentales y OTRA llamada Software Engineering.
>
> Ambas cosas están separadas ahora lo cual estoy seguro que sabes que significa ....
>
> De dónde sacaste esa afirmación?
>
> Saludos
> Er
--
Alfredo Paz-Valderrama
Sociedad Peruana de Computación

Mauricio Lopez

unread,
Sep 16, 2013, 12:18:19 PM9/16/13
to SPC-List
Ohh pero lo que en ciencias de la computación llaman "Software Development Fundamentals" si es Ingeniería de Software. Solo fíjate en el cuerpo de conocimientos de Ingeniería de Software, SWEBOK V3 http://computer.centraldesktop.com/swebokv3review/ , lee los PDFs de Software Design y Software Construction.


From: jorge...@gmail.com
Date: Fri, 13 Sep 2013 21:27:44 -0500

Subject: Re: [spc-l] Ingeniería de software vs Ciencias de computacion

Ernesto Cuadros-Vargas

unread,
Sep 16, 2013, 7:30:24 PM9/16/13
to Sociedad Peruana de Computacion, Mauricio Lopez
Estimado Mauricio,

    Es bueno recordar tambien que el volumen de SWE se hace en base a lo que se publica en CS. Por eso ese volumen siempre despues ...

Saludos
Er


2013/9/16 Mauricio Lopez <skull...@hotmail.com>



--

Percy Antonio Pari Salas

unread,
Sep 17, 2013, 6:30:55 AM9/17/13
to sp...@googlegroups.com
Estimados colegas,

en mi opinión personal,
 
1) la Ingeniería de Software es transversal a la Ciencia de la Computación y a los Sistemas de Información.

2) En cuanto a la formación inicial de un Ingeniero de Software tiene m'as sentido partir con una base de Ciencia de la Computación para luego profundizar en el 'area propia al Desarrollo de Software y a su mantenimiento y gerencia en la parte de Sistemas de Información. Es claro que para cubrir ciertas 'areas de Sistemas de Información tendría que sacrificar profundidad en (o simplemente abandonar) ciertas ramas "troncales" de CC (pero eso tiene que ser bien diseñado y comunicado por las respectivas carreras/facultades).

3) La parte de Sistemas de Información que es abarcada en Ingeniería de Software analiza el entorno en el cual se aplican las diversas herramientas computacionales, a la vez que los m'etodos y procedimientos. No tiene sentido analizar el entorno sin comprender las bases de las herramientas (ojo - uso el t'ermino en un sentido abstracto) que van a utilizarse.

4) El desarrollo o construcción de software no es exclusividad de la Ingeniería de Software. Cualquiera puede intentar hacer software y especialmente aquellos que se preparan en Ciencia de la Computación. Sin embargo, s'olo unos pocos pueden hacer buen software de nacimiento, para el resto, la idea es proveer cierto auxilio a través de la Ingeniería de Software. 

S'olo algunas ideas sueltas. Estoy intentando poner las cosas en un documento coherente para compartirlo con Uds. pero me est'a tomando mas tiempo que el esperado.

Saludos
Percy Pari Salas


2013/9/17 Ernesto Cuadros-Vargas <ecua...@spc.org.pe>

Harold

unread,
Sep 17, 2013, 10:34:53 AM9/17/13
to sp...@googlegroups.com
Saludos.

Que pena meterme en este hilo es que lei algo que me pertuba y no tiene que ver con SW vs CS.

En uno de los post Mauricio dice: 

Las ciencias de la computación dicen que es posible escribir algoritmos con cero bugs. Teniendo en cuenta que un algoritmo es una representación abstracta que se "ejecuta" en una maquina abstracta donde tienes infinita memoria e infinito disco duro. Es más, se puede probar matemáticamente que un algoritmo es correcto

Jamas he escuchado tal afirmacion que venga de la comunidad de computacion. Seguramente no he leido suficiente y no tengo el background necesario. Agradeceria que me manden referencia bibliografica sobre este tema. Quisiera conocer tal teorica. Una vez estudie the Halting Problem en un Teorica de Computacion donde se muestra que no existe un algoritmo H que tenga como entrada cualquier algoritmo P y que decida si P para o no (sin importar que los recursos sean infinitos o no). Ergo no hay metodo que testee cualquier algoritmo y diga si este tiene bugs o no.

juan manuel gutierrez cardenas

unread,
Sep 17, 2013, 5:02:38 PM9/17/13
to sp...@googlegroups.com
Estimado:
Bueno si he entendido correctamente tu post podría contribuir con lo siguiente:
- Sí es posible demostrar que un algoritmo es correcto, esto se hace de forma matemática. Una rama que tiene que ver con esto son los métodos formales.
- Un bug se da en un programa, no se puede dar en un algoritmo si este es matemáticamente correcto. Eso es un problema que se tiene al pretender decir que un algoritmo es correcto sólo si funciona nivel de máquina.
- Sobre lo que has colocado acerca del Halting problema eso tiene que ver con otro tema relativo a la Teoría de Computación, extenderme sobre este tema sería mejor en otro email.
Esa es mi opinión salvo mejor parecer
Saludos cordiales
Juan Gutiérrez

 

Date: Tue, 17 Sep 2013 07:34:53 -0700
From: valdivi...@gmail.com
To: sp...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages