Oferta de trabajo en Silverlight en Umanick

Una de las impresas que está trabajando en el espacio está buscando un perfil técnico nuevo.

La oferta de trabajo es la siguiente. Si quieres más información envíanos un email a hi@geekshubs.com

TITULO DEL PROYECTO:

Analista/Programador para desarrollar un componente o biblioteca Silverlight.

DESCRIPCIÓN DEL PROYECTO

Necesitamos desarrollar un componente Silverlight que pueda ser utilizado a su vez en el desarrollo de cualquier aplicación web utilizando C#,ASP.NET y el entorno de desarrollo Microsoft Visual Studio.

Este componente Silverlight se orientará a satisfacer las necesidades de otros desarrolladores de software que quiera integrar y desplegar funciones biométricas en sus aplicaciones web de forma rápida y fiable, sin tener que preocuparse de los detalles del manejo de dispositivos en el lado del cliente. Con el componente Silverlight se conseguirá la independencia del sistema operativo,  y un modelo ideal para incorporar de forma muy sencilla, tanto capacidades biométricas básica en cualquier aplicación web, como la captura huellas dactilares.

El componente Silverlight debe interactuar directamente, o a través de alguna capa de abstracción (a determinar por el proveedor) entre el hardware biométrico y la lógica de negocio que el desarrollador desea incluir en sus aplicaciones web; siempre de la forma más automática posible. Cuando un desarrollador añade el componente o biblioteca Silverlight a su aplicación de software, esta debe ser capaz de detectar automáticamente los dispositivos de huella dactilar presentes en el equipo cliente;  conectarse a estos directamente o atreves de una capa de abstracción; y proporcionar el acceso a todo el conjunto capacidades de adquisición biométrica que ofrezca el dispositivo.

El componente Silverlight debe proporcionar una interfaz de usuario intuitiva (UI) que simplifique el proceso de integración de la funcionalidad biométrica en las aplicaciones web. Estará diseñada para ofrecer la mayor comodidad y experiencia a los usuarios finales. Ofrecerá asistentes paso a paso para cada proceso implementado, que el desarrollador podrá configurar en un flujo personalizado en tiempo de desarrollo.

Como hemos dicho, gracias al componente Silverlight por una parte y al uso de los servicios web de UMANICK IDENTIFICATION SERVER, el desarrollador podrá integrar fácilmente en sus aplicaciones web  todos los procesos biométricos. Para comenzar, utilizando los métodos expuestos en la biblioteca/componente Silverlight, podrá solicitar/adquirir fácilmente las imágenes de las huellas dactilares del usuario que utiliza la aplicación web desde su ordenador conectado a internet. Por otra parte, la aplicación web del desarrollador, utilizara las imágenes obtenidas con los servicios de UMANICK IDENTIFICATION SEVER para llevar a cabo los procesos de enrolado o registro biométrico inicial del usuario, la generalización de patrones biométricos para aumentar la precisión del sistema, o la identificación (1:n) y verificación (1:1) de la identidad de una persona, por solo mencionar algunos. Ver más sobre UMANICK IDENTIFICATION SERVER en http://www.umanick.com/resumen-producto-para-desarrolladores/

Los dispositivos que se podrán utilizar en el lado del cliente en esta primera versión del componente únicamente serán escáneres de huella dactilar, normalmente conectados mediante interfaz USB y/o Bluetooth. En total será necesario integrar dos dispositivos de diferentes fabricantes para cada uno de los cuales existe un SDK específico y suministrado también por el fabricante. El SDK está debidamente documentado y se dará desde nuestro departamento técnico el soporte y los medios necesarios para realizar esta parte del trabajo.

TAREAS A REALIZAR POR EL PROVEEDOR

La primera tarea del proveedor será recabar los requisitos que le suministremos y realizar un análisis completo de los mismos.  Este primer análisis le permitirá esclarecer el alcance del proyecto y lo que se espera de la aplicación final. Desde nuestro departamento técnico se ofrecerá toda la información y ayuda necesaria para documentar correctamente los requisitos. También se suministrará el diseño de interfaz de usuario y guías de estilo gráfico.

A partir de los requisitos deberá aplicar las técnicas de análisis y diseño de software de acuerdo con buenas prácticas reconocidas como el diseño por contrato o el uso de patrones de diseño para dar solución a problemas recurrentes que aparecen durante esta fase del proceso de construcción del software. Conjuntamente con el análisis y diseño preliminar deberá construir (implementar) una línea base de la arquitectura fiable y con la que demuestre la viabilidad de la solución (prueba de arquitectura).

A partir de tener una arquitectura definida y probada se podrá comenzar a implementar (programación y pruebas unitarias) las diferentes características definidas en los requisitos funcionales de la aplicación. La implementación requiere el diseño e implementación de pruebas unitarias, programación de la funcionalidad requerida, ejecución de las pruebas unitarias, integración en la línea base de la aplicación, realización de pruebas de regresión, entre otras buenas prácticas de ingeniería de software.

REQUISITOS DE SISTEMA

En el desarrollo del componente se usara Silverlight 5 y como mínimo deberá funcionar sin errores de ningún tipo al incluirse en aplicaciones web desarrolladas con ASP.NET 4.5 utilizando como IDE Microsoft Visual Studio 2012. El componente debe funcionar correctamente sobre los navegadores más importantes del mercado y sus versiones más extendidas (Internet Explorer, Google Chrome, Mozilla Firefox y Safari) Los usuarios podrán utilizar el componente dentro de la aplicación web desde sus sistemas locales con cualquiera de los sistemas operativos existentes en la actualidad: Windows, Linux o MAC.

REQUISITOS DE USABILIDAD

La interfaz de usuario del componente deberá ser de forma tal que consiga minimizar al máximo el tiempo de aprendizaje de cualquier usuario, y debe ayudarle a realizar las tareas de captura de huellas dactilares en un orden adecuado. La aplicación debe adaptarse al entorno del usuario, informando respetuosamente de errores, utilizando el idioma y expresiones internacionalmente correctas. Por otra parte, la estética o estilo gráfico del componente debe poderse modificar según desee el cliente final para que se integre perfectamente en el estilo de su página web.

REQUISITOS DE ESTABILIDAD Y FIABILIDAD

El componente debe mantener un nivel bajo de errores además de que debe ser capaz de gestionarlos de la forma más transparente que sea posible y no mostrar excepciones que dan una mala impresión al usuario. Si no se puede recuperar automáticamente de un error, debe explicar lo ocurrido con un lenguaje correcto, cuidado  y sencillo, de forma que no moleste al usuario.

La información debe ser consistente todo momento por lo que se debe tener en cuenta estos casos para gestionarlos adecuadamente. Si en algún momento se produce un fragmento de información inconsistente, se debe guiar al usuario mediante mecanismos de regresión o aconsejándole las operaciones que podría llevar a cabo para retornar a un estado consistente dicho fragmento de información, siempre centrándose en el foco del problema y nunca desviando la atención.

Es necesario que la aplicación controle todas y cada una de las transacciones que se realicen. Debe encargarse de que se todas las transacciones se lleven a cabo correctamente y de forma completa. Y comprobar eficazmente que todo lo que se debió haber hecho en cualquier proceso, haya sucedido de verdad. En caso contrario, la aplicación deberá gestionar y responder a todo tipo de incidencias de una forma lógica.

REQUISITOS DE MANTENIMIENTO

La aplicación debe diseñarse de modo que sea relativamente sencillo llevar a cabo las tareas de corrección de errores, mejoras tanto de rendimiento como visuales u otro tipo de tareas relacionadas con el mantenimiento del software. Para facilitar que se lleven a cabo estas tareas, la aplicación incorporará herramientas y utilidades que ayudarán a la depuración de errores del producto, detectando, recopilando la información necesaria y facilitando la comunicación de la información sobre estos defectos para poder ser tratados por el personal de soporte de UMANICK, y/o por los desarrolladores que tengan que solventar algún error o mejorar la aplicación.

REQUISITOS DE DOCUMENTACIÓN

El código fuente deberá entregarse debidamente documentado atendiendo a las buenas prácticas y normativas de codificación del lenguaje de programación utilizado.

Guía de instalación y configuración: Documento que indique cómo debe realizarse la instalación, y una configuración que deberá tener por defecto, además de indicar cada parámetro configurable qué es y cómo afecta al sistema. Debe especificar los requisitos del sistema donde puede ser instalado y en los que funcionará de forma óptima, tanto hardware como de Sistema Operativo. También debe resumir el listado de componentes necesarios que deberán estar instalados para el buen funcionamiento del sistema.

Manual de usuario: Será necesario crear un pequeño manual de usuario, para que explique con un mínimo e detalle cómo funciona el sistema, y así facilitar su uso. Este debe incluir un glosario de términos que incluya únicamente los más técnicos y un índice.

EMPAQUETADO Y DISTRIBUCIÓN

Todos los elementos de software y documentación técnica necesaria para la puesta en marcha del componente deberán empaquetarse y facilitar su despliegue mediante un instalador.

ENTREGABLES

Los entregables del proyecto serán: documentos creados para especificar los requisitos, cualquier modelo de análisis y de diseño que sea hayan podido crear, prototipos o diseños de interfaz de usuario, casos de pruebas que se hayan diseñado, el código fuente de la aplicación incluidas las pruebas unitarias, los ejecutables, los componentes o librerías de terceros que hayan sido usados en el desarrollo, guía de instalación y configuración, manual de usuario, y cualquier otro artefacto que se haya generado durante el desarrollo por parte del proveedor.

PLAZO DE TIEMPO

El proveedor dispone de un mes de tiempo natural para realizar el trabajo.

OBSERVACIONES

Este mismo componente se podrá extender en proyectos posteriores mediante la inclusión de nuevos dispositivos de tecnología dactilar o para la inclusión de nuevas técnicas biométricas como reconocimiento facial o iris.