Formulación Lógica de programa
Software de computadora * Se refiere a todos los programas o rutinas de computadora que dirigen y controlan el hardware de la computadora en el desempeño de sus funciones de procesamiento de datos.
Principales categorías de Software • Software de aplicación * Software de sistema
Software de aplicación * Un software que realiza una tarea específica para los usuarios de computadoras (por ejemplo, Procesamiento de textos).
Software del sistema * Un software diseñado para ayudar a los programadores o para controlar el sistema informático (p. ej. OS; herramientas de programación: traductores, depuradores, editores).
Análisis de sistemas * El equivalente de edad computacional del método científico. * En el análisis de sistemas, se define y analiza el problema y se recomiendan soluciones a la administración. * Este proceso se ha formalizado y se ha denominado Método de Análisis y Diseño de Sistemas.
Definición del sistema * Una colección de personas, máquinas, & métodos organizados para lograr un conjunto de funciones específicas. * Un todo integrado que se compone de estructuras y subfunciones diversas, interactivas y especializadas. * Un grupo de subsistemas unidos por alguna interacción o interdependencia, que realizan muchas tareas pero funcionan como una sola unidad.
Basado en computadora ES • Un sistema de información basado en computadora que se ajusta a las tres definiciones. Involucra a personas, máquinas y métodos (procedimientos & datos); se comporta como un todo integrado; y la mayoría de los sistemas de información se componen de un grupo de subsistemas.
Teoría General de Sistemas • Proporciona otra forma de definir un sistema, como una colección de entradas, salidas y actividades de procesador con retroalimentación, un límite y un entorno.
Analista de sistemas * Una persona capacitada en el análisis de sistemas empresariales complejos, que normalmente implican un sistema de información basado en computadora.
Ciclo de vida de Desarrollo de sistemas * El SDLC se utiliza para describir los pasos o fases por los que pasa un sistema desde el momento en que se concibe hasta que deja de existir. * Los nombres y el número de fases en el ciclo de vida de un sistema varían según las diferentes industrias, organizaciones con industrias, & analistas de sistemas.
Ciclo de Vida de Desarrollo de Sistemas 1. Identificación de problemas, oportunidades, objetivos 2. Determinación de los requisitos de información 3. Análisis de necesidades del sistema 4. Diseño del sistema recomendado 5. Desarrollo y documentación del software 6. Pruebas y mantenimiento del sistema 7. Implementación & evaluación del sistema
Notas sobre SDLC•
• *
La identificación de estas fases proporciona un marco para controlar, estimar y observar la evolución de un sistema. Cada fase produce documentación, w / c es información escrita o pictórica que describe el sistema. A su vez, esta documentación constituye la base de un examen de la gestión que determina si el proyecto debe pasar a la siguiente fase.
Proceso de desarrollo de software * En este proceso, las necesidades del usuario se traducen en requisitos de software; los requisitos de software se transforman en diseño; el diseño se implementa en código; y el código se prueba, documenta y certifica para su uso.
Notas sobre Desarrollo de Software *
Diseño de software de arriba hacia abajo: El proceso de diseñar un programa identificando primero sus componentes principales, que se llaman módulos; luego descomponiéndolos en componentes de nivel inferior.
•
Tutorial de programa estructurado: Un método de inspección de programa en el que se presenta un segmento de diseño o código para interrogarlo; comentarios sobre técnica, estilo, posibles errores, desviación de los estándares, & otros problemas.
Notas sobre Desarrollo de software *
Prueba Alfa: Un estado del programa durante el recorrido de código estructurado.
*
Prueba Beta: El software no está certificado ni aprobado para uso rutinario hasta que haya sobrevivido a este tipo de prueba. – Las pruebas beta son realizadas por usuarios que aceptan el estado de pioneer asociado con ser usuarios primerizos.
Categorías de documentación 1. Documentación de diseño * Contiene diagramas de flujo de datos; requisitos funcionales, de rendimiento, de almacenamiento de datos &; informes de gestión &.
2. Documentación de programación * Utilizada por técnicos para definir la arquitectura de un sistema de información.
3. La documentación del usuario * Consiste en capacitación, operaciones, & manuales de referencia que describen cómo usar el sistema.
Fase de instalación * Fase en la que un sistema se integra en su entorno operativo y se prueba para garantizar que funciona según sea necesario. * Poner el sistema en uso por las personas que deben administrarlo y mantenerlo. * Las personas deben ser entrenadas, se deben instituir nuevos procedimientos, & el sistema se debe «sacudir» a fondo para eliminar cualquier error o deficiencia.
Métodos de conversión * * * *
Programación en fase Piloto Paralela directa
* Programa-Lista de instrucciones de computadora necesarias para llegar a los resultados deseados.
* Algoritmo: Una lista paso a paso de instrucciones para resolver un problema. – Un procedimiento expresado con precisión para obtener la solución del problema.
Programación * Lenguaje de programación: Una notación formalizada que permite que los algoritmos se presenten de una manera rigurosa y precisa. – Tipos: lenguaje de máquina, lenguaje ensamblador, lenguaje de alto nivel, lenguaje de muy alto nivel (o 4GL)
Programación * El algoritmo se puede expresar a través de: – Diagrama de flujo • Un sistema de símbolos para expresar algoritmos; indica el flujo de control/secuencia de operaciones.
– Pseudocódigo * Una representación textual de un algoritmo; cercana al lenguaje natural; se convierte en parte de la documentación del programa.
Programación * Símbolos de diagrama de flujo del programa * Instrucciones de Pseudolenguaje de uso común (Operaciones)
Instrucciones de Pseudolenguaje Formato: OPERACIÓN donde: OPERACIÓN – operación de pseudocódigo u operando de instrucción/s – objeto/s de una operación o instrucción de pseudocódigo
Instrucciones de pseudolenguaje • ABIERTO: Permite que el programa que contiene la instrucción tenga acceso a los registros del archivo designado.
• LECTURA: Se utiliza para copiar el contenido de un registro de un medio magnético externo a un área de memoria de entrada.
Instrucciones en pseudolenguaje * ESCRITURA: Se utiliza para copiar el contenido de un área de memoria de salida a un archivo almacenado en un soporte magnético externo o a un archivo producido en una impresora.
• CERRAR: Finaliza el acceso de un programa a los registros de un archivo abierto previamente.
Instrucciones de pseudolenguaje * IF: Se usa para comparar el contenido de un área de memoria con los de otra área de memoria o una constante para determinar si la condición es verdadera o falsa.
* PERFORM: Indica al equipo que realice un procedimiento especificado.
Instrucciones en pseudolenguaje * MOVIMIENTO: Se usa para indicar al ordenador que los datos contenidos en un área de la memoria deben copiarse en otra área de la memoria.
• COMPUTE: Se utiliza para indicar que se va a realizar un cálculo matemático.
Instrucciones de pseudolenguaje * PANTALLA: Se utiliza para mostrar un literal o el contenido de un identificador en la pantalla.
* ACEPTAR: Permite que los datos ingresados a través del teclado (o cualquier dispositivo de entrada) se almacenen en un área de memoria.
Instrucciones de pseudolenguaje * DECLARAR: Se utiliza para definir los distintos identificadores que se utilizarán en un programa.
• ENTRADA: Marca el comienzo de un procedimiento.
• EXIT: Marca el final de un procedimiento.
Instrucciones en pseudolenguaje * INICIO: Marca el comienzo del procedimiento de control de un programa.
• STOP: Hace que la ejecución del programa finalice.
Ejemplo de diagrama de flujo DIRECCIÓN DE ENTRADA ABIERTA DE RUTINA PRINCIPAL-ETIQUETAS DE CORREO DE SALIDA DE ARCHIVO-ARCHIVO A
DIRECCIÓN DE LECTURA-ARCHIVO F A
DIRECCIÓN DE IMPRESIÓN
EOF T
DIRECCIÓN DE CIERRE-ETIQUETAS DE CORREO DE ARCHIVO-ARCHIVO
DETENER
Ejemplo DE Pseudocódigo COMENZAR DIRECCIÓN DE ENTRADA ABIERTA DE RUTINA PRINCIPAL-ETIQUETAS DE CORREO DE SALIDA DE ARCHIVO-DIRECCIÓN DE LECTURA DE ARCHIVO-ARCHIVO REALIZAR HASTA QUE EOF=»T» REALIZAR CERRAR DIRECCIÓN-SALIDA DE ARCHIVO-ETIQUETAS DE CORREO-FINAL DE ARCHIVO MAIN-RUTINA
Solución de problemas & Conceptos de diseño de soluciones • Un conocimiento de la solución de problemas & los conceptos de programación son una necesidad para aquellos que trabajan c / ordenadores: ya sea como programadores o como usuarios. * Los pasos de resolución de problemas (específicamente la definición del algoritmo) son similares en todos los lenguajes de programación.
Seis (6) Pasos en la Resolución de problemas: 1. Identificar el problema 2. Entender el problema 3. Identificar formas alternativas de resolver el problema 4. Seleccione la mejor manera de resolver el problema de las alternativas 5. Enumere las instrucciones que le permiten resolver el problema con el método seleccionado 6. Evaluar la solución
Siete (7) Elementos Básicos de Programación 1. Datos: constantes, variables 2. Entrada: lectura de valores de dispositivos de entrada (teclado, unidades de disco de E/S) 3. Salida: escritura de información en cualquier dispositivo de salida (pantalla, unidad de disco, impresora) 4. Operaciones: comparación de valores, asignación de valores, combinación de valores
Siete (7) Elementos Básicos de Programación 5. Condiciones / Selecciones: If-Then-Else, Case, Conmutadores 6. Bucles / Iteraciones: While-Do, RepeatUntil, For-Do 7. Subrutinas / Módulos: funciones, procedimientos
Problemas que se pueden resolver en computadoras: 1. Computacional-
Problemas que involucran algún tipo de procesamiento matemático
2. Lógico-Implica procesamiento relacional o lógico
3. Repetitivo: Implica repetir un conjunto de instrucciones matemáticas y/o lógicas
Atributos de un Programa bien diseñado MAIN-RTN
•
• • •
La lógica del programa se trazó utilizando una herramienta de planificación Enfoque descendente Estructurado modular
INITIAL-RTN
EOF-SW=1 T
FINAL-RTN
STOP
F
PROCESS-RTN
Estructuras de control lógicas • • •
Bloques de construcción elementales de programas estructurados Instrucciones que controlan el orden en w/c se ejecutan otras instrucciones del programa Se Refieren a las diferentes formas en w/c 9710>Los Cuatro (4) Estructuras de Control Lógicas 1. 2. 3. 4.
Iteración de Selección / Decisión de secuencia / Caso de bucle
SECUENCIA • •
Las instrucciones se ejecutan en el orden en que aparecen «Paso a paso» Ejecución de instrucciones
Representación general:
INICIO
Instrucción 1
Instrucción 2
Instrucción 3
Instrucción n
DETENER
SELECCIÓN / DECISIÓN • •
Una estructura de control lógica que ejecutan instrucciones dependiendo de la existencia de una condición A veces llamada estructura de control lógica «Si-Entonces-Else»
Representación general: F
Instrucción 1
¿Se cumple la condición?
T
Instrucción 2
ITERACIÓN / BUCLE * Una estructura de control lógica que indica la ejecución repetida de una serie de pasos (o instrucciones). Representación General:
T Condición cumplida?
F
Sub-rutina
CASO *
Una estructura de control lógica que se utiliza cuando hay numerosas rutas a seguir dependiendo del contenido de una variable dada.
Representación General:
Variable
Caso 1 Acción 1
Caso 2 Acción 2
Caso 3 Acción 3
Caso n Acción n
Ejemplo: Inicio del flujo de desarrollo del programa
A
ESPECIFICACIONES DEL PROGRAMA
EJECUTAR PROGRAMA
ALGORITMO
¿ERROR LÓGICO?
CODIFICACIÓN
N
TRADUCCIÓN
¿ERROR DE SINTAXIS? N A
DETENER
Y
DEPURACIÓN
B
Y
B
DATOS * Los datos son hechos no organizados. * Entran en una computadora como entrada y son procesados por el programa. * Lo que se devuelve al usuario es información o salida.
CONSTANTE DE DATOS•: Valor que nunca cambia durante el procesamiento de todas las instrucciones de una solución.
* Variable: El valor de una variable cambia durante el procesamiento. – También llamado «identificador»
CONSTANTE * Puede ser cualquier tipo de dato: numérico, alfanumérico (o carácter), o símbolo especial • Dos (2) tipos de constantes – Literal: se refiere al valor real en sí (por ejemplo, 3.1416, «pshs») – Named: utiliza un nombre o alias para representar un valor real o literal (por ejemplo, PI, nombre_ escuela)
VARIABLE • Se puede clasificar por el tipo de datos que puede contener. * Deben contener datos del mismo tipo, de lo contrario se producirá un error de desajuste. * Puede ser cualquier tipo de dato: reglas numéricas, alfanuméricas (o de carácter), lógicas o especiales de símbolo
para nombrar identificadores: • Puede ser cualquier cadena compuesta de letras, dígitos y guiones bajos ( _ ). Sin caracteres especiales. * Debe comenzar con una letra o un guion bajo * Sin espacios en blanco en los nombres de las variables * No debe tener más de 128 caracteres • Debe ser descriptivo
Ejemplo: Constantes & variables en el equipo *Constantes ƒ 8935084, -1.5, 3.1416, «pshs», «• «
* Variables ƒ EDAD=12, PRECIO=99.99, CITY=»Quezon City», Student_Name=»Pisay dela Cruz», ZIP_CODE=»1008″, MARK=»A», End_of_File=False
TIPOS de DATOS • • • •
Fecha / Hora lógica de caracteres numéricos
Datos numéricos • Incluye todos los tipos de números (es decir, enteros, no enteros) • El único tipo de datos que se puede usar en los cálculos • Subtipos:-Entero: números negativos & números enteros – Reales: números decimales – Flotantes: números en forma exponencial / científica
Conjunto de datos de datos Numéricos Conjunto de datos • El conjunto de símbolos necesarios para especificar un dato como un tipo de datos en particular. * Conjunto de datos para el tipo de datos numéricos – Todos los números de base 10-Signo positivo (+) y negativo ( – )
Datos de caracteres * Consta de todos los números, letras y caracteres especiales disponibles para el equipo (#, &, *, +, -, 0-9, A-Z, a-z) y entre comillas. * No se puede utilizar para cálculos, incluso si consisten solo en números. * Cadena: significa una cadena de caracteres * Concatenación: significa la unión de dos o más piezas de caracteres o datos de cadena
Los datos lógicos • Consisten en dos piezas de datos en el conjunto de datos: las palabras TRUE y FALSE. * Los datos lógicos se utilizan para tomar una decisión sí o no.Los OPERADORES
* Son los conectores de datos dentro de expresiones y ecuaciones. * Le dicen a la computadora cómo procesar los datos. * También le dicen a la computadora qué tipo de procesamiento debe realizarse (es decir, matemático, relacional o lógico).
Tipos de operadores utilizados en los cálculos & resolución de problemas: 1. Matemáticas 2. Relacional 3. Los operandos lógicos
* Son los datos que un operador conecta y procesa.
Resultante * La respuesta que resulta cuando se completa la operación.
Los operadores matemáticos • Incluyen los siguientes: – – – – – – – –
Suma, Resta, Multiplicación, División, Entero, Módulo, División, Potencias, Funciones
+ * / \ MOD ^ o * * nombreFunción (parámetros)
Operadores relacionales * Incluye lo siguiente: – – – – – –
Igual a Menos que Mayor que Menor o igual a Mayor que o igual a No igual a
= = ¡o!=
Operadores relacionales * Un programador utiliza operadores relacionales para programar decisiones. * El resultado de un operador relacional es el tipo de datos lógico VERDADERO o FALSO. * También se utilizan para controlar instrucciones repetitivas llamadas bucles.
Los operadores lógicos * Se utilizan para conectar expresiones relacionales (expresiones de toma de decisiones) & para realizar operaciones en datos lógicos. * Los operadores lógicos incluyen lo siguiente: – Not – And – Or
Jerarquía de operaciones NOT AND OR
* Un orden en el que las operaciones (matemáticas, relacionales, & lógicas) tienen lugar. * Paréntesis > > Funciones > > Operadores matemáticos > > Operadores relacionales > > Operadores lógicos
Jerarquía de operaciones * Para reordenar la secuencia de procesamiento normal, el programador usa paréntesis. * El procesamiento de los operandos (según las indicaciones de los operadores) siempre comienza con los paréntesis más internos y funciona hacia afuera, & procesos de izquierda a derecha.
Jerarquía de Operaciones Orden de Operaciones
Tipo de Datos de Operando
Tipo de Datos resultante
Paréntesis () 1.
Funciones
Operadores Matemáticos 2.
Poder
Numérico
Numérico
\, MOD
Numérico
Numérica
*, /
Numérico
Numérica
+, –
Numérico
Numérico
Numérico, Carácter
Lógico
Operadores Relacionales 6.
=, , =,
Operadores Lógicos 7.
NOT
Logical
Logical
AND
Logical
Logical
OR
Logical
Logical
Expresiones & Ecuaciones * Una expresión procesa datos (los operandos) mediante el uso de operadores. * Una ecuación almacena la resultante de una expresión en una ubicación de memoria en el ordenador a través del signo igual ( = ). * Las ecuaciones a menudo se llaman «instrucciones de asignación».»*El signo igual no significa igualdad, sino que significa «reemplazado por» o » se le asigna el valor de.»• El lado derecho de la ecuación se procesa antes de la asignación.
Expresiones & Ecuaciones Expresiones
Ecuaciones
A + B A y B son numéricas; la resultante es numérica y no se almacena A