Sesion02 FP

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 27

Unidad I Unidad II

Fundamentos de
Programación
Fases para resolver problemas construyendo programas de
computadora

SESIÓN
Ing. Ernesto Nicho Córdova
ncordova@usat.edu.pe 02
www.usat.edu.pe
Presentación inicial

• Marcar asistencia

2
Informática y computadora (RAE)

• Informática (Ciencia de la computación): Conjunto de


conocimientos científicos y técnicas que hacen posible el
tratamiento automático de la información por medio de
ordenadores
• Computadora: Máquina electrónica, analógica o digital,
dotada de una memoria de gran capacidad y de métodos
de tratamiento de la información, capaz de resolver
problemas matemáticos y lógicos mediante la ejecución
de programas informáticos
3
Representación de la información

• Dato: Es la representación de algún hecho,


concepto o entidad real. Los datos pueden
tomar diferentes formas, por ejemplo:
palabras escritas o habladas, números,
textos, dibujos, etc. Generalmente los datos
se encuentran en mayor cantidad.
• Información: Son datos procesados y
organizados. La información es más
significativos que los datos y sirve de base
para la toma de decisiones.

4
Sistema de procesamiento de información
• Sistema:
Conjunto de cosas que relacionadas entre sí ordenadamente
contribuyen a determinado objeto.
• Representación de un sistema:

Entrada Proceso Salida

RETROALIMENTACIÓN

5
Sistema Informático
Cuando al sistema de información le damos el soporte tecnológico (hardware y
software) necesario recibe el nombre de sistema informático (Permite obtener
Información de manera automática).
• Entrada de Datos
• Salida de Información Procesamiento Almacenamiento

Base De
Datos

Capa de datos
Capa de lógica del negocio • Base de Datos
Capa de cliente
- Interfaz Gráfica de Usuario (GUI) - Programación de clases con
operaciones del negocio
- Validación de datos de entrada
- Presentación de datos de salida
6
Conceptos a diferenciar Acción de escribir códigos en un lenguaje de
programación específico.
Un programa es un
conjunto de instrucciones
escritas en algún lenguaje Programa Programar
de programación. Es la persona que se
encarga de crear los
programas.
Proceso de diseñar,
codificar, depurar y
mantener el código Programación Programador
fuente de programas Es el software que utiliza el
computacionales. programador para escribir, depurar,
documentar y ejecutar sus
programas dependiendo del
lenguaje de programación
Es el lenguaje que utiliza un Lenguaje de
IDE
programador para escribir programación
sus programas

7
Introducción a la Ingeniería de Software
Software
Software
Software (SW): Según la definición del IEEE, Software
es la suma total de programas de computadora, Manuales y
procedimientos, reglas, documentación y los datos que Documento Documentos
pertenecen a un sistema de cómputo. de Análisis Técnicos

Clasificación del software:


Programa
• Software del sistema: conjunto de programas Documento
indispensables para que el computador u otro equipo de Diseño
de computo funcione. Ejemplo: Sistema operativo,
compiladores e intérpretes, etc.
Base de
• Software de aplicaciones: conjunto de programas
Datos ….
que realizan una tarea para solucionar un problema en
concreto. Ejemplo: software de planillas, software de
matrícula, etc.

8
Introducción a la Ingeniería de Software
Ingeniería de Software
• La ingeniería de software es el estudio y aplicación de principios,
metodologías, modelos y herramientas para el desarrollo y
mantenimiento de software de calidad.
• Proceso de desarrollo de Software:
Dentro de esta etapa
encontramos la
programación

Para el desarrollo de software tenemos que elegir una Metodología de Desarrollo de


Software (Por ejemplo RUP) y utilizar modelos de calidad (Por ejemplo CMMI)
9
Resolución de problemas con computadora
La programación de computadores es un proceso que se origina en
la concepción de una idea y que continua con su adecuada
representación en estructuras lógicas que deben ser transformadas
a comandos procesables por un lenguaje de programación, su
ejecución computacional, la validación de los resultados y su puesta
en funcionamiento.

Definición Análisis Codifica_ Implanta_ Mantenimi_


Diseño del
del del ción del ción del ento del
problema programa
problema problema programa programa

10
Resolución de problemas con computadora
Definición Análisis del Diseño del Codificación del Implantación Mantenimiento
del problema problema problema programa del programa del programa

Esta etapa consiste en poder describir e interpretar una


determinada situación de la vida real, de algún sistema físico,
comercial, matemático, etc. Pueden utilizarse para ello el lenguaje
natural, las representaciones gráficas, las fórmulas, y cualquier
otro elemento que aporte a la descripción del problema.

El programador debe refinar sus habilidades de lectura, extraer


los elementos esenciales y, eventualmente, reducir el
problema de tal manera que tome solo aquellos elementos
que puedan ser llevados a una solución computacional que
responda al propósito de la situación planteada.
11
Resolución de problemas con computadora
Definición Análisis del Diseño del Codificación del Implantación Mantenimiento
del problema problema problema programa del programa del programa

Ejercicio de aplicación
• Soy un maestro de la construcción y me dedico a construir
piscinas. No sé cuánto de agua necesitaría para llenar la
piscina según el espacio donde lo realizaré.

Realizar un programa que permita calcular el volumen


de agua de una piscina

12
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación Implantación Mantenimiento
problema problema problema del programa del programa del programa

Esta fase requiere una clara definición que contemple exactamente


lo que se espera que una solución computacional logre para
satisfacer el objetivo expuesto en el problema. Para ello lo
recommendable es descomponer la situación en tres aspectos:
¿Cuál es el resultado ¿Qué entradas se ¿Qué proceso
esperado? requieren? realizaremos?
Es decir, ¿Qué clase de Es decir, ¿Qué clase de Es decir, ¿Qué método u
respuesta debería información o datos son operación puede conducir a
obtener?, ¿cuántos valores requeridos para poder la salida deseada a partir de
conforman la respuesta llegar a la respuesta los valores dados como
esperada? esperada? entrada?
13
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación Implantación Mantenimiento
problema problema problema del programa del programa del programa

Ejercicio de aplicación
Realizar un programa que permita calcular el
volumen de agua de una piscina

¿Qué proceso
¿Qué entradas se
¿Cuál es el resultado realizaremos?
requieren?
esperado? A partir de la fórmula se
Se requiere conocer las
Se debe calcular el volumen puede obtener el volumen
dimensiones de esta
del prisma rectangular que de la piscina:
piscina: largo, ancho y
representa a la piscina. volumen=largo*ancho*prof
profundidad
undidad
14
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación del Implantación Mantenimiento
problema problema problema programa del programa del programa

Una vez se tiene claridad sobre cual es el


resultado esperado, las entradas requeridas, y
las operaciones que conducirán a la solución, el
reto es ¿cómo organizar esta información para
llevarla al computador?
Para ello se organiza la secuencia de pasos que
puede llevar a la solución, esta secuencia debe
diseñarse estableciendo un principio, un fin y un
orden sin ambigüedades. A este diseño se le
conoce con la expression “algoritmo”.
15
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación del Implantación Mantenimiento
problema problema problema programa del programa del programa

Ejercicio de aplicación Diagrama de Flujo


Pseudocodigo
1. Inicio
2. Capturar las dimensiones de la piscina:
largo, ancho, profundidad
3. Volumen = largo x ancho x profundidad
4. Mostrar el volumen calculado
5. Fin
Datos de prueba para el algoritmo
Entradas Salidas
Largo Ancho Profundidad Volumen
25 10 1.5 375
16
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación Implantación Mantenimiento
problema problema problema del programa del programa del programa

En la fase de codificación, se transforma el


pseudocódigo o el diagrama de flujo a un
código de algún lenguaje de programación
como C++, Java o Python. Para esto se
emplea un entorno de desarrollo integrado (en
adelante IDE, por sus siglas en ingles,
conjunto de herramientas software que
permiten la escritura, edición y ejecución de
programas). Estos IDE varían dependiendo del
lenguaje de programación empleado.

17
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación Implantación Mantenimiento
problema problema problema del programa del programa del programa

Ejercicio de aplicación
Programación Java Programación Python

18
Resolución de problemas con computadora
Implantación
Definición del Análisis del Diseño del Codificación del Mantenimiento
problema problema problema programa del del programa
programa
La implantación se da cuando el programa ha sido probado
exhaustivamente y realiza correctamente las funcionalidades
esperadas. Entonces se instala para ponerlo en funcionamiento y al
servicio de sus correspondientes usuarios.
Esta etapa puede variar en
complejidad dependiendo del
tipo de situación.

19
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación del Implantación Mantenimiento
problema problema problema programa del programa del programa

Ejercicio de aplicación
• Para el caso del ejemplo de la piscina, la situación es tan sencilla,
que podría pensarse que con la ejecución funcional ya esta listo.
Pero en la vida real, esta situación podría ser apenas un elemento
dentro de un software mas complejo o podría requerir de todo un
plan administrativo para que entre en funcionamiento. Esta etapa
esta por fuera del alcance de este curso y, por tanto, no será
abordada.

20
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación Implantación Mantenimiento
problema problema problema del programa del programa del programa

El entorno digital cambia con el paso del tiempo, esto hace que las
necesidades cambien y que un programa se vuelva obsoleto, por
ello es necesario realizarle continuas optimizaciones.

21
Resolución de problemas con computadora
Definición del Análisis del Diseño del Codificación Implantación Mantenimiento
problema problema problema del programa del programa del programa

Ejercicio de Aplicación
Para el ejemplo de la piscina, el programa generado podría requerir
mantenimiento cuando se describa una nueva situación no
contemplada inicialmente, por ejemplo, que dentro de la piscina se
incluirá una fuente que ocupa cierto espacio, y por lo tanto la
formula para calcular el volumen del agua requiere alguna
modificación, esto solo a manera de comentario pues en este curso
no se desarrollara la etapa de mantenimiento a los programas
desarrollados.
22
Resolución de Problemas Con Computadora
Un colegio ha empezado a crecer en alumnado y
tiene muchos inconvenientes para la gestión. Esto
ha traído que muchos padres de familia se vean
afectados por la información inadecuada e
inoportuna. Proponga algunas soluciones (las que
considere más relevantes).
Analizar esta situación en base a:
• Definición del problema (describir e interpretar una determinada situación)
• Análisis del problema (describir en base a Entrada – Proceso - Salida)
• Diseño del problema (Realizar una secuencia de pasos a seguir para dar
solución al problema)
23
Conclusiones
– Para resolver un problema en concreto por medio de un
programa de computadora, se tiene que seguir todo un proceso
que tiene las siguientes fases: Análisis, Diseño, Construcción,
Pruebas e Implantación.
– La fase del análisis es una de las etapas más importante, debido
a que en esta fase debemos determinar qué hacer; es decir
determinar los datos que requerimos y la información esperada
como respuesta.
– En la etapa de diseño, es la etapa donde debemos diseñar
nuestros algoritmos. Es decir ese conjunto de acciones o pasos,
precisos, definidos y finitos que nos indican como resolver un
problema en concreto.

26
Próxima sesión

• Diseño de algoritmos
• Expresiones aritméticas y lógicas

27
Referencias

• [1] L. Joyanes, Fundamentos de Programación. Algoritmos, estructura de datos y


objetos, Cuarta ed., Madrid: McGRAW-HILL, 2008.
• [2] O. Cairó, Metodología de la programación: algoritmos, diagramas de flujo y
programas, Segunda ed., México: Ed. Alfaomega Grupo, 2003.

28
ncordova@usat.edu.pe

También podría gustarte