lunes, 20 de abril de 2015

PERSONAL SOFTWARE PROCESS



Ya que hemos estado hablando de los modelos que certifican la calidad del software es hora de hablar de los modelos que certifican a los programadores e ingenieros de software, es decir de PSP.


PSP (Personal Software Process en inglés) que significa Proceso de Software Personal es un conjunto de prácticas disciplinadas para la gestión del tiempo y mejora de la productividad personal de los ingenieros de software cuando realizan tareas de forma individual. Estas prácticas están diseñadas para emplearse en organizaciones con modelos de procesos CMMI o ISO 15504. 




Aunque realmente lo más recomendable y lógico es que una organización empiece a trabajar con modelos como PSP para que los desarrolladores de software vayan conociendo y adaptándose a trabajar de una manera muy sistemática y disciplinada y que posteriormente tengan la experiencia suficiente para poder trabajar bajo un modelo como CMMI o MoProSoft que incluyen prácticas mucho más complejas. Esto es porque si un programador nunca ha desarrollado software implementando PSP será mucho más difícil que la empresa en la que labora logre certificarse en alguno de los niveles de CMMI, por ejemplo.


Incluso CMMI es un modelo mucho más costoso que MoProSoft ya que el primero es internacional y el segundo es un modelo Mexicano el cual fue desarrollado porque los modelos de evaluación y mejora de CMMI no resultan apropiados para empresas pequeñas y medianas de desarrollo y mantenimiento de software, por lo que a estas empresas les resultaría demasiado costoso implementar el modelo CMMI.



PSP se enfoca en elaborar tablas y en ellas documentar datos que servirán al programador para:



  • Ayudarlo a realizar mejor su trabajo.
  • Proporcionar datos y técnicas de análisis que se pueden utilizar para determinar que tecnología y métodos aplicar.
  • Establecer la estructura que permita comprender por qué se cometen los errores y cómo se pueden detectar.



Existe otro conjunto de prácticas denominado TSP (Team Software Process) Proceso de Software de Equipo el cual fue desarrollado para emplearse en conjunto con PSP para mejorar la calidad y productividad de los proyectos de software realizados por un equipo de trabajo.


Referencias:
http://es.slideshare.net/diego_aacc/psp-personal-software-process-presentation
http://asprotech.blogspot.mx/2010/06/personal-software-process-psp-elementos.html



martes, 3 de febrero de 2015

FACTORES QUE EVALÚAN LA CALIDAD DEL SOFTWARE

Las personas al adquirir un producto ponemos atención en muchos aspectos pero sin duda el más importante es siempre la calidad del producto. Anteriormente les hablé de dos modelos que evalúan los procesos de desarrollo de software y de uso de TI's. En esta publicación hablaremos de cuáles son los factores que evalúan la calidad de un producto software.

Evaluar un producto software con sólo decir es de calidad, no es de calidad o peor aún es de media calidad nos dejaría con muchas dudas sobre qué aspectos del producto si funcionan bien y cuáles no. Por eso existen algunos términos que pueden ser evaluados uno por uno por el usuario del software. Estos términos son los siguientes.

  • Corrección.
El grado en que el programa cumple con su especificación y satisfacer los objetivos que propuso el cliente.
  • Confiabilidad.
El grado en que se esperaría que un programa desempeña su función con la precisión requerida.
  • Eficiencia.
La cantidad de código y de recursos de cómputo necesarios para que un programa realice su función.
  • Integridad.
El grado de control sobre el acceso al software o los datos por parte de las personas no autorizadas.
  • Facilidad de uso.
El esfuerzo necesario para aprender, operar y preparar los datos de entrada de un programa interpretan la salida.
  • Facilidad de mantenimiento.
El esfuerzo necesario para localizar y corregir un error en un programa.
  • Flexibilidad.
El esfuerzo que demanda probar un programa con el fin de asegurar que realiza su función.
  • Portabilidad.
El esfuerzo necesario para transferir el programa de un entorno de hardware o software a otro.
  • Facilidad de reutilización.
El grado en que un programa o partes de él pueden reutilizarse en otras aplicaciones (en relación con el empaquetamiento y el alcance de las funciones que realiza el programa).
  • Interoperabilidad.
El esfuerzo necesario para acoplar un sistema con otro.

Conociendo y evaluando cada uno de estos factores, podemos medir la calidad del producto software que desarrollamos y por consiguiente mejorar nuestro producto.

Referencias:
http://www.eumed.net/tesis-doctorales/2014/jlcv/calidad-software.htm

MODELOS QUE EVALÚAN LA CALIDAD DEL SOFTWARE

Así como existen distintos organismos, estándares y normas que regulan la calidad en los distintos procesos en cualquier tipo de organización, existen también modelos encargados de evaluar y certificar los procesos que utilizan las empresas desarrolladoras de software y que utilizan las TI. Ejemplos de ellos son CMMI y MoProSoft.

CMMI es un modelo internacional para la mejora y evaluación de procesos para el desarrollo, mantenimiento y operación de sistemas de software y proyectos de TI. Proviene de las palabra en inglés Capability maturity model integration y significa Integración de modelos de madurez de capacidades. Este modelo era regulado anteriormente por el SEI (Software Engineering Institute) el cual transfirió todas las actividades relacionadas a CMMI al CMMI Institute.


Por otro lado MoProSoft es un modelo para la mejora y evaluación de los procesos de desarrollo y mantenimiento de sistemas y productos de software. Significa Modelo de Procesos para la Industria del Software y fue desarrollado por la Asociación Mexicana para la Calidad en Ingeniería de Software y la norma técnica a la que da contenido es la NMX-059/02-NYCE-2005. Este modelo fue creado debido a que Moprosoft considera que los modelos de evaluación y mejora de CMMI no resultan apropiados para empresas pequeñas y medianas de desarrollo y mantenimiento de software.


Para las personas a quienes nos interesa el campo de las TI es muy importante que estemos informados sobre estos modelos ya que son los que le darán un plus a nuestra empresa o software.


Referencias:
http://www.sei.cmu.edu/cmmi/
http://es.wikipedia.org/wiki/Moprosoft
http://es.wikipedia.org/wiki/Capability_Maturity_Model_Integration


¿QUÉ SIGNIFICA CIO Y CEO?



CIO Y CEO son acrónimos provenientes de los países de habla inglesa, los cuales han sido adoptados últimamente en nuestro país para hacer referencia a ciertos ejecutivos importantes de las empresas.

CEO es el acrónimo de Chief Executive Officerlo que en México sería Director Ejecutivo y es el máximo responsable de la gestión y dirección administrativa en la empresa.

Por otro lado CIO corresponde al acrónimo de Chief Information Officer, quien es el responsable de los sistemas de tecnologías de la información de la empresa en lo que se refiere a planificación. Su homólogo en los países de habla hispana sería el responsable de sistemas.

Además existen muchos otros acrónimos como los anteriores utilizados para designar a los máximos responsables en distintas áreas como operaciones, de mercadotecnia y financiera. En todos ellos se incluye la palabra Chief que se traduce como "presidente".

Referencias:
http://www.economiatic.com/2013/01/llamando-a-cada-ejecutivo-por-su-nombre-el-significado-de-ceo-coo-cfo-cio-cto-y-cmo/

martes, 1 de julio de 2014

HACKEO DE TU AUTOMÓVIL

Al parecer, la tecnología por muy avanzada que esté y que se hayan inventado todas las creaciones habidas y por haber, la tecnología nunca dejará de evolucionar. Actualmente los automóviles modernos pueden ser conectados a la red de manera inalámbrica, lo que representa además de una manera de llevar el entretenimiento a todas partes a dónde vayas, un gran riesgo, ya que si alguien hackeara tu automóvil, podría controlarlo y provocarte un accidente. 
Imagen: CNN Money



En Estados Unidos, pronto será obligatorio que los vehículos transmitan información entre sí de forma automática e inalámbrica como parte del programa gubernamental de comunicación de vehículo a vehículo. Por lo tanto, los nuevos informáticos tendremos que ocuparnos en gran parte de mejorar la seguridad sobre todo en estos casos, donde se pondría en juego la vida humana. De hecho, las compañías Ford y Toyota ya están trabajando en el asunto. Sabido esto, debemos conscientizarnos aún más como usarios de la web que somos y tomar mucho más en serio el tema de la seguridad y de poner mucho cuidado en la manera en que nos conectamos a internet y saber qué es lo que ponemos en riesgo cada vez que nos conectamos.


Referencias: http://www.cnnexpansion.com/tecnologia/2014/06/02/tu-auto-puede-ser-hackeado

martes, 3 de junio de 2014


Muy interesante la conferencia que el día 27 de Mayo de 2014 en la Universidad Tecnológica de San Juan del Río, ofreció el Ing. Félix Olvera Díaz, líder de Mantenimiento y Logística de la Estación Espacial Boeing en Houston Texas. Mencionó temas muy interesantes y los estudiantes pudimos darnos cuenta de que para llevar a cabo dichos programas aeroespaciales se necesita la colaboración y los conocimientos de todo tipo de expertos, desde un ingeniero químico hasta un licenciado experto en estudios financieros, tan sólo por mencionar ejemplos. Y con esto aprendemos que todo proyecto es así, requiere de un equipo de trabajo completo para lograr los objetivos. 
En lo personal, me pareció muy alentador porque eso quiere decir que tenemos mucho campo de trabajo, nosotros como Ingenieros en TIC'S (o cualquier otro tipo de profesionista).
Sería muy interesante que la UTSJR pudiera formar parte de esas universidades que como mencionó el ingeniero, colaboran con la NASA realizando investigaciones para nuevos proyectos. Pero sin duda, lo más importante de todo lo que compartió el ingeniero y que todos debemos tener siempre en mente, es que todos podemos llegar hasta donde nosotros deseemos y que nosotros ponemos nuestros propios límites. Muestra clara de ello, es el Ingeniero Félix, quien siendo originario de San Juan del Río dio todo su esfuerzo y consiguió llegar hasta donde hoy está.

sábado, 31 de mayo de 2014

IMPRESIÓN EN 3D

En lo particular a mi me gusta mucho la gastronomía sobre todo hacer postres y cosas por el estilo. Creo que muchos comparten el mismo gusto que yo y aquí les dejo un artículo donde podemos darnos cuenta que aunque no estudiamos gastronomía, podemos aplicar la tecnología a ella o a todo aquello que nos guste, ya que en la actualidad todas las ramas del conocimiento utilizan la tecnología y cada vez más. Ejemplo de esto es la impresión de frutas mediante una técnica llamada esferificación.

Esta técnica consiste en combinar gotas de gel con el saborizante de tu preferencia hasta crear la forma de la fruta que tu quieras. ¡Qué interesante! Obviamente jamás vamos a dejar de comprar una manzana natural por consumir una manzana de gel, pero puede ser una innovación muy agradable para las decoraciones de los chefs y todos aquellos que disfrutan de hacer que los platillos luzcan bonitos.

Quiero saber más sobre ésto