Reconocimiento de clasesy objetos y
sus relaciones en el mundo real.
Un objeto se define como una estructura que
encapsula atributos (características) y
comportamientos (procedimientos) de una
entidad con un papel bien definido en una
aplicación. Cada objeto tiene:
3.
Estado
Conjunto de valoresde los atributos en un
instante de ti dado. El comportamiento de
un objeto puede modificar el estado d
este.
4.
Comportamiento
Relacionado con sufuncionalidad y
determina las operaciones que este puede
realizar o a las que puede responder ante
mensajes enviados por otros objetos.
5.
Clases
Es la definiciónde un objeto. Cuando se
programa un objeto y se definen sus
características y funcionalidades, realmente
se programa una clase
6.
Identidad:
Es la propiedadque permite a un objeto
diferenciarse de otros. Generalmente esta
propiedad es tal, que da nombre al objeto.
Es un métodopor el cual abstraemos una
determinada entidad de la realidad de sus
características y funciones que desempeñan.
Denota las características esenciales de un
objeto, donde se capturan sus comportamientos
9.
Dentro delas características esenciales
se encuentran:
Atributos (o datos).
Comportamiento (métodos)
La abstracción es crucial para comprender este complejo
mundo, para el funcionamiento de una mente humana
normal y es una herramienta muy potente para tratar la
complejidad, es clave para diseñar un buen software
10.
Ejemplo
La abstracción deun automóvil.
Características: Color, año de
fabricación, modelo, etc.
Métodos o Funciones: Frenar,
encender, etc.
Significa reunir atodos los elementos que pueden
considerarse pertenecientes a una misma entidad, al
mismo nivel de abstracción.
En la OO el encapsulamiento de una entidad se logra
mediante la definición de una clase, que reúne los
datos y comportamiento en una unidad.
13.
La modularidadimplica:
El programa se puede construir, probar y depurar por
módulos.
Al agregar nueva funcionalidad, se pueden crear
nuevos módulos o incluir la funcionalidad en módulos
que ya existen.
Se facilita el localizar errores, el mantenimiento y el
crecimiento del software.
Si la programación estructurada se interesa primero por los
procedimientos y después por los datos, el diseño orientado
a objetos se interesa en primer lugar por los datos, a los
que se asocian posteriormente procedimientos
La POO comparadacon otros paradigmas de programación,
permite manejar de mejor manera la complejidad del
software. Por lo siguiente:
Agrupar elementos comunes (objetos) en clases.
La clase incluye en una unidad los atributos y los
métodos.
Se pueden construir jerarquías de herencias de clases
que hereden (reciban) lo que ya esta definido
Lo anterior aumenta la modularidad. El programa esta
formado por módulos o partes bien identificadas.
Las etapas básicasy los principios del modelo OO
del ciclo de vida del software son:
1. Especificación de requerimientos.
2. Análisis.
3. Diseño.
4. Programación.
5. Mantenimiento.
Comprende las tareasrelacionadas con la determinación
de las necesidades o de las condiciones a satisfacer para
un software nuevo o modificado, tomando en cuenta los
diversos requerimientos de los clientes.
El propósito es hacer que los mismos alcancen un
estado óptimo antes de alcanzar la fase de diseño en
el proyecto.
Los buenos requerimientos deben ser medibles,
comprobables, sin ambigüedades o contradicciones.
Los requerimientos paraun sistema de software
determinan lo que hará el sistema y definen las
restricciones de su operación e implementación.
Para esta actividad se debe:
IDENTIFICACION DE REQUISITOS: Identificar las necesidades del
usuario (del negocio).
ANÁLISIS Y NEGOCIACIÓN DE REQUISITOS: Describir los objetivos de
la aplicación.
ESPECIFICACION DE REQUERIMIENTOS: Definir características y
funciones generales de la aplicación.(requerimientos funcionales y no
funcionales)
VALIDACIÓN DE REQUISITOS: El equipo de Ingeniería de sistemas y los
clientes deben establecer en conjunto las metas y objetivos de la
aplicación.
FACTORES EN LA CALIDAD DEL SOFTWARE: Eficiencia,
Transportabilidad, Verificabilidad, Fácil de utilizar, Corrección,
Extensibilidad, Compatibilidad Reutilización