Está en la página 1de 19

Yenny Paola Ladino Camacho

TALLER #2

1. Identifique que Estándar de calidad manejan de la gestión del ciclo de vida


Construcción de Software que se implemente en su proyecto teniendo en cuenta las
métricas y las soluciones del mismo.

PROYECTO

ISO 12207 – Modelos de Ciclos de Vida del Software.

Estándar para los procesos de ciclo de vida del software de la organización, el estándar indica una
serie de procesos desde la recopilación de requisitos hasta la culminación del software.

El estándar comprende 17 procesos lo cuales son agrupados en tres categorías:

 Principales
 De apoyo
 De organización

Este estándar agrupa las actividades que se pueden llevar a cabo durante el ciclo de vida del
software en cinco procesos principales, ocho procesos de apoyo y cuatro procesos organizativos

Ilustración 1. Modelo ciclo de vida software, ISO 12207

1
Yenny Paola Ladino Camacho

2. Por medio del software Terminal Punto de Venta (TPV) de gestión de negocios se
verifica aplicaciones https://solvermedia.com/

2.1 Identifique el término TPV y cómo funciona.

TPV significa “Terminal Punto de Venta”, y el Software TPV es el sistema que utilizan tiendas,
supermercados, restaurantes, etc… para realizar las ventas.

El Software TPV gira en torno a su objetivo principal, gestionar y procesar las ventas. Sin embargo,
el software para el Punto de Venta con el paso del tiempo y debido a las inquietudes de los
empresarios y usuarios de tener un control total sobre el negocio, va mucho más allá.

Los sistemas TPV profesionales, pueden gestionar stock, inventario, proveedores, clientes,
análisis, informes de ventas por productos; por familias; por vendedor, administración de
empleados, trazabilidad, centralización de varios puntos de venta o restaurantes. El software TPV
registra cada venta en el momento en la que se realiza, por lo que su inventario está siempre
actualizado, esto le permite, obtener mucha más información acerca de la venta de la que se
puede reunir con un sistema manual o no profesional. Al ejecutar informes basados en esta
información, puede tomar mejores decisiones sobre pedidos y comercialización.

En un sistema TPV hay dos componentes principales el Hardware y el Software.

Hardware: Esta parte es la configuración física del sistema TPV, esta configuración puede variar
dependiendo del sector al que nos dediquemos. Normalmente se trata de uno o varios Terminales
TPV conectados entre sí, donde se instala el software de gestión y al que se le conectan diferentes
periféricos según nuestras necesidades, tales como: Impresoras de Tickets, Cajones
Portamonedas, Lectores de Códigos de Barra, Impresoras de Etiquetas, Visores de Precio,
Balanzas solo peso o autónomas, sistemas de cobro inteligente o en el caso de restaurantes:
Tablets y Comanderos Electrónicos, Impresoras de Cocina o Monitores de Cocina.

Software: El hardware en conjunto con el software TPV almacenan toda la información de nuestro
negocio y la administra dentro de una base de datos.

2
Yenny Paola Ladino Camacho

2.2 Instale uno solo del software que funciona como de Peluquería, Restaurante
entre otros y realice un estudio detallado de funcionalidad del producto.

Instalación

3
Yenny Paola Ladino Camacho

Estudio funcionalidad

Como se puede detallar, ofrece los diferentes servicios que un petshop puede ofrecer, y manejar
internamente. El TPV de mascotas maneja el mantenimiento del software como lo es el manejo de
la base de datos, la caja que implica todo el proceso de venta de los productos que el petshop
ofrece, la agenda para pedir cita previamente, los bonos a los que accede un empleado por las
ventas realizadas, el stock donde se almacena todo el inventario del petshop, los clientes con
deuda, los listados de caja y ventas, las estadísticas de venta y consumo, las comisiones de los
empleados, la configuración tanto de la empresa, la facturacion y la base de datos; Los niveles de
acceso de los empleados, el acerca de de la aplicación, la implementación del envió de mensajes
tanto al correo como vía SMS a los clientes, y el control de horario de funcionamiento.

Dentro de cada sección hay subsecciones(modulos – submodulos) como por ejemplo el caso del
modulo mantenimiento, donde tiene a los clientes, los empleados, los producto, el servidor, los
proveedores, las secciones del petshop y las formas de pago.

4
Yenny Paola Ladino Camacho

3. Identifiquen los diferentes niveles de lenguaje de programación para su proyecto.

Lenguajes de bajo nivel

Lenguaje que entiende directamente la computadora, por lo tanto, se utiliza solo 0 y 1. Las
instrucciones son ejercidas directamente al hardware, es necesario conocer las características de
los componentes. Podemos clasificar este nivel en dos tipos:

 Lenguaje maquina: instrucciones formador por 0 y 1 que se ejecuta directamente en el


CPU (Procesador) del equipo.
 Lenguaje ensamblador: este derivado del lenguaje máquina, sin embargo, utiliza letras y
números para las instrucciones.

Es necesario utilizar un compilador para interpretar las instrucciones del programador, el lenguaje
no es cercano al humano.

Lenguaje de medio nivel

Son lenguajes que permiten una mayor abstracción, pero manteniendo algunas características del
lenguaje de bajo nivel. El código es enviado a un compilador que lo convierte al lenguaje máquina.
Debido a sus características, estos lenguajes se pueden situar entre los de bajo nivel y alto nivel,
aunque no es muy aceptado.

Lenguaje de alto nivel

Es más cercano al lenguaje humano, manejando conceptos, tipos de datos, etc. sin importar la
computadora. Es indispensable utilizar un intérprete o compilador que traduzca las instrucciones al
lenguaje máquina. Son lenguajes independientes de una computadora, puedes migrar tu código a
otro y seguir trabajando sin problemas.

Ventajas:

 Mejor comprensión del lenguaje


 Independiente del equipo

PROYECTO

Para la implementación del proyecto de ingeniería del software denominado “BiciControl” se


utilizará un lenguaje de alto nivel, como lo es PHP y HTML. Y como interprete se usa el IDE Visual
Studio Code.

5
Yenny Paola Ladino Camacho

4. Tenido en cuenta el significado de Construir para verificar dentro los principios


fundamentales de construcción, identifique los usos sistemáticos de pruebas unidad
de su proyecto. Consulte y Maneje un marco de pruebas (framework). Ejemplo: xUnit

El Explorador de pruebas de Visual Studio puede ejecutar pruebas de cualquier marco de pruebas
unitarias que haya desarrollado una interfaz de adaptador para él. El programa instalación del
marco copia los archivos binarios y agrega plantillas del proyecto de Visual Studio para los idiomas
que admite. Cuando crea un proyecto con la plantilla, el marco se registra en el Explorador de
pruebas. Una solución de Visual Studio puede contener proyectos de prueba unitaria que usen
diferentes marcos y que estén destinados a diferentes idiomas.

En .NET, MSTest, NUnit y xUnit son los marcos de pruebas proporcionados por Visual Studio que
se instalan de forma predeterminada.

Adquisición de marcos de trabajo

Instale marcos de pruebas unitarias de terceros mediante Administrador de paquetes NuGet.

6
Yenny Paola Ladino Camacho

5. Dentro los dos Métodos para la revisión del código (las revisiones formales o
informales) identifíquelas y realice un ejemplo para su manejo del proyecto.

Objetivos de las revisiones

 Detectar problemas de análisis, diseño y código en forma temprana


 Definir y acordar criterios de retrabajo para su resolución
 Verificar que se resolvió de acuerdo al criterio acordado

Beneficios de las revisiones

 Genera datos acerca del producto y el proceso de desarrollo


 Genera conocimiento entre miembros del grupo de desarrollo
 Aumenta la efectividad de la validación y verificación
 Contribuye a la instalación del concepto de calidad

Revisiones formales: con roles, responsabilidades y un procedimiento definido(documentado)

 Detecta errores
 Verifica trabajo
 Focalización en sobre si si o no el producto cubre los requerimientos
 Decisiones consensuadas
 El responsable es un moderador entrenado
 Pares con asistencia registrada

Revisiones informales: Con roles desdibujados y sin procedimiento

 Detecta errores
 Discute alternativas de solución
 Focalización a demostrar que el producto cubre los requerimientos
 Decisiones del autor
 Pares y responsables técnicos sin registrar

Ejemplo manejo PROYECTO

 Pares con asistencias registrada  La programación(codificación) del proyecto se realizara


en pareja, donde cada vez que se realice o implemente código, se deberá llevar un registro
de la actividad realizada, con hora, fecha y firma de los asistentes.

7
Yenny Paola Ladino Camacho

6. En las actividades de las revisiones informales existen 4 importantes las cuales son:
(Circulación de Código, Programación por parejas, Uso de herramientas de revisión
y revisiones por encima de hombro), lo cual deberán realizar la definición de cada
una y el ejemplo de las mismas.

REVISIONES INFORMALES
ACTIVIDAD DEFINICION EJEMPLO
Circulación de Circulación del código mediante correo electrónico, Uso de los
código para el acceso a él de forma remota. repositorios(GitHub)
El conductor escribe el
Trabajar en el mismo equipo dos programadores código
Programación de forma conjunta. Uno de ellos es el conductor, El supervisor observa la
por parejas mientras que el otro supervisa. codificación y
Ambos programadores van alternando estos roles proporciona información
en tiempo real
Un proceso de revisión de códigos asistido por
herramientas implica el uso de una herramienta
especializada para facilitar el proceso de revisión
de código, ayudando con:  Review board
Uso de
 Organizar y mostrar los archivos  GitHub
herramientas
actualizados en un cambio.  CodeScene
de revisión
 Facilitar una conversación entre revisores y  Visual expert
desarrolladores.
 Evaluar la eficacia del proceso de revisión
del código con métricas.
Revisiones de código en la estación de trabajo del
Revisiones por
desarrollador, donde un miembro experimentado
encima del
del equipo revisa el nuevo código, proporcionando
hombro
sugerencias.
Tabla 1. Revisiones informales

8
Yenny Paola Ladino Camacho

7. Realice un Análisis de rendimiento en el comportamiento de su Software del


Proyecto.

En ingeniería de software el análisis de rendimiento, comúnmente llamado profiling o perfilaje, es la


investigación del comportamiento de un programa de ordenador usando información reunida desde
el análisis dinámico del mismo. El objetivo es averiguar el tiempo dedicado a la ejecución de
diferentes partes del programa para detectar los puntos problemáticos y las áreas dónde sea
posible llevar a cabo una optimización del rendimiento (ya sea en velocidad o en consumo de
recursos). Un profiler puede proporcionar distintas salidas, como una traza de ejecución o un
resumen estadístico de los eventos observados.

Usualmente el Profiling es utilizado durante el desarrollo de software como método para la


depuración y optimización de los algoritmos, esta práctica vista de esta manera es buena, pero es
vista más como una actividad interna que suele carecer de objetividad y veracidad cuando no es
evaluado por personal realmente especializado y en el entorno adecuado para ello.3

El profiling se puede llevar a cabo en el código fuente o sobre un binario ejecutable mediante una
herramienta llamada profiler.

Los profilers pueden clasificarse según la forma de recopilación de datos que utilicen, pudiendo
destacar: basados en eventos, estadísticos, con instrumentación de código y como simulación

RECOPILACIÓN DE LOS EVENTOS DEL PROGRAMA

Los profilers utilizan una amplia variedad de técnicas para recopilar datos, incluyendo:
interrupciones por hardware, instrumentación de código, simulador de conjunto de instrucciones,
hooking y contadores de rendimiento de hardware. El profiling es la técnica más usada dentro de la
ingeniería de rendimiento.

SALIDA GENERADA POR UN PROFILER

La salida que puede generar un profiler depende del mismo, generalmente son las siguientes:

 Un resumen estadístico de los eventos observados (un perfil): Un resumen de la


información del perfil se muestra a menudo anotado contra las declaraciones de código
fuente donde se producen los eventos, por lo que el tamaño de los datos de medición es
lineal para el tamaño del código del programa.
 Una secuencia de eventos grabados (un seguimiento): Para programas secuenciales, un
perfil, es generalmente suficiente, pero los problemas de performance en programas
paralelos (que esperan mensajes o temas de sincronismo) a menudo dependen de la
relación temporal de los acontecimientos, por lo que requieren un seguimiento completo
para obtener una comprensión de lo que está sucediendo.
 Una interacción permanente con el hipervisor (vigilancia continua o periódica a través de la
visualización en pantalla por ejemplo). Esto proporciona la oportunidad de cambiar un
rastro o desactivarlo en cualquier momento que desee durante la ejecución, además de ver
las métricas en curso sobre el programa (en ejecución). Además proporciona la
oportunidad de suspender procesos asíncronos en los puntos críticos para examinar las
interacciones con otros procesos paralelos en más detalle.

9
Yenny Paola Ladino Camacho

TIPOS DE PROFILERS BASADOS EN SU SALIDA

 Flat profilers: Calculan el tiempo promedio de las llamadas, y no se descomponen los


tiempos de llamadas basado en el destinatario o el contexto de la misma.
 Profiler de grafo de llamadas: Muestran los tiempos de llamada y las frecuencias de las
funciones, así como las cadenas de llamadas en que participan basadas en el destinatario
de la llamada. En algunas herramientas de contexto completo no se conserva.

GRANULARIDAD DE LOS DATOS EN LOS DIFERENTES TIPOS DE PROFILERS

Los profilers, que también son propios programas, analizar programas específicos mediante la
recopilación de información sobre su ejecución. Basado en su granularidad de datos, la forma en
que los profilers recopilan información, se clasifican en profilers basados en eventos o estadísticos.
Ya que los profilers interrumpen la ejecución del programa para recopilar información, tienen una
resolución finita en las mediciones de tiempo, los cuales se deben tomar como un subconjunto del
total de información.

PROFILERS BASADOS EN EVENTOS

Los lenguajes de programación que se listan a continuación poseen un profiler basado en eventos:

 Java (lenguaje de programación) (Java Virtual Machine Tools Interface)


 Microsoft .NET
 Python
 Ruby

PROFILERS ESTADÍSTICOS

Algunos profilers operan por muestreo. un profiler por muestreo prueba el "Program counter" del
programa objetivo a intervalos regulares usando interrupciones del sistema operativo. Los profilers
de muestreo son típicamente menos exactos numéricamente y específicos, pero permiten que el
programa de destino funcione cerca de la velocidad máxima.

PROFILERS INSTRUMENTADORES

Algunos profilers "instrumentan" el programa objetivo con instrucciones adicionales para recopilar
la información necesaria.

Instrumentar el programa puede causar cambios en el rendimiento del programa, que pueden
causar resultados inexactos y heisenbugs. Instrumentar siempre tendrá algún impacto en la
ejecución del programa, por lo general siempre es más lento. Sin embargo, la instrumentación
puede ser muy específica y ser controlada cuidadosamente para tener un impacto mínimo. El
impacto sobre un programa en particular depende de la colocación de puntos de instrumentación y
el mecanismo que se utiliza para capturar la traza. El soporte de hardware para capturar la traza
significa que en algunos objetivos, la instrumentación puede tener sólo una instrucción de máquina.
El impacto de la instrumentación a menudo se puede deducir (es decir, eliminada por sustracción)
a partir de los resultados.

10
Yenny Paola Ladino Camacho

gprof es un ejemplo de un profiler que utiliza tanto la instrumentación y el muestreo. La


instrumentación se utiliza para recopilar información de las llamadas y los valores de tiempo real se
obtienen mediante muestreo estadístico.

INSTRUMENTACIÓN

La instrumentación es clave para determinar el nivel de control y la cantidad de resolución de


tiempo disponible para los profilers. A continuación se enumeran todas las categorías:

 Manual
 Automática a nivel de código
 Asistida por el compilador
 Translación binaria
 Instrumentación en tiempo de ejecución
 Inyección en tiempo de ejecución
 Interpretador de instrumentación

Las opciones del intérprete de depuración permiten habilitar la recopilación de métricas de


rendimiento cuando el intérprete se encuentra con cada declaración de destino. Los bytecodes,
tablas de control e intérpretes JIT son tres ejemplos que suelen tener un control completo sobre la
ejecución del código de destino, lo que permite la oportunidad de recolectar datos muy completos.

HIPERVISOR/SIMULADOR

 Hipervisor: Los datos se recogen mediante la ejecución del programa (por lo general) no
modificada bajo un hipervisor. Por ejemplo SIMMON.
 Simulador y Hipervisor: Los datos son recogidos de forma interactiva y selectiva mediante
la ejecución del programa sin modificar en el marco de un simulador de conjunto de
instrucciones. Por ejemplo IBM OLIVER y SIMON

11
Yenny Paola Ladino Camacho

8. En las Lista de comprobaciones para inspección de código, realice las más


pertinentes en el manejo de su proyecto (Formato o Tabla de comprobaciones).

PROYECTO

LISTA DE COMBINACIONES PARA INSCRIPCION DE CODIGO


PROYECTO BiciControl
AUTOR Yenny Paola Ladino Camacho
NOMBRE DEL FICHERO
FECHA
NUMERO DE ERRORES TIPO DE ERROR DE
MAYOR MENOR CODIGO
Tamaño - Encapsulamiento
Estación – Condiciones
Tipos de datos
Variables
Sintaxis incorrecta
Comentarios pobres
Tabla 2. Formato lista de combinaciones para inscripción de código

LISTA DE CHEQUEO PARA INSPECCIONES DE CODIGO


FECHA 3 septiembre, 2020
AUTOR Yenny Paola Ladino Camacho
INSPECTOR Edmundo Arturo Junco
ITEM SI NO N.A OBSERVACIONES
¿La clase se encuentra en el paquete
correcto?
¿Todas las variables están inicializadas?
¿Se implementa más cosas que las
especificadas en el diseño?
¿Se implementa menos cosas que las
especificadas en el diseño?
¿Los nombres de las clases corresponden
a los nombres especificados en el diseño?
¿Los métodos corresponden con la
signatura especificada en el diseño?
¿Todos los métodos tienen el número
correcto de parámetros?
¿Todos los parámetros de los métodos
tienen los tipos correctos?
¿Todos los métodos retornan el tipo de
dato correcto?
¿Las Excepciones se están capturando
correctamente?
¿Los ciclos implementados terminan?
¿Los archivos abiertos se cierran
correctamente después de ser utilizados?

12
Yenny Paola Ladino Camacho

¿Los arreglos utilizados son del tamaño


suficiente?
¿Todas las variables declaradas son
utilizadas?
¿Todos los métodos declarados son
utilizados?
¿La variable que recibe el cálculo de tipos
numéricos es del tipo adecuado?
¿Existen muchos ciclos anidados?
Máximo 2 ciclos anidados
¿Hay líneas de código innecesarias?
Tabla 3. Formato lista de comprobaciones para inspección de código

13
Yenny Paola Ladino Camacho

9. Consultar el señor David Agans, en la participación de la Construcción de Software,


lo cual deberán identificar las 9 reglas para la depuración y menciónelas cuales
podrían ser para su proyecto.

DAVID AGANS

Dave Agans recibió un BSEE del MIT en 1976 (con especialización en escritura creativa, incluida
una clase con AR Gurney). Durante sus 25 años de carrera en los negocios, se ha ganado la
reputación de ser un orador entretenido en seminarios y creativo "redactor de palabras", y ha
escrito un libro popular y divertido sobre depuración (Debugging, Amacom Books)

Su interés por el teatro se afianzó firmemente después de convertir algunas canciones de broma
en un musical de larga duración para la celebración del aniversario de una empresa.

En 1997, su primer musical Robot Trouble (como "Robots") fue producido por el Gremio de Teatro
Musical del MIT para un público entusiasta, y de hecho ganó dinero. Actualmente está
desarrollando "Where the Heart Is", un musical sobre la construcción de casas y el matrimonio.

Dave Agans es miembro de The Dramatists Guild.

PARTICIPACION EN LA CONTRUCCION DEL SOFTWARE

Libro Debugging en el cual explica las reglas de batalla para rastrear y eliminar errores de
hardware y software. Explica que cuando se ejerce la presión para erradicar un error elusivo de
software o hardware, lo que se necesita es una cortesía de la cabeza fría de un conjunto de reglas
garantizadas para funcionar en cualquier sistema, en cualquier circunstancia. Esta escrito en un
estilo franco pero atractivo, Debugging proporciona principios simples e infalibles garantizados para
ayudar a encontrar cualquier error rápidamente. Este libro hace obsoletos los estantes de libros de
depuración específicos de aplicaciones (en C ++, Perl, Java, etc.). Cambia la forma en que los
lectores piensan sobre la depuración, haciendo que esos molestos problemas de repente sean
mucho más fáciles de encontrar y solucionar. Ilustrando las reglas con historias de guerra de
detección de errores de la vida real, el libro muestra a los lectores cómo entender el sistema, cómo
percibir la "hoja de ruta" que puede acelerar su viaje, cuando no se puede evitar la investigación
práctica, como aislar los factores críticos: por qué cambiar un elemento a la vez puede ser una
herramienta esencial, mantener un registro de auditoría: cómo mantener un el registro del proceso
de depuración puede ganar el día.

14
Yenny Paola Ladino Camacho

LAS NUEVE REGLAS DE DEPURACIÓN

La depuración no lo expone a herramientas de depuración específicas como las que encontrará en


Visual Studio. Se trata más de adoptar una mentalidad de depuración. Una vez que haya absorbido
esa mentalidad, puede depurar cualquier cosa, desde la fuga en el fregadero de la cocina hasta la
fuga de memoria en su aplicación web. Con ese fin, el autor nos proporciona "9 reglas" para
convertirnos en depuradores de gran alcance. Aquí hay una breve sinopsis de cada una de las 9
reglas.

1. Comprender el sistema

En primer lugar, debe comprender el sistema. Esta es posiblemente la parte más difícil y
probablemente la razón por la que la depuración es tan difícil y onerosa para la mayoría de
nosotros. Hay tantos sistemas y tantas complejidades que los rodean, que realmente no sabemos
cómo hacen lo que hacen. No obstante, cuando se enfrenta a un error inexplicable, es hora de
romper las especificaciones y leerlas con ojos nuevos. No asuma que sabe cómo funciona el
sistema, realmente lo sabe. Dibujarlo en una pizarra. Pon a prueba tus suposiciones con algunas
pruebas unitarias y tal vez con un pico rápido.

2. Haz que falle

Dos palabras: " pasos de reproducción ". Si no puedes hacer que falle y reproducir el error, estás
lanzando dardos en la oscuridad.

3. Deje de pensar y mire

Puede cerrar los ojos, recostarse en la silla y pensar en posibles fuentes del error durante todo el
día. Quizás una de esas ideas sea correcta. Pero no lo sabrá realmente hasta que deje de pensar
y comience a explorar. Saque su proverbial palo y comience a hurgar en el sistema. Mira qué se
rompe, quién grita.

4. Dividir y conquistar

Comience a eliminar las posibles fuentes del error, idealmente a través de un algoritmo de
búsqueda binaria. Elimine la mitad del sistema como candidato a albergar errores. Luego elimine la
siguiente mitad, y la siguiente mitad, hasta que el insecto lo mire tímidamente con su espeluznante
cola de insecto entre sus patas.

5. Cambie una cosa a la vez

No cambie un millón de cosas a la vez. Cambie una variable y vuelva a probar. ¿Cambió algo?
Vuelva a colocarlo como lo encontró; prueba otro. Este método sistemático parece tedioso, pero a
menudo ahorra tiempo a largo plazo.

6. Mantenga un registro de auditoría

Anote todo lo que ha intentado en busca del error. Esto le ayudará a evitar que intente lo mismo
dos veces, especialmente en sesiones de depuración prolongadas, y también le servirá como un

15
Yenny Paola Ladino Camacho

buen registro de depuración en caso de que tenga que entregarle su sombrero de caza de errores
a otra persona.

7. Verifique el enchufe

A veces, los errores más alucinantes se remontan a las causas más simples: alguien desconectó el
cable. No des nada por sentado. Siga su camino hacia arriba en la pila de tecnología, desde el
cable humilde hasta la abstracción de nivel 7 más alto. ¿Dónde se están rompiendo las cosas?

8. Obtenga una vista nueva

Llevas horas golpeándote la cabeza con el teclado mientras el bicho simplemente te señala con su
elegante bastón y se ríe irónicamente, luego inclina su sombrero de copa burlonamente. Estás
frustrado, con los ojos nublados, viendo cosas que realmente no están ahí. Es hora de alejarse de
la computadora. Dar un paseo. Habla con un amigo. Describa el problema, póngalo en la pizarra.
Tal vez hablar sobre el problema desencadene algo nuevo para probar, o su amigo captará algo
que se perdió.

9. Si no lo arregló, no lo está

¡Oye, mira, el error desapareció misteriosamente! Eso es genial, ahora puedo volver a trabajar.
Bueno ... Todos hemos estado allí. Por lo general, el error vuelve, cuando menos lo espera, y en
un momento terrible. Si no lo arreglaste, no lo arreglaste.

REGLAS POSIBLES A APLICAR EN EL PROYECTO

 Comprender el sistema
 Haz que falle
 Cambie una cosa a la vez
 Mantenga un registro de auditoría
 Obtenga una vista nueva
 Si no lo arregló, no lo está

16
Yenny Paola Ladino Camacho

10. Por medio de la Depuración del Software (Puntos de ruptura, Centinelas, Ejecución paso
a paso, Seguimiento de ejecución y comparaciones de escritorio) Identifíquelos y realice un
ejemplo o caso en su utilización.

La depuración de programas es el proceso de identificar y corregir errores de programación. En


inglés se conoce como debugging, porque se asemeja a la eliminación de bichos (bugs), manera
en que se conoce informalmente a los errores de programación.

PUNTOS DE RUPTURA

Los puntos de ruptura o de interrupción sirven para detener la ejecución de un programa, si un


programa falla en cierto pedazo de código, se recomienda establecer un breakpoint para deterner
la ejecución en ese punto y ejecutar línea a línea las siguientes instrucciones para ver dónde está
el error.
Los puntos de ruptura o de interrupción sirven para detener la ejecución de un programa, si un
programa falla en cierto pedazo de código, se recomienda establecer un breakpoint para deterner
la ejecución en ese punto y ejecutar línea a línea las siguientes instrucciones para ver dónde está
el error.

CENTINELAS

Debe haber algún valor que no sea un elemento válido Secuencias numéricas: Si se permite
cualquier número, no hay centinela posible Cadenas de caracteres: Caracteres especiales (no
imprimibles). En realidad el valor centinela es parte de la secuencia, pero su significado es especial
y no se procesa como el resto Significa que se ha alcanzado el final de la secuencia (Incluso aunque
haya elementos posteriores)

EJECUCIÓN PASO A PASO

Cuando se escriben programas, es normal cometer errores (bugs). De hecho, en promedio, un


programador comete un error cada 10 líneas de programa. Esto significa que la probabilidad de
que el programa funcione a la primera vez es prácticamente nula.

Por lo tanto, el desarrollo de un programa siempre incorpora una etapa de depuración (debugging),
que consiste en buscar y resolver los errores cometidos durante la programación. Para facilitar la
etapa de depuración es conveniente usar herramientas especializadas para estos efectos. La más
común es el depurador o también llamado debugger.

El depurador:

Un depurador es una herramienta que permite intervenir durante la ejecución de un programa, para
saber cómo se está ejecutando. El depurador permite:

Ejecutar paso a paso un programa (stepping).

 Establecer puntos de detención (breakpoints).

17
Yenny Paola Ladino Camacho

 Examinar el contenido de las variables y objetos.


 Conocer el encadenamiento de llamadas de procedimientos.
 Retomar la ejecución hasta un nuevo punto de detención.

Ejemplo al seguir el siguiente tutorial https://docs.microsoft.com/es-


es/visualstudio/debugger/debugging-absolute-beginners?view=vs-2019

18
Yenny Paola Ladino Camacho

REFERENCIAS

https://fernandoarciniega.com/normas-y-estandares-de-calidad-para-el-desarrollo-de-software/

https://www.comercialtpv.com/blog/2018/05/28/la-importancia-del-software-tpv-
negocio/#:~:text=%C2%BFQu%C3%A9%20es%20el%20Software%20TPV,gestionar%20y%20pro
cesar%20las%20ventas.

https://www.solvermedia.com/software-tpv-para-peluqueria-de-mascotas.html

https://www.kyocode.com/2018/09/niveles-de-lenguajes-de-programacion/

https://docs.microsoft.com/es-es/visualstudio/test/install-third-party-unit-test-frameworks?view=vs-
2019

http://testingmexico.blogspot.com/2016/04/revisiones-formales-vs-informales.html

https://kinsta.com/es/blog/herramientas-de-revision-de-codigo/#7-visual-expert

https://repository.poligran.edu.co/bitstream/handle/10823/689/ANALISIS%20DE%20LA%20TECNI
CA.......pdf?sequence=1&isAllowed=y

https://www.amazon.es/Debugging-David-J-Agans-ebook/dp/B002H5GSZ2

https://www.tygertec.com/9-rules-debugging/

https://es.wikipedia.org/wiki/An%C3%A1lisis_de_rendimiento_de_software

https://users.dcc.uchile.cl/~lmateu/CC10A/Apuntes/debug/index.html

https://es.wikipedia.org/wiki/Depuraci%C3%B3n_de_programas#:~:text=La%20depuraci%C3%B3n
%20de%20programas%20es,a%20los%20errores%20de%20programaci%C3%B3n.

19

También podría gustarte