martes, 20 de octubre de 2009

Gestión de Riesgos

Gestión de Riesgos

Si bien la tecnología sirve como el más importante factor para casi todas las empresas, trae consigo una serie de vulnerabilidades y riesgos asociados. Dicho esto, la identificación de las vulnerabilidades y los riesgos asociados es sólo el principio. Cualquier riesgo que se identifique debe ser analizado para darle una solucion.
Dentro de la gestión de riesgos en TI se encuentran las normas ISO 27001, ISO 20000, ITIL y BS 25999 de seguridad de la información. El ISO 17799 es otra norma que define diez puntos de control para gestionar adecuadamente los sistemas de la información:
•Política de seguridad, donde se establecen las normas gerenciales en materia de seguridad.
•Organización de recursos activos de la información, para sentar las correctas bases de la gestión de la seguridad dentro de la empresa.
•Clasificación y control de activos de la información, donde se pretende inventariar los activos a proteger así el establecimiento de las correctas medidas de protección.
•Seguridad ligada al personal, donde se establecen las pautas correspondientes a la seguridad de las instalaciones físicas.
•Gestión de las comunicaciones y las operaciones, con la idea de asegurar el procesado de l información.
•Control de acceso, en el que se establecen privilegios y autorizaciones para acceder a los recursos.
•Desarrollo y mantenimiento de sistemas, que serán los recipientes principales de la gestión de la seguridad.
•Gestión de la continuidad de los negocios, donde se establecen planes de recuperación minimización del impacto ante discontinuidades en los proceso críticos de la empresa.
•Conformidad legal, donde se observa el cumplimiento con la legislación vigente según la localización de la empresa.

Aspectos a considerar en la gestión de riesgo
•Seguridad de la información
•Confidencialidad
•Integridad
•Disponibilidad y desempeño

La consolidación de una efectiva gestión de riesgos de TI requiere de un continuo ciclo de valoración y reevaluación. La planificación activa determina qué recursos necesitan ser protegidos, cuáles son exactamente las amenazas que acechan al sistema y qué puede hacer la compañía para mitigar el peligro.
Una vez identificados los puntos débiles, es necesario recurrir al plan. "En este punto necesitamos contar con un equipo de profesionales capaz de responder a cada posible emergencia en TI con planes de contingencia eficaces, ya se trate de un ataque terrorista, un virus informático o la acción malintencionada de un empleado".
Finalmente, todas las planificaciones han de ser tratadas en el marco de un proceso continuo.
También es importante poner a alguien preparado, como un director de Seguridad de la Información, o CISO (Chief Information Security Officer). Este directivo es el máximo garante de la estrategia de seguridad en el área de TI.
Pero unas rigurosas medidas de protección resultan ineficaces si los empleados no las cumplen. "El personal de la compañía necesita un constante entrenamiento en las políticas corporativas, y un exhaustivo conocimiento de las implicaciones derivadas de su incumplimiento".
Mageni puede ayudar a las organizaciones en la toma de decisiones críticas relacionadas con la seguridad de las tecnologías de planificación, estrategia y ejecución, también ayuda en la aplicación de medidas correctivas, de detección y prevención cuando sea necesario. Este servicio ayuda a las organizaciones a gestionar los riesgos cuando los conocimientos necesarios no están disponibles o tiene que ser complementado por el conocimiento de Profesionales de TI de Gestión de Riesgos. Los servicios de asesoramiento están dirigidos a ayudar a mejorar los controles de reducción del riesgo existente o añadiendo otros nuevos, lo que reduce el nivel de riesgo que enfrenta la organización.
Mageni tiene la experiencia necesaria y el apoyo de las herramientas y técnicas que le proporcionan servicios de asesoramiento global de TI.

La realidad de la Gestión de Riesgos TI
La mayoría de las compañías, administraciones autonómicas o locales y ciudadanos apenas conocen los peligros que corren sus sistemas informáticos, no explotan en su totalidad la amplia gama de herramientas que existen para gestionar dichas situaciones, y tampoco han comenzado a implementar los conocimientos y los procesos necesarios para gestionar este tipo de riesgos.
Las corporaciones han sufrido en parte, porque la gestión de riesgos TI es un campo nuevo, emergente, en donde los modelos de riesgos tradicionales no se aplican siempre con total limpieza. Normalmente, las corporaciones suelen tener un conocimiento muy limitado del impacto que puede tener la pérdida de los bienes informáticos o la imposibilidad para acceder a sus aplicaciones o información. Por ejemplo, la capacidad para transferir riesgos es un concepto fundamental en materia de riesgos financieros; sin embargo, como en los mercados líquidos no es posible todavía comprar y vender riesgos informáticos, las corporaciones deben crear sus propias competencias internas para gestionar este tipo de situaciones por sí mismas.

Asimismo, los riesgos informáticos son más difíciles de cuantificar. En TI, aún no existe el tipo de modelo actuarial o estadístico avanzado que valora los riesgos financieros para darles un nivel de precisión razonable. Sin embargo, los puntos de vista "más o menos apropiados" basados en la heurística y en la experiencia ofrecen unas medidas precisas, valiosas y utilizables de los riesgos informáticos.
Para alcanzar este modelo de evaluación de riesgos TI basado en buenas prácticas, las corporaciones deberían:
•Incrementar sus conocimientos sobre la naturaleza de los diferentes riesgos
•Determinar el impacto cuantificado de la pérdida de información o de los problemas para acceder a sus aplicaciones
•Conocer las herramientas disponibles para gestionar los riesgos informáticos
•Ajustar la gestión de riesgos TI al valor de la corporación.
•Crear una capacidad sistemática y corporativa para gestionar los riesgos a la seguridad.

Incremento de los conocimientos sobre los riesgos informáticos
Los riesgos informáticos pueden estar relacionados con la pérdida potencial de información y la recuperación de dichos datos, o bien, con el uso permanente de la información. Estas acciones abarcan las siguientes seis categorías.
•Seguridad: Es el riesgo de ver la información alterada o utilizada por personas no autorizadas mediante, por ejemplo, delitos informáticos, infracciones internas y terrorismo electrónico.
•Disponibilidad: Riesgo que se produce por la imposibilidad de acceder a la información cuando, por ejemplo, se produce un fallo en el sistema debido a cambios en la configuración, falta de redundancia en las arquitecturas informáticas, o errores humanos.
•Recuperabilidad: Riesgo que se genera cuando la información necesaria no puede recuperarse en un tiempo suficiente después de un incidente relacionado con la seguridad o la disponibilidad debido a , por ejemplo, fallos en hardware y/o en software, amenazas externas, o desastres naturales.
•Rendimiento: Riesgo que se crea cuando la información necesaria no puede suministrarse debido a, entre otros factores, arquitecturas distribuidas, picos en la demanda, o heterogeneidad en el entorno de las TI.
•Escalabilidad: Riesgo que se produce cuando las principales nuevas fuentes de demanda de información (nuevas aplicaciones, nuevas líneas de negocio) no pueden manejarse de forma rentable debido, principalmente, a crecimiento del volumen de negocio, cuellos de botella en el suministro, o a arquitecturas aisladas.
•Cumplimiento: Riesgo que se genera cuando la gestión o el uso de la información infringe los requisitos normativos. Por ejemplo, normativas gubernamentales, pautas de la dirección corporativa o políticas internas.




Ingenieria de Requerimientos

Ingeniería de requerimientos

Introducción
Hasta el día de hoy, son muchos los procesos de desarrollo de software que existen. Pero al paso del tiempo, la ingeniería de software ha introducido una diversidad de estándares para certificar la calidad, del sistema desarrollado.
La ingeniería de requerimientos juega un papel importante en el proceso de producción del software, ya que se interesa en un área fundamental. La definición de lo que se desea crear. Su principal elemento se centra en la generación de especificaciones concretas que describan con claridad, sin ambigüedades, en forma consistente y compacta el comportamiento del sistema, pretendiendo minimizar los problemas relacionados al desarrollo del software.

¿Qué es un Requerimiento?
Un requerimiento es un atributo necesario dentro de una empresa que puede representar una capacidad, una característica de tal manera que le sea útil a los clientes o a los usuarios finales

Características
Los requerimientos bien formulados deben satisfacer varias características. Si no lo hacen, deben ser reformulados hasta hacerlo.

•Necesario: Lo que pida un requerimiento debe ser necesario para el producto.
•Sin ambigüedad: El texto debe ser claro, preciso y tener una única interpretación posible.
•Conciso: Debe redactarse en un lenguaje comprensible en lugar de uno de tipo técnico y especializado.
•Consistente: Ningún requerimiento debe entrar en conflicto con otro requerimiento diferente, ni con parte de otro.
•Completo: Los requerimientos deben contener toda la información necesaria.
•Alcanzable: Un requerimiento debe ser un objetivo realista, posible de ser alcanzado con el dinero, el tiempo y los recursos disponibles.

Importancia de la Ingeniería de Requerimientos

Los principales beneficios que se obtienen de la Ingeniería de Requerimientos son:

•Permite gestionar las necesidades del proyecto en forma estructurada: Cada actividad de la IR consiste de una serie de pasos organizados y bien definidos.
•Mejora la capacidad de predecir cronogramas de proyectos, así como sus resultados: La IR proporciona un punto de partida para controles subsecuentes y actividades de mantenimiento, tales como estimación de costos, tiempo y recursos necesarios.
•Disminuye los costos y retrasos del proyecto: Muchos estudios han demostrado que reparar errores por un mal desarrollo no descubierto a tiempo, es sumamente caro; especialmente aquellas decisiones tomadas durante la RE.
•Mejora la calidad del software: La calidad en el software tiene que ver con cumplir un conjunto de requerimientos (funcionalidad, facilidad de uso, confiabilidad, desempeño, etc.).
•Mejora la comunicación entre equipos: La especificación de requerimientos representa una forma de consenso entre clientes y desarrolladores. Si este consenso no ocurre, el proyecto no será exitoso.
•Evita rechazos de usuarios finales: La ingeniería de requerimientos obliga al cliente a considerar sus requerimientos cuidadosamente y revisarlos dentro del marco del problema, por lo que se le involucra durante todo el desarrollo del proyecto.

Personal involucrado en la Ingeniería de Requerimientos
Realmente, son muchas las personas involucradas en el desarrollo de los requerimientos de un sistema. Es importante saber que cada una de esas personas tienen diversos intereses y juegan roles específicos dentro de la planificación del proyecto
Los roles más importantes son los siguientes:
•Usuario final: Son las personas que usarán el sistema desarrollado. Ellos están relacionados con la usabilidad, la disponibilidad y la fiabilidad del sistema; están familiarizados con los procesos específicos que debe realizar el software, dentro de los parámetros de su ambiente laboral. Serán quienes utilicen las interfaces y los manuales de usuario.
•Usuario Líder: Son los individuos que comprenden el ambiente del sistema o el dominio del problema en donde será empleado el software desarrollado. Ellos proporcionan al equipo técnico los detalles y requerimientos de las interfaces del sistema.
•Personal de Mantenimiento: Para proyectos que requieran un mantenimiento eventual, estas personas son las responsables de la administración de cambios, de la implementación y resolución de anomalías. Su trabajo consiste en revisar y mejorar los procesos del producto ya finalizado.
•Analistas y programadores: Son los responsables del desarrollo del producto en sí; ellos interactúan directamente con el cliente.
•Personal de pruebas: Se encargan de elaborar y ejecutar el plan de pruebas para asegurar que las condiciones presentadas por el sistema son las adecuadas. Son quienes van a validar si los requerimientos satisfacen las necesidades del cliente.

Otras personas que pueden estar involucradas, dependiendo de la magnitud del proyecto, pueden ser: administradores de proyecto, documentadores, diseñadores de base de datos, entre otros.

Ingeniería de Requerimientos
La ingeniería de requerimientos es el proceso de desarrollar una especificación de software. Las especificaciones pretender comunicar las necesidades del sistema del cliente a los desarrolladores del sistema.
La Ingeniería de Requerimientos se define como un conjunto de actividades en las cuales, utilizando técnicas y herramientas, se analiza un problema y se concluye con la especificación de una solución (a veces más de una).
Ingeniería de Requerimientos se utiliza para definir todas las actividades involucradas en la documentación y mantenimiento de los requerimientos para un producto determinado.

Actividades de la IR
•Estudio de viabilidad: Un estudio de viabilidad es a corto plazo y orientado a resolver si el sistema:
Contribuye a los objetivos de la organización
Se puede implementar con tecnología actual dentro de costo y tiempo.
Puede integrarse a otros existentes en la organización.

•Obtención y análisis de requerimientos
•Actividades del proceso
Puntos de vista
Entrevistas
Escenario
Casos de uso
Etnografía
Clasificación y organización de requerimientos
Ordenación por prioridades y negociación
Documentación
•Otras técnicas
Análisis estructurado
Prototipeo
•Validación de requerimientos
Técnicas de validación
Revisión de requerimientos
Construcción de prototipos
Generación de casos de prueba

Ciclo de vida de la IR



Ventajas
•Permite que cada paso de la IR se haga en una forma bien estructurada, organizada y con unos pasos bien definidos.
•Se disminuyen costos y retrasos o problemas con el proyecto.
•Mejoras en la calidad del software en cuento al diseño la funcionalidad y facilidad de uso que se puede hacer de este IE.
•Fácil comunicación entre el usuario y el equipo.

Conclusiones
•No existen un modelo de proceso ideal para la Ing. De requerimientos, encontrar la técnica prefecta es una utopía, pues cada técnica tiene diferentes beneficios.
•La Ing. De Requerimientos es una actividad que incluye a usuarios, equipo de trabajo, cliente, etc. Por tanto el éxito del sistema dependerá de la experiencia que tengan los involucrados.
•Es de vital importancia involucrar al cliente, en la definición de los requerimientos ya que ellos son quienes nos guían en el rumbo que debe tomar el proyecto, en fin ellos financian el proyecto.