lunes, 30 de marzo de 2015

UML

Uml



Uml o como es su acrónimo Lenguaje de modelado unificado es metodología de diseño y diagramas de sistemas / software usado a nivel internacional. Posee estándares usados a nivel mundial sobre el desarrollo de software  en la etapa de diseño. Este lenguaje permite a los arquitectos, ingenieros y programadores de software plasmar  de manera real lo que será los partes del sistema a manera de poder agilizar y facilitar el proceso de programación y codificación


Para explicar bien lo que significa uml debemos entender que es la metodología orientada a objetos, el modelado y los procesos

La metodología orientado a objeto en la programación dicta que los objetos programados interactúan entre si y estos no son mas que formas abstractas del mundo real llevados al mundo digital, si bien el ejemplo mas claro es un carro me gustaría usar el de la mesa; Una mesa en nuestro mundo posee  propiedades {cantidad de patas, material, forma, color, altura, ancho etc} y tiene acciones  como son sontener objetos, servir de apoyo etc como bien este objeto mesa tiene todas esta características en el mundo real en el mundo digital una mesa debería tener las mismas carateristicas y al interactuar con otros objetos puede usarse sus acciones ( sostener objetos por ejemplo)  o modificar algunas de sus propiedades. Esa es la metodología orientada a objetos el donde las antes llamadas variables y funciones no son mas nada que objetos y métodos que interactúan con otros realizando un fin… ¿Te recuerda algo… Teoría de Sistemas?

Bien una vez comprendido eso podemos decir que los procesos no son mas que un conjunto de acciones. En programación son llamados métodos pues estos realizando un conjunto de sentencias que tienen. Los procesos son la parte fundamental en la diagramación y planificación  del programa puesto que es muy necesario  poder describir y seguir la secuencia lógica de las acciones que realiza el proceso para no caer en la reprogramación o reestructuración del sistema

Por su parte el modelado Es la acción de diagramar y planificar desde un punto de vista una sección del sistema es decir si bien los procesos describen una secuencia de acciones y pueden llamar a otros procesos el modelado describiría una sección del sistema por ende una sección en sus procesos mas grande de un sistema, por ejemplo el modelado del sistema de refrigeración de un automóvil, si bien es parte del automóvil y es un sistema perteneciente a otro sistema mas grande el modelado seria realizar una serie de planificación y diagramación donde se explica paso a paso con un orden cronológico por procesos lo que realiza esa sección del sistema y que este modelado puede ser perfectamente unido al modelado del sistema mas grande.



Historia


Son tres los padre de uml o fundadores son 


  •         Grady Booch
  •          Ivar Jacobso
  •          james rumbaugh



  • Grady Booch  Teorizaba en 1980  que los elemetos digitales eran objetos y clases  que interactuaban entre si por lo tanto describía patrones donde los objetos interactuaban y ejecutando procesos resolviendo el problema y llegando al objetivo del sistema


  • Ivar Jacobso Con SDL (lenguaje de especificación), que se convirtió en estándar en 1967 aporto diagramas al uml donde se especifica los mensajes transmitidos entre diversas secciones del diagrama 


  • james rumbaugh aplico dentro de uml lo que despues su trabajo externo que fuer rup Proceso unificado racional procesos de descripción de objetos 








Diagramas

  • Modelado de Procesos 

  1. Diagrama de clases
  2. Diagrama de objetos
  3. Diagrama de componentes
  4. Diagrama de estructura compuesta
  5. Diagrama de paquetes
  6. Diagrama de despliegue

  • Modelado de Comportamiento 

  1. Diagrama de casos de uso
  2. Diagrama de actividades
  3. Diagrama de estado

  • Modelado de Interacción 

  1. Diagrama de secuencia
  2. Diagrama de comunicación 
  3. Diagrama de tiempo
  4. Diagrama de interacción

viernes, 27 de marzo de 2015

Programacion C# Conexion con M-accesss usando MSSQL

Introducción 

Hola hoy veremos como conectarnos con una base de datos access, este tipo de estructura de manejo de datos no dista mucho de las estructuras convencionales como msql o mssql entre otros. lo que quizás debamos tener claro es la diferencia entre bases de datos y tablas .

la bases de datos son conjuntos de elementos {tablas ,procedimientos,vistas y gatillos} que almacenan datos de manera estructurada para un fácil accesos desde cualquier lugar que tenga un manejador o controlador que pueda accesar a esos datos. Las bases de datos almacenan n cantidad  tablas que a su vez en ella se almacenan  registros con n cantidad de campos y valores,

una tabla tiene n cantidad de columnas y al almacenar elementos dentro de esa tabla se crean registros o filas en la mismas, cada fila tiene la misma cantidad n de valores que tiene la columna. Un dato importante es saber que un buen uso de las tablas es que debe existir en cada tabla un campo numérico primario unico para que cada registro sea único , irrepetible  y pueda ser accesado mas rápidamente  

Desarrollo


Empezaremos creando un archivo .accdb en access llamado labase

con la siguiente estructura y nombre de los campos




por ahora no rescataremos la data que se encuentre en la base de datos pues este post es para conectar o probar conexión.

Abriremos el vstudio  y haremos un form con dos botones uno de ellos sera para cerrar la aplicación otro para ejecutar a un método en una clase para probar la conexión


 Aparte de eso agregaremos una clase al proyecto  y en ella se tendrá un  solo metodo Tipado bool por ahora



En la parte de los llamados a los namespace que necesitares para esta clase



Dentro del metodo creamos el siguiente objeto


este objeto Conn sera el que usaremos para conectar a la base de datos.  y Dt la tabla que contendrá en un futuro los datos rescatados ( no usado ahorita en este post)

Modificamos la propiedad ConnectionString de tipo string que contienen la sentencia de conexion a la base de datos  en este caso para office 2007 en adelante


para mas información sobre conexiones a base de datos en las referencias dejare un link muy interesante a una pagina que te da las sentencias para varios motores de datos 

explicamos brevemente la sentencia de coneccion :

el "@" que se encuentra antes de la cadena nos sirve para no tente que colocar solamente \ en ves de \\ en las rutas de los archivos

provider= especificamos el controlador de oledb que nos permitirá conectar con la base de datos access

data source: indicamos la ruta o camino donde se encuentra el archivo ejemplo ="C:\nueva carpeta\data\basededatos\archivo"

persist security info=indicamos si la base de dato esta bloqueada o no   de ser cierto debemos indicar usuario y contraseña (mucha veces dentro de entorno microsoft es el mismo usuario de sesion windows el que pasamos )


en caso de uso de office 2003 tienes este y ejemplo de paso de user y password para la BD


dentro de un if verificamos si existe el archivo de existir ( true) entramos de los contrario







Dentro del if se encuentra un bloque TRY el cual contiene la accion de coneccion a DB access

una vez terminada la clase entoces pasamos al form. Dentro del form instanciamos la clase 



En el boton "Probar conexion" le creamos un evento click



Dentro del evento click hacemos todo el llamado al metodo de la clase  a su vez este esta en un bloque Try en caso de error  




si hemos hecho todo correctamente podremos probar la conexion con el archivo access con total exito =) 

FIN!

Ejemplo



Referencias

Sentencias de conexion a datos http://www.connectionstrings.com/


martes, 24 de marzo de 2015

La gran mentira sobre Nintendo Y Super Nintendo

nintendo
Todos los que alguna vez tuvieron en sus manos una consola de videojuegos Nintendo (la mayoria ) soplaron la ranura del cartucho para que el juego corriera de manera perfecta.
Este procedimiento se transformó en casi un mito urbano y quien no lo hacía podría sufrir con un juego que no se viera. Sin embargo, ¿por qué se soplaban los juegos?



El origen de esta práctica se remonta al lanzamiento de la primera NES, en donde la conexión entre juego y consola no era óptimo y comenzó el soplido de los discos.
Según diversos usuarios, esto era vital para que el juego funcionara sin ningún problema. Muchos, incluso, atribuyeron a la humedad del aliento como el conector fundamental para que la consola pudiera reconocer el cartucho de manera tal de poder jugar sin parar.
El soplido se transformó en un efecto placebo, incluso, y hacía que los jugadores creyeran que todo estaba perfecto, porque a juicio de los jugadores, se solucionaban los problemas de conexión.



Pero a pesar de todos estos mitos y creencias, la verdad es que soplaros solo hacía que la vida útil de cada uno de los juegos fuera menor. Al soplar la conexión de los cartuchos con nuestra boca introducíamos en la conexión saliva la cual ayudaba a mejorar la conexión pero hacia que la parte de cobre se sulfatara mas rápidamente y así se dañara casi todo el componente de conexión tanto el cartucho como la consola.



miércoles, 11 de marzo de 2015

Ciclo de Vida de un Sistema

Ciclo de vida de un sistema


El ciclo de vida de un sistema es todo el proceso que lleva desde que nace hasya que trabaja y muere parecido al ciclo natural del  hombre nacer, crecer, reproducirse y morir este en un sistema varia pues por decirlo asi podria haber dos etapas  la de confecciona de un sistema y su implementasion , varian y no son las misma pues cuando vemos el enfoque original de un sistema y luego como este queda  al final puede cambiar; agregándole o sustrayéndole procesos que realiza.


definiremos estoces estas dos partes en confeccion de un sistema que seria


  1. definición de necesidades 
  2. análisis
  3. diseño
  4. codificación


y en la parte de implementan contamos con ya hecho en teoria parte del sistema consideramos que no necesitamos trabajar mas y la parte principal de este ciclo que basado todo en pruebas contra la vida


  1. pruebas
  2. validación
  3. mantenimiento y evolución






  1. definición de necesidades: En esta Parte Puede ser también definida como Levantamiento de la información o por lo menos usamos en muchos caso las herramientas dadas propias de la Investigación de campo

Análisis


Después de ver las necesidades ahora confrontamos los datos recolectados para nuestro sistema contra los conocimiento de nuestra aera. Definimos empíricamente que sera el sistema, sus objetivos, sus metas. Que usaremos, Donde lo usaremos; En este punto también analizamos lo que que hay en el ambiente donde se desenvolverá el sistema que nos pueda ser útil, Analizamos las necesidades reales del cliente que muchas veces van mas alla de lo que ellos simplemente nos pide.

Podemos decir tambien que en esta area se define la:


  • la plataforma donde se desarrollara
  • la plataforma donde se ejecutara
  • si es un sistema informático el lenguaje a usar 

Diseño:


En el diceño de un sistema daré el ejemplo de un sistema informático en este caso


  • planteamos como sera la interface  visual por ejemplo desde su diceño y orden de sus
  • componentes , diseñamos los principios de la base de datos, 
  • planteamos  la sub divicion del sistema,  
  • planteamos las clases y sus usos,       
  • Como documentaremos a medida que vamos desarrollando (proximo paso)
  • diagramas de flujo del sistema


En definitiva es todo ese pre trabajo antes del trabajo para aligerar la carga que tendremos en el próximo paso.



Codificación


En esta sección. empezamos la programador como tal, Traducimos a lenguaje de progrmacion los diagramas y procesos que las etapas anteriores pudimos recopilar asi como las validaciones pertinente de los procesos y la data, basándonos en el lenguaje seleccionado en la sección  de diseño y análisis. En esta sección podemos determinar si por razones de lenguaje nuestro tiempo de producción sera mas o menos extenso de lo que previmos así como si el lenguaje nos brinda todas las herramientas necesarias para desarrollar nuestro sistema. por otra parte se pueden hacer modificaciones en el área de diseño y uso o combinación contra otras plataformas o/u lenguajes.
Se considera que esta sección del ciclo es una de las que mas peso tiene y a su vez tiene a modificar fuertemente las secciones anteriores ya sea por diversas razones (legales o  tecnológicas)





Pruebas 



Como su nombre lo dice se pone a prueba el sistema en un ambiente controlado alimentándolo con valores reales y comparando resultados contra resultados reales ya confirmados, para poder saber si hay fallas o problemas, y resolverlas a tiempo y antes del paso de validación o implementancion

A nivel de programa se le realizan la siguientes pruebas
  • Pruebas unitarias: Sirven para comprobar que cada módulo realice bien su tarea. 
  • Pruebas de interconexión: Sirven para comprobar en el programa el buen funcionamiento en conjunto de todos sus módulos. 
  • Pruebas de integración: Sirven para comprobar el funcionamiento correcto del conjunto de programas que forman la aplicación. (el funcionamiento de todo el sistema) 

Validación:

o bien llamada implementacion es la etapa del ciclo que mas costo y tiempo consume. En este proceso es donde se coloca el sistema en funcionamiento y se capacita al personal para su uso. Existen diversas formas de ponerse un sistema en funcionamiento Son las siguientes:

directo: Se abandona el sistema anterior ( de existir)y se adopta el numero imediantemente.
esto puede traer problemas y riegos a demas de no poder regresar a sistemas anteriores en la mayoría de los casos y los cambios para solventar los problemas deben hacerse en pleno funcionamiento del sistema

Paralelo: Es cuando tanto el sistema anteiror como el nuevo estan funcionando a mismo tiempo hasta que el nuevo cumpla con las espectativas o se cumpla con el proceso de entrenamiento del personal
posee muy bajo riesgo en su metodología, pero genera muchos problemas de costo y mantenimiento


Piloto. se pone a prueba el sistema en una sección aislada o parte de la organización y al completar los requisitos se implementa en general, es mucho menos costoso que el paralelo pero un  tanto mas riesgos

Fases: la implementacion del sistema se divide en parte o fases que se van  realizando a lo largo de un periodo de tiempo, sucesivamente. una vez iniciada la primera fase la segunda no se inicia hasta que se complete la primera. representa ser mas costoso por se hace mas lenta la implementacion pero es la que menos riesgo posee



Mantenimiento y Evolución


Es donde el sistema pasa la mayoría de su tiempo de vida como tal, pues en ella el sistema cumple con sus objetivos y se desenvuelve en el ambiente para el cual fue creado.

Evolución : Se busca formas de mejorar el sistema replanteando su diseño codificación y análisis, asi como adición de nuevos sub-sistemas o sub-procesos que permiten abarcar una mayor área de trabajo.

mantenimiento:  es que hagamos lo posible por no caer en errores, la actualización si el usuario tiene la necesidad de quitar o poner algo; téngase en cuenta que cuando surge mantenimiento tenemos que volver a hacer todos los pasos anteriores revisando que todas la condiciones sean favorables alrededor del sistema.



Teoria de sistemas - Analisis

La teoría de sistemas

 o teoría general de los sistemas es el estudio de múltiples disciplinas de los sistemas en general. Su objetivo es estudiar los principios aplicables a los sistemas en cualquier nivel en todos los campos de la investigación osease ciencia, filosofía o arte.

 La ciencia de sistemas observa totalidades, fenómenos, isomorfismos, causalidades circulares, y se basa en principios como la subsidiariedad, permisividad, multicausalidad, determinismo, complementariedad, y de acuerdo con las leyes encontradas en otras disciplinas y mediante el isomorfismo, plantea el entendimiento de la realidad como un complejo, con lo que logra su transdisciplinariedad, y multidisciplinariedad.

 la teoria de sistemas


segun la rae dice

1° Conjunto de reglas o principios sobre una materia racionalmente enlazados entre sí.


2°  Conjunto de cosas que relacionadas entre sí ordenadamente contribuyen a determinado objeto.



Sintetizando el tema hablamos que un sistema es un conjunto de elementos que convergen en acciones para un mismo fin, en la naturaleza podemos apreciar fuertemente un equilibrio o sistema en el cual el clima, las planta y los animales actúan para un mismo fin. A su vez también es apreciable este en el funcionamiento de un carro. tenemos el motor, la caja de cambio y el sistema de frenos Todo este conjunto de partes funciona para un mismo fin que es desplazarse del punto 'a' al punto 'b'.

Un sistema en informática  te permite procesar y almacenar datos. Este esta sub dividido en partes relacionada y entre ellos realizan un solo objetivo

un ejemplo seria los sistema de gerencia de un local el cual posee sub partes que por lo general son:

  • Facturación
  • Inventario
  • Contabilidad


Estos tres pueden funcionar por separado a simple vista pero internamente funcionan como un solo. pues facturación requiere de datos de inventario y pasa por contabilidad para los datos. Esto aplica también para el concepto de sistema operativo pues este sistema se encarga del manejo de múltiples elementos ( hardware y software) para así brindarle al usuario un ambiente manejable y con múltiples herramientas.

Característica de los sistemas

Objetivo:


Todos los sistemas tienen uno o varios objetivos para su funcionamientos, los elementos o partes u objetos que las relacionan y definen  están formadas para completar una meta(s) clara(s)


Globalismo:

Todo sistema proviene de un origen orgánico por lo cual el globalismo nos indica que todo cambio en en una parte del sistema afectara a las otras partes y a su vez todo el sistema. Esta teoria dicta que cada parte del sistema al verse relaciona entre si una accion en alguna de ella genera una reaccion en todas las partes relacionadas y modificando la forma de ejecucion o trabajo del conjunto o sistema. Esto va desde un cambio hasta material de proceso.

Entropia:

Es la tendencia que los sistemas tienen al desgaste, a la desintegración, para el relajamiento de los estándares y para un aumento de la aleatoriedad. A medida que la entropía aumenta, los sistemas se descomponen en estados más simples. La segunda ley de la termodinámica explica que la entropía en los sistemas aumenta con el correr del tiempo.A medida que aumenta la información, disminuye la entropía, pues la información es la base de la configuración y del orden.



 Homeostasis:

Es el equilibrio dinámico entre las partes del sistema. Los sistemas tienen una tendencia adaptarse con el fin de alcanzar un equilibrio interno frente a los cambios externos del medio ambiente.


Tipos De Sistemas

 Según su Constitución:


  • Sistemas conceptuales: están constituidos por conceptos que son ajenos a la realidad y que resultan meramente abstractos.

  • Sistemas físicos: los elementos que los componen, en cambio, son concretos y palpables, es decir que se los puede captar por medio del tacto.

 

Según su origen:


  • Sistemas artificiales: se caracterizan por ser producto de la creación humana, por lo que dependen de la presencia de otros para poder existir.

  • Sistemas naturales: estos en cambio, no dependen de la mano de obra del hombre para originarse.

 

 Según su movimiento:


  • Sistemas dinámicos: estos sistemas se caracterizan por presentar movimiento.
  • Sistemas estáticos: como su nombre indica, carecen de movimiento alguno.

 

 Según la complejidad de los elementos que los conforman:


  • Sistemas complejos: se caracterizan por estar compuestos por una serie de subsistemas, lo que vuelve difícil la tarea de identificar los distintos elementos que los componen.
 
  • Sistemas simples: a diferencia de los anteriores, éstos no cuentan con subsistemas, lo que permite identificar fácilmente a los elementos constitutivos de los mismos.

  Según su naturaleza:

  • Sistemas inertes: carece de vida alguna.
  • Sistemas vivos: estos, en cambio, si poseen vida.



jueves, 5 de marzo de 2015

El motor gráfico Unity 5 Listo para el combate


La nueva versión del popular motor gráfico Unity, que incluye importantes mejoras a nivel de iluminación, texturas, modelado e incluso sonido, ya puede ser descargada sin coste alguno por cualquier persona que lo desee.




Un gran punto a favor de Unity 5 es que con su versión gratuita, ahora llamadaUnity Personal, podremos comercializar nuestros proyectos sin pagar nada. Solo cuando se ganen más de cien mil dólares al año será obligatorio pagar por la versión Pro, que tiene un coste de 75 dólares al mes. En este caso, no habría necesidad de pagar royalties.




En cuanto a esta versión gratuita, incluye todas las características base del engine tal y como podéis ver en este enlace, aunque pierde algunas de las funciones extra como Unity Cloud Build Pro, el acceso al código fuente, prioridad en el servicio de soporte técnico, etc.


Unity 5 también ha concretado su compatibilidad con hasta 21 plataformasdistintas entre las que encontramos los dispositivos móviles, PC, Mac, Linux y SteamOS, las consolas de Sony y Microsoft, así como Wii U.

Esperemos que no de resultados asi:



Fuente: 3d Juegos


El CEO del motor gráfico Unity ataca el modelo de negocio de Unreal Engine 4


John Riccitiello, antaño presidente de Electronic Arts y actualmente CEO de, ha hecho públicas unas declaraciones al portal GamesIndustry en las que cuestiona la forma de operar de Unreal Engine en su nueva versión con sumodelo de negocio.

"Si eres un desarrollador de siete dígitos te puedes permitir 75 dólares al mes, pero si no lo eres y sólo quieres empezar con esto o por razones artísticas escoges ofrecerlo gratis al mundo no tienes que pagar nada por él", declaró Riccitiello sobre la vía escogida para comercializar su herramienta. "Recibes el poder completo de Unity 5 de forma completamente gratuita".

"No hay royalties, es simple", declaró Riccitiello al ser preguntado por el esquema escogido por Epic Games, al que equipara con los free-to-play. "No andamos jo**endo. Con Unity todo está capado, pagas 75 dólares al mes o 1.500 dólares por una licencia permanente. Cuando decimos que algo es gratis, es gratis. Cuando decimos que son 75 dólares al mes, son 75 dólares al mes. Sí, puedes comprar otras cosas de nuestros servicios, pero no te vamos a cobrar royalties".

Fuente 3dJuegos

NestJs Error on SecretKey for JWToken

  Imagine this you are coding happy, configuring your module has   auth.module.ts   using on your register the classic call to get env value...