RSS

Archivo de la etiqueta: Ingenieria de Software

Metodologías de Desarrollo de Software de Calidad y sus correspondientes lenguajes de Programación para el Análisis, Diseño, Desarrollo, Implementación y Pruebas de Aplicaciones de Calidad.

Aplicación de la Teoría General de Sistemas en el Desarrollo de Software.

Mas ideas para los Proyectos finales.

Fuente; Universidad de los Andes MSC Mario Jose Villamizar
http://www.slideshare.net/mariojosevillamizarcano

Anuncios
 
Comentarios desactivados en Aplicación de la Teoría General de Sistemas en el Desarrollo de Software.

Publicado por en 15 de octubre de 2012 en Cloud Computing, Logica Algoritmica

 

Etiquetas:

Conexión a Base de Datos desde Java Netbeans.

Continuando con el cierre de semestre les dejo la manera detallada de conectar bases de datos en sus proyectos. agradecimientos a Haroldo Diaz.

http://www.youtube.com/watch?v=10YgpASjz0U&feature=channel&list=UL

http://www.youtube.com/watch?v=1mu1N51leAs&feature=channel&list=UL

http://www.youtube.com/watch?v=zaCYREPbNqs&feature=channel&list=UL

http://www.youtube.com/watch?v=9PLU5N6Tm-Y&feature=channel&list=UL

http://www.youtube.com/watch?v=1ZsTeUNh6Jc&feature=channel&list=UL

http://www.youtube.com/watch?v=w3B3bBPxuxA&feature=channel&list=UL

Aplicación CRUD.

http://www.youtube.com/watch?v=YuzMWzgb7Sc&feature=channel&list=UL

Copie y pegue los enlaces en su navegador web y  vaya a youtube.com

 
Comentarios desactivados en Conexión a Base de Datos desde Java Netbeans.

Publicado por en 13 de octubre de 2012 en Ingenieria de Software de Calidad

 

Etiquetas:

Solo para Ingenieros de Sistemas

Solucionando algoritmos propuestos y ejercicios de algoritmos básicos

Bueno a los estudiantes de E-Business, E-Commerce, E-Marketing y Redes de Comunicación ya les llegaron las indicaciones de Semana Santa, ahora para los Ingenieros de Sistemas, les dejo estos Tips que permiten reforzar el proceso de Análisis que se requiere para resolver cualquier problema, el código esta desarrollado en Python pero es de fácil digestión.
Centren su atención en la Prueba de escritorio.

Objetivo:

Diseñar e implementar soluciones algorítmicas a enunciados propuestos.

Al finalizar la clase los estudiosos estarán en capacidad de:
Aplicar los conceptos vistos aplicados al lenguaje de programación seleccionado.
Crear soluciones probadas a problemas planteados mediante las técnicas de los algoritmos.
Aplicar el método de los 3 pasos para solucionar problemas mediante algoritmos.

Estructura de 3 pasos para el desarrollo de algoritmos básicos.
Paso 1. Identificar los datos de entrada, para asignar una variable que lo represente y en la cual se realice el proceso de lectura por el teclado.
Paso 2. Identificar los procesos y transformaciones necesarias para dar solución al planteamiento, fórmulas, procesos, operaciones numéricas, deben ser identificadas, en este paso se sugiere declarar variables para almacenar temporalmente las respuestas deseadas.
Paso 3. El último paso es mostrar los resultados pedidos. Imprimir por pantalla lo que le están solicitando.


La prueba escritorio.

Esta es una prueba que se realiza en el papel, la cual permite evaluar el algoritmo paso a paso, guardando para cada una de las variables el valor que va adquiriendo y al final muestra cual fue el comportamiento y cual fue el resultado que el algoritmo entrego ante los datos ingresados.

1. Se deben enumerar todas las lineas que conforman el algoritmo desde la uno en adelante de forma consecutiva.
2. Se debe dibujar una tabla con tantas filas como líneas tenga el algoritmo y tantas columnas como variables tenga se debe agregar una última columna que represente a la pantalla del sistema.
3. A cada columna se asigna una variable y la última se destina para la pantalla.
4. Se ejecuta paso por paso, cada una de las instrucciones y se va colocando el resultado que generan en la fila y columna correspondiente.
5. La prueba termina cuando se termina de ejecutar la última línea que conforma el algoritmo.

Este proceso es simulado, pero basado en el algoritmo real de forma que solo se inventan datos de entrada cuando se supone que es el usuario que debe ingresarlos, en otro caso hay que limitarse a lo que la instrucción hace y no inventar nada ceñirse a la realidad.    

Ejemplo completo.

Construir un programa que permita solucionar una ecuación de la forma ax2+bx+c=0 aplicando el concepto de la fórmula cuadrática.
Este es el código fuente del algoritmo construido

#Este ejercicio resuelve un sistema mediante la formula cuadratica
1  a=float(input(“Digite el valor para a: “)) ejecutada
2  b=float(input(“Digite el valor para b: “)) ejecutada
3  c=float(input(“Digite el valor para c: “)) ejecutada
4  x1=(-b+(b**2-4*a*c)**(1/2))/2*a ejecutada
5  x2=(-b-(b**2-4*a*c)**(1/2))/2*a ejecutada
6  print(“la raiz 1 es: “,x1) ejecutada
7  print(“la raiz 2 es: “,x2)

Esta es la prueba escritorio realizada

Linea a b c x1 x2 Pantalla
1 2 Digite el valor para a: 2
2 6 Digite el valor para b: 6
3 1 Digite el valor para c: 1
4 -0.7084
5 -11.2915
6 La raíz 1 es:  -0.7084
7 La raíz 2 es: -11.2915

Vídeo que explica la solución al problema.

Este es el vídeo de la prueba escritorio del problema

 

 

 
Comentarios desactivados en Solo para Ingenieros de Sistemas

Publicado por en 30 de marzo de 2012 en Ingenieria de Software de Calidad

 

Etiquetas:

VB .NET Genera numeros aleatorios y valida ingreso de numeros

Generar Número aleatorio

Este es un simple ejemplo para generar números aleatorios en Visual basic usando la función Randomize y Rnd

A la función ” Aleatorio “, se le debe enviar en el primer parámetro el valor Mínimo y en el segundo el valor máximo del rango para generar el número aleatorio.

Colocar un CommandButton, y dos textbox ( text1 para el minimo y text2 para el máximo )

Código fuente en un Form:

 

  1. Option Explicit
  2. ‘Función que devuelve el número aleatorio
  3. ”””””””””””””””””””””””””””
  4. Private Function Aleatorio(Minimo As Long, Maximo As Long) As Long
  5.     Randomize ‘ inicializar la semilla
  6.     Aleatorio = CLng((Minimo – Maximo) * Rnd + Maximo)
  7. End Function
  8. Private Sub Command1_Click()
  9.     If Len(Text1) <> 0 And Len(Text2) <> 0 Then
  10.         ‘generar un número
  11.         MsgBox Aleatorio(CLng(Text1), CLng(Text2)), vbInformation
  12.     End If
  13. End Sub
  14. Private Sub Form_Load()
  15.     Text1 = “”
  16.     Text2 = “”
  17. End Sub
  18. Private Sub Text1_KeyPress(KeyAscii As Integer)
  19.     If Not IsNumeric(Chr(KeyAscii)) And KeyAscii <> 8 Then
  20.        KeyAscii = 0
  21.     End If
  22. End Sub
  23. Private Sub Text2_KeyPress(KeyAscii As Integer)
  24.     If Not IsNumeric(Chr(KeyAscii)) And KeyAscii <> 8 Then
  25.        KeyAscii = 0
  26.     End If
  27. End Sub

 

 
Comentarios desactivados en VB .NET Genera numeros aleatorios y valida ingreso de numeros

Publicado por en 26 de febrero de 2012 en Ingenieria de Software de Calidad

 

Etiquetas:

Repaso. Solo para Ingenieros

Lea este Programa que se encuentra en C con apuntadores,  analicelo, interpretelo, corrijalo y hagalo correr en el ultimo Lenguaje de Programacion ( C++ Java Consoloa Java Swing C# VB.net PHP JavaScript Access etc )   que aprobo en su Universidad  y por ultimo haga un Diagrama de Flujo en PseInt.

Tiempo de realización 2 días, los 2 días son el 100%  si se demora menos saque la regla de 3 simple que determine en que  porcentaje se encuentra de acuerdo a sus conocimientos y cuénteme en http://www.twitter.com/JorgePortella,  cual es su porcentaje.

____________________________________________________________________________________________________________

 

#include

#include

//Creacion de la estructura

struct Alumno

{

char mat[8];

char nom[15];

float cal;

int sem;

};

//Prototipo de las funciones

void altas(struct Alumno A[50], int *n);

void consultag(struct Alumno A[50], int n);

void consultap(struct Alumno A[50], int n);

void ordena(struct Alumno A[50], int n);

void modifica(struct Alumno A[50], int n);

void bajas(struct Alumno A[50], int *n);

int busca(struct Alumno A[50], int n);

void imprime(struct Alumno A, int n);

// Programa principal

int main()

{

struct Alumno al[50];

int opc, na=0;

do

{

printf(“Menu de opciones n”);

printf(“1. Altas n”);

printf(“2. Consulta general n”);

printf(“3. Consulta particular n”);

printf(“4. Modificacionesn”);

printf(“5. Bajasn”);

printf(“6. Ordenacionn”);

printf(“7. Salirn”);

printf(“Que opcion quieres “);

scanf(“%d”,&opc);

switch(opc)

{

case 1: altas(al, &na);

break;

case 2: consultag(al,na);

break;

case 3: consultap(al,na);

break;

case 4: modifica(al, na);

break;

case 5: bajas(al, &na);

break;

case 6: ordena(al, na);

break;

case 7;

break;

default: printf(“Errooorr”);

}

}

while(opc!=7);

return 0;

}

//Altas de la estructura

void altas (struct Alumno A[50], int *n)

{

float temp;

printf(“Matricula “);

scanf(“%s”,A[*n].mat);

printf(“Nombre “);

scanf(“%s”,A[*n].nom);

printf(“Calificacion “);

scanf(“%f”,&temp);

A[*n].cal=temp;

printf(“Semestre “);

scanf(“%d”,&A[*n].sem);

(*n)++;

}

// impresion de la estructura

void imprime (struct Alumno A, int n)

{

printf(“Matricula %s n”, A.mat);

printf(“Nombre %sn”,A.nom);

printf(“Calificacion %.2fn”,A,cal);

printf(“Semestre %dn”,A.sem);

}

// Consulta general

void consultag(struct Alumno A[50], int n)

{

int x;

for(x=0;x

imprime(A[x]);

}

// Funcion de busqueda en la estructura

int busca(struct Alumno A[50], int n)

{

int pos=-1,y;

char matb[8];

printf(“Da la matricula que busca “)

scanf(“%s”,matb);

for(y=0;y

{

if(strcmp(matb,A[y].mat)==0)

{

pos=y;

break;

}

}

if(pos==-1)

printf(‘El dato no se encontro “);

return pos;

}

//Funcion de consulta particular

void consultap(struct Alumno A[50], int n)

{

int p;

p=busca(A,n);

if (p!=-1)

imprime(A[p]);

}

// Funcion de modificaciones en estructuras

void modifica(struct Alumno A[50], int n)

{

int p,op;

float temp;

p=busca(A,n);

if(p!=-1)

{

printf(“Datos a modificarn”);

printf(“1. Nombre n”);

printf(“2. Calificacion n”);

printf(“3. Semestre n”);

printf (“4. Ninguno n”);

printf (“Que dato quieres modificar “);

scanf(“%d”,&op);

switch(op)

{

case 1: printf(“Nuevo nombre “);

scanf(“%s”,A[p].nom);

break;

case 2: printf(“Nueva calificacion “);

scanf(“%f”,&temp);

A[p].cal=temp;

break;

case 3: printf(“Nuevo semestre “);

scanf(“%d”,&A[p].sem);

break;

}

}

// Funcion de bajas,

void bajas(struct Alumno A[50], int *n)

{

int p,y;

p=busca(A,*n);

if (p!=-1)

{

(*n)–;

for(y=pos;y<*n;y++)

A[y]=A[y+1];

}

}

// Funcion de ordenacion

void ordenar(struct Alumno A[50], int n)

{

int a,b;

struct Alumno t;

for(a=1;a

for(b=0;b

if(strcmp(A[b].nom,A[b+1].nom)>0)

{

t=A[b];

A[b]=A[b+1];

A[b+1]=t;

}

}

 
Comentarios desactivados en Repaso. Solo para Ingenieros

Publicado por en 11 de enero de 2012 en Ingenieria de Software de Calidad

 

Etiquetas:

NetBeans IDE 7.1 Now Available for Download

Prueben-lo y me cuenta, como siempre las primeras versiones vienen en ingles, pero a estas alturas eso no importa.
Recuerden todos leemos en ingles.

NetBeans IDE 7.1 – The Smarter Way to Code!

 
Comentarios desactivados en NetBeans IDE 7.1 Now Available for Download

Publicado por en 7 de enero de 2012 en Generalidad, Ingenieria de Software de Calidad

 

Etiquetas: ,

Inicio Semestre 2012 Ingenieria de Sistemas.

Bienvenidos.

Les dejo este enlace a la Web que seguiremos este semestre.

http://www.carlospes.com/

Cordialmente,

Jorge Portella Ing. Esp. en Ingeniería de Sistemas

jorgeportella@ingenieros.com

in constant motion.

 
Comentarios desactivados en Inicio Semestre 2012 Ingenieria de Sistemas.

Publicado por en 6 de enero de 2012 en Ingenieria de Software de Calidad

 

Etiquetas:

 
A %d blogueros les gusta esto: