sábado, 6 de junio de 2015

Formulario y conexión a una Base de Datos

Código en HTML del formulario:


Altas (jsp)


Consultas individuales (jsp)



Consultas generales (jsp)


Base de datos



Funcionalidad del programa










Pasos en mi proceso de mejora

  1. Entender completamente que hacía cada línea en el código de los jsp.
  2. Imaginar como es que se relacionada la página web con la base de datos.
  3. Practicar tratando de hacerlo sin ver el ejemplo.
  4. Como no me funcionó, volví a checar el código del ejemplo.
  5. Intenté hacerlo de nuevo, las veces que fueron necesarias hasta que logré dar de alta un campo.
  6. Añadí demás campos e hice lo mismo.
  7. De igual manera lo hice con consultas individuales y generales.



Curso Meca "Certificado de velocidad"


Ensayo "La calidad en el mercado de San Juan"

Hacer comparaciones es, definitivamente, demasiado fácil cuando tienes distintas experiencias que te hacen tener ciertos estándares preestablecidos, sin embargo medir la calidad es la parte más difícil. A continuación se plantearán algunas diferencias que encontré al visitar el mercado de San Juan comparado con el cual suelo satisfacer las necesidades de la despensa.El tema central del presente ensayo es, ¿Qué hace que los productos que se ponen a la venta en el mercado de San Juan, sean de calidad?

Sabemos que el precio de los productos tiene variaciones que dependen desde la zona hasta incluso la temporada. Por ello no podríamos compararlo como un factor que representa calidad, sin embargo debo mencionar que el precio de todos los productos que venden por ahí son más caros que en el mercado que está por mi casa.

Los trabajadores argumentan que la calidad en sus productos se debe a que son traídos de todo el país y que por supuesto elijen los mejores ejemplares para seguir conservando a sus clientes pues dicen que de la vista nace el amor. Además de que suelen durar más que los que son vendidos en otros lugares y que eso hace que no solo tengan los comunes clientes locales sino también, gente que viene de lejos a comprar “la calidad”. Al parecer el precio elevado del promedio no suele presentar problemas con las personas que visitan el lugar, pues siempre se van satisfechas y regresan después. Pero, ¿Quién no habla maravillas de lo que es o lo que hace? ¿De verdad eso es lo que hace que los productos sean de calidad? Todo llega siempre a la central de Abasto y la pregunta ahora es, si todos los mercados se surten allí, ¿Por qué se notan diferencias con el Mercado de San Juan?

Cuando visitas el lugar puedes darte cuenta que es un lugar turístico, pues encuentras no solo gente del Distrito Federal, sino también personas que vienen a conocer de otros estados e incluso extranjeros, entonces eso influye en el precio de los productos y en el estado de las instalaciones ya que justo allí radica otra de las diferencias que pude encontrar al compararlo.

¿Cuándo se había visto en un mercado local, que en los lugares donde puedes comer, te den degustaciones sin ningún costo y además esto va acompañado de una copa de vino? ¿O simplemente que vendan comida completamente traída de Europa? Tal cual es el caso de “Las Tapas”.

Podemos encontrar pegados en las paredes del lugar diversos anuncios promocionando las formas de disfrutar la Ciudad de México, en los que se exponen que debes visitar desde los centros históricos hasta los mercados, lo cual fortalece el argumento anterior, es completamente un lugar de destino turístico.

¿Hay más calidad en sus productos que en los de cualquier otro mercado? Por experiencia personal, no lo creo. La gente que vive por allí incluso lo conoce como el mercado de comida exótica, entonces solamente hay productos que en otros lados no hay, está pensado para llegar más que nada a cierto tipo de población.

La calidad debe medirse bajo los mismos criterios, con lo que se puede encontrarse en los dos lugares, y yendo a estricto sentido no existe gran diferencia. No puedo atreverme a declarar que hay más calidad, porque no estoy de acuerdo. Si ponemos a los dos lugares en iguales circunstancias, no existiría ninguna diferencia aparte de la ubicación.

Para finalizar, hablar de calidad se necesita conocer a fondo, y necesitaría llevar a cabo una investigación de acuerdo a lo que se busca, sin embargo, bajo el concepto de calidad de las normas ISO “el conjunto de características de una entidad que le confieren la aptitud para satisfacer las necesidades establecidas o implícitas”, ambos lugares exponen a la venta buenos productos para la población consumista.

Bibliografía


C&TA. (Junio de 2013). Ciencia y Tecnica Administrativa. Obtenido de http://www.cyta.com.ar/biblioteca/bddoc/bdlibros/tqm/1_conceptos/1_conceptos.html

jueves, 28 de mayo de 2015

Código para crear una clase en java

Usuario
- nombre: String
- aPaterno: String
-aMaterno: String
+ setNombre (id1String): void
+ getNombre (): String
+ setApaterno (id2String): void
+ getApaterno (): String
+ setAmaterno (id3String): void
+ getAmaterno (): String
+imprimeUsuario (): void

public class Usuario {
                private String nombre;
                private String aPaterno;
                private String aMaterno;
               
                public void setNombre (String id1) {
                                nombre = id1;
                }

                public String getNombre () {
                                return nombre;
                }

                public void setApaterno (String id2) {
                                aPaterno = id2;
                }

                public String getApaterno () {
                                return aPaterno;
                }

                public void setAmaterno (String id3) {
                                aMaterno = id3;
                }

                public String getAmaterno () {
                                return aMaterno;
                }

                public void imprimeUsuario {
                                System.out.println ("El nombre es: " + nombre + aPaterno + aMaterno);
                }
}

Tiempo total: 9 minutos con 13 segundos.

Autora: Alonso Sanchez Alejandra

domingo, 26 de abril de 2015

¿Qué es el proceso de mejora continua?

La excelencia ha de alcanzarse mediante un proceso de mejora continua. Mejora, en todos los campos, de las capacidades del personal, eficiencia de los recursos, de las relaciones con el público, entre los miembros de la organización, con la sociedad y cuanto se le ocurra a la organización, que pueda mejorarse en dicha organización, y que se traduzca en una mejora de la calidad del producto o servicio que prestamos.
Alcanzar los mejores resultados, no es labor de un día. Es un proceso progresivo en el que no puede haber retrocesos. Han de cumplirse los objetivos de la organización, y prepararse para los próximos retos.

Fase: Identificación de lo que se desea mejorar
¿Qué se hace? Se elige una problemática de que se desea resolver, tomando en cuenta: la importancia del problema, el número de beneficiados, el grado de insatisfacción de los usuarios y el impacto social y económico de la mejora. Herramientas que se utilizan: Lluvia de ideas, hojas de verificación, entrevistas, reportes estadísticos

Fase: Identificación de los beneficiarios
¿Qué se hace? Se establece con claridad quienes serán los clientes y/o los beneficiarios del plan de mejora

Fase: Identificación de las principales necesidades o expectativas de los clientes o usuarios
¿Qué se hace? Se determinan de manera precisa lo que los clientes esperan de los servicios o productos que genera la empresa.
Herramientas que se utilizan: Se pueden utilizar entrevistas (individuales o colectivas), encuestas (cerradas o abiertas), grupos de enfoque o buzones de sugerencias.

Fase: Evaluación del cumplimiento de dichas necesidades
¿Qué se hace? Se realiza una comparación entre las expectativas del cliente y el tipo de servicio que se esta ofreciendo
Herramientas que se utilizan: Los mismos que la identificar las necesidades, se pueden utilizar entrevistas (individuales o colectivas), encuestas (cerradas o abiertas), grupos de enfoque o buzones de sugerencias.

Fase: Análisis de las causas de desviación
¿Qué se hace? Se identifican los factores que pueden estar generando el problema
Herramientas que se utilizan: Tormenta de ideas, diagramas de causa efecto, histogramas, diagrama de pareto, diagrama de flujo, estratificación, Análisis del proceso del cliente, lista de verificación, diagnóstico del proceso.

Fase: Diseño de la propuesta de mejora
¿Qué se hace? Se establecen las acciones a desarrollar para mejorar la situación actual
Herramientas que se utilizan: Investigación referencial (determinar la forma en que se han resuelto problemas similares al nuestro), plan de mejora, rediseño de procesos, análisis de problemas en potencia. La mejora continua Network de Psicología Organizacional www.conductitlan.net Asociación Oaxaqueña de Psicología A.C. 5

Fase: Establecimiento de la propuesta de mejora
¿Qué se hace? Se ejecuta el plan de mejora realizado evaluaciones continuas para analizar causas de variación y tomar medidas correctivas y preventivas. Herramientas que se utilizan: Rediseño de procesos, plan de mejora, análisis de problemas en potencia

Fase: Implantación de mecanismos de aseguramiento de calidad en los resultados ¿Qué se hace? Se diseñan mecanismos para asegurar para aumentar la probabilidad de que los logros obtenidos se mantengan en el futuro.
Herramientas que se utilizan: Estandarización de procesos, controles sensoriales, mecanismos permanentes de la medición de la satisfacción del cliente.

El mundo cambia, y con ello también la manera de hacer las cosas. El estar abierto a estos cambios permite el perfeccionamiento de lo que ya existe. Es un proceso porque no es algo espontaneo, tiene sus respectivas etapas y es importante reconocer el propósito de cada una de ellas. Con este proceso es posible cumplir con las exigencias que día a día el mercado pide. Mantenerse a la vanguardia no es opcional.




Bibliografía

Jorge, A. (s.f.). Conductitlan. Recuperado el 26 de Abril de 2015, de http://www.conductitlan.net/psicologia_organizacional/la_mejora_continua.pdf


Modelos de la Calidad del Software

El software es muy importante para el desarrollo de las organizaciones. Todos los días se crean programas de distintos tipos, para las diferentes clases de clientes, así como también las diferentes necesidades.  Decir que el software es necesario, viene de la tecnología aplicada en el desarrollo de las empresas y en sí en la evolución de los tiempos. Por ello es importante conocer los modelos que comúnmente se siguen y/o utilizan para el logro de la calidad. Los Modelos de Calidad son aquellos documentos que integran la mayor parte de las mejores prácticas, proponen temas de administración en los que cada organización debe hacer énfasis, integran diferentes prácticas dirigidas a los procesos clave y permiten medir los avances en calidad. Los Modelos y/o Estándares permiten que las Empresas de Software realicen sus tareas y funciones teniendo en cuenta la Calidad. A continuación se presenta información acerca de dos modelos: CMMI y TSP(PSP)

CMMI
El modelo CMMI Versión 1.1 tiene el propósito de proporcionar una única guía unificada para la mejora de múltiples disciplinas tales como Ingeniería de Sistemas (SE – System Engineering), Ingeniería del Software y el Desarrollo Integrado del Producto y del Proceso (IPPD).
Está caracterizado por áreas de proceso para las 4 disciplinas que cubre actualmente, es decir: Ingeniería de Sistemas (SE), Ingeniería del Software, Desarrollo Integrado del Producto y del Proceso (IPPD) y la Fuente proveedora (A).
Los Enfoques del CMMI tienen como finalidad atender a las diversas necesidades de las organizaciones que quieren realizar la mejora de sus procesos. Existen 2 enfoques: (1) Continuo y (2) Escalonado. El Enfoque Continuo hace hincapié en la capacidad de ciertas áreas para realizar sus actividades de manera adecuada. El Enfoque Escalonado hace especial énfasis en el grado de madurez de los procesos (a semejanza del SW-CMM). Ambos enfoques reconocen que las áreas de proceso se pueden agrupar en 4 categorías generales: (1) Gestión de Proyectos, (2) Gestión de Procesos, (3) Ingeniería y (4) Apoyo; y dos categorías opcionales: (1) Desarrollo Integrado del Producto y del Servicio; y (2) Gestión de Compras.

Team Software Process (TSP)
El proceso TSP (Team Software Process) fue desarrollado por Watt Humphrey en 1996. El objetivo era suministrar un proceso operacional que ayude a los Ingenieros hacer trabajos de calidad.
El objetivo del TSP es construir y guiar a los equipos. Los equipos son requeridos para la mayoría de los proyectos de Ingeniería. El desarrollo de sistemas es una actividad en equipo, y la efectividad del equipo determina la calidad de la Ingeniería.
Los objetivos de TSP son: (1) ayudar a los equipos de Ingeniería de Software a elaborar productos de calidad dentro de los costos y tiempos establecidos, (2) tener equipos rápidos y confiables; y (3) optimizar el performance del equipo durante todo el proyecto. Para el uso de TSP, los desarrolladores de software deben ser entrenados primero en PSP. Usando PSP, los desarrolladores: (1) siguen un proceso personal definido y medido, (2) planifican el trabajo antes de hacerlo, (3) reúnen datos acerca del tiempo, tamaño y defecto; y (4) utilizan estos datos para administrar el trabajo del personal y asegurar la calidad de los productos que se desarrollan.
TSP es una manera de guiar a los Ingenieros y a sus Gerentes en la utilización de métodos de trabajo en equipos efectivos. El equipo es un grupo de personas que comparten un objetivo en común. Un equipo debe tener más de un miembro y debe trabajar para alcanzar un objetivo en común. Los miembros del equipo deben tener roles, los cuales proveen un sentido de liderazgo y pertenencia. Los roles ayudan a los miembros del equipo a realizar sus trabajos, prevenir conflictos y establecer un grado de control respecto de su ambiente de trabajo. El sentido de control es un requerimiento fundamental para que los miembros estén motivados. La interdependencia es un elemento importante del equipo de trabajo. Significa que cada miembro del equipo depende del performance de los otros miembros. La interdependencia mejora el performance individual debido a que los miembros pueden ayudarse.

Resulta fundamental evaluar la calidad del software y debido a la existencia de un número determinado de Modelos y Estándares de Calidad de Software, se debe determinar qué Modelo o Estándar utilizar según lo que se pretendan alcanzar. A través del análisis se puede efectuar una correcta elección del Modelo y/o Estándar de Calidad del Software, lo cual puede permitir una mejor evaluación de la futura implantación teniendo en cuenta todos los aspectos implicados.


Bibliografía

Fernanda, S. (Junio de 2006). Facultad de Ingeniería, Universidad de Buenos Aires. Recuperado el 26 de Abril de 2015, de http://laboratorios.fi.uba.ar/lsi/scalone-tesis-maestria-ingenieria-en-calidad.pdf

Detalle de la Norma ISO














































 

martes, 21 de abril de 2015

Ensayo "Calidad del Software, factores y su imperativa aplicación al proceso de realización del software"

Así como la calidad en sí, la calidad del software es un proceso de mejora continua que lleva consigo el cumplimiento de ciertos requisitos a través de los cuales se forma una métrica correspondiente para el estudio de esta. A continuación se explicarán, así como se propondrán ciertas ecuaciones para su respectivo cálculo.
Eficiencia
Se entiende que la eficiencia es la capacidad del software para hacer buen uso de los recursos que manipula con respecto al hardware. A diferencia de la eficacia, la eficiencia no busca solo cumplir con la funcionalidad, sino que va más allá de eso. Un software de calidad debe ser eficiente para que se  obtengan el máximo beneficio o por lo menos un beneficio conveniente por parte de los involucrados en su desarrollo  haciendo que haya un buen rendimiento del hardware de computadora.
Se propuso una métrica para la eficiencia de la siguiente manera:
Y a partir de esta se tomaron en cuenta como recursos la memoria y el tiempo que ocupa un software en realizar sus funciones y como resultados una evaluación de pruebas del software
El SAES del IPN es un software relativamente eficaz, sin embargo en muchas ocasiones poco eficiente pues algo que los usuarios (los estudiantes) notamos a menudo es la tardanza con que realiza sus funciones. Seguramente  lo que hace que éste software no logre solucionar esta problemática es porque el análisis que se necesita para la mejora continua no es de las principales prioridades.
Cuando se está comenzando un proyecto, se tiene presente con cumplir aquello que venga en los requerimientos, sin embargo, entregar algo que no se quede en ese nivel sino que trascienda es lo que hace la diferencia.
Otro de los aspectos a considerar es la exactitud de la cual se puede decir que:
o   Es la base de un software
o   Es un factor externo que se logra a través de los requerimientos funcionales del software y tiene que lograr sus objetivos.
o   En la exactitud, todo va concatenado en función del software, tomando en cuenta que todos los elementos involucrados deben estar verificados, garantizados y asegurados por el desarrollador.

EJEMPLO: WinRaR.
Métrica: 
En donde, si la exactitud es = 0, el software es de calidad y conforme la exactitud > 0, va decreciendo ésta.
La exactitud, como ya lo hemos mencionado, es la parte fundamental del software que, sin ella, el software simplemente sería nefasto. No importa si la interfaz es hermosa, si su capacidad es mayor o tenga algo extra, si no cumple con los requerimientos exactos.
Además, ¿Qué es indispensable para las empresas desarrolladoras de software? Cumplir con la responsabilidad. Por ello la puntualidad se juega un papel imperativo.
Es la habilidad de un sistema de ser entregado según la fecha prefijada o antes de que los usuarios lo esperen.
La economía acompaña este punto siendo la habilidad de un sistema para ser terminado exactamente o por debajo de su presupuesto original.
Las presiones de puntualidad podrían tentarnos a usar técnicas de “Desarrollo Rápido de Aplicaciones” cuyos resultados pueden no poseer mucha extensibilidad.
Métrica
Para esto debemos tener en cuenta que debemos medir el retraso pues es así como nos puede ayudar a mejorar a ese punto y darle más calidad.
R: retraso
T: Tiempo dado en horas  en que es dado el software de acuerdo a lo prefijado.
P: Tiempo prefijado dado en horas.

Siendo que si R es cero el retraso es nulo y fue entregado a tiempo, si es positivo hubo un retraso lo que indica que se necesita hacer una mejora en cambio si es negativo quiere decir que fue entregado antes que puede hablar bien.
Ejemplo:
En una escuela es pedido un software que se necesita ser entregado para su evaluación final dentro de 36 horas, uno de los equipos entrega su trabajo en 40 horas por lo que se aplica la métrica.
R=T-P;                     R=40-36;                      R=4
El resultado quiere decir que hubo un retraso de 4 horas que hizo que su calificación fue menor por lo que se necesita un proceso de mejora  para obtener una mejor calificación.
Este punto es importante pues en una gran empresa puede significar el que pidan o no pidan sus proyectos pues hoy en día el mundo se mueve en tiempos exactos y lo que menos quieren es perder tiempo  ya que a ellos aplica el dicho: “el tiempo es oro”.
Otro concepto de gran importancia es la funcionalidad ya que busca hacer un balance entre las funciones necesarias para que un software funcione y las que son innecesarias puesal enfocarse en mayor medida a éstas pueden retrasar el avance del proyecto.
Un ejemplo muy claro de cuando no se aplicó la funcionalidad fue en Facebook entre 2011-2012 pues se incluyó una actualización en la presentación de las biografías de todos los usuarios lo que dificultó a muchos sus acciones en la red social, perdiendo su funcionalidad.

Métrica sobre la Funcionalidad
·         Deberá cumplir con las funciones necesarias       
·         Tienes los diseños (adornos) necesarios para que se  haga un software amigable        
·         Sus métodos tienen el mínimo #errores o ninguno          
·         Sus actualizaciones no afectan a la calidad de software        

Ecuación para calcular la funcionalidad:
Pero así como hay que tener en cuenta sólo agregar las funciones necesarias también es importante tener en cuenta que en cualquier momento pueden surgir condiciones anormales y para esto debemos tener presente la robustez.
La robustez se define como la respuesta del software a eventos no planificados o fuera del uso normal de éste, si el software no se derrumba a la hora de una acción imprevista o ante un uso inapropiado, podremos decir que cuenta con robustez.

La reutilización juega un papel muy importante porque al volver a utilizar funciones nuestro trabajo será menor y así podremos dedicar más atención a aspectos como la robustez y exactitud.
Entonces ¿Qué es la reutilización?
El concepto de reutilización dentro del software puede aplicarse de distintas maneras al momento de usarlo.

1.         Consiste en la capacidad de un sistema (software) de ser utilizado en algún otro con el cual haya alguna similitud ya sea de código, diseño o especificación
2.         Es la creación de un sistema a partir de alguno ya existente
Pero la forma de definirlo de manera más adecuada es:
Elementos de software creados en desarrollos anteriores que son empleados en un sistema nuevo que simplifica el proceso de desarrollo y a su vez otorga mayor calidad.
Un software que aplique la reutilización permite que el desarrollo sea mas eficiente, incremente su productividad y sea rápido, por lo los tiempos se reducen y permite el avance en algún otro aspecto del sistema como eficiencia, exactitud, etc.
La reutilización dentro de un sistema puede ser medida a través de una fórmula que establecimos como:

La reutilización no es lo mismo que la herencia o la copia del código en algún sistema. La reutilización normalmente puede ser dada en diversos programas mediante la importación, es decir, es una característica que solo se da en programación orientada a objetos.

En Java es fácil notar esta reutilización al momento de hacer uso de las librerías que nos brinda, se importa la clase de esa librería y se puede hacer uso de su contenido en el nuevo código.
Pero ¿De qué nos serviría todo lo anterior si nuestro software no es fácil de usar?
Podemos definir el fácil uso como la simplicidad con la cual las personas de varios conocimientos y cualidades tienen la capacidad de aprender a utilizar un software, aplicándolo para resolver problemas.
Tenemos que tomar en cuenta también la facilidad de instalación, de operar el software y de monitorearlo.
En la calidad del software es fundamental la facilidad de uso de éste, ya que normalmente el usuario que requerirá tu sistema no tiene conocimientos tan amplios acerca de éste, motivo por el cual es necesario hacerlo a un nivel de interpretación fácil para que el usuario pueda darle un uso efectivo. Si tu software no es fácil de usar, el usuario tendrá complicaciones al utilizarlo y de esta manera no satisfaces las necesidades planteadas, entonces podría dudarse de su calidad.
Un ejemplo de un software “Usable” es Facebook, ya que la mayoría de las personas poseen las herramientas necesarias para comprenderlo y utilizarlo para su conveniencia.
Es importante que el software proporcione orientación para los usuarios principiantes y al mismo tiempo no aburre a las personas con mayor cantidad de conocimientos en el tema, siendo muy útiles las interfaces de usuario, éstas se rigen por el siguiente principio: “No pretendas que conoces al usuario; no lo conoces”.
Otro concepto no menos importante es la compatibilidad pues ¿Para qué queremos un software si no es compatible con nuestro sistema tiene problemas al interactuar con otros softwares?
La compatibilidad es:
*Facilidad para combinar un elemento de software con otro.
*Interacción de grupos de información a través de un lenguaje de software.
El que no haya compatibilidad no significa que los sistemas no funcionen o estén defectuosos, simplemente que no pueden trabajar juntos, que son incompatibles. La incompatibilidad se puede deber a varias causas, pero principalmente porque un sistema está obsoleto con respecto al otro o porque se ha diseñado para usar con un sistema en particular y no funciona con otros.
Es importante generalizar software para que aumente su concepto y utilización en diferentes contextos, aquí se basa lo vital que es su papel y su respectiva evaluación
Un ejemplo muy importante de compatibilidad, es el de las páginas web que son creadas a través de lenguajes como Javascript y HTML5; éstos se pueden reproducir y pueden correr en todos los exploradores  web existentes y cualquier tipo de página web se puede visualizar al cien por ciento.
Podemos medir la compatibilidad de la siguiente manera:
¿Podríamos decir que un software tiene calidad si no busca mejorar continuamente?
La extensibilidad significa que el sistema está diseñado para incluir ganchos y los mecanismos para la expansión/mejora del sistema con capacidades previstas sin tener que hacer cambios importantes en la infraestructura del sistema. También puede significar que el comportamiento de un sistema de software se puede modificar en tiempo de ejecución, sin necesidad de recompilar o modificar el código fuente original. Por ejemplo, un sistema de software puede tener una interfaz de programación de aplicaciones de público que permite su comportamiento para ser ampliado o modificado por personas que no tienen acceso al código fuente original.
La extensibilidad juega un papel importante en la calidad del software debido a que gracias a esta se facilita el mantenimiento del software así como futuras implementaciones o mejoras y para evitar la obsolescencia
Un ejemplo de extensibilidad es cuando hacíamos proyectos escolares en java y trabajábamos Programación Orientada a Objetos, programábamos los requerimientos en diferentes módulos o clases, lo que hacía que si había un error en el programa, se tuviera que corregir solo el código de esa clase y no tener q buscar el error en el sistema y cambiar todo el código para arreglarlo
Una forma de medir la extensibilidad es con la siguiente formula
Por último tenemos la portabilidad que también es indispensable pues de éste modo cualquier persona aunque tenga diferentes tipos de hardware o software podrá utilizar el sistema.
La portabilidad es la facilidad que tiene un software para adaptarse a distintos ambientes de software y hardware.
Un software portable es aquél que, independientemente del sistema operativo sobre el que se esté trabajando y el hardware con el que cuente un computador, pueda funcionar sin ningún problema.
Se propone la siguiente métrica para su medición:

Los programas que realizábamos en Java son un ejemplo de software portable, pues así fuera iOs o Windows, dichos programas se podían ejecutar sin ningún problema, sin embargo algunas computadoras ejecutan más rápido los programas u otras no identifican los caracteres que otras si pueden interpretar.

En general no sólo se busca software porque si, siempre tenemos en cuenta, -aunque no tengamos conocimientos en calidad-, que sea de nuestro beneficio. Principalmente, algo en lo que siempre nos fijamos en algún software es que sea exacto, que haga lo que dice que hace, de lo contrario, ¿Para que lo descargamos?¿Para qué lo tenemos si no nos va a funcionar?. Muy pocas veces encontramos software no exacto. Después, lo segundo que nos podemos fijar es en la facilidad en la que podemos utilizar dicho software, si no le entendemos, lo más seguro es que nos aburra o nos desespere, aunado a esto está la rapidez con la que corra en nuestra computadora, etc. En fin, conociendo poco o acerca de los factores de la calidad del software, siempre la buscamos, e incluso la exigimos. El reto es para quien desarrolla y vende software.