viernes, 28 de agosto de 2015

CONCEPTOS JAVA

QUE ES JAVA

Es un lenguaje simple de programación orientado a objetos de multiplataforma.
Java tiene una clase string, que permite un mejor que lo arrays de  terminación nula del c t c++
Java tiene un sistema automático de asignación  y liberación de memoria( recolector de basura) que mejora mucho los sistemas del c++
Java no da soporte a struct ,  union y pointer
Java no ofrece typedef ni   #define
No permite la sobre carga de operadores
No ofrece herencia múltiple

QUE TIPO DE APLICACIONES SE PUEDEN DESARROLLAR CON JAVA

Con java se pueden hacer aplicaciones de escritorio, wed, para dispositivos móviles, se pueden hacer aplicaciones nativas para programar microcontroladores . Los programas de java suelen estar en una de las siguientes categorías: apples, aplicaciones, servlets.


CUALES SON LAS DIFERENCIAS ENTRE JDK Y JRE?

-el  JRE es el entorno de ejecución de java, en otras palabras es la maquina virtual de java .
-el JDK es el completo kit de desarrollo de software para java, incluyendo la JRE. Los copiladores y las herramientas (como javaDoc, y el depurador de java) para crear y ampliar programas.

QUE ES JVM

Es una maquina virtual de proceso nativo, solo ejecutable en una plataforma específica, capar de interpretar y ejecutar instrucciones expresadas  en un código binario especial.

QUE ES IDE

es un entorno de programación que ha sido empaquetado como un programa de aplicación, en otras palabras consiste en un editor de código, un compilador, un depurador y un constructor de interfaz  gráfica. Por ejemplo tenemos Eclipse,  NetBeans, geany, CodeRun,  etc.

CUAL ES LA DIFERENCIA ENTRE UN EDITOR DE TERTO Y UN IDE?

-en un editor solo puedes escribir el código
-en un IDE se puede editar, depurar, ver errores de sintaxis

QUE ES EL GARBAGE COLLECTOR?

Es el que promueve una solución automática a la gestión de memoria  en java.

QUE ES JIT? (JUST IN TIME)

Es un compilador específico de plataforma que genera instrucciones de máquina para cada método en la primera llamada a dicho método. el compilador JIT compila código a medida que se necesita.

QUE ES API? CUAL ES LA URL DEL API DE JAVA.


CUAL ES EL COMANDO PARA COMPILAR UNA CLASE JAVA EN LA CONSOLA.

javac nombre del archive.java

CUAL ES EL COMANDO PARA EJECUTAR UNA CLASE JAVA POR CONSOLA.

Java nombre del archivo

CONCEPTOS DE POO
QUE ES PROGRAMACION ORIENTADA OBJETOS:

Define los programas en términos de “clases de objetos” que se comunican entre sí mediante el envío de mensajes 

 QUE ES HERENCIA
 
Herencia es permitir la creación de  nuevas clases basadas en clases existentes.
La clase ya existente es llamada
 superclass, o clase base, o clase padre.
La clase nueva es llamada subclase, clase derivada, o clase hija.
 


QUE ES POLIMORFIMOS


Es la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación. Un objeto Consiste en obtener un mismo método con diferentes funciones. Polimórfico es una entidad que puede contener valores de diferentes tipos durante la ejecución del programa. 

 QUE ES ENCASULAMIENTO

 Es hacer que los datos en un objeto solo puedan ser leídos o modificados por ese mismo objeto.

viernes, 20 de marzo de 2015

PROYECTOS Y TIPOS DE REQUISITOS



Facebook:
Facebook es una red social en donde se puede interactuar con otros usuarios compartir y publicar información, datos, imágenes, juegos, etc.
¿Cual es el alcance de Facebook?
El alcance de Facebook  es a nivel global y también está basado en el número de personas que puedo tener en mi Facebook

¿Cuales son los requisitos funcionales de Facebook?
Login: que permite ingresar y validar nuestra información
Lista de amigos: para ver conocer y chatear con sus amigos
Inicio: que permite ver los estados y publicaciones de los demás  y hacer tus publicaciones.
Buscar amigos: te permite buscar  contactos para agregarlos a tu lista de amigos
Salir: permite cerrar sesión, finalizar nuestras conversaciones y publicaciones.
Grupos: permite interactuar con más de un usuario y repartir ideas a más personas.
Cantidad de amigos: nos permite saber cuántos amigos tenemos
Seguridad: nos permite mantener la privacidad y nos protege ante las amenazas de hackeo
Configuración: permite cambiar nuestra información modificarla, cambiar los gráficos y poner nuestro Facebook a nuestro gusto

¿Cuáles son los requisitos  no funcionales de Facebook?
Son aquellos que complementan e Facebook pero no afectan para nada para su funcionamiento, como son:
Juegos: son conocidos como roles o juegos de habilidades.
Ayuda: permite ver y enseñarnos como funciona Facebook
Noticias: nos informa sobre diversos anuncios y lo que está pasando.
Eventos: nos comunica si hay algo importante
Lugares: nos da información  y noticias sobre lugares
Fotos
App center: nos muestra las diversas aplicaciones que tiene Facebook

¿A quién está dirigido Facebook?
 Facebook  es una pagina social  que va dirigido para todo el mundo sea persona, empresas, grupos que cumplan con el requisito que sean mayores de 13 años.

YOUTUBE
Es un sitio web en el cual los usuarios pueden subir y compartir vídeos. En la actualidad es el sitio web de su tipo más utilizado en internet.
YouTube, tiene como objeto principal permitirá las personas, empresas u organizaciones publicar vídeos en la red (esto es básicamente YouTube).

Requisitos funcionales:
El sistema deberá permitir subir y reproducir vídeos.
El sistema deberá permitir crear cuentas de usuario o utilizar las cuentas de google.
El sistema deberá permitir dar me gusta, comentar, o compartir en redes sociales por cada vídeo que se publica.
El sistema deberá permitir crear un canal y listas de reproducción (las que se desee crear) por cuenta de usuario.

Requisitos no funcionales:
El lenguaje de programación utilizado.
El tipo de interfaz gráfica utilizada.
El diseño del logo de YouTube.


WhatsApp
Es una aplicación de mensajería instantánea de pago para teléfonos inteligentes.

Requisitos funcionales
Bandeja de mensajes
Datos adjuntos
Llamadas gratis (con conexión a internet o datos)
Contactos
Bloquear contato
Fotos
Mensajería automática (dictada)

Requisitos no funcionales
Guiños
Fotos

Line
Sincroniza los contactos del celular con la aplicación, confirmando en tiempo real el envió y entrega de mensajería.
Consiste en una plata forma de publicidad con el fin de llegar a todo tipo de público y publicar eventos y promociones.

REQUISITOS FUNCIONALES
Función de llamadas gratis.
Función de mensajes gratis.
Vídeo llamadas
Función para agregar amigos
Datos adjuntos

REQUISITOS NO FUNCIONALES

Line app
Tienda de temas
Line games
Premium call


Instagram
Instagram es una red social y aplicación para compartir fotos y vídeos. Permite a los usuarios aplicar efectos fotográficos como filtros, marcos, colores retro y vinta ge, y posteriormente compartir las fotografías en diferentes redes sociales como Facebook, Tumblr, Flickr y Twitter. Una característica distintiva de la aplicación es queda una forma cuadrada a las fotografías en honor a la Kodak Instamatic y las cámaras Polaroid, contrastando con la relación de aspecto 16:9 que actualmente usan la mayoría de las cámaras de teléfonos móviles.
Está dirigido a todas las personas pero su público más activo son los adolescentes.

MS Office Word
 Es uno de los procesadores de texto, más utilizados para trabajar con documentos en la actualidad.

Requisitos funcionales
Inicio
Fuente de texto
Párrafos
Insertar (ilustraciones,  vínculos)
Encabezados y pie de página
Cuadros de texto
Elementos rápidos
Configuración de la página

Skype
Skype es un software que permite comunicaciones de texto, voz y vídeo sobre Internet. 

Requisitos funcionales
Video llamadas gratis
Mensajes instantáneos de texto y de voz
Datos adjuntos
Entrada
Salida









INTRODUCCION A LOS REQUISITOS FUNCIONALES Y NO FUNCIONALES


  ¿Qué es un requisito funcional y No funcional?

Requisito funcional: Un requisito funcional son aquellas partes del software que son necesarias para su funcionamiento, en caso de no tenerlas modifica todo su funcionamiento.

No funcional: un requisito no funcional son aquellos que complementan los funcionales, y no cambian el funcionamiento del software.

   ¿Qué es el alcance en un proyecto?
Es donde se en marca toda su ejecución del proyecto paso a paso  definiendo que se  va hacer con el proyecto y no, y su terminación.

  Partiendo de una necesidad cualquiera y sabiendo que usted será quien proporcione una solución para la misma, realice un ejemplo del alcance del software que usted construiría para dicha solución.  En este punto deberá adicionar dicha investigación a la entrada de su blog del punto (Proyectos y tipos de requisitos).

La empresa accesorias contables, posee gran cantidad de carpetas con información privilegiada de clientes importantes.
Poseen la necesidad de un programa que organice  y asegures la información de los clientes por empresas naturales o jurídicas
El alcance de este programa seria para todas las empresas con gran cantidad de clientes  que se vieran obligadas a un sistema organizacional de los clientes o todas aquellas empresas que deseen tener sistematizada toda aquella información, privilegiada de  cada uno de sus clientes.
En un sistema de información a qué hace referencia la palabra Módulo(s)
Un módulo es una parte del programa que realiza una de sus distintas funciones o varias en algunos casos.


miércoles, 18 de marzo de 2015

INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE


INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE

1.- Metodología De Desarrollo De Software 

1.1- ¿Qué es Ingeniería de Software ?
La ingeniería de software, es  el análisis previo de la situación, el diseño del proyecto, el desarrollo del software, las pruebas necesarias para confirmar su correcto funcionamiento y la implementación del sistema.

1.2 - Cual es el ciclo de vida de un software? Elabore un diagrama del ciclo de vida clásico del Software. (Hay unos más detallados que otros, elija el que entienda y descríba en sus propias palabras).
Es la forma mediante la cual se describen los diferentes pasos que se deben seguir para el desarrollo de un software, partiendo desde una necesidad hasta llegar a la puesta en marcha de una solución y su apropiado mantenimiento. 
El ciclo de vida para un software comienza cuando se tiene la necesidad de resolver un problema, y termina cuando el programa que se desarrolló para cumplir con los requerimientos, deja de ser utilizado.






1.3 - ¿Qué es una metodología de desarrollo de software?
Una metodología de desarrollo de software se refiere a una forma de trabajo o un framework que es usado para estructurar, planear y controlar el proceso de desarrollo en sistemas de información.

1.4- Clases de metodologías de desarrollo de software que existen.

  Modelo en cascada: 
Es el enfoque metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal forma que el inicio de cada etapa debe esperar a la fiscalización de la etapa anterior. Al final de cada etapa, el modelo está diseñado para llevar a cabo una revisión final, que se encarga de determinar si el proyecto está listo para avanzar a la siguiente fase. Este modelo fue el primero en originarse y es la base de todos los demás modelos de ciclo de vida.
           
 Prototipado:
permite desarrollar modelos de aplicaciones de software que permiten ver la funcionalidad básica de la misma, sin necesariamente incluir toda la lógica o características del modelo terminado.
                           
Incremental:
Provee una estrategia para controlar la complejidad y los riesgos, desarrollando una parte del producto software reservando el resto de aspectos para el futuro.  

 Espiral:
 cada etapa van evolucionando, madurando de acuerdo a cada interacción que se haga cabe recalcar que en cada interacción se desarrollará todas las etapas en orden.                                   
 RUP:
Es un proceso de desarrollo de software el cual utiliza el lenguaje unificado de modelado UML, constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos.
El RUP es un conjunto de metodologías adaptables al contexto y necesidades de cada organización. 
                                             
RAD:
consiste en un ciclo de desarrollo corto basado en tres fases (Requisitos, Diseño y Construcción) con un plazo de entrega ideal de 90 a 120 días como máximo. 
                            
 XP:
es una metodología para el ágil desarrollo de software, basada en los deseos del cliente y es regido por valores y principios . 
                                     

 Scrum:
Es una metodología de desarrollo muy simple, que requiere trabajo duro porque no se basa en el seguimiento de un plan, sino en la adaptación continua a las circunstancias de la evolución del proyecto.

sábado, 21 de febrero de 2015


CONCEPTOS BASE DE SISTEMAS DE INFORMACIÓN


PROCESO
Son secuencias de datos que al pasar por un proceso nos arrojan un resultado.

ENTRADAS A UN PROCESO
Es el proceso mediante el cual el sistema toma los datos que requiere.
SALIDA DE UN PROCESO
Es la capacidad del sistema para mostrar los datos procesados   o los datos de entrada al exterior.


ALGORITMO
Son los pasos lógicos que declaras en cierto orden de modo que la información que manejas se procese de algún modo para que el resultado sea lo que quieres.


ESTRUCTURA DE UN ALGORITMO

La estructura de u algoritmo es inicio-entrada de datos- procesamiento-salida de datos y fin.

INSTRUCCIÓN
Es una acción a realizar



PSEUDO-CÓDIGO
Palabras para la comprensión humana, que facilita convertirlas en un lenguaje de programación real.

DATOS
Es una representación simbólica.

VARIABLE
a=8
Es un símbolo que toma un valor.


TIPOS DE VARIABLE
Ø Char: son aquellas variables que poseen un único signo o símbolo.
var1=a
 



Ø Int: son aquellas variables que abarcan un número entero.

 b=2



Ø float: son aquellas variables Contienen un número decimal.
c=3.2 



Ø String: son aquellas varíeles contienen cadenas de texto  tipo Char.
d=andres
 



Ø Boolean: son aquellas variables que  solo pueden contener un 0 o un 1.
e=0 


COMO SE INICIA UNA VARIABLE EN PSEUDO-CODIGO
x=7
Una variable se inicia en pseudo-código cuando toma un valor específico.





CONSTANTE:
Es un símbolo que toma un valor fijo
#include <stdio.h>
#define PI  3.1415926
int main()
{
printf("Pi vale %f", PI);
return 0;
}
Lo cual mostrará por pantalla:
Pi vale 3.1415926

CONVENCIONES DE CODIFICACIÓN
Reglas bajo las cuales se realizan los programas



LENGUAJE DE PROGRAMACIÓN
Nos da la capacidad de darle órdenes al computador, es un lenguaje diseñado para expresar procesos.


LENGUAJE DE PROGRAMACIÓN DE BAJO NIVEL
 Es aquel que sus instrucciones ejercen un control directo sobre el hardware, este lenguaje es más ejecutor de la maquina misma.

LENGUAJE DE PROGRAMACIÓN DE ALTO NIVEL
 Es aquel permite una comunicación entre el hombre y la maquina más

 



CÓDIGO FUENTE
 Es el conjunto de líneas de texto donde está escrito las instrucciones que debe seguir la computadora para ejecutar un programa.



CÓDIGO MÁQUINA
 Son códigos interpretados por la máquina, (circuitos microprogramables.)

COMPILADOR
 Traduce el código de la fuente al lenguaje de la maquina
. 



INTÉRPRETE
 Es un programa que es capaz de analizar e interpretar programas a medida que sean necesarios.

SINTÁXIS
Es el grupo de normas que se tiene para indicarle que hacer (instrucciones), al ordenador

OPERADORES ARITMÉTICOS

 Son aquellos signos o símbolos que permiten hacer cualquier operación matemática. (suma +, resta -, multiplicación *, división /,potenciación ^.)

7*2=14
 

OPERADORES RELACIONALES
 Es la simbología que se utiliza para la comparación de los valores (<menor que, > mayor que, == igual a, <= menor que o igual a, >= mayor o igual a,  != no igual a.)

 
 17>7


OPERADORES LÓGICOS
Son aquellos que comparan términos con expresiones de verdadero o falso.


ESTRUCTURAS DE CONTROL
Permiten modificar el flujo de ejecución de las instrucciones.

If … Then … Else
Select Case For … Next Do … Loop
While … Wend
For Each … Next

PROGRAMACIÓN ESTRUCTURADA
Paradigma de programación  orientado a mejorar un programa en sus diferentes características.

PROGRAMACIÓN ORIENTADA A OBJETOS
 Es donde se relaciona los objetos entre sí para desarrollar aplicación y programas informáticos.