lunes, 4 de junio de 2012


Gestión de la configuración


Se denomina Gestión de la Configuración al conjunto de procesos destinados a asegurar la calidad de todo producto obtenido durante cualquiera de las etapas del desarrollo de un Sistema de Información (S.I.), a través del estricto control de los cambios realizados sobre los mismos y de la disponibilidad constante de una versión estable de cada elemento para toda persona involucrada en el citado desarrollo. Estos dos elementos (control de cambios y control de versiones de todos los elementos del S.I.) facilitan también el mantenimiento de los sistemas al proporcionar una imagen detallada del sistema en cada etapa del desarrollo. La gestión de la configuración se realiza durante todas las fases del desarrollo de un sistema de información, incluyendo el mantenimiento y control de cambios, una vez realizada la puesta en producción. 


Definiciones

Gestión de Configuración es el proceso de identificar y definir los elementos en el sistema, controlando el cambio de estos elementos a lo largo de su ciclo de vida, registrando y reportando el estado de los elementos y las solicitudes de cambio, y verificando que los elementos estén completos y que sean los correctos.

El propósito de la Gestión de Configuración del Software es establecer y mantener la integridad de los productos de software a través del ciclo de vida del proceso de software. 

La Gestión de Configuración del Software implica la identificación de la Configuración del software en puntos dados en el tiempo, el control sistemático de los cambios en la Configuración y el mantenimiento de la integridad y trazabilidad de la Configuración a través del ciclo de vida del software. Los productos incluidos son:

Software distribuido al cliente.
 Documentos de requerimientos del software.

Código.

Elementos requeridos para crearlos (ejemplo: el compilador)
Aspectos Funcionales 
Identificación: Se necesita definir un esquema de identificación para reflejar la estructura del producto, esto involucra identificar la estructura y clases de componentes, dando a cada uno un nombre, una identificación de versión y una identificación de Configuración.

Control: Se deben controlar los cambios que se le hacen a través del ciclo de vida, asegurando que el software sea consistente a través de la creación de una línea base del producto.

Estado: Se debe registrar y reportar el estado de los componentes y solicitudes de cambio.

Auditoria y revisión: Se debe validar que el producto este completo y se asi mantener la consistencia entre los componentes, asegurando que estén en un estado apropiado a través de todo el ciclo de vida del producto y que el mismo sea una colección bien definida de componentes.

Gestión de la Calidad del Software

La Gestión de la Calidad de Software es un conjunto de actividades de la función general de la Dirección que determina la calidad, los objetivos y las responsabilidades. Se basa en la determinación y aplicación de las políticas de calidad de la empresa. La Gestión o Administración de la Calidad se aplica normalmente a nivel empresa o dentro de la gestión de cada proyecto. El propósito de la Gestión de la Calidad del Software es entender las expectativas del cliente en términos de calidad, y poner en práctica un plan proactivo para satisfacer esas expectativas.
Desde el punto de vista de la calidad, la Gestión de la Calidad del Software (CS) está formada por 4 partes, las cuales son: (1) Planificación de la CS, (2) Control de la CS, (3) Aseguramiento de la CS y (4) Mejora de la CS.
La Planificación de la Calidad del Software (1) es la parte de la Gestión de la Calidad encargada de realizar el proceso administrativo de desarrollar y mantener una relación entre los objetivos y recursos de la organización; y las oportunidades cambiantes del mercado. El objetivo es modelar y remodelar los negocios y productos de la empresa, de manera que se combinen para producir un desarrollo y utilidades satisfactorias.
Los aspectos a considerar en la Planificación de la CS son: Modelos/Estándares de CS a utilizar, Costos de la CS, Recursos humanos y materiales necesarios, etc. El plan de calidad define los atributos de calidad más importantes del producto a ser desarrollado y define el proceso de evaluación de la calidad. En la Planificación de la CS se debe determinar: (1) Rol de la Planificación, (2) Requerimientos de la CS, (3) Preparación de un Plan de CS, (4) Implementación de un Plan de CS y (5) Preparar un Manual de Calidad.

Qué es un Sistema de Gestión de Calidad?
Es la manera cómo la organización dirige y controla las actividades de su negocio que están asociadas con la calidad. Se debe hacer un sistema NO sólo para certificación, se debe preguntar qué aspectos de la organización están asociados con la calidad.
Este sistema comprende la estructura organizacional, conjuntamente con la planificación, los procesos, los recursos, los documentos que necesitamos para alcanzar los objetivos de la organización para proveer mejoramiento de productos y servicios y para cumplir los requerimientos de nuestros clientes.

Gestión de Riesgo


La Gestión de riesgos  es un enfoque estructurado para manejar la incertidumbre relativa a una amenaza, a través de una secuencia de actividades humanas que incluyen evaluación de riesgo, estrategias de desarrollo para manejarlo y mitigación del riesgo utilizando recursos gerenciales. Las estrategias incluyen transferir el riesgo a otra parte, evadir el riesgo, reducir los efectos negativos del riesgo y aceptar algunas o todas las consecuencias de un riesgo particular.
Algunas veces, el manejo de riesgos se centra en la contención de riesgo por causas físicas o legales (por ejemplo, desastres naturales o incendios, accidentes, muerte o demandas). Por otra parte, la gestión de riesgo financiero se enfoca en los riesgos que pueden ser manejados usando instrumentos financieros y comerciales.
El objetivo de la gestión de riesgos es reducir diferentes riesgos relativos a un ámbito preseleccionado a un nivel aceptado por la sociedad. Puede referirse a numerosos tipos de amenazas causadas por el medio ambiente, la tecnología, los seres humanos, las organizaciones y la política. Por otro lado, involucra todos los recursos disponibles por los seres humanos o, en particular, por una entidad de manejo de riesgos (persona, staff, organización).

Pasos para llevar un gestión de riesgo:
Paso 1. Identificación de los riesgos y de los trabajadores expuestos 
Examinar lo que podría causar daños en el lugar de trabajo y determinar cuáles son los trabajadores que están en situación de riesgo.

Paso 2. Evaluación de riesgos y asignación de prioridades a los mismos  
Valorar los riesgos existentes (su gravedad, probabilidad, etc.) y clasificarlos por orden de prioridad.

Paso 3. Planificación de las medidas preventivas necesarias 
Determinar cuáles son las medidas adecuadas para eliminar o controlar los riesgos.

Paso 4. Adopción de las medidas
Adoptar medidas preventivas y de protección estableciendo un plan de prioridades.

Paso 5. Seguimiento y revisión 
La evaluación debe revisarse periódicamente para comprobar que las medidas funcionan o se aplican

jueves, 3 de mayo de 2012

Calidad del software:

La calidad del software es una preocupación a la que se dedican muchos esfuerzos. Sin embargo, el software casi nunca es perfecto. Todo proyecto tiene como objetivo producir software de la mejor calidad posible, que cumpla, y si puede supere las expectativas de los usuarios.

bueno en los software no existe buena o mala calidad ya que es abstracta, en los software es "tiene o no tiene calidad"

Calidad:
  • Es la cualidad de todos los productos, no solamente de equipos sino también de programas.
En el desarrollo de software, la calidad de diseño acompaña a la calidad de los requisitos, especificaciones y diseño del sistema. La calidad de concordancia es un aspecto centrado principalmente en la implementación; Si la implementación sigue al diseño, y el sistema resultante cumple con los objetivos de requisitos y de rendimiento, la calidad de concordancia es alta.
Adicionalmente se puede seguir los siguientes aspectos para evaluar la calidad del software:
  • Funcionalidad
  • Confiabilidad
  • Usabilidad
  • Eficiencia
  • Mantenibilidad
  • Portabilidad
  • Escalabilidad



COMO OBTENER UN SOFTWARE DE CALIDAD?

La obtención de un software con calidad implica la utilización de metodologías o procedimientos estándares para el análisis, diseño, programación y prueba del software que permitan uniformar la filosofía de trabajo, en aras de lograr una mayor confiabilidad, mantenibilidad y facilidad de prueba, a la vez que eleven la productividad, tanto para la labor de desarrollo como para el control de la calidad del software.
La política establecida debe estar sustentada sobre tres principios básicos: tecnológico, administrativo y ergonómico.
El principio tecnológico define las técnicas a utilizar en el proceso de desarrollo del software.
El principio administrativo contempla las funciones de planificación y control del desarrollo del software, así como la organización del ambiente o centro de ingeniería de software.
El principio ergonómico define la interfaz entre el usuario y el ambiente automatizado.
La adopción de una buena política contribuye en gran medida a lograr la calidad del software, pero no la asegura. Para el aseguramiento de la calidad es necesario su control o evaluación.

COMO CONTROLAR LA CALIDAD DEL SOFTWARE?
Para controlar la calidad del software es necesario, ante todo, definir los parámetros, indicadores o criterios de medición, ya que, como bien plantea Tom De Marco, "usted no puede controlar lo que no se puede medir".
Las cualidades para medir la calidad del software son definidas por innumerables autores, los cuales las denominan y agrupan de formas diferentes. Por ejemplo, John Wiley define métricas de calidad y criterios, donde cada métrica se obtiene a partir de combinaciones de los diferentes criterios. La Metodología para la evaluación de la calidad de los medios de programas de la CIC, de Rusia, define indicadores de calidad estructurados en cuatro niveles jerárquicos: factor, criterio, métrica, elemento de evaluación, donde cada nivel inferior contiene los indicadores que conforman el nivel precedente. Otros autores identifican la calidad con el nivel de complejidad del software y definen dos categorías de métricas: de complejidad de programa o código, y de complejidad de sistema o estructura.
Todos los autores coinciden en que el software posee determinados índices medibles que son las bases para la calidad, el control y el perfeccionamiento de la productividad.
Una vez seleccionados los índices de calidad, se debe establecer el proceso de control, que requiere los siguientes pasos:
  • Definir el software que va a ser controlado: clasificación por tipo, esfera de aplicación, complejidad, etc., de acuerdo con los estándares establecidos para el desarrollo del software.
  • Seleccionar una medida que pueda ser aplicada al objeto de control. Para cada clase de software es necesario definir los indicadores y sus magnitudes.
  • Crear o determinar los métodos de valoración de los indicadores: métodos manuales como cuestionarios o encuestas estándares para la medición de criterios periciales y herramientas automatizadas para medir los criterios de cálculo.
  • Definir las regulaciones organizativas para realizar el control: quiénes participan en el control de la calidad, cuándo se realiza, qué documentos deben ser revisados y elaborados, etc.
A partir del análisis de todo lo anterior, nuestro Centro se encuentra enfrascado en un proyecto para el Aseguramiento de la Calidad del Software (ACS), válido para cualquier entidad que se dedique a la investigación, producción y comercialización del software, el cual incluye la elaboración de un Sistema de Indicadores de la Calidad del Software, la confección de una Metodología para el Aseguramiento de la Calidad del Software y el desarrollo de herramientas manuales y automatizadas de apoyo para la aplicación de las técnicas y procedimientos del ACS, de forma tal que se conforme un Sistema de Aseguramiento de la Calidad del Software.
Soa

La arquitectura orientada a servicios de cliente (en inglés Service Oriented Architecture), es un concepto de arquitectura de software que define la utilización de servicios para dar soporte a los requisitos del negocio.
Permite la creación de sistemas de información altamente escalables que reflejan el negocio de la organización, a su vez brinda una forma bien definida de exposición e invocación de servicios (comúnmente pero no exclusivamente servicios web), lo cual facilita la interacción entre diferentes sistemas propios o de terceros.
SOA define las siguientes capas de software:
  • Aplicaciones básicas - Sistemas desarrollados bajo cualquier arquitectura o tecnología, geográficamente dispersos y bajo cualquier figura de propiedad;
  • De exposición de funcionalidades - Donde las funcionalidades de la capa aplicativa son expuestas en forma de servicios (generalmente como servicios web);
  • De integración de servicios - Facilitan el intercambio de datos entre elementos de la capa aplicativa orientada a procesos empresariales internos o en colaboración;
  • De composición de procesos - Que define el proceso en términos del negocio y sus necesidades, y que varía en función del negocio;
  • De entrega - donde los servicios son desplegados a los usuarios finales.
SOA proporciona una metodología y un marco de trabajo para documentar las capacidades de negocio y puede dar soporte a las actividades de integración y consolidación


en realidad no se casi sobre soa pero tengo que entendido que es oriantado al cliente servidor, para explicarlo mejor seria con un ejemplo asi como una pagia web que brinde servicios de facturacion, solo pedirias al servidor que te mande la consutalta y asi....

ventajas de SOA:
Reduce el nivel de acoplamiento.
Clara definición de roles de desarrollo.
Definición de seguridad más clara.
Fácil testeo.
Mejora la mantención.
Favorece la reutilización.
Favorece el desarrollo en paralelo.
Permite fácil escalabilidad.
Permite un mapeo directo entre los procesos y los sistemas.
Permite un monitoreo preciso.
Permite la interoperabilidad.

Saas:
Software como Servicio (del inglés: Software as a Service, SaaS) es un modelo de distribución de software donde el software y los datos que maneja se alojan en servidores de la compañía de tecnologías de información y comunicación (TIC) y se accede con un navegador web o un cliente fino especializado, a través de internet. La empresa TIC provee el servicio de mantenimiento, operación diaria, y soporte del software usado por el cliente. Regularmente el software puede ser consultado en cualquier computador, esté presente en la empresa o no. Se deduce que la información, el procesamiento, los insumos y los resultados de la lógica de negocio del software están hospedados en la compañía de TIC.
by wikipedia


en lo particular prefiero saas que asp pero bueno no es momento de dar mi punto de vista....
saas es un software como servicio... lo mismo que una empresa te brinda un servio para tu empresa como la asp pero en este caso es alquilada y no puedes modificar o pedir un software a tu gusto, es decir, ellos te dan un producto tu veras si lo cojes...




ventajas

  • Costo 
  • tiempo
  • innovacion continua
  • Mazima reutilizacion de documentos
  • seguridad

              



Costes

  • La inversión inicial es exactamente cero. Además, no tiene que comprar nuevos servidores, más espacio en disco ni ordenadores. SaaS utiliza los recursos que usted ya posee.
  • La realización de presupuestos resulta mucho más sencilla ya que sabe cuánto va a gastar. No habrá sorpresas que aumenten los costes inesperadamente, como nuevas versiones del software o programas que acaban fallando, ni tendrá que instalar nuevos antivirus.
  • De hecho, sus costes no sólo serán menores este año, sino durante todo el ciclo de uso del producto. En 2006, un estudio de McKinsey calculó que el TCO (coste total de la propiedad) del software en modo SaaS es un 40% inferior al del software instalado en el ordenador del cliente.

Tiempo

  • Despliegue rápido en modo de actualización continua
    Configuración y funcionamiento más rápidos gracias a que el software está disponible a través de una simple conexión a Internet.
  • Accesibilidad en línea permanente desde cualquier punto
    El hecho de que se acceda a él a través de Internet supone que el software en modo SaaS está disponible en todo momento y lugar, por lo que los empleados pueden trabajar desde cualquier punto con acceso a Internet si necesidad de tener un software individual con licencia.
  • Rápida puesta en marcha
    Ya no tendrá más problemas relacionados con la puesta en marcha del software, Trace One se encarga de todo. Además, ya puede olvidarse también de la costosa programación para personalizar el programa.

Innovación continua

  • Actualizaciones automáticas
    Trace One no deja nunca de innovar y esas innovaciones están disponibles inmediatamente, sin necesidad de reinstalar o de volver a configurar.
  • Ayuda con el cumplimiento de las normativas
    Dado que el software está diseñado para un uso profesional, tiene en cuenta los requisitos profesionales, especialmente en el campo del cumplimiento normativo, que está integrado directamente en la interfaz de usuario. El software se actualiza constantemente en función de la legislación y las normativas vigentes.

Máxima reutilización de documentos

  • Máxima reutilización de documentos
    Dado que todos los documentos están almacenados y disponibles en una ubicación central, se reducen de un modo espectacular los problemas derivados del almacenamiento de datos duplicados o de la incapacidad para encontrar información esencial. Todos los documentos válidos pueden copiarse para su reutilización, lo que minimiza el tiempo que hasta ahora se dedicaba a "reinventar la rueda".

Seguridad

  • Proporciona un alto nivel de seguridad
    El acceso a datos delicados se restringe mediante el uso de plataformas, certificados, tarjetas inteligentes y espacios de trabajo aislados. En muchos casos, el software SaaS proporciona un nivel de seguridad mayor del que la mayoría de las empresas desearían tener en el software residente en sus propias instalaciones.
ASP


Un proveedor de servicios de aplicación o ASP (del inglés, Application Service Provider) es una empresa que ofrece servicios de computación a sus clientes a través de una red. Elsoftware ofertado mediante un modelo ASP es conocido también como Software a demanda o Software como Servicio (SaaS). El sentido más restrictivo del término sería el de facilitar el acceso a un programa de aplicación (tales como gestión de relaciones con clientes), vía un protocolo estándar como HTTP. La necesidad de los ASP ha surgido a partir del aumento de costes que suponen los programas informáticos especializados, que han superado con creces el rango de precios asumibles por las pequeñas y medianas empresas. Además, la creciente complejidad de los programas informáticos ha dado lugar a enormes costes en la distribución del software hasta los usuarios finales. A través del modelo ASP, la complejidad y los costes de dicho software se pueden reducir. Además, la cuestión relativa a la actualización de dicho software se sustrae al cliente final al trasladar al ASP la responsabilidad de mantener actualizados los servicios, de apoyo técnico 24 x 7, de seguridad física y electrónica y soporte integrado de la continuidad del negocio y de trabajo flexible. La importancia de este mercado se refleja en su tamaño. A principios de 2003, las estimaciones de mercado para Estados Unidos oscilan entre 1,5 y 4 mil millones de dólares. Entre los clientes típicos de servicios ASP se incluye a empresas, organizaciones gubernamentales, organizaciones sin fines de lucro y otras organizaciones de socios.
By wikipedia


mas que todo asp es una empresa encargada de modelarte un software para su empresa la cual puede estar o no en la web, asp te da la opcion de darte o no el paquete de hosting mas que todo ellos se encargan de hacerlo y el cliente dice donde lo guardaran ya sea en su propio servidor de la empresa o no.....



ventajas de asp:
·    costos predecibles
·    experiencia especial en el asp
·    más rápido de implementar que aplicaciones adquiridas
·    niveles de desempeño garantizados
·    actualizaciones automáticas del software
·    permite a los funciona


·    disponibilidad garantizadarios de ti enfocarse en asuntos internos
·    falta de recursos internos
·    permite probar software antes de comprarlo


Tipos de Asp

Hay varias formas de negocio ASP:
  • ASP especialista o funcional que ofrece una aplicación simple, como el procesamiento de pagos con tarjeta de crédito o el cálculo del tiempo trabajado;
  • Un ASP de mercado vertical puede ofrecer una solución empaquetada para determinado tipo de cliente, como una consulta dental;
  • ASP empresarial que despliega un amplio espectro de soluciones;
  • ASP de dimensión local que ofrece a pequeñas empresas servicios en un área limitada.
Algunos analistas identifican un ASP de volumen como un quinto tipo. Se trata básicamente de un ASP especializado que ofrece una solución empaquetada de bajo costo a través de su propio sitio web. PayPal es un ejemplo de este tipo y el volumen al que opera es la manera de reducir el coste unitario de cada transacción. Además de estos tipos, algunas grandes empresas multilínea (como IBM) emplean los conceptos ASP como un modelo de negocio particular de soporte a clientes específicos..