Anda di halaman 1dari 11

SERVICIO NACIONAL DE APRENDIZAJE, SENA

MÓDULO DE FORMACIÓN EVALUACIÓN DEL


APRENDIZAJE

Sistema de Gestión de la Calidad

TECNICO EN PROGRAMACION DE SOFTWARE

EJE DE FORMACION: PROGRAMACION DE SOFTWARE

Su nombre

ANGIE KATHERINE SANCHEZ BUITRAGO

BOGOTA D.C Agosto 19 del 2009


SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

GUIA DE APRENDIZAJE

EJE DE FORMACIÓN: PROGRAMACION DE SOFTWARE

UNIDAD DE APRENDIZAJE No. 1: FUNDAMENTOS DE


PROGRAMACION ORIEBTADA A OBJETOS

ACTIVIDAD DE ENSEÑANZA – APRENDIZAJE – EVALUACIÓN 2


TALLER INVESTIGATIVO

TIEMPO DE LA ACTIVIDAD DE E-A-E: 3 HORAS

TIEMPO DE LA GUIA DE APRENDIZAJE: 1 HORAS

Cuestionario 1 Conceptos básicos del modelo orientado


a objetos.

1. Como se reconocen los objetos y clases en el


mundo real y cual es la interacción que existe
entre ellos.

Todo objeto del mundo real tiene 2 componentes:


características y comportamiento.
Por ejemplo, los automóviles tienen características (marca,
modelo, color, velocidad máxima, etc.) y comportamiento
(frenar, acelerar, retroceder, llenar combustible, cambiar
llantas, etc.).

Entonces pos para tener en claro la clase representa la


esencia de un grupo de objetos por ejemplo: lápiz, borrador,
sacapuntas etc. son objetos que pertenecen a una misma
clase por que son del mismo tipo.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

2. Define los siguientes conceptos: abstracción y


encapsulamiento y de un ejemplo de su aplicación
en el mundo real.

La Abstracción: Me parece que es un principio por el cual


se aísla toda aquella información que no resulta relevante a
un determinado nivel de conocimiento. Ejemplo:
Un coche puede ser...
Una cosa con ruedas, motor, volante y pedales (conductor)
Algo capaz de transportar personas (taxista)
Una caja que se mueve (simulador de tráfico)
Conjunto de piezas (fabricante)

Encapsulamiento:

Se denomina al ocultamiento del estado, es decir, de los


datos miembro, de un objeto de manera que sólo se puede
cambiar mediante las operaciones definidas para ese objeto.
Complementa a la abstracción
Se consigue:
Separando la interfaz de su implementación
Ocultando la información interna de un objeto
Escondiendo la estructura e implementación de los métodos
(algoritmos).
Exponiendo solo la forma de interactuar con el objeto

3. Defina que significa POO y complejidad del


software y diga en que casos se aplica cada una de
estas.

Es un paradigma de programación, que se basa en organizar


el software como una colección de objetos discretos que
incorporan tanto estructuras de datos como comportamiento.
Esto evidencia la programación convencional, en la que las
estructuras de datos y el comportamiento estaban
escasamente relacionadas.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

Un Modelo Objeto es un marco de referencia conceptual, en el


que se establece el conjunto básico de los conceptos, la
terminología asociada y el modelo de computación de los
Sistemas Software soportados por la tecnología orientada a
los objetos. Este conjunto básico de conceptos deberá incluir,
como mínimo, los de abstracción, encapsulación, jerarquía y
modularidad y deberá considerar el sistema de información
como un conjunto de entidades conceptuales modeladas
como objetos e interactuando entre ellas.

La Complejidad Del Software:


Introducimos para los más profanos las bases sobre las que
se asienta la Programación Orientada a Objetos. La
programación Orientada a objetos (POO) es una forma
especial de programar, más cercana a como expresaríamos
las cosas en la vida real que otros tipos de programación.

Con la POO tenemos que aprender a pensar las cosas de una


manera distinta, para escribir nuestros programas en
términos de objetos, propiedades, métodos y otras cosas que
veremos rápidamente para aclarar conceptos y dar una
pequeña base que permita soltarnos un poco con este tipo de
programación.

4. Defina que es el ciclo de vida del software y como


se lleva a cabo, de un ejemplo de su aplicación.

El ciclo de vida del software en el Proceso Unificado

Las fases del ciclo de vida del software son: concepción,


elaboración, construcción y transición. La concepción es
definir el alcance del proyecto y definir el caso de uso. La
elaboración es proyectar un plan, definir las características y
cimentar la arquitectura. La construcción es crear el producto
y la transición es transferir el producto a sus usuarios [Booch
1998].
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

Un ingeniero de software necesita de herramientas, entre


ellas las herramientas de Rational son las más avanzadas,
pero son muy costosas. También puede utilizar las
herramientas de oficina como un editor de textos, un
modelador de datos, etc., muchas de ellas son de código
abierto y aún están de desarrollo. Utiliza las que más te sean
de utilidad.

5. Dentro de un problema que se desea resolver por


computadora, que se entiende por
“especificaciones de requerimientos”.

“La parte más dura en la construcción de un sistema software


es decidir cómo construirlo…Ninguna parte del trabajo mutila
el resultado del sistema si está hecho mal. Ninguna parte es
más dificultosa para rectificarlo después”

La ingeniería de requisitos facilita el mecanismo apropiado


para comprender lo que quiere el cliente, analizando
necesidades, confirmando su viabilidad, negociando una
solución razonable, especificando la solución sin ambigüedad,
validando la especificación y gestionando los requisitos para
que se transformen en un sistema operacional.

Los requerimientos para un sistema de software determinan


lo que hará el sistema y definen las restricciones de su
operación e implementación.

El proceso de ingeniería de requisitos puede ser descrito en 5


pasos distintos: identificación de requisitos, Análisis de
requisitos y negociación, Especificación de requisitos,
Modelizado del sistema, Validación y gestión de requisitos.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

6. Explique ampliamente en que consiste el Análisis


Orientado a Objetos y de un ejemplo de su
aplicación.

Se considera como un análisis de actividades y consiste en la


solución de negocios para el usuario y se expresa con los
casos de uso. El diseño lógico es la solución del equipo de
proyecto del negocio y consiste de las siguientes tareas:
Identificar los usuarios y sus roles Obtener datos de los
usuarios Evaluar la información Documentar los escenarios de
uso Validar con los usuarios Validar contra la arquitectura de
la empresa

7. Explique ampliamente en que consiste el Diseño


Orientado a Objetos y de un ejemplo de su
aplicación.

Elaborar una especificación completa y validada de la


arquitectura global hardware-software, de la estructura de
control y de la estructura de datos del producto, así como un
esquema de los manuales de usuarios y planes de test; de las
interfaces de relación, dimensionamiento y algoritmos claves
de cada componente de programa.

8. Explique ampliamente en que consiste la


Programación Orientada a Objetos, conceptos y
mencione 10 características de esta.

La Programación Orientada a Objetos (POO) es una forma de


enfocar la tarea de programación. Los enfoques de la
programación han cambiado drásticamente desde la
invención de las computadoras, la creciente complejidad de
los programas, antes se realizaban mediante una consola las
instrucciones máquinas en binario. Esto funcionaba porque los
programas sólo tenían unos pocos cientos de instrucciones.
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

Cuando crecieron los programas, se invento el lenguaje


ensamblador para que el programador pudiera manejar
programas más largos y complejos usando una representación
simbólica de las instrucciones máquina.

• Herencia múltiple
• Sobrecarga de operadores y funciones
• Derivación
• Funciones virtuales
• Plantillas
• Gestión de excepciones Estado interno:
• Principio de ocultación:
• Representación de un objeto
• Encapsulamiento

9. Enliste cuales son los elementos primordiales en el


modelo de objetos.

*Abstracción
*Encapsulamiento
*Modularidad
*Jerarquía y Herencia
*Polimorfismo

10.Defina los siguientes conceptos y de un ejemplo


de la aplicación de cada uno de ellos: Abstracción,
Encapsulamiento, Modularidad, Jerarquía y
herencia, Polimorfismo.

Abstracción: Cada objeto en el sistema sirve como modelo


de un "agente" abstracto que puede realizar trabajo, informar
y cambiar su estado, y "comunicarse" con otros objetos en el
sistema sin revelar cómo se implementan estas
características. Los procesos, las funciones o los métodos
pueden también ser abstraídos y cuando lo están, una
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

variedad de técnicas son requeridas para ampliar una


abstracción.

Encapsulamiento: Significa reunir a todos los elementos que


pueden considerarse pertenecientes a una misma entidad, al
mismo nivel de abstracción. Esto permite aumentar la
cohesión de los componentes del sistema. Algunos autores
confunden este concepto con el principio de ocultación,
principalmente porque se suelen emplear conjuntamente.

Modularidad: Es la propiedad que permite subdividir una


aplicación en partes más pequeñas (llamadas módulos), cada
una de las cuales debe ser tan independiente como sea
posible de la aplicación en sí y de las restantes partes.
La modularización consiste en dividir un programa en
módulos que se puedan compilar por separado, pero que
tienen conexiones con otros módulos. Al igual que la
encapsulación, los lenguajes soportan la Modularidad de
diversas formas.
La Modularidad es la propiedad de un sistema que permite su
descomposición en un conjunto de módulos cohesivos y
débilmente acoplados. Por supuesto no todos los módulos son
iguales: tomar un programa monolítico y separarlo de forma
aleatoria en archivos no es óptimo. Se debe tener en cuenta
los conceptos asociados de dependencia, acoplamiento,
cohesión, interfaz, encapsulación y abstracción. Una vez
identificado lo que es un buen módulo, se puede contemplar
la reutilización de un buen módulo como componente.

Herencia: las clases no están aisladas, sino que se relacionan


entre sí, formando una jerarquía de clasificación. Los objetos
heredan las propiedades y el comportamiento de todas las
clases a las que pertenecen. La herencia organiza y facilita el
polimorfismo y el encapsulamiento permitiendo a los objetos
ser definidos y creados como tipos especializados de objetos
preexistentes. Estos pueden compartir (y extender) su
comportamiento sin tener que reimplementar su
comportamiento. Esto suele hacerse habitualmente
agrupando los objetos en clases y estas en árboles o
enrejados que reflejan un comportamiento común. Cuando un
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

objeto hereda de más de una clase se dice que hay herencia


múltiple; esta característica no está soportada por algunos
lenguajes (como Java).

Polimorfismo: comportamientos diferentes, asociados a


objetos distintos, pueden compartir el mismo nombre, al
llamarlos por ese nombre se utilizará el comportamiento
correspondiente al objeto que se esté usando. O dicho de otro
modo, las referencias y las colecciones de objetos pueden
contener objetos de diferentes tipos, y la invocación de un
comportamiento en una referencia producirá el
comportamiento correcto para el tipo real del objeto
referenciado. Cuando esto ocurre en "tiempo de ejecución",
esta última característica se llama asignación tardía o
asignación dinámica. Algunos lenguajes proporcionan medios
más estáticos (en "tiempo de compilación") de polimorfismo,
tales como las plantillas y la sobrecarga de operadores de
C++.

11.Explique ampliamente cual ha sido el desarrollo


histórico de los paradigmas en el desarrollo del
software.

En Ingeniería de software el desarrollo en cascada es el


enfoque metodológico que ordena rigurosamente las etapas
del ciclo de vida del software, de forma tal que el inicio de
cada etapa debe esperar a la finalización de la
inmediatamente anterior. Un ejemplo de una metodología de ,
Programación ,Diseño , Análisis de requisitos ,desarrollo en
SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

cascada es: Mantenimiento De esta forma, cualquier error de


diseño, Implantación .Prueba detectado en la etapa de
prueba conduce necesariamente al rediseño y nueva
programación del código afectado, aumentando los costes del
desarrollo. La palabra cascada sugiere, mediante la metáfora
de la fuerza de la gravedad, el esfuerzo necesario para
introducir un cambio en las fases más avanzadas de un
proyecto. Si bien ha sido ampliamente criticado desde el
ámbito académico y la industria, sigue siendo el paradigma
más seguido al día de hoy Para cada actividad habrá cuatro
tareas. Imagen: Modelo Espiral.JPG Determinar o fijar
objetivos Fijar también los productos definidos a obtener:
requerimientos, especificación, manual de usuario. Fijar las
restricciones. Identificación de riesgos del proyecto y
estrategias alternativas para evitarlos. Hay una cosa que solo
se hace una vez: Planificación inicial o previa.

12.Explique ampliamente cuales son los Beneficios


del modelo de objetos y de la POO sobre otros
paradigmas.

En resumen, la programación orientada a objetos beneficia a


los desarrolladores debido a que: Los programas son fáciles
de diseñar debido a que los objetos reflejan elementos del
mundo real.

Las aplicaciones son más sencillas para los usuarios debido a


que los datos innecesarios están ocultos.

Los objetos son unidades autocontenida.

La productividad se incrementa debido a que puede reutilizar


el código.

Los sistemas son fáciles de mantener y se adaptan a las


cambiantes necesidades de negocios.

Es más fácil crear nuevos tipos de objetos a partir de los ya


existentes.

Simplifica los datos complejos.


SERVICIO NACIONAL DE APRENDIZAJE, SENA
MÓDULO DE FORMACIÓN EVALUACIÓN DEL
APRENDIZAJE

Reduce la complejidad de la transacción.

Confiabilidad.

Robustez.

Capacidad de ampliación.