Diferencia entre programación y codificación, rompiendo · PDF fileAusencia de...
-
Upload
nguyenliem -
Category
Documents
-
view
220 -
download
0
Transcript of Diferencia entre programación y codificación, rompiendo · PDF fileAusencia de...
Diferencia entre programación y codificación, rompiendo un
paradigma de enseñanza
Dr. Emmanuel López Neri
CIDETEC-UVM www.cidetec-uvm.com
1. Capas de Abstracción Desarrollo de Software
2. Metodologías de enseñanza programación
3. Una Metodología Orientada al Papel
1. Entender el problema
2. Verificación Estructural
3. Propuesta Algoritmo
4. Codificación
4. Herramientas de Soporte
Contenido
Capas de abstracción en el desarrollo de software
Código
Paradigmas de Programación
Paradigmas de Desarrollo de Software
HERRAMIENTAS
UML
AUML
Petri Net
DFD
SYSML
OOP
P.E
VPE: Visual y por Eventos
P.E: Programación Estructurada
MAS: Multi-Agent Systems
XT
SCRUM
HERRAMIENTAS
UML
AUML
Petri Net
DFD
SYSML
OOP
P.E
VPE: Visual y por Eventos
P.E: Programación Estructurada
MAS: Multi-Agent Systems
XT
P.E
Código
Paradigmas de Programación
Paradigmas de Desarrollo de Software
OOP
P.E
XT
SCRUM
Capas de abstracción en el desarrollo de software
Algunas Metodologías Existentes
80% CODIFICACIÓN
20% PROGRAMACIÓN
Entender el Problema
Propuesta de Algoritmo
Implementación (Santamaría, 2004)
Algunas Metodologías Existentes
USO DE PSEUDOCÓDIGO Diagrama de Flujo Código
No asociado el diagrama de flujo al código generado
Para algoritmos complejos incrementa la complejidad
(Rodríguez,1991)
(Garden City Collage,2012)
Algunas Metodologías Existentes
Diagrama de Flujo usado solo como herramienta de exposición
Algunas Metodologías Existentes
Ausencia de una metodología Clara entre DFD y Código
(Cairó,2006) (Cairó,2009)
Entender el Problema
Propuesta de Algoritmo
Implementación
La Metodología
Entender el Problema
Propuesta de Algoritmo
Verificar Validez Lógica
Verificar Validez
Estructural Implementar
1 2 3 4
Entender el Problema
Propuesta de
Algoritmo Implementación
La Metodología
Entender el Problema
Propuesta de Algoritmo
Verificar Validez Lógica
Verificar Validez
Estructural Implementar
1 3 2 4
La Metodología
Entender el Problema
Propuesta de Algoritmo
Verificar Validez Lógica
Verificar Validez
Estructural Implementar
80%
20%
PROGRAMACIÓN
CODIFICACIÓN
La Metodología:
Entender el problema
• Capacidad de Razonamiento Matemático
• Bases Matemáticas y Lógicas
1
La Metodología:
Verificar Validez Estructural
• Estructuras de Control Básicas
• Uso de Diagramas de Flujo
• Concepto de Entrada-Proceso-Salida
2
Nivel Máximo de Abstracción
La Metodología:
Verificar Validez Estructural 2
Proceso de Validación Estructural
A1
A4 A3
A2 B1
Proceso de Validación Estructural
B1
“No valido,
Estructuralmente”
El uso de Goto en embebidos
“No valido,
Estructuralmente”
“Uso preferido de Subrutinas”
La Metodología:
Programación
• Razonamiento Estructurado
• Detección de Patrones (automatizar)
3
“Divide y
Vencerás”
“Reutilizar
módulos”
La Metodología:
Programación 3
Proceso de Validación Lógica
Suma de todos los números impares que se
encuentren entre 1 y un número dado n.
La Metodología:
Implementación (Codificación)
• Sintaxis del Lenguaje
• Técnicas de Optimización
• Herramientas de Depuración
class Main {
public static void
main(String[] args) {
A;
}
}
void main ()
{
A;
}
c
4
BEGIN
A
END
Q
BA
Q
A
Y
N
Q
A
NY
A
B
Q
A
Y
N
C
B
void main () {
A;
}
If(Q) {
A;
}else{
B;
} A;
B;
while(Q){
A;
}
do{
A;
}while(Q);
for(C;Q;B){
A;
}
La Metodología:
Implementación (Codificación) 4
Codificación
A1
B1
C1
D1 E1
G1
F1
Codificación
Codificación
Codificación
Codificación
Codificación
Codificación
Proceso de Validación Estructural
Proceso de Validación Estructural
Proceso de Validación Estructural
Herramientas de soporte
Referencias
• Garden City Collage, (2012,marzo 31). Concepts of Algorithm, Flow Chart & C Programming. [archivo de video]. Recuperado de https://www.youtube.com/watch?v=DF2XAc07eI0
• Rodriguez, M.A., (1991). Metodología de Programación a través de Pseudocódigo. 1era Edición. McGraw Hill
• Santamaría, L., (2004). Metodología de programación. Principios y aplicaciones.
• Cairó, O., (2006). Fundamentos de programación. Piensa en C. Prentice Hall.
• Cairó, O., (2009).Metodología de la programación. AlfaOmega.
¿Preguntas?
Dr. Emmanuel López Neri
CIDETEC-UVM
www.cidetec-uvm.com