Descarga: http://www.mediafire.com/view/?bet98eee6ijeabg
Balderas Silva Alberto. Cruz Gómez Jesús Enrique. Marcos Cruz Alexis David. Minor Bahena Arturo.
lunes, 20 de mayo de 2013
domingo, 19 de mayo de 2013
Apuntes Soporte de Software
Soporte de Software
El soporte es una
actividad que se le brinda al cliente para tratar de solucionar un problema que
se le haya presentado referente a un producto en especial, en general sirve para ayudar a resolver los problemas que puedan
presentárseles al cliente, mientras hace uso del software.
Cuando el soporte está
debidamente organizado, se pueden dar varios niveles de soporte:
- Soporte de Nivel 1
- Soporte de Nivel 2
- Soporte de Nivel 3
- Soporte de Nivel 4
Soporte
de Nivel 1
El principal trabajo de un
especialista de Nivel I es reunir toda la información del usuario y determinar
la incidencia mediante el análisis de los síntomas y la determinación del
problema subyacente.
Soporte de Nivel 2
Lo realizan personas especializadas en redes de comunicación,
sistemas de información, sistemas operativos, bases de datos, entre otras.
Soporte de
Nivel 3
Aquí el técnico
trabajará junto con el usuario para resolver el problema, el técnico debe
determinar primero, si puede o no resolver el problema y si para resolver el
problema, necesita requerir información de contacto del usuario para que el
técnico pueda disponer de tiempo suficiente para analizar el problema y
encontrar una solución.
Soporte de
Nivel 4
Es
el nivel más avanzado que se tiene catalogado y debe contar con los
conocimientos de niveles anteriores.
Mantenimiento de Software
Es una actividad que
se le realiza al software con la finalidad de corregirlo o mejorarlo.
El mantenimiento del
software existente puede dar cuenta de más del 60% de las inversiones
efectuadas por una organización de desarrollo.
Se debe desarrollar
mecanismos para evaluar, controlar y realizar modificaciones debido al
inevitable cambio de sistemas basados en computadora, va mucho más allá de
corregir errores.
Se puede definir
describiendo 4 actividades: mantenimiento correctivo, mantenimiento adaptativo,
mantenimiento de perfectivo y mantenimiento preventivo.
Mantenimiento
preventivo: Se hace con la finalidad de
anticipar fallos.
Mantenimiento
correctivo: Su fin es buscar fallos para
poder corregirlos.
Mantenimiento
adaptativo: Se da cuando al software se le cambia de
entorno (hardware o software).
Mantenimiento
perfectivo: Es cuando se mejora una
parte específica del software, aquí entra la reingeniería.
Tan sólo el 20% de
los esfuerzos de mantenimiento se invierten corriendo errores. El 80% se dedica
a adaptar los sistemas existentes a los cambios de su entorno externo, a
efectuar mejoras solicitadas por los usuarios y a rehacer la ingeniería de las
aplicaciones para su posterior utilización.
Reingeniería de software
Reingeniería
del software se puede definir como: “modificación de un producto software, o de
ciertos componentes, usando para el análisis del sistema existente técnicas de
Ingeniería Inversa y, para la etapa de reconstrucción, herramientas de
Ingeniería Directa, de tal manera que se oriente este cambio hacia mayores
niveles de facilidad en cuanto a mantenimiento, reutilización, comprensión o
evaluación.”
Cuando una aplicación lleva siendo usada años,
es fácil que esta aplicación se vuelva inestable como fruto de las múltiples
correcciones, adaptaciones o mejoras que han podido surgir a lo largo del
tiempo. Esto deriva en que cada vez que se pretende realizar un cambio se
producen efectos colaterales inesperados y hasta de gravedad, por lo que se
hace necesario, si se prevé que la aplicación seguirá siendo de utilidad,
aplicar reingeniería a la misma.
Análisis de inventarios: Aquí
es donde se recopilan cada uno de los elementos con los que se cuenta del
proyecto.
Restructuración de documentos: En esta etapa se obtiene de todos los documentos y datos sobre el
proyecto.
Ingeniería inversa: Este
es un proceso por el cual se obtiene información acerca del proceso.
Restructuración de código:
Su fine es generar un diseño que produzca la misma
función que el programa original per con mayor calidad.
Restructuración de datos:
Su principal función
es extraer elementos y objetos de datos para obtener información del flujo.
Ingeniería directa: La ingeniería directa, también llamada
renovación no solo recupera la información del diseño a partir del software
existente, si no también utiliza esta información para alterar o reconstruir el
software existente.
Ingeniería Inversa
La
ingeniería inversa tiene la misión de desentrañar los misterios y secretos de
los sistemas en uso. Consiste
principalmente en recuperar el diseño de una aplicación a partir del código.
Esto se
realiza principalmente mediante herramientas que extraen información de los datos,
procedimientos y arquitectura del sistema existente. Es aplicable a sistemas
con las siguientes características:
•Documentación
inexistente o totalmente obsoleta.
•Programación
en bloque de códigos muy grandes y/o sin estructurar.
•Inexistencia
de documentación interna en los programas, o bien ésta es incomprensible o está
desfasada.
•La
aplicación cubre gran parte de los requisitos y del rendimiento esperado.
•La
aplicación está sujeta a cambios frecuentes, que pueden afectar a parte del
diseño.
•Se prevé
que la aplicación pueda tener aún larga vida.
La ingeniería inversa puede extraer
información de diseño del código fuente, pero el nivel de abstracción, la
completitud de la documentación, el grado con el cual trabajan al mismo tiempo
las herramientas y el analista humano, y la direccionalidad del proceso son
sumamente variables.
Gestión de cambio
La gestión de cambio, más usualmente llamada “gestion de configuración
de software (GCS o GC)”.
La gestión de la configuración del software es un conjunto de
actividades de seguimiento y control que inician cuando comienza un proyecto y
terminan solo cuando este se retira de operación.
El cambio puede ocurrir en
cualquier momento, por cualquier razón. De hecho, la primera ley de la
ingeniería de sistemas afirma “”No importa donde se encuentre el ciclo de vida
del sistema, el sistema cambiara y el deseo de cambiarlo persistirá a lo largo
de todo el ciclo de vida.
Los principales orígenes de los cambios son:
-Nuevas condiciones del negocio
-Nuevas necesidades del cliente
-Crecimiento del negocio
-Restricciones presupuestales
Por otro lado las metas del gestor de configuración de son garantizar
que se siguen los procedimientos y políticas para crear, cambiar y poner a
prueba el código, así como posibilitar el acceso a la información acerca del
proyecto. Los 4 elementos de GC identificados por Susan Dart para cuando se
desarrolla un sistema son:
-Elementos de componentes
-Elementos de proceso
-Elementos de construcción
-Elementos humanos.
La mayoría de los cambios están justificados, por eso se utiliza una Línea
Base que es un concepto de GCS que ayuda a controlar el cambio sin impedir
seriamente el cambio justificable. Se define a una línea base como una
especificación o producto que se ha revisado formalmente y se está de acuerdo
con los resultados y que a partir de ahí sirve como la base para el desarrollo
ulterior y que puede cambiarse solo por medio de procedimientos formales de
control de cambio.
Elementos de configuración de
software
Un elemento de configuración de
software es información que se crea como parte del proceso de ingeniería del
software. De manera más realista, un ECS es un documento, un conjunto completo
de casos de prueba o un componente de n programa dado.
En la actualidad los ECS se conservan en dase de datos o deposito del
proyecto. El diccionario Webster define la palabra depósito como “cualquier
cosa o persona que se considera como centro de acumulación o almacenamiento”.
El depósito de ECS es el conjunto de mecanismos y estructuras de daros
que permite que un equipo de software maneje el cambio en una forma eficaz. El depósito
proporciona las funciones obvias de un sistema de base de datos como son:
-Integridad de los datos
-Compartir Información
-La integración de herramientas
-La integración de los datos
-Estandarización de los documentos.
El apoyo a la GCS requiere que el almacén o depósito contengan un
conjunto de herramientas que ofrezca soporte para las siguientes
características:
---Versiones
Conforme un proyecto progrese se crearan muchas
versiones de productos de trabajo individuales. El depósito debe ser capaz de
guardar todas estas versiones para permitir la gestión eficaz de las liberaciones
de producto y permitir que regresiones a versiones anteriores durante las
pruebas y la depuración.
Cabe mencionar el control de la versión combina
procedimientos y herramientas para la gestión de diferentes versiones por medio
de un sistema de control de versiones, este está integrado por grandes capacidades: Una base de datos del
proyecto, Una capacidad de almacenamiento de todas las versión de un objeto de
configuración y Facilidad de hechura que permite recopilar los objetos además
del seguimiento de conflictos.
---Gestión del seguimiento de la independencia y del cambio
Seguimiento de requisitos: Esta función especial ofrece
la habilidad de seguir todos los componentes y entregables de diseño y
construcción que resulten de una determinación especifica de requisitos.
Gestión de la configuración: Facilita la conservación
del rastro de una serie de configuración es que representan hitos específicos
del proyecto o liberaciones de producción
Rutas de auditoría: Una ruta de auditoría establece
información adicional acerca de cuanto, porque y por quien se hicieron los
cambios
Control de Cambio
“El arte del progreso es preservar el orden entre el cambio, y preservar
el cambio entre el orden”- Alfred North Whitehead
Para esto el control de cambio combina procedimientos humanos y
herramientas automatizadas. Esto se hace mediante el siguiente proceso.
Gestión de Calidad
El enfoque de ingeniería del software descrito en este
libro se dirige hacia una sola meta: producir software de alta calidad.
La gestión de calidad es una actividad protectora que
se aplica a lo largo del proceso de software, esta barca: un proceso de garantía
de la calidad del software, tareas especificas de aseguramiento y control de calidad, practicas efectivas del
software, control de todos los productos de trabajo, un proceso para garantizar la concordancia
con los estándares y mecanismos de medición e informe.
Calidad
Es una característica o atributo de algo, también se
refiere a características mensurables es decir cosas que se pueden comparar
para conocer estándares.
Garantía de la calidad
Esta consiste en un conjunto de funciones de auditoría
e informacion que evalúan la efectividad y que tan completas son las
actividades de control de calidad. Su meta es brindarle al gestor los datos
necesarios para que este informado acerca de la calidad del producto
Costo de
calidad
Incluye todos los costos que genera la búsqueda de
calidad o demanda el desarrollo de las actividades relacionadas con la calidad.
Estos costos se dividen en costos asociados con prevención,
evaluación y fallas por lo tanto los costos relativos aumentan sustancialmente
conforme se pasa de la prevención a detección y de los de falla a los de falla
externa.
Revisiones del
software
Las revisiones del software son un filtro para el
proceso del software. Estas se aplican en varios puntos durante la ingeniería
del software y sirven para descubrir errores y defectos que luego pueden
eliminarse además de purificar las actividades como análisis, diseño y codificación.
El objetivo principal de las revisiones técnicas formales
es describir errores durante el proceso de modo que no se conviertan en
defectos después de liberar el software.
Informe de la revisión y conservación de registros
El informe resumen de la revisión, es un formato de
una sola página. Se vuelve registro histórico del proyecto y es posible
distribuirlo en el producto, funciona como lista de verificación de elementos
de acción que guían al productor conforme se hacen las correcciones.
Normalmente al informe resumen se anexa una lista de problemas.
Los estándares
de calidad ISO 90008
Es posible definir un sistema de garantía de la
calidad como la estructura organizacional, responsabilidades, procedimientos y
recursos para implementar la gestión de la calidad.
Este estándar describe un sistema de garantía de la
calidad en términos genéricos que se aplican a cualquier negocio sin importar
los productos o servicios ofrecidos.
Plan de SQA
Este proporciona un mapa para instituir la garantía de
la calidad del software. El plan funciona como plantilla para las actividades
de SQA que se instituyan para cada proyecto de software.
El estándar recomiendo una estructura que identifica :
el propósito y el plan, una descripción de todos los productos de trabajo de ingeniería
del software, todos los estándares y practicas aplicables que se aprovechan
durante el proceso, acciones y tareas SQA, las herramientas y métodos que
soporten las acciones y tareas, procedimientos de GCS, métodos para ensamblar y
salva guardar los registros relacionados con el SQA y por ultimo papeles y
responsabilidades en la organización relativas a la calidad del producto.
Bibliografía:
Roger S.
Pressman, “INGENIERÍA DEL SOFTWARE UN ENFOQUE PRACTICO” 6ta Edición
McGrawhill.
Suscribirse a:
Entradas (Atom)