TNTConcept Beta 0.2 y anticipo de la siguiente

0
12646

TNTConcept Beta 0.2 y anticipo de la siguiente

Queridos amigos, estoy especialmente contento de poder
compartir con vosotros este tutorial sobre la  TNTConcept, «Nuestra
herramienta».

Antes de nada, compartir el porqué de la misma. Hay una
palabra que lo puede definir «Excelencia». Con esta herramienta buscamos la
excelencia tanto técnica como organizativa:

  • Técnica: La vida de muchos profesionales de la
    consultoría informática puede llegar a ser frustrante. Hacer proyectos
    siempre con prisas, con una calidad discutible, con tecnologías cambiantes y
    aprendiendo sin parar distintos modos de hacer las mismas cosas. A la larga,
    te das cuenta (yo por lo menos) de que el trabajo es efímero y el
    conocimiento esta distribuido entre decenas de personas donde nadie tiene un
    conocimiento profundo. Nosotros, en Autentia, hemos decidido que vamos a
    concentrar el conocimiento de mucha gente en un sólo sitio y aprender en
    profundidad a construir un producto basado en las últimas tecnologías del
    momento. Posteriormente el conocimiento nos servirá para industrializar el
    proceso de construcción de software ¿quién podrá competir con nosotros en
    calidad y velocidad de desarrollo? Seguro que sólo los buenos …. gente
    buena hay en todos sitios (por cierto que buscamos gente en Autentia …
    gente buena y buena gente)

  • Organizativa: Somos una empresa pequeña (15
    empleados a 15/4/2007) donde todo se mueve con mucha agilidad. Todo el mundo
    produce (hasta el personal administrativo realiza labores potencialmente
    facturable) y la jerarquía es plana. Hay de gran libertad y mucha actividad
    ¿y cómo hacemos para organizarnos y tener la «percepción» de control? Pues
    sencillo, primero definiendo unos procedimientos de calidad (tenemos la ISO
    9001:2000) y aprovechando todos los tiempos ociosos (entre cursos e
    intervenciones) en una herramienta que de soporte a estos procesos,
    eliminando al máximo los papeles y proporcionando conocimiento.

Bueno, esto suena bonito … ahora hay que hacer un buen
trabajo.

Obviamente, debemos ser sensatos y dar prioridad a los
clientes por lo que la velocidad de desarrollo de la herramienta es variable.
Voy a tratar de compartir con vosotros la esencia de la nueva versión. La
aplicación ha dado un gran salto y es momento de sacar una nueva versión. Vamos
a mezclar un poquito funcionalidad con tecnología para que esta guía pueda ser
útil para administradores del sistema y usuarios finales.

Antes que nada, contar que el modelo de datos se ha
ampliado y que existe muchos cambios internos en el código. Es vital leer
atentamente la guía de instalación, fundamentalmente para usuarios de la versión
anterior, porque hay un par de puntos a destacar.

Si ya teníais una versión instalada, lo primero que hay que
saber es que las contraseñas ya no son válidas. Hay que resetear todas las
contraseñas. La primera a resetear es la del administrador, que podrá regenernar
contraseñas para el resto de usuarios. Esto se puede hacer de un modo sencillo
con un script proporcionado (viene en la guía de instalación todo el proceso
descrito)

UPDATE User SET password=’dd94709528bb1c83d08f3088d4043f4742891f4f’
WHERE login=’admin’

Os recomiendo que guardéis el script a mano por si algún
día olvidais la contraseña de administrador y la queréis resetear a adminadmin
(aplicado directamente a la base de datos)

Podréis observar a instalar que nos lo hemos currado y que
el modelo de datos antiguo se actualiza automáticamente al nuevo, al arrancar la
aplicación, migrando todos los datos «Ya podrían aprender muchos productos
comerciales». Un consejo, siempre hacer un backup antes de este tipo de
operaciones porque «nunca se sabe»… no os fiéis nunca de nadie (ni de
nosotros).

Debemos aprender a no pulsar los botones sin
leer los mensajes … leedlos por favor.

Bueno, ya estamos en órbita, ahora vamos a ver
que se puede hacer con el nuevo juguete.

Cambio de contraseña

Como primera precaución, cambiar la contraseña de administrador. Vamos al
menú administración->usuarios. Ahora, podéis comprobar que hay dos botones en
los listados, uno para visualizar y otro para editar. En breve, lanzaremos una
nueva versión con el sistema de permisos implantado, para que en función del
perfil, se acota la funcionalidad a este nivel por usuarios (paciencia).

Pinchamos en el botón de edición y vemos que hay un nuevo icono
para generar una nueva contraseña. Esta
funcionalidad sólo esta disponible para administradores y veréis que se generar
unas bien graciosas y fáciles de recordar (aunque difíciles de predecir)

No se si os habéis dado cuenta pero ya aparecen los campos
obligatorios marcados con un *. Además, se han introducido muchos campos nuevos.
Cabe destacar algunos: fotografía, fechas relativas a contratos y departamento.
Este último es especialmente importante porque a partir de ahora, los accesos a
la información, aparte de por perfil, los datos van a poder estar restringido
por área. Ejemplo: personal de un área no tiene porque ver los objetivos de otra
(excepto directivos tal vez). Lo mismo puede aplicar a empresas, interacciones
comerciales, etc… Sólo para que os hagáis una idea, los permisos se podrán
configurar a voluntad, en base a una matriz como esta (sólo es un borrador que
podréis administrar particularmente)

Actualmente, si existe una posibilidad de limitar quien puede
acceder a qué menú (suficiente para un usuario final pero insuficiente para un
experto en seguridad). Consiste en modificar el fichero MenuBean.java (y
recompilar). El código es tal como lo veis (esto ya se podía hacer en la versión
anterior).

 

 

  public TreeNode getMenu()
  {
    // Create menu only the first time
    if( menu==null )
    {
      User role = FacesUtils.getActualUser();
      TreeNode parent;
      
      menu = new TreeNodeBase("menu", "Menu", false);
      
      parent=addNode( role, true, true, true, menu, true, "admin" );
      if( parent!=null )
      {
        addNode( role, true,  true,  true,  parent, false, "users" );
        addNode( role, true,  false, true,  parent, false, "organizations" );
        addNode( role, true,  false, true,  parent, false, "projects" );
        addNode( role, true,  false, true,  parent, false, "userCategorys" );
        addNode( role, true,  true,  true,  parent, false, "changePassword" );
        addNode( role, true,  false, true,  parent, false, "departments" );

      }
Cada entrada la explicamos en rojo:       
addNode(role,true(administrado),true(usuario),true(supervisor),parent,false,"users"(línea de menú));
 

Creación de Empleado

La creación de empleados no tiene más misterio que rellenar sus datos.
Debemos ser consciente de que para poder usar un usuario tenemos que ponerle
como activo. También debemos recordar que al desactivar a un empleado (por dejar
la empresa) debemos borrar los datos nos significativos del mismo (esto es más
operativo que técnico, para cumplir normas de LOPD y LSSI)

Alta de organización

Nuestra empresa se relacionará con otras. Las daremos de alta.
Siempre hay una primera empresa creada que es la nuestra. Cambiar los valores y
tened precaución de no borrarla porque es la que usaremos para sacar los datos
de los informes. Todas las pantallas son prácticamente iguales, disponemos de
botones para filtrar, crear nuevos elementos, ver detalle, editar y otras
funciones específicas.

Cambiamos los datos

He creado una llamada TNTConcept como demostración.

Desde el listado general de empresas, podemos dar de alta
contactos.
Obviamente sólo tiene sentido dar de alta los contactos de otras empresas porque
de las nuestra tenemos muchos más datos. En breve proporcionaremos una nueva
opción de buscador de empleados para tener separada la administración de los
datos de las búsqueda de datos de contacto (listín).

)

Proyectos

Para que podamos hacer un buen sistema de costes en una empresa,
debemos acostumbrarnos a que todo lo que hacemos en el trabajo debe estar
imputado a un proyecto. Vacaciones es un proyecto, auto-estudio es un proyecto,
labores de preventa es un proyecto …

Vamos a crear un proyecto llamado preventa a nuestra empresa
TNTConcept. Creamos un rol Comercial. Esto es importante porque a la hora
de imputar horas, distintas personas de nuestra organización pueden imputar
costes a distintas horas.

Para otro tipo de proyectos podemos introducir costes previstos,
lo que luego nos puede permitir calcular desfases entre estimaciones y
realidades (facturas)

Interacciones con empresas

Lo siguiente que podemos hacer en el día a día, es guardar todos
los contactos que vamos haciendo con distintas empresas.  Esto es la base
de un minúsculo sistema de CRM pero siempre mejor que una hoja de cálculo o una
agenda (donde la explotación de datos es casi imposible)

Podemos decir que lo que no está registrado no se ha hecho. Esta
es una de las primeras excusas que la gente pone a la hora de usar este tipo de
herramientas … es que estoy más tiempo registrando datos que haciendo mi
trabajo ….. Bueno, entre el registro de todo y de nada, hay muchos puntos
intermedios. En nuestro caso real, sólo registramos las interacciones
significativas: Primeros contactos, acuerdos de precios, no conformidades, envío
de facturas, etc. Cuanto más información registremos, más podremos explotar.

Si saltamos al menú de informes,

Veremos rápidamente la utilidad

Objetivos

Hay un antiguo dicho que cuenta «si no se sabe a donde se quiere
ir, cualquier camino es incorrecto» (no se de quién es). El tiempo me ha
demostrado que cuanto más libertad tienen las personas, más productivas son….
siempre y cuando seas capaz de medir de algún modo esa productividad y
tangibilizarla.

Una de mis partes favoritas de la herramienta es esta y consiste
en algo sencillo. Cada persona se junta con su responsable el lunes y define lo
que va a tener tangible para el viernes. Lo que está prohibido es decir «voy a
estudiar esto» «voy a investigar lo otro». En su lugar hay que decir «voy a
tener una guía de esto»… para que sea algo tangible.

Nos asignamos un objetivo. Automáticamente seleccionamos el
viernes siguiente pero podría ser cualquier otra fecha.

Y vemos el objetivo

El lunes por la mañana sabremos que todo el mundo sabe lo que
tiene que hacer esa semana.

Es posible que un objetivo se nos haya pasado de la semana en
curso por lo que aparece en la parte superior

Tenemos la opción de decir que si se había cumplido (es posible
que el viernes me fuera con prisa) Si no se cumple el objetivo no pasa nada, se
pincha la flecha y se baja, pero hay que especificar por qué.

Y el sistema te obliga a detallarlo un poco más. Con esto, lo
que se intenta es que los objetivos incumplidos sean cada vez más atómico y así
poder mandar tareas menos expertas a otro personal con más tiempo (o ganas).

Este método de planificación creedme que hace maravillas, además
vale para luego estudiar los proyectos a toro pasado y hacer mejores
planificaciones de los futuros.

Bitácora

Los objetivos nos vale para planificar el futuro y asegurarnos
que todos remamos a la par (de nuestros clientes tanto internos como externos)
pero es necesario llevar un registro diario de lo que hacemos. Este registro si
que no debe dejarse muchos días porque sino, hay que hacer luego arqueología
«creativa».

Podemos elegir las horas, proyecto, rol y si es facturable.

De este modo tan simple, podemos conseguir dar un informe de
actividad detallado a los clientes y evitar «repudio de facturas» porque al mes
el cliente te dice que no se acuerda … y si tu no eres organizado, tampoco.
Sólo imaginad los informes que podemos sacar e incluso … generar las facturas
automáticamente.

Todo esto requiere disciplina y voluntad…. y en empresas
anquilosadas, proponer este modo de trabajo … puede ser duro.

Emisión de facturas

Podemos emitir una factura desde el propio sistema, otra cosa es
que luego tengamos un programa de contabilidad financiera donde la registremos
para otros menesteres …

Podemos, en el desglose, pinchar el botón de buscar imputaciones
… y veremos que pasa

Si hubiéramos indicado en la bitácora las horas facturables,
también aparecerían en pantalla y las podríamos importar directamente.

No se si sois consciente de la simplificación del trabajo ….

Facturas recibidas

El sistema permite ir más allá y, con varios objetivos, permite
registrar las facturas recibidas:

  • Saber los impuestos pagados y recaudados

  • Saber si tenemos factura de todos los movimientos de caja y
    banco (un poco más adelante)

Asientos

El sistema nos permite dar de alta distintas cuentas bancarias
(y en breve importar movimientos en el formato estándar n43).

Todo asiento pertenece a un tipo. Este tipo debe significar algo
para nosotros (aparte de la contabilidad más formal) y siempre podría ser una
cuenta de un plan contable (aunque es otra historia).

Podemos crear más tipos, y organizarlos jerárquicamente….. que
informes más chulos nos van a salir de ingresos/gatos por periodo y tipo (más o
menos detallado) ¿verdad?

Lo suyo es dar de alta siempre un primer movimiento (asiento) de apertura
del año .. (una sola vez en Enero).

Y luego registrar los asientos diarios

De este modo automáticamente el sistema es capaz de calcular la
tesorería de la que disponemos (incluso entre distintas cuentas)

He incluso, si ocultamos los movimientos iniciales, podemos ver
la caja (tesorería) que vamos generando o destruyendo  …

Insisto ¿se os ocurren usos de esta información?

Otras funcionalidades

Bueno, si con esto no hemos sembrado vuestro interés, también
podemos decir que incluye una:

  • Pequeña gestión documental

  • Gestión de libros

  • Inventario de material interno

  • Anuncios a empleados

  • Registro de publicaciones

  • Gestión de vacaciones

Queda mucho por hacer, pero esto ya es un comienzo…. que
muchas empresas ya quieran ….

Recordad una cosa… esta es la base de la posible herramienta
que puede necesitar tu empresa y siempre mejor con nosotros … que por libre
(vamos muy deprisa).

DEJA UNA RESPUESTA

Por favor ingrese su comentario!

He leído y acepto la política de privacidad

Por favor ingrese su nombre aquí

Información básica acerca de la protección de datos

  • Responsable:
  • Finalidad:
  • Legitimación:
  • Destinatarios:
  • Derechos:
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad