You are on page 1of 11

Reporte del proyecto de investigacin

Ingeniera de Software: Fundamentos


SIP 20060016
MCC. Sergio Fuenlabrada Velzquez
fensergio@yahoo.com.mx
sfuenlabrada@ipn.mx
MSI Edna Martha Miranda Chvez
edna_miranda@hotmail.com
Ing. Mario Alberto Sesma Martnez
msesema@ipn.mx
Instituto Politcnico Nacional Unidad
Profesional Interdisciplinaria de Ingeniera y
Ciencias Sociales y Administrativas Av. Te 950,
Col. Granjas Mxico, CP. 08100
(55) 5624-2000 extensiones 70365 y 70355

Resumen
La Ciencia Computacional surge en el siglo pasado y ha provocado una serie de
avances cada da ms sorprendentes, pero a pesar de esto es un rea de
conocimiento realmente joven por no decir que es un nio pequeo, ya que si la
comparamos con distintas reas de conocimiento humano como la arquitectura, la
medicina, las matemticas, fsica entre otras, realmente tiene unas pocas horas de
nacido.
Se han realizado innumerables investigaciones y estudios sobre la Ingeniera de
Software, que muchas veces se realizan sobre las bases empricas de la
aplicacin de la ingeniera en algunas instituciones, aunado al uso de diferente
nomenclatura para nombrar el mismo elemento o cosa que se describe.
Muchas instituciones educativas estn haciendo esfuerzos por crear curriculums
orientadas a la ingeniera de software, pero esto es complicado por ser una
ingeniera incipiente y en formacin.
El nuevo modelo educativo del Instituto Politcnico Nacional se centra ms en
procesos de formacin, que en niveles de estudio, y en la formacin continua y
permanente. Lo que brinda un claro marco de referencia.

Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016


-

11 de 10 -

Si se cuenta con un marco de referencia y la tecnologa actual influye y condiciona


la forma de aprendizaje, solo falta contar con un Cuerpo de Conocimientos
que identifique claramente que ensear.
La presente investigacin parte de la hiptesis de que existen muchos autores que
hablan de los procesos de la ingeniera de software, pero debe existir alguno que
sea adecuado al tipo de problema que se pretende resolver.
Comprobacin de la hiptesis: se estableci como estrategia un grupo de equipos
de alumnos que investigaron el estado del arte de cada una de las reas de la
ingeniera de software, utilizando una metodologa en espiral que permitiera ir
profundizando en el conocimiento y estableciendo conclusiones representadas en
un trabajo de tesis.
Hasta el momento se ha podido crear un prototipo generador de exmenes en
Visual Basic, y el desarrollo de una gua para la Administracin de Proyectos de
Tecnologa de Informacin, as como un propuesta a la solucin de que en el
desarrollo de software los ingenieros elaboran poca documentacin, por lo que
utilizando las tcnicas de Coaching, se creo la propuesta COACHING PARA
ESCRIBIR DOCUMENTOS de la ingeniera de software

Introduccin
La Ciencia Computacional surge en el siglo pasado y ha provocado una serie de
avances cada da ms sorprendentes, pero a pesar de esto es un rea de
conocimiento realmente joven por no decir que es un nio pequeo, ya que si la
comparamos con distintas reas de conocimiento humano como la arquitectura, la
medicina, las matemticas, fsica entre otras, realmente tiene unas pocas horas de
nacido.
Se han realizado innumerables investigaciones y estudios sobre la Ingeniera de
Software, que muchas veces se realizan sobre las bases empricas de la
aplicacin de la ingeniera en algunas instituciones, aunado al uso de diferente
nomenclatura para nombrar el mismo elemento o cosa que se describe.
Muchas instituciones educativas estn haciendo esfuerzos por crear curriculums
orientadas a la ingeniera de software, pero esto es complicado por ser una
ingeniera incipiente y en formacin.
El nuevo modelo educativo del Instituto Politcnico Nacional se centra ms en
procesos de formacin, que en niveles de estudio, y en la formacin continua y
permanente. Lo que brinda un claro marco de referencia.

El proceso de ingeniera de software se define como "un conjunto de etapas


parcialmente ordenadas con la intencin de logra un objetivo, en este caso, la
obtencin de un producto de software de calidad" [Jacobson 1998]. El proceso de
desarrollo de software "es aquel en que las necesidades del usuario son
traducidas en requerimientos de software, estos requerimientos transformados en
diseo y el diseo implementado en cdigo, el cdigo es probado, documentado y
certificado para su uso operativo". Concretamente "define quin est haciendo qu,
cundo hacerlo y cmo alcanzar un cierto objetivo" [Jacobson 1998].
El cuerpo de conocimiento de la Ingeniera de Software, tuvo su origen en la
relacin entre IEEE Computer Society y ACM lo cuales en 1993 promovieron la
profesionalizacin de la Ingeniera de Software, al crear el Comit Coordinador de
Ingeniera de Software , dando inicio en 1998 al proyecto SWEBOK , para el
cual se contrat los servicios del Laboratorio de Investigacin en Administracin
de la Ingeniera de Software que pertenece a la Universidad de Qubec en
Montreal Canad. Este cuerpo de conocimientos indica el qu, pero no establece
los contenidos y la profundidad de estos.
Existen muchos autores que hablan de los procesos de la ingeniera de software,
pero: Cul es el ms adecuado. Qu criterios hay que tener para seleccionar la
mejor propuesta al tipo de problema a resolver, Como jerarquizarlos,. Para
responder ha estas preguntas y otras se pretende realizar el proyecto de
investigacin Ingeniera de Software: Fundamentos. La metodologa ser espiral,
donde se determinarn los conceptos ms aceptados, luego se probarn y se
identificarn ajustes a los conceptos, as hasta determinar que es concepto es
valido para el tipo de casos que abarca.
El objetivo del proyecto de investigacin es Proponer una metodologa de
ingeniera de software que permita desde identificar el problema hasta determinar
la ingeniera de pruebas

Mtodos y materiales
El procedimiento terico-metodolgico utilizado en la investigacin fue un
metodologa en espiral, donde se determinarn los conceptos ms aceptados,
luego se probarn y se identificarn ajustes a los conceptos, as hasta determinar
que es concepto es valido para el tipo de casos que abarca. Se inicio con el
primer ciclo de la espiral y se estableci de la siguiente forma:

1. Planificacin: Determinar las reas de conocimiento de la ingeniera de


software a formar parte del estudio.
2. Anlisis: Se determin que reas conocimiento son ms relevantes y que
situaciones afectan a la obtencin.
3. Desarrollo: Se realiz el estudio de las reas seleccionadas y que
presentan mayor problemtica y se elabor un prototipo.
4. Evaluacin: con base a lo alcanzado en el estudio y al prototipo evalu la
consistencia metodolgica a travs de consultas con expertos, se determin
que hay que aplicar los resultados a otros prototipos para poder comprobar
su valides.

Resultados
1.

Planeacin: Se determino que el cuerpo de conocimiento de la


Ingeniera de Software, propuesto entre IEEE Computer Society y ACM , a
travs del Comit Coordinador de Ingeniera de Software, que inicio en
1998 al proyecto SWEBOK, el cual contrat los servicios del Laboratorio de
Investigacin en Administracin de la Ingeniera de Software que pertenece
a la Universidad de Qubec en Montreal Canad. Es el cuerpo de
conocimientos de la ingeniera de software que ms aceptacin mundial
tienen. Las reas de conocimiento son:
a. Requerimientos de software. Un requerimiento es definido como
una propiedad que debe ser exhibida para resolver algn problema
del mundo real.
b. Diseo de software. Es una actividad que abarca la totalidad del
ciclo de vida del software. Se trata de administrar los cambios y
mantener los requerimientos en un estado tal que refleje fielmente lo
que el software va a ser.
c. Construccin de software. Se considera como la actividad
fundamental de la Ingeniera de Software. Es la construccin de una
pieza de software que sea funcional a travs de una combinacin de
codificacin, validacin y pruebas de calidad.
d. Pruebas de software. Consiste en la comprobacin de la dinmica
del comportamiento de un programa, sobre un conjunto
preestablecido y finito de casos de pruebas.
e. Mantenimiento del software. Una vez que el software este en
operacin hay que irlo adecuando a las nuevas soluciones que se
presenten.
f.

Administracin de la configuracin del software. Es la actividad


que identifica la configuracin del sistema en ciertos momentos
dados, con el propsito de controlar los cambios en la
configuracin

Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016


-

4 de 10 -

del software, mantener la integridad y la rastreabilidad de la


configuracin a travs del ciclo de vida del sistema.
g. Administracin de la Ingeniera del software. Es la administracin
de ciertos procesos complejos de administracin de la ingeniera,
como la administracin de la organizacin, de los proyectos/procesos
y de las mtricas del software.
h. Procesos de ingeniera de software. Trata de la definicin,
implementacin, medidas, cambios, e implementacin de los
procesos de la ingeniera de software.
i.

Mtodos y herramientas de ingeniera de software. Tiene que ver


con el ambiente y los mtodos de desarrollo de software.

j.

Calidad de software. Se refiere a las consideraciones de calidad


que trascienden los procesos del ciclo de vida.

2. Anlisis: Con base a los resultados del proyecto de evaluacin de la


industria del software realizado por la Secretara de Economa a travs del
proyecto de fabricas de software PROSOFT-. Se jerarquizo las reas de
estudio, determinando que en las que se presenta en mayor media
problemas, son en las siguientes reas:
a. Documentacin: la mayora del software que se desarrolla carece
de la documentacin adecuada.
b. Administracin de la ingeniera de software: los ingenieros de
software en algunos casos no cuentan con una metodologa
consistente de administracin de los proyectos de software.
c. Calidad del software: en algunos casos el software desarrollado no
muestran el uso de metodologas consistentes que garanticen la
calidad del software.
d. Construccin de software: como la actividad fundamental de la
Ingeniera de Software. En algunos casos la construccin de una
pieza de software no cumple con ser funcional de acuerdo a
mtodos que garanticen una combinacin de codificacin,
validacin y pruebas de calidad.
3. Desarrollo: Para resolver las problemticas detectadas en la etapa
de anlisis se obtuvieron los siguientes resultados:
a. Documentacin: Se ha observo que a la mayora de las personas
tcnicas que desean escribir documentaciones, se les presentan las
siguientes situaciones:
La ley de la opacidad.- La brillante idea que se tiene en la
cabeza, cuando se quiere escribir pierde su brillantez.
La ley del obvio.- Consiste en omitir aquellas cosas que
para el escritor son obvias, pero para el lector no lo son.
Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016
-

5 de 10 -

La ley de la tortura.- Cuando para el escritor la idea escrita


esta clarsima, pero el lector interpreta otra cosa. Dostoievski
llamaba a esto la tortura de que la palabra no siga al
pensamiento.
Para lo que utilizando las tcnicas de Coaching, se creo la propuesta
COACHING PARA ESCRIBIR DOCUMENTOS de la ingeniera de
software.
b. Administracin de la ingeniera de software: se elabor con la
participacin de Guillermo Alarcn Guzmn alumno de la carrera de
Ciencias de la Informtica la tesis Administracin de Proyectos de
Tecnologa de Informacin la cual Presentar una gua metodolgica
aplicable en proyectos de tecnologa de informacin y poner al
alcance del lector los conocimientos, tcnicas y herramientas
recomendables para poder llevar a cabo y de manera exitosa
proyectos de sta naturaleza. El cuerpo de conocimientos aqu
presentado obedece a la administracin de proyectos en general,
que particularmente pone nfasis en tcnicas y herramientas propios
de la ingeniera de sistemas (software).
c. Calidad del software: con la participacin de Rosa Elena Ayala
Fuentes alumna de la carrera de Ciencias de la Informtica se esta
elaborando la tesis Calidad de Software que actualmente se
encuentra en elaboracin, esta ser una gua que permita en los
distintos pasos del ciclo de vida establecer criterios y estndares de
calidad que garanticen la obtencin de productos de software en la
calidad esperada, y dentro del presupuesto y tiempo especificado en
los requerimientos.
d. Construccin de software: con la participacin de David Armando
Len Maya alumno de la carrera de Ciencias de la Informtica se
esta elaborando la tesis Construccin de Software esta ser una
gua que garantice que las piezas de software cumpla con la
funcionalidad establecida y con los niveles de calidad en la
codificacin, y las metodologas para la validacin y pruebas de
calidad.
4. Evaluacin:
prototipos:

para comprobar los resultados obtenidos se crearon

a. Generador de exmenes. Con la participacin de Theliope Jurez


Dvalos y Juan Jos Reyes Snchez, alumnos de la carrera de
Ciencias de la Informtica se elabor la tesis Generador de
exmenes que es un prototipo desarrollado en Visual Basic. Que
implico la aplicacin de metodologas ms aceptadas.
b. Generador de exmenes en WEB. Con la participacin de Paola
Saldaa Castillo alumna de la carrera de Ciencias de la
Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016
-

6 de 10 -

Informtica se esta elaborando la tesis Generador de exmenes


en WEB que

Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016


-

7 de 10 -

actualmente se encuentra en elaboracin. Este segundo prototipo


permitir comprobar que los conocimientos adquiridos mejoran
sustancialmente los resultados obtenidos con el primer prototipo.
Para lo cual tomando en cuenta los resultados obtenidos del primer
prototipo desarrollado, se identifico sus limitaciones tcnicas y
metodolgicas y aplicando los conocimientos de Administracin de
Proyectos de Tecnologa de Informacin, los de Calidad y
Construccin de Software se espera tener un prototipo mejor en
trminos metodolgicos y tcnicos.
5. Difusin: Para mostrar los resultados obtenidos se han relizado:
a. Conferencias impartido en distintos foros tanto nacionales como

internacionales:
Ingeniera de Software: Flexibilidad en el diseo. La
integracin del software como una herramienta del
desarrollo de las actividades humanas
es tal que la
necesidad de que se adapte ms rpidamente a los
requerimientos cambiantes del entorno de cualquier
organizacin a provocado entre otras cosas, que el software
sea dinmico, que modifiquen su comportamiento de
acuerdo a su contexto y fomenten el aprendizaje.
Los nios con sndrome de Down, tienen como caracterstica
una disminucin en su capacidad intelectual como fsica,
adems su percepcin del mundo es diferente y en la
mayora de los casos particular.
La investigacin inicio de la hiptesis de que un modelo
educativo apoyado en tecnologas de informacin en el rea
de software, puede incidir en la mejora de la capacidad de
lectura, lgica matemtica
y la capacidad motriz fina y
gruesa.
Comprobacin de la hiptesis: se estableci la estrategia de
como lograr software altamente parametrizable, con
flexibilidad que permitiera calibrarlo de acuerdo a las
necesidades particulares y personalidad del usuario final.
Entendiendo por parametrizable: la capacidad de modificar
el comportamiento de las principales dimensiones del
software: datos y procesos.
Para lograr este dinamismo se observar la estructura y
organizacin del software a construir,
establecer los
requerimientos a satisfacer y tener una estrategia
Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016
-

7 de 10 -

metodolgica como la ISW para garantizar la calidad


esperada.
Ingeniera de Software: Ciclos de vida. En que
momento iniciar el ciclo de vida?. En la literatura de las
ciencias computacionales, se establece que el esfuerzo de
desarrollo de software conlleva un ciclos de vida, que
realiza todos las actividades que comprenden entre el
momento en que se inicia hasta que se implementa.
Pero en qu momento se aplica el ciclo de vida?, los
distintos autores slo indica que hay que aplicarlos, ya que
ellos establecen un orden en el que se especifican, se
realizan los prototipos, se disea, implementan, revisan,
prueban y se realizan otras actividades en un proyecto.
Otros como Mc Connell [MC CONNELL, 1997], parte de la
idea que no hay ciclo de vida ms rpidos, sino ms bien
ciclos ms adecuado. Por lo que establece todo un proceso
de planeacin del ciclo de vida, incluyendo una serie de
preguntas que permiten seleccionar el ciclo de vida ms
adecuado al tipo de problema a resolver. Pero esta
planeacin del ciclo de vida implica entender el problema,
las necesidades y requerimientos que implica.
Todos los ciclos de vida que se proponen inician de lo que
llaman, Concepto de software o identificacin de
requerimiento o bosquejo de requerimientos o Anlisis de
Requerimientos.
Entonces el ciclo de vida inicia cuando
surge la peticin del usuario.
Al final se identifica el momento en que hay que seleccionar
el ciclo de vida que es una ves realizado el proceso de
ingeniera de software.
b. Publicaciones: Se envi para su publicacin el articulo Ingeniera
de Software: Flexibilidad en el Diseo en la Revista Polibits, del
Centro de Innovacin y Desarrollo Tecnolgico en Cmputo del
Instituto Politcnico Nacional. El cual fue aceptado por su comit
editorial y ser publicado dentro de los nmeros de 2007.

Impacto
De acuerdo a el Programa para el Desarrollo de Software establecido por
la Secretaria de Economa, la situacin actual internacional y en Mxico de esta
industrial es que el gasto en TIC en Mxico representa el 3.2% del PIB, que es la
Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016
-

8 de 10 -

posicin 50 a nivel mundial. Este rezago representa una amplia oportunidad para
desarrollar nuestro mercado interno de TI.
En el cuadro siguiente se muestra que el desarrollo de software representa el 10%
del PIB en Mxico, una gran diferencia contra Estados Unidos y contra el nivel
mundial.

La situacin de la oferta de la industria del software en nuestro pas es en


2003:
En Mxico operan menos de 500 empresas (99% con menos de 250
empleados).
Costos capacitacin altos.
Falta infraestructura fsica y de telecomunicaciones adecuada.
No existen empresas con nivel CMM-5.
La demanda en Mxico es:
La penetracin de TI en PYMES es casi nula.
La demanda se encuentra concentrada en sectores avanzados.
Bajo impacto de compras de gobierno.
Demanda externa insatisfecha
Por lo que el impacto del proyecto es:
1. Sector Productivo de Bienes y Servicios: al contar con metodologas
comprobadas y mecanismos de capacitacin ms accesibles como los que
propone el Instituto Politcnico Nacional, el sector productivo puede contar
con mejores elementos competitividad nacional y mundial.
2. El beneficio social: Al contar con mejores egresados con conocimientos
sobre la ingeniera de software la sociedad contara con mecanismos que le
permitan mejorar su calidad de vida. Bajo la lnea de investigacin se han
beneficiado tanto egresados como alumnos.
Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016
-

9 de 10 -

3. El beneficio educativo: las asignaturas de Ingeniera de Software, Diseo


de Software y Formulacin de Proyectos que se imparten en las carreras
de Ciencias de la Informtica e Ingeniera en Informtica de la UPIICSA, as
como la asignatura de Ingeniera de Software que se imparte en la maestra
en Ciencias con especialidad en Informtica de la UPIICSA.

Reporte del proyecto de investigacin Ingeniera de Software: Fundamentos SIP 20060016


-

1010 de
10 -

You might also like