Desplegando software de manera segura

El despliegue de software de manera segura implica que las características funcionales y no funcionales del software que se estas desplegando cumpla con los requisitos, he aquí la importancia de varios factores:

Los ambientes involucrados en el siclo de vida de desarrollo de software:

Antes de llegar a producción una aplicación debe pasar primero por distintos ambientes que certifiquen la calidad de software, los ambientes mas típicos por los que pasa una aplicación son el ambiente de desarrollo, el ambiente de test, el ambiente de aceptación por parte de los usuarios, el ambiente de pre producción y el ambiente de producción. Según las necesidades de cada organización se dara el caso en el que algunos de estos ambientes no sea necesario.

Para determinar si necesitamos todos estos ambientes hagamos un repaso rápido de cada uno.

El ambiente de desarrollo: es donde se crean el software y generalmente esta conformado por los ordenadores de los desarrolladores mas los servidores de desarrollo como por ejemplo los de base de datos o cualquier otro servicio.

El ambiente de test: es donde se prueban las aplicaciones por parte del equipo de QA, es donde se deben detectar todos los bugs  o incidencias funcionales y no funcionales, de manera que el software pueda llegar a producción libre de bugs y cumpliendo con todos los requerimientos funcionales.

El ambiente de aceptación: en este ambiente un grupo de usuarios prueba el software y se asegura de que funcionalmente cumple con los requisitos y con la lógica de negocio de la empresa además se comprueba que software sea usable y robusto.

El ambiente de pre producción: es el ambiente final antes de poner el software en producción, aquí las aplicaciones son probadas en condiciones de hardware muy parecidas a las de producción.

El ambiente de producción: es donde finalmente se despliegan las aplicaciones.
Seguir leyendo

Cuando usar ASP.NET MVC

El framework ASP.NET MVC fue creado por Microsoft con la idea de proveer a los desarrolladores de aplicaciones web mayor control sobre el html, crear URLs intuitivas de manera mas potente, lo cual ayuda a posicionar mejor las paginas asp.net en los motores de búsqueda, mantener el SoC (separation of concerns) de una manera mas clara y limpia de manera que las aplicaciones sean mas fáciles de mantener y extenderse,  y por ultimo y uno de los aspectos mas importante el ASP.NET MVC nos permite llevar un desarrollo guiado por pruebas (for test-driven development) facilitándonos la creación y ejecución de las pruebas unitarias.

Ahora bien la idea de ASP.NET MVC no es ser un sustituto para las tradicionales aplicaciones basadas en web forms sino aportarnos otra opción mas al momento de realizar nuestros proyectos web por lo tanto la única manera de poder decidirnos entre uno y otro es analizar sus ventajas y desventajas y en base a eso tomar nuestra decisión.
Seguir leyendo

Introducción a Scrum y por que debes usarlo

La historia de Scrum nace en japon  en 1986 debido a un estudio que esperaba desarrollar procesos exitosos en la creación de nuevos productos, pero no fue hasta 1993 cuando se realizo el primer proyecto de desarrollo de software basado en Scrum hasta que en 2001 un grupo de personas decidieron realizar el manifestó agil, cuyos fundamentos exponen lo siguiente:

  • Individuos e interacciones más que procesos y herramientas.
  • Software que funciona más que documentación exhaustiva.
  • Colaboración con el cliente más que negociación de contratos.
  • Responder ante el cambio más que seguimiento de un plan.

Seguir leyendo

Identificando lo criterios de rendimiento para la aceptación de un proyecto

reject

La aceptación de un proyecto forma parte del ciclo de vida del mismo y uno de los principales puntos a tomar en cuenta durante la aceptación de un proyecto Web es el resultado de las pruebas realizadas al mismo, entre estas pruebas están las pruebas de rendimiento, las pruebas de carga y las pruebas de estrés cada una de estas permite determinar como se comportara el sistema bajo determinadas condiciones y si este comportamiento satisface los objetivos iniciales y por supuesto satisface al usuario.

Seguir leyendo