martes, 14 de junio de 2011

TSP (Team Software Process) Y México a nivel mundial.

El siguiente video habla sobre la importancia del modelo TSP y como esta logrando resaltar a Mexico a nivel mundial:

ISO 29110 y las Pymes

La actividad económica desarrollada por la industria del software está tomando cada vez más importancia a nivel mundial. La cantidad de empresas dedicadas al desarrollo software está experimentado un fuerte crecimiento, en línea con el incremento de la demanda de productos del sector. Según los últimos datos publicados en (INTECO, 2008), el sector del desarrollo de software español ha experimentado un alza del 8% en 2006 para situarse en unas cifras de facturación global de cerca de 1.600 millones de facturación.

La citada industria del software está formada principalmente por PyMEs (pequeña y medianas empresas) y micro PyMEs (PyMEs de aproximadamente 20 empleados), las cuales suponen el mayor porcentaje de empresas dentro del sector (Fayad, Laitinen, & Ward, 2000). Y en este tipo de empresas la calidad del software tiene un papel fundamental, por su repercusión en los costes finales, como elemento diferenciador de la competencia y de imagen frente a sus clientes. Estudios como (Pino, Garcia, & Piattini, 2006), muestran que estas empresas desean mejorar la calidad de sus procesos software, implicando así la mejora de sus productos, implementando modelos de mejora de procesos.

Entre los múltiples modelos de mejora de procesos que en la actualidad son un referente para la mejora de la calidad, CMMI-DEV (SEI, 2006), ISO 12207 (ISO, 2007), ISO 15504 (ISO, 2004) e ISO 9001 (ISO, 2000) se han convertido en los de mayor uso en la industria. Pero numerosos estudios y encuestas como (Hareton, & Terence, 2001); (Saiedian, & Carr, 1997); (Staples, Niazi, Jeffery, Abrahams, Byatt, & Murphy, 2007), confirman que dichos modelos están orientados a grandes organizaciones y no abordan las necesidades de las pequeñas empresas, donde la aplicación de estos resulta costosa en términos económicos y de esfuerzo, ya que requieren una gran inversión en dinero, tiempo y recursos, sus recomendaciones son complejas de aplicar y el retorno de la inversión se produce a muy largo plazo.

No obstante estas iniciativas si bien suponen un importante paso en la creación de modelos para PyMEs adolecen de su carácter regional, dónde se echa en falta iniciativas de carácter internacional y avaladas por grandes organismos. En esta línea y para apoyar a la pequeña empresa, ISO ha creado el grupo de trabajo denominado SC7-WG24 con el objetivo de que sus estándares para la mejora de procesos software sean más accesibles a este tipo de empresas. Este grupo de trabajo está estableciendo un marco común para describir perfiles (conjunto de procesos para ayudar a aplicar una norma ISO) evaluables del ciclo de vida
software de uso en las pequeñas empresas.

Si bien el trabajo de dicho grupo continúa, ya se han desarrollado un conjunto de informes técnicos que serán la base sobre la cual se estructurará el futuro estándar ISO para la mejora de procesos en pequeñas empresas: el ISO/IEC 29110 for VSE (Very Small Enterprise). En la siguiente sección, se presenta una visión general de los informes técnicos referentes a ISO/IEC 29110.

Los perfiles se definen con el propósito de empaquetar referencias a y/o partes de otros documentos de manera formal, con el fin de adaptarlos a las necesidades y características de las VSE. Preparar un perfil implica producir dos tipos de documentos:

· Marco de trabajo y taxonomía (TR29110-2): Especifica los elementos comunes a todos los perfiles (estructura, conformidad, evaluación) e introduce la taxonomía (catálogo) de los perfiles ISO/IEC 29110.

· Especificaciones de perfil (TR29110-4): Proporciona la composición definitiva de un perfil, los enlaces normativos al subconjunto normativo de estándares usados en el perfil, y los enlaces informativos (referencias) a documentos de “entrada”. Para cada perfil existe un documento de este tipo.Un ejemplo de una especificación de perfil es el documento 29110-4.1 (Especificación– Perfil Básico). Su objetivo es definir una guía de gestión de proyectos y desarrollo desoftware, adaptada a las necesidades de las VSE, para un subconjunto de procesos de ISO/IEC 12207.

Cada vez más se está comprobando que la aplicación de grandes modelos de mejora de procesos (CMMI, ISO 15504, etc.) no se adapta bien a PyMEs, y de ahi la necesidad de adecuar los modelos actuales al tamaño y necesidades de este tipo de empresas. Los objetivos que ISO pretende alcanzar con la creación del estándar internacional ISO/IEC 29110 abordarían el problema que rodea a las pequeñas empresas del sector del desarrollo software en la implementación de los modelos de mejora de proceso actuales. Este estándar puede ser la solución a multitud de pequeñas empresas, ya que el propósito del mismo es, como se ha expuesto anteriormente, hacer las normas actuales de ingeniería del software más accesibles a este tipo de empresas, adaptándolas a su tamaño y necesidades de negocio, lo cual es importante para su supervivencia en los mercados y para lograr competitividad, enfrentándose a problemas como la globalización creciente de los mercados y los cambios tecnológicos que se están produciendo.

sábado, 28 de mayo de 2011

Planteamiento, Justificacion y Objetivos

“Las opciones factibles que tiene la pequeña y mediana empresa regional del software en aplicación de modelos de calidad y certificación, así como el impacto que representaría en la organización y su desempeño.” 


Planteamiento: 

Hoy en día el desarrollo de software se ha propiciado y expandido en gran manera alrededor del mundo. La mano de obra por el desarrollo de la demanda actual se ha multiplicado, ha alcanzado todos y cada uno de los campos profesionales, satisfaciendo así la demanda de la sociedad.
Hoy en día mas que nada están surgiendo pequeñas y medianas empresas del desarrollo del software, teniendo una gran popularidad y ala vez cubriendo la demanda de otras pequeñas y medianas empresas en la implementación de sistemas informáticos. Sin embargo estas empresas, sobretodo delimitadas en Latinoamérica, no aplican ningún estándar o protocolo de calidad, ya que la certificación es vista como algo muy costoso, o inalcanzable o simplemente ignorable, por lo cual desprecian los beneficios que se obtendrían de estos modelos de calidad del software. 


Objetivo General:

Presentar a la pequeña y mediana empresa del desarrollo del software algunas de las tantas opciones factibles para su organización y certificación en cuanto al desarrollo del software se habla. Así mismo resaltar a las empresas u organizaciones los beneficios que tendría aplicar un estándar de calidad vigente para sus proyectos, reduciendo o eliminando totalmente sus falsas creencias o ignorancia sobre estos modelos.


Objetivos específicos:

-Refrescar y presentar los conceptos generalizados de modelos de calidad.
-Presentar los protocolos más populares de modelos de calidad.
-Resaltar las principales diferencias, ventajas y desventajas entre algunos modelos de calidad.
-Presentar las principales opciones factibles para la pequeña y mediana empresa sobre los modelos de calidad.
-Orientar sobre la importancia e impacto en la aplicación de estos modelos en caso de que de desconociera o se ignoraran anteriormente.
 -Orientar a las empresas en como planear, aplicar y sacar ventaja de estos modelos de calidad.



Justificación:

Se cuenta con grandes estándares, como el CMMI, desarrollados y pensados para grandes empresas internacionales del software, con gran desarrollo y demandas de certificación valida, por lo tanto cuesta cientos de miles de dólares, razón por la cual la pequeña y mediana empresa ni siquiera considera aplicación de modelos de calidad y certificación en sus proyectos de llegarse a conocer.
Aquí presentaríamos unos ejemplos de opciones más factibles de protocolos o modelos de calidad del software, factibilidad tanto económica como operativa, así como resaltar los beneficios de la implementación de estos modelos en cualquier proyecto. Sobretodo desde que el desarrollo de software es algo tan comercial y expandido en todas las áreas de la sociedad por la demanda de sistemas informáticos, con modelos de calidad y certificación aplicados habría gran impacto en la planeación, diseño e implementación.

jueves, 14 de abril de 2011

Mi pregunta de Investigacion.

"Que opciones de modelo de calidad y certificacion presenta la pequeña y mediana empresa regional del software"



Despues de unas asesorias con el Profesor Oscar Mario, definitivamente esta quedo como mi pregunta de investigacion por los siguientes fundamentos:


1.-Primero que nada el desarrollo y el impacto de la empresa del software hoy en dia, cada dia mas pequeñas y medianas empresas implementan su capital en estos rubros.

2.-El impacto regional en el estado se Sonora en el desarrollo de estas empresas tiene un alto impacto en el estado de Sonora estos ultimos años, desarrollandose principalmente de forma personal o con la colaboracion de pequeños grupos.


3.-Existen modelos de calidad y certificacion como el CMMI, muy conocido y efectivo, pero al mismo tiempo costoso por cientos de miles de dolares. Por consiguiente llevar a cabo esta prueba se podria calificar incluso imposible para la pequeña y mediana empresa en latinoamerica, ya que este modelo esta hecho y calificado para las empresas grandes y establecidas internacionalmente de los Estados Unidos.

4. Presentar las ventajas y desventajas de aplicar modelos de calidad genericos y mucho mas accesibles para proyectos regionales de pequeñas y medianas empresas, asi mismo como de desarrollo personal, para asi crear un criterio en quien planee una posible implementacion.

5. El fin del resultado de esta investigacion, brindar a la persona, o pequeña y mediana empresa los medios factibles para la organizacion, calidad y desarrollo de sus proyectos de software, ya que la gran mayoria no toma en cuenta estos protocolos y estandares que realmente serian utiles para el resultado de un producto integro y cercano a la perfeccion.

miércoles, 23 de marzo de 2011

El Software: Verdades VS Mitos.


El software se desarrolla, no se fabrica, tan sencillo como lo expresa el enunciado. El software a diferencia de la manefactura de productos y artefactos, tiene que llevarse a cabo mediante un proceso progresivo y ajustado a cierta necesidad. costes del software se encuentran en la ingeniería, esto implica que los proyectos no se pueden gestionar como si lo fueran de fabricación. En pocas palabras el software se obtiene a lo largo de un elaborado y escalado desarrollo partiendo de un punto en especifico para un problema en especifico.

 El software no se estropea, se deteriora. Tan sencillo como que el software reside de manera digital en los dispositivos y es extraido por distintas interfaces que hacen posible su uso, por lo tanto no es suceptible a daños de entorno como todo material que ocupe una prescencia fisica. Seria mas correcto expresar que lo que le sucede al software es un deteriodo progresivo, o aparecen errores no detectados antes o simplemente queda obsoleto en comparacion con las tecnologias y tecnicas actuales. Cuando un componente hardware se estropea, se cambia por otro componente, mientras que para el software el mantenimiento de los programas es muy complejo y no se toma a la ligera.

 La mayoría del software se construye a la medida. Todo software se desarrolla despues de un exhaustivo analisis sobre alguna necesidad o problema. Los componentes fisicos en cambio simplemente se ensamblan, mas el software es hecho en un molde en base a la funcion que requiere concentrarse.
Mitos de Gestión:

• "Tenemos ya un libro que está lleno de estándares y procedimientos para construir software. ¿No le proporciona ya a mi gente todo lo que necesita saber?"
 
R: Muchas veces salen problemas o requerimentos que necesitan ser resueltos por mas componentes que estandares o manuales en mano, he aquí se aplica la destreza, criterio y responsabilidad de cada quien.

• "Mi gente dispone de las herramientas de desarrollo de software más avanzadas, después de todo, les compramos las computadoras más modernas."
 
R: Tener el componente de hardware mas costoso o moderno no da una garantia de poder desarrollar algo de ultima punta en calidad. Mas vale cuidar el enfoque y las herramientas de desarrollo como compiladores e interfaces mas aptas para el problema con el que se requiere trabajar.

• "Si fallamos en la planificación, podemos añadir programadores y adelantar el tiempo perdido "
 
R: Tambien comunmente llamado "Concepto de la horda Mongoliana", el tiempo que tome dar un buen analisis, diseño y pruebas a una necesidad es totalmente justificable y necesario para traer al cliente o usuario una herramienta de alta calidad, de otra manera inclusive muchos elementos en tiempo limitado, el desarrollo queda suceptible a un producto final con muchos errores.
 
Mitos del Cliente:

• "Una declaración general de los objetivos es suficiente para comenzar a escribir los programas..........podemos dar los detalles más adelante....."
 
R: El software es hecho a la medida de cada problema o necesidad presentada o encontrada, asi que hasta el mas minimo detalle que se pueda analizar sobre dicha necesidad desde el analisis primordial significa las mas altas expectativas que se puede obtener sobre el diseño.

• "Los requisitos del proyecto cambian continuamente, pero los cambios pueden acomodarse fácilmente, ya que el software es flexible.
 
R: El desarrollo del software es un proceso que para brindar la calidad deseada debe ser riguroso y preciso en cada paso. El software desde su inicio se fabrica a la medida para su necesidad y entorno. Cualquier cambio ya sea menor o radical, puede significar inluso cambiar por completo todo el trabajo anteriormente realizado, generando frustraciones en tiempos, costos, demanda y satisfaccion tanto para los desarrolladores como el cliente.
 
Mitos de los desarrolladores:

• "Una vez que escribimos los programas y hacemos que funcione, nuestro trabajo ha terminado".
 
R: No se debe olvidar que el diseño se ha planteado para pruebas y ejecucion, hasta de ser posible en los escenarios mas incoherentes.

• "Hasta que no tengo el programa "ejecutándose" realmente no tengo forma de comprobar su calidad."
 
R: La base de una buena calidad es un excelente analisis de los detalles y un riguroso diseño desde la base.


 R: Tanto se deben hacer las pruebas y evaluaciones necesarias, como una documentación de lo mas completa posible para la mayor satisfaccion tanto momentanea como futura de los clientes.

• "Lo único que se entrega al terminar el proyecto es el programa funcionando."

R:Todo software se desarrolla despues de un exhaustivo analisis sobre alguna necesidad o problema. Los componentes fisicos en cambio simplemente se ensamblan, mas el software es hecho en un molde en base a la funcion que requiere concentrarse. Tan sencillo como que el software reside de manera digital en los dispositivos y es extraido por distintas interfaces que hacen posible su uso, por lo tanto no es suceptible a daños de entorno como todo material que ocupe una prescencia fisica. Seria mas correcto expresar que lo que le sucede al software es un deteriodo progresivo, o aparecen errores no detectados antes o simplemente queda obsoleto en comparacion con las tecnologias y tecnicas actuales. Cuando un componente hardware se estropea, se cambia por otro componente, mientras que para el software el mantenimiento de los programas es muy complejo y no se toma a la ligera. costes del software se encuentran en la ingeniería, esto implica que los proyectos no se pueden gestionar como si lo fueran de fabricación. En pocas palabras el software se obtiene a lo largo de un elaborado y escalado desarrollo partiendo de un punto en especifico para un problema en especifico.an sencillo como lo expresa el enunciado. El software a diferencia de la manefactura de productos y artefactos, tiene que llevarse a cabo mediante un proceso progresivo y ajustado a cierta necesidad.

Revolucion digital con la Ingenieria del Software.

             El mundo hoy en dia gira en torno a los sistemas automatizados. La operación de estos sistemas se complementa por varios elementos, como hardware y clientes o usuarios, pero hablando a lenguaje digital nos introducimos al software en toda su extension.
 
             Por ingenieria del sofwtare se entiende por la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento de software. Para tener una mejor idea de estos conceptos y de la historia del surgimiento de esta disciplina tendremos que visualizar otras ideas y acontecimientos historicos.
 
             La Ingeniería del Software, es un término que fue utilizado por primera vez por Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el Comité de Ciencia de la OTAN celebrada en Garmisch, Alemania, en octubre de 1968. Su termino se podria definir por:

"Ingeniería de software es la aplicación de la ciencia y las matemáticas mediante la cual la capacidad de los equipos computacionales se hacen útiles al hombre a través de programas de computador, procedimientos y la documentación asociada."

              La industria de la ingenieria del software surgio mas notoriamente en los 90's en los Estados Unidos, contribuyo 25% de aumento en el PIB y ganancias billonarias. La ingeniería de software cambia la cultura del mundo debido al extendido uso de la computadora. Desde ese entonces hasta la fecha optimiza los procesos y minimiza los costos de las transacciones y sistemas requeridos mas que nunca hoy en la realidad en los diferentes campos de investigacion, estudio, desarrollo, economia y en general.