miércoles, 1 de julio de 2015
domingo, 21 de junio de 2015
COSTO DE UN PROGRAMA DE ALTAS Y CONSULTAS A UNA BASE DE DATOS
Una empresa cobra 20 dólares la hora de trabajo; en este caso el cliente le está solicitando un programa que ejecute altas y consultas en HTML y JSP que conecte a una base de datos, la empresa va a contratar a uno de sus programadores (en este caso soy yo) y le pregunta ¿Cuanto te tardas en realizar lo que el cliente te pide?, en este caso yo tardo 2 horas con 30 minutos en realizar un programa de este tipo.
Después de esto la empresa le dice al cliente que el programa tarda 2 horas con 30 minutos, motivo por el cuál le va a cobrar 50 dólares por este trabajo ($784 pesos); pero la empresa también tiene que pagarme mi trabajo, yo como programador Junior gano $7000 pesos mensuales.
$7000 pesos mensuales equivalen aproximadamente a $240 diarios. Yo como programador trabajo 8 horas, es decir que cobro $30 pesos la hora de trabajo. Entonces yo a la empresa le cobro $75 pesos por realizar la tarea que me piden.
La empresa cobra $784 pesos, de los cuales gastan $75 en pagarme el trabajo que les proporcioné; es decir que reciben $709 pesos exclusivamente para ellos.
Esto equivale al 90% del dinero que entra por el programa.
Observamos que la empresa pone un precio 10 veces mayor comparado con lo que le cuesta el programa; entonces gana un gran porcentaje por cada programa que ellos ponen a la venta.
miércoles, 17 de junio de 2015
TIEMPO INVERTIDO EN UN LIBRO DE 100 PÁGINAS
¿CUÁNTO TIEMPO TARDARÍA EN ESCRIBIR UN LIBRO DE 100 PÁGINAS?
Dentro de una hoja de Word caben aproximadamente 290 palabras que están distribuidas en aproximadamente 22-23 renglones (cabe mencionar que se utiliza letra Arial de 12 puntos con un doble interlineado) cada palabra contiene aproximadamente 9 letras.
Durante mi proceso de mejora continua en el curso de Mecanografía logré obtener un promedio de 400 pulsaciones por minuto, es decir que escribo 6 letras por segundo aproximadamente, con estos datos pueden surgir muchas preguntas.
De tal manera que me puse a analizar el tiempo que me demoraría escribir un libro de 100 hojas con letra Arial 12 e interlineado doble, entonces comienzo a hacer los siguientes cálculos.
Tiempo que me tardo en escribir una hoja en Arial 12 interlineado doble:
290 palabras x 9 letras = 2610 letras
Si escribo 400 letras en un minuto entonces escribiré:
400 letras ------------- 1 minuto
2610 letras ------------ ?
2610 letras.minuto /400 letras = 6.5 minutos.
De esto interpretamos que demoraría en realizar una hoja del libro en 6 minutos con 30 segundos.
Entonces...¿Cuánto tiempo me llevaría realizar 100 páginas?.
1 página ------------ 6.5 minutos
100 páginas -------- 650 minutos
Es decir que me tardaría un tiempo aproximado de 650 minutos en realizar un libro de 100 páginas escrito con letra Arial doce puntos e interlineado doble.
60 minutos = 1 hora
650 minutos = 10.8 horas
Después de todas las conversiones llegamos que YO (Victor Cuauhtemoc Vargas Ramírez) en escribir un libro de 100 páginas invertiría un tiempo de:
10 HORAS CON 48 MINUTOS
Este sólo es un tiempo aproximado ya que evidentemente descansaría para comer, bañarme, hacer del baño, dormir o realizar otras actividades.
De acuerdo a esto podría establecer una métrica acerca de cuanto cobraría por realizar el libro en ese tiempo, pero eso es otro asunto que trataremos después.
martes, 9 de junio de 2015
MERCADO DE SAN JUAN DE LETRÁN
Mi madre al hacer compras acude al mercado que se pone enfrente de mi casa, en la Colonia El Campanario Atizapán, hace unas semanas acudí al mercado de San Juan y los comparé para observar si los productos que se ponen a la venta en estos mercados son de calidad.
El precio de los productor varía de acuerdo a su demanda y disponibilidad, sin embargo al acudir al mercado de San Juan observé que los precios en general eran más elevados que el mercado que está a unas cuadras de mi casa.
Platicando con los vendedores me comentaron que podíamos percibir sus productor como caros, sin embargo ellos consideran que son de buena calidad ya que provienen de otros países o de las mejores zonas de producción del producto que nos ofrecen, ellos eligen los mejores ejemplares; entonces en nuestro paseo por el mercado observamos algo: esta repleto de gente, observo que las personas acuden desde lugares relativamente lejanos a adquirir productos de calidad, al parecer los precios no son inconvenientes para ellos, ya que no escatiman y se van más que satisfechos del lugar con la idea de regresar de nuevo cuando se les presente otra necesidad.
Observando el lugar observamos personas de otros estados y quizás otros países, también me impresionó que te ofrecen pruebas sin costo alguno, me llamaron la atención "Las tapas" que es comida traída de Europa, impresionante ya que el Mercado de San Juan parece un simple mercado local y es ahí donde ya observa la abismal diferencia que hay con el mercado de mi localidad; también observé que durante mi paseo por el mercado promueven otros lugares muy interesantes dentro del Distrito Federal y esto persuade a las personas a salir y conocer más de la ciudad, ya sean capitalinos o foráneos.
Sin embargo en este mercado percibí que se vende comida exótica, poco habitual ya que la mayoría de los alimentos que nos ofrecen ahí no los conocía, entonces esto lo hace un lugar único y nos responde el por que esta atiborrado de gente.
Medir la calidad de cada uno de los mercados utilizando los mismos parámetros, es imposible, sin embargo podemos medirla individualmente a través de lo que nos ofrece, su oferta y su demanda, y observo que hay una similtud en calidad con el mercado de mi casa, ya que siempre las personas del municipio vienen a este mercado a comprar comida y algunas cosas del hogar, a diferencia del Mercado de San Juan en donde las personas compran alimentos exóticos que en el mercado de mi casa no venden.
Llego a la conclusión que no sólo estos dos mercados, si no la mayoría de los mercados en el área Metropolitana son de calidad, ya que nos ofrecen productos sanos y nutricionales, desgraciadamente las personas con un alto poder adquisitivo no acuden a los mercados o tianguis a comprar cosas que necesitan, pensando que es un lugar de gente pobre o marginal, o simplemente son lugares con poca higiene y gente de escasa educación. Podríamos comparar muchos mercados de distintos lugares, sin embargo no hay que darle tantos rodeos, la calidad se mide de acuerdo a lo que el mercado nos oferta y a través de eso pueden satisfacer las necesidades de las personas es decir que ellas encuentren lo que buscaban, siendo así las personas regresan en múltiples ocasiones a buscar algunas otras cosas que necesitan, es ahí en donde establecemos la demanda.
Métodos Get y Set en Java
DIAGRAMA DE CLASES
CÓDIGO
public class Usuario {
private String nombre;
private String aPaterno;
private String aMaterno;
public void setNombre (String id) {
nombre = id;
}
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 ("Tu nombre es: " + nombre + " " + aPaterno + " " + aMaterno);
}
}
Tiempo utilizado: 4 minutos con 53 segundos.
Tiempo utilizado: 4 minutos con 53 segundos.
CÓDIGO REALIZADO A MANO
domingo, 7 de junio de 2015
ALTAS CON JSP y CONEXIÓN A UNA BASE DE DATOS
En un principio se realizó un formulario sencillo para poder dar de alta varios datos y conectarlos a una Base de Datos, fue importante establecer una clave primaria y utilizar botones de radio, comboBox y cuadros de texto para practicar HTML.
Después de crear el formulario, se creo una Base de Datos que contuviera los mismos campos que íbamos a llenar en el formulario, para poder enviarlos y guardarlos en ésta.
Después creamos el código que iba a crear la conexión entre nuestro formulario y la base de datos anterior creada, fue importante establecer bien las variables y verificar que las rutas especificadas estuvieran escritas correctamente ya que si nos falta cualquier detalle, nuestra alta no será exitosa, especificamos que al dar un alta hubiera un desplegado de que ésta fue exitosa y al dar click en aceptar regresara al formulario para poder volver a crear otro registro.
Aquí se anexa el código que realiza lo anteriormente descrito.
Posterior crear los códigos, procedimos a correr el proyecto para observar si nuestro código satisfacía lo que nosotros estábamos especificando en él, después de esto se procedió a hacer un registro, para observar que cuando demos click al botón "ALTA" tuviera una buena conexión a la base de datos.
Observamos que nos apareció que el registro fue dado de alta exitosamente; sin embargo esto solo es el Script que nosotros pusimos en el código, para comprobar realmente que nuestra alta fue exitosa, tuvimos que regresar al código en donde creamos nuestra Base de Datos para darle un "select" a la tabla y al actualizarla observar que nuestro registro estuviera contenido en la tabla.
Después de realizar este breve formulario y comprobar que mi alta fue exitosa, me ayudó a dominar este proceso y poder así conectar muchos formularios a bases de datos.
Podemos comprobar que pude dar mas registros de alta.
Después de dominar a la perfección este proceso, como un extra procedí a hacer el proceso de CONSULTAS.
miércoles, 3 de junio de 2015
domingo, 26 de abril de 2015
Etapas de la calidad // Modelos de calidad de software // Proceso de mejora continua
Etapas de la calidad - Cuadro sinóptico
*Dar click a la imagen para ver en grande
Referencia:
"Evolución de la calidad" Sitio web: http://www.alconet.com.ar/ISO/menu.html
Modelos de la Calidad de Software
MODELO CMMI
El CMMI
es un enfoque de mejora de procesos que provee a las organizaciones de los
elementos esenciales para un proceso efectivo.
El CMMI es el Modelo de Madurez de Capacidades
Integrado.
Fue desarrollado por el SEI
(Software Enginnering Institute).
Mide la
madurez del desarrollo del software en una escala del 1 al 5.
Nivel 1 CMMI (Inicial).
Este es el nivel en donde están todas las empresas que no
tienen procesos. Los presupuestos se disparan, los proyectos se entregan fuera
de las fechas, hay apresuros al final de la entrega. No existe un control sobre
el estado del proyecto.
Nivel 2
CMMI (Administrado).
Es posible obtener el éxito en los resultados varias veces.La
principal Durante este nivel el proyecto es gestionado y controlado durante el
desarrollo del mismo. El desarrollo no es opaco y se puede saber el estado del
proyecto en todo momento.
Los
procesos que hay que implantar para alcanzar este nivel son:
* Gestión
de requisitos
* Gestión
de proveedores
* Aseguramiento
de la calidad
* Seguimiento
y control de proyectos
* Gestión
de la configuración
* Planificación de Proyectos
Nivel 3 CMMI (Definido).
La
gestión e ingeniería de los proyectos está establecida documentada, y existen
métricas para llegar a los objetivos concretos
Los
procesos que hay que implantar para alcanzar este nivel son:
º Desarrollo
de requisitos
º Verificación
º Definición
de los procesos de la organización
º Planificación
de la formación
º Validación
º Desarrollo
y mejora de los procesos de la organización
º Gestión
de riesgos
º Análisis
y resolución de toma de decisiones
La mayoría
de las empresas que llegan al nivel 3 aquí se quedan, debido a que es un nivel
de confort que proporciona muchos beneficios y cubre la mayoría de las
necesidades que tiene la empresa.
Nivel 4 CMMI (Administrado Cuantitativamente).
Los
proyectos utilizan objetivos que pueden medir para intentar satisfacer las necesidades de los clientes y
tener una mejor organización, utilizando métricas para gestionar esta
organización.
Hay 2
procesos fundamentales que son necesarios para alcanzar este nivel.
· * Mejora
de los procesos de la organización
· * Gestión
cuantitativa de proyectos
Nivel 5 CMMI (Optimizado).
El proyecto se enfoca en la mejora continua, hay mejoras incrementales e innovadoras de los procesos que mediante métricas son identificadas, evaluadas y puestas en práctica.
MODELO TSP && PSP
PSP
(Personal Software Process):
El
PSP ayuda a los desarrolladores a definir sus propios procesos, planear su
trabajo y administrar la calidad de sus propios productos.
Está
basado en los principios de mejora, ayuda a la gente a establecer metas personales,
mide y analiza sus resultados, ajustando las maneras que utilizan para lograr
sus objetivos.
En
resumen, el PSP es un proceso definido para ayudar a realizar el trabajo,
reportando datos precisos, mejorando el proceso individual para aumentar el desempeño
de todo el equipo.
TSP
(Team Software Process):
Es
un modelo de ingeniería de software que hace énfasis en el trabajo en equipo,
realiza loos trabajos en un ambiente de colaboración, se deben de entender las
fortalezas y bajas de cada miembro del equipo y como éstas ayudaran al
desempeño de éste.
Los
equipos trabajan juntos de una manera coordinada si se tienen metas en común,
se acuerdan los planes de trabajo y se establecen las responsabilidades, dando
un seguimiento al avance.
El
Team Software Process , usa los principios de PSP para poner en marcha equipos
de alto rendimiento. Cada miembro del equipo, en un desarrollo TSP planea sus
actividades, establece un seguimiento y reporte de sus avances, y se involucra
en la toma de decisiones del equipo.
Proceso de Mejora Continua
La
mejora continua, debe ser el objetivo de la organización. Para realizarla se utiliza
un ciclo llamado PDCA, el cual se base en el principio de mejora continua de la
gestión de la calidad: “Mejorar todos los días”.
La
autoevaluación es fundamental para la mejora continua, en ésta detectamos
puntos que hay que tratar de mantener y se localizan áreas de mejora.
El
ciclo PDCA de mejora continua se basa en los siguientes apartados:
Planificar (Plan)
º Organización
del trabajo de manera lógica
º Identificación
del problema y planificación.
º Se
establecen objetivos a alcanzar.
º Establecimiento
de indicadores de control.
º Observaciones
y análisis.
Hacer
(Do)
§ Las
tareas que se planean se realizan de manera correcta
§ Se
verifica la aplicación
§ Preparación
sistemática de lo previsto.
Comprobar
(Check)
º Comprobamos
los logros obtenidos
º Verificación
de los resultados de las acciones realizadas.
º Comparación
de los objetivos cumplidos con los objetivos propuestos.
Ajustar
(Adjust)
§ Podemos
extender aprendizajes y experiencias adquiridas en otros casos.
§ Análisis
de datos obtenidos.
§ Estandarización
y consolidación.
§ Se
prepara la siguiente etapa del plan
§ Proponer
alternativa de mejora.
.
La
perfección en todos los aspectos se alcanza mediante un proceso de mejora
continua. Una mejora en la eficiencia de los recursos, en las relaciones
públicas, una mejora dentro de la organización, todo esto reflejado en una
mejora de la calidad del producto o servicio que ofrecemos.
El
alcance de los mejores resultados no se logra en un dia, es un proceso
progresivo donde no pueden existir los retrocesos, deben de cumplirse todos los
objetivos y mentalizarse para próximos retos.
Referencias:
All Soft. Noviembre 2008."El Modelo CMMI (for Development)" Obtenido de: http://www.allsoft.com.mx/recursos/ElModeloCMMI.pdf
Kernel. "Metodologia PSP /TSP" Sitio web: http://www.kernel.com.mx/documentos/psp_tsp.pdf
Alava, M.
(2012). Guía de la Calidad. Sitio Web: http://www.guiadelacalidad.com/modelo-efqm/mejora-continua
Kernel. "Metodologia PSP /TSP" Sitio web: http://www.kernel.com.mx/documentos/psp_tsp.pdf
martes, 21 de abril de 2015
Ensayo - Calidad de Software
Alumno: Victor Cuauhtemoc Vargas Ramírez
Especialidad: Programación
Grupo: 4IM8
Profesor: Juan Manuel Cruz Mendoza
TÉCNICAS DE PROGRAMACIÓN PERSONAL CON CALIDAD
Miércoles 22 de Abril del 2015
INTRODUCCIÓN.
Durante la clase de Técnicas de Programación Personal con Calidad se analizaron los factores internos y externos que nos permiten evaluar la calidad del software, obteniendo que la calidad del software es mejor descrita como una combinación de varios factores.
Existen
diversos tipos de software a lo largo del mundo, todos ellos cumplen una
función específica, es decir, es el fin con el que fueron creados.
Sin
embargo, todos ellos para que puedan funcionar y destacar, tienen que estar en
un cierto nivel de calidad,
Todos queremos que nuestros sistemas de software sean rápidos, útiles y sencillos de usar, de tal manera que el usuario detecte estas características y juzgue de una manera mas objetiva el nivel de calidad que posee el software que se le brindó.
DESARROLLO.
Siempre para que nuestro usuario pueda analizar y evaluar nuestro sistema toma en cuenta los factores externos de acuerdo a su percepción, ya que, ellos debido a su falta de conocimientos acerca del código y temas acerca de la programación, no podrían evaluar nuestro nivel de programación de acuerdo al código.
Veamos ahora, los factores mas importantes:
1. Exactitud
Es lo más trascendente dentro un software.
Es un factor externo que se satisface a través de los requerimientos funcionales del software y tiene que lograr con los objetivos planteados.
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 de software.
Es un factor externo que se satisface a través de los requerimientos funcionales del software y tiene que lograr con los objetivos planteados.
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 de software.
Un ejemplo software exacto podría ser WinRaR, ya que aparentemente, cumple con todo lo que nos ofrece.
Podríamos establecer una 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.
La robustez en software se define como la
capacidad de responder ante algún evento que pueda comprometer la funcionalidad
de este.
Al terminar de programar un sistema siempre se presentan situaciones que no se contemplan y la robustez nos asegura que estas no causaran eventos catastróficos que dañen la integridad de nuestro programa, de esta manera la robustez hará un despliegue de mensajes de error apropiados en donde pueda terminarse la ejecución de manera limpia manteniendo los datos seguros.
Como algún cálculo erróneo, una métrica aproximada sería dividir el número de veces que el software funcionó bien entre el número de errores que hayan ocurrido, si es mayor a 1 el resultante, el software tiene robustez
3. Reutilización
Al terminar de programar un sistema siempre se presentan situaciones que no se contemplan y la robustez nos asegura que estas no causaran eventos catastróficos que dañen la integridad de nuestro programa, de esta manera la robustez hará un despliegue de mensajes de error apropiados en donde pueda terminarse la ejecución de manera limpia manteniendo los datos seguros.
Como algún cálculo erróneo, una métrica aproximada sería dividir el número de veces que el software funcionó bien entre el número de errores que hayan ocurrido, si es mayor a 1 el resultante, el software tiene robustez
3. 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. Podemos afirmar que es la creación de un sistema
a partir de alguno ya existente.
Sin embargo la definición 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 formula que establecimos como:
Porcentaje de reutilización = (Software reutilizado/Software total) x 100
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.
4. Extensibilildad
Es la facilidad de adaptar los productos del software a los cambios que el cliente especifique.
5. Compatibilidad
5. Compatibilidad
Es la 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.
COMPATIBILIDAD:
Sistemas con los que es capaz de trabajar en conjunto / 1 + Numero de cambios que
requiere el sistema para interactuar con el otro en cuestión.
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:
Eficiencia = resultados / recursos
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.
Recursos = memoria utilizada + tiempo empleado
7. Portabilidad
El esfuerzo necesario para transferir el programa de un entorno de hardware o software a otro.
8. Fácil de usar
Es la simplicidad con la cual las personas de varios
conocimientos y cualidades tienen la capacidad de aprender a usar un
software, aplicándolo para resolver problemas.
En la calidad del software es fundamental la facilidad de
uso de tu sistema, ya que normalmente el usuario que requerirá tu sistema no tiene tantos conocimientos 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 sus 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”.
Podríamos calcularlo por medio del tiempo que tarda en aprender a usar el software una persona con conocimientos muy básicos de computación, a menor tiempo, mayor facilidad de uso.
Podríamos calcularlo por medio del tiempo que tarda en aprender a usar el software una persona con conocimientos muy básicos de computación, a menor tiempo, mayor facilidad de uso.
9. Funcionalidad
Es la característica en la cual se incluyen las
características necesarias para un software, sin incluir funciones innecesarias
de software que complican al usuario realizar su acción.
Por ejemplo en el año de 2011-2012 Facebook incluye una actualización sobre cambiar tu perfil por biografía lo que dificulto a muchos usuarios sus acciones en la red social, perdiendo su funcionalidad
Aspectos importantes acerca de la funcionalidad:
- Cumple las funciones necesarias
- Tienes los diseños (adornos) necesarios para que se haga un software amigable
- Sus métodos tienen el mínimo numero de errores
- Sus actualizaciones no afectan a la calidad de software
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.
R=T-P
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”.
CONCLUSIÓN.
Finalmente
la calidad de software es importante para cualquier sistema, ya que compromete
al programador a entregar un producto de calidad, en base a las
especificaciones requeridas e intentando o pretendiendo cubrir los factores que evalúan su calidad.
Como anteriormente se mencionó, un software siempre será de calidad cuando cumpla todos los factores que la miden, sin embargo será cuestión del usuario si le agrada o no, y el le podrá poner una evaluación de manera subjetiva.
REFERENCIAS.
- Resumen Capitulo 1 de: "Object Oriented Software Construction" 2da Edition. Bernard Meyer
- Interpretaciones de alumnos del grupo 4IM8 de la Especialidad de Programación del CECyT 9. Abril 15, 2015.
Suscribirse a:
Entradas (Atom)