Está en la página 1de 10

AROLDY AGUERO

V-15934557

NUEVA ESPARTA
DESARROLLO
OBJEIVOS
1. Objetivo II.2
Resuelva el problema planteado algorítmicamente usando la metodología MAPS, a fin de facilitar la
conceptualización, diseño, planificación, ejecución de la solución solicitada.
2. Objetivo II.3
Después de haber aplicado cada una de las etapas de la metodología MAPS en el objetivo II.2,
codifique el algoritmo en lenguaje PASCAL, a fin de obtener un programa estructurado que cumpla
con los requerimientos especificados, aplicando tipo de datos y/o procedimientos y funciones y/o
métodos de archivos, según se requiera.
3. Objetivo II.4
Pruebe el algoritmo diseñado en el Objetivo II.3 usando el concepto de Robustez; se requiere que
Ud. presente en el informe del trabajo, el algoritmo original, y el ajustado después de aplicarle la
definición de la propiedad algorítmica mencionada.
Objetivo II.2 Solución Analítica y Metodología MAPS
Solución Analítica
La institución pública IVSS (INSTITUTO VENEZOLANO DE LOS SEGUROS SOCIALES),
requiere clasificar a las personas que se jubilaran en el año de 2008. Existen tres tipos de
jubilaciones, por edad, por antigüedad joven y por antigüedad adulta, a través de un proyecto capaz
de:

 Reporte 1: Genere un informe de todos los jubilados por edad que les corresponda su jubilación
de acuerdo al mes.
 Reporte 2: Genere el informe de todos los jubilados por antigüedad joven que les corresponda
su jubilación de acuerdo al mes.
 Reporte 3: Genere el informe o reporte de todos los jubilados por antigüedad adulta que les
corresponda su jubilación de acuerdo al mes.
De acuerdo a las necesidades de la institución pública IVSS (INSTITUTO VENEZOLANO DE
LOS SEGUROS SOCIALES), el programa solicitado constará de datos o variables de entrada,
salida y auxiliares, que estarán en constante acercamiento, muchos de ellos, con quien ejecute el
proyecto.
Datos en entrada: Apellidos del jubilado, Nombres de jubilado, Cedula de Identidad de jubilado,
Fecha de Nacimiento de jubilado, Edad del jubilado.
Datos auxiliares o intermedios: empleados, fechas de jubilación, Jubilación por Edad, Jubilación
por Antigüedad (Joven), Jubilación por Antigüedad (Adulta).
Datos de salida: Jubilación por Edad, Jubilación por Antigüedad (Joven), Jubilación por
Antigüedad (Adulta), mes de jubilación, Apellidos del jubilado, Nombres de jubilado, Cedula de
Identidad de jubilado, Fecha de Nacimiento de jubilado, Edad del jubilado.
Procesos: Los empleados sus datos personales y fechas de jubilación según la que le corresponda,
son variables record guardados sobre una lista (estructura de datos recursiva), que posteriormente se
guardará en un archivo para disponer de dicha lista incluso después de cerrado el programa.
Las acciones requeridas por la institución pública IVSS (INSTITUTO VENEZOLANO DE LOS
SEGUROS SOCIALES), deben permitir consultar todos los jubilados por edad, Antigüedad
(Joven), Antigüedad (Adulta) que les corresponda su jubilación de acuerdo al mes, aunado a un
menú principal donde se define qué acciones realizará el programa, estas serán comentadas a
continuación:

 reporte de todos los jubilados por edad que les corresponda su jubilación de acuerdo al mes.
 reporte de todos los jubilados por antigüedad joven que les corresponda su jubilación de
acuerdo al mes.
 reporte de todos los jubilados por antigüedad adulta que les corresponda su jubilación de
acuerdo al mes.
Metodología MAPS
Etapa 1: Diálogo
La institución pública IVSS (INSTITUTO VENEZOLANO DE LOS SEGUROS SOCIALES)
requiere clasificar a las personas que se jubilaran en el año de 2008. Existen tres tipos de
jubilaciones, por edad, por antigüedad joven y por antigüedad adulta. Para el control se requiere de
un programa que pueda:

 Generar un listado de los Jubilados por edad, que les corresponda su jubilación de acuerdo al
mes. como se muestra en el Reporte 1.
 Generar un listado de los Jubilados por antigüedad joven, que les corresponda su jubilación de
acuerdo al mes. como se muestra en el Reporte 2.
 Generar un listado de los Jubilados Jubilación por Antigüedad (Adulta), que les corresponda su
jubilación de acuerdo al mes. como se muestra en el Reporte 3.

Jubilación por Edad

Mes: Enero

Apellido y Nombre Cedula de Identidad Fecha de Nacimiento Edad

Rosas, Amerlin 4.948.541 18/01/1960 61

Mujica, Pancho 4.248.143 17/01/1959 62

REPORTE: 1

Jubilación por Antigüedad (Joven)

Mes: Mayo

Apellido y Nombre Cedula de Identidad Fecha de Nacimiento Edad

Palmares, Pedro 7.948.541 10/05/1975 46

Noguera, Carlos 4.369.141 11/05/1976 47

REPORTE: 1

Jubilación por Antigüedad (Adulta

Mes: Diciembre

Apellido y Nombre Cedula de Identidad Fecha de Nacimiento Edad

Marcano, Luis 2.948.541 15/12/1965 66

Fuentes, Maria 3.248.541 18/12/1936 64


REPORTE: 1

Etapa 2: Especificaciones

Las especificaciones de un proyecto cualquiera son las condiciones de entrada y salida de una
acción del proyecto hacia un problema o situación concreta, en esencia las precondiciones
describen de forma general la acción mientras que las poscondiciones describen la relación de la
entrada y salida de la misma.

Para analizar una acción basada en su pre y su poscondiciones profunda y adecuadamente, debe
entenderse como una función que necesita algún tipo específico de datos de entrada para
devolver elementos y condiciones. El proyecto IVSSJubilacion.pas que llevará el control de sueldos
de las Jubilaciones de la institución pública IVSS (INSTITUTO VENEZOLANO DE LOS
SEGUROS SOCIALES) debe garantizar el poder realizar unas acciones, o más específicamente,
rutinas determinadas.

1. Consultar Jubilados
2. Reportes de Jubilados por mes de jubilación en año 2008.
3. Generar un listado de los Jubilados por edad.
4. Generar un listado de los Jubilados por antigüedad joven.
5. Generar un listado de los Jubilados Jubilación por Antigüedad (Adulta)
Precondiciones
Precondiciones de las variables

Entrada Criterio de Validez


Nombre de Jubilado No admite caracteres especiales que no
Tipo string sean usados en el idioma español
Apellido de Jubilado No admite caracteres especiales que no
Tipo string sean usados en el idioma español
Numero de Cedula del Jubilado No admite ningún carácter no numérico
Tipo Real No admite números no positivos
Fecha de Nacimientos del Jubilado No admite ningún carácter no numérico
Tipo Real No admite números no positivos
Edad del Jubilado No admite ningún carácter no numérico
Tipo Real No admite números no positivos
Reportes Jubilados por edad No admite variables record que no sean de
Tipo Lista tipo tJubilado
Reportes Jubilados por antigüedad joven No admite variables record que no sean de
Tipo Lista tipo tJubilado
Reportes Jubilados Jubilación por No admite variables record que no sean de
Antigüedad (Adulta) tipo tJubilado
Tipo Lista

Precondiciones de las rutinas


Todas las rutinas deben recibir una lista como parámetro de entrada para poder devolver algún
resultado.

Reporte Jubilados por edad

La rutina Jubilado por edad en total tendría una ventana donde muestra todas personas que se
jubilaran según el mes que le corresponda, junto a sus respectivos datos en un formato específico:
primero apellido y nombre del Jubilado, cedula de identidad del jubilado, fecha de nacimiento del
jubilado, edad del jubilado.

Jubilación por Edad

Mes: Xxx

Apellido y Nombre Cedula de Identidad Fecha de Nacimiento Edad

Xxxx, Xxxxx X.xxx.xxx xx/xx/xxxx xx

Reporte Jubilados por antigüedad joven

La rutina Jubilado por antigüedad joven en total tendría una ventana donde muestra todas
personas que se jubilaran según el mes que le corresponda, junto a sus respectivos datos en un
formato específico: primero apellido y nombre del Jubilado, cedula de identidad del jubilado,
fecha de nacimiento del jubilado, edad del jubilado.

Jubilación por Jubilados por antigüedad joven

Mes: Xxx

Apellido y Nombre Cedula de Identidad Fecha de Nacimiento Edad

Xxxx, Xxxxx X.xxx.xxx xx/xx/xxxx xx


Reporte Jubilados por antigüedad (Adulta)

La rutina Jubilado por Jubilados por antigüedad (Adulta) en total tendría una ventana donde
muestra todas personas que se jubilaran según el mes que le corresponda, junto a sus respectivos
datos en un formato específico: primero apellido y nombre del Jubilado, cedula de identidad del
jubilado, fecha de nacimiento del jubilado, edad del jubilado.

Jubilación por antigüedad (Adulta)

Mes: Xxx

Apellido y Nombre Cedula de Identidad Fecha de Nacimiento Edad

Xxxx, Xxxxx X.xxx.xxx xx/xx/xxxx xx

Etapa 3: División

Esta etapa le concierne al programador porque la división de rutinas hasta las subrutinas
irreducibles es una metodología elemental de cualquier programador enfrentándose a un
problema algorítmico de cualquier complejidad computacional.

Los Reportes Jubilado por edad, antigüedad joven y antigüedad (Adulta), en total tendría una
ventana para reporte o informe según el tipo de jubilación correspondiente a los jubilados, donde
muestra todos los Jubilados del mes junto a sus respectivos datos en un formato específico:
primero apellido y nombre del Jubilado, cedula de identidad del jubilado, fecha de nacimiento del
jubilado, edad del jubilado.

1. Leer y mostrar apellido del jubilado

2. Leer y mostrar nombre del jubilado

3. Leer y mostrar cedula del jubilado

4. Leer y mostrar fecha de nacimiento del jubilado

5. Leer y mostrar edad del jubilado


Etapa 4: Definición de abstracciones

Posterior a la subdivisión por pasos, el programador debe precisar cuáles se repiten o poseen
alguna relación, esto servirá para centrar el enfoque sobre los pasos esenciales y “multiusos” que
pueda necesitar el proyecto. La metodología en abstracciones surge como consecuencia de las
posibles formas de reutilización de rutinas: Empalmado, Anidamiento, Adaptación y Mezcla.
Cuando existe alguna relación entre rutinas debe definírsele, puesto que todo avance sobre una se
reflejará sobre la otra, y esto mediante la definición de abstracciones en ambas.

La abstracción (en filosofía) es una operación mental destinada a aislar conceptualmente una
propiedad o función concreta de un objeto, pensando ¿qué es? e ignorando otras propiedades del
mismo. En computación, esto no dista mucho de su concepto de abstracción, que consiste en
aislar un elemento de su contexto o del resto de los elementos que lo acompañan, poniendo
énfasis en el ¿qué hace? más que en el ¿cómo lo hace? El común denominador en la evolución de
los lenguajes de programación, ha sido el nivel de abstracción del que cada uno de ellos hace uso.

 Al existir tres rutinas con la misma finalidad, y que trabaja con la mima cantidad datos, es
obvio que compartirán subrutinas, y esta subrutina pertenece al caso, de mostrar reporte de
jubilados según el caso de jubilación que le corresponda la cual detallaremos a continuación:

Reporte jubilación por edad

Utiliza la subrutina “reporte jubilados por edad” para tener su parámetro de entrada,
posteriormente es usado el algoritmo para determinar cuántas personas cumplen con los
requisitos para la jubilación por edad, y finalmente mostrar a través del del reporte a los
empleados con sus datos puntuales correspondientes al tipo de jubilación por edad.

Reporte jubilación por antigüedad joven

Utiliza la subrutina “reporte jubilados por antigüedad joven” para tener su parámetro de entrada,
posteriormente es usado el algoritmo para determinar cuántas personas cumplen con los
requisitos para la jubilación por edad, y finalmente mostrar a través del reporte a los empleados
con sus datos puntuales correspondientes al tipo de jubilación por antigüedad joven.

Reporte jubilación por antigüedad (Adulta)

Utiliza la subrutina “reporte jubilados por antigüedad (Adulta)” para tener su parámetro de
entrada, posteriormente es usado el algoritmo para determinar cuántas personas cumplen con los
requisitos para la jubilación por edad, y finalmente mostrar a través del reporte a los empleados
con sus datos puntuales correspondientes al tipo de jubilación por antigüedad (Adulta).

Etapa 5: Codificación
En esta etapa se trasladan las soluciones y planteamientos de las etapas anteriores al lenguaje de
programación a implementar, en este caso Turbo Pascal 7.0, que es una versión no estándar del
lenguaje Pascal creado por Niklaus Wirth influenciado por ALGOL (otro lenguaje de
programación) y surge de la compañía Borland junto con Anders Hejlsberg, pionero del compilador
Turbo Pascal. Por compilador téngase un tipo de traductor que transforma un programa en un
lenguaje de programación específico a otro de menor nivel o directamente a código máquina, y en
Pascal multitud de ellos existen cada uno con sus propias características, sin embargo, el utilizado
en el proyecto fue Free Pascal. Además, los editores notpad++ para la codificación y Lazarus 2.0
free pascal. para la compilación de unidades. Cabe destacar que todo archivo compilado por Free
Pascal devuelve un ejecutable .exe (o si es una unidad un archivo de extensión .ppu) conjuntamente
con un archivo de desarrollo con extensión .o (usualmente asociados a los archivos Compiled
Object Format), característico de los compiladores basados en C, estos archivos contienen código
binario y código en C.
Etapa 6: Prueba y Verificación
Esta etapa se define por las pruebas realizadas al proyecto con el fin de verificar su buen
funcionamiento, corrigiendo los errores de todo tipo e implementando robustez, además se analizan
otros aspectos visuales para dar soluciones útiles y sencillas de entender, la amigabilidad del
programa es otro punto relevante desarrollado aquí. La conjunción de todos estos aspectos permite
un proyecto útil para su propósito.
Etapa 7: Prueba y Verificación
Última y no menos importante etapa que consiste en clarificar todas y cada una de las partes del
proyecto ya codificado mediante comentarios, permitiendo a cualquier tercero estudiar, analizar y
comprender las rutinas y subrutinas que imperan, incluso plasmando información de las fuentes y
complementarias que ayuden o enseñen a cualquier lector.

Objetivo II.3 Programación


Diseño del Proyecto en Pseudocódigo

También podría gustarte