SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
Diseño del Software y el Diseño Orientado a
Objetos
Integrante
Alexander Sanchez 22.956.799
SAIAMateria: Sistemas 2
Diseño de software
Se define como:
El proceso por el que un agente crea una
especificación de un artefacto de software,
pensado para cumplir unos objetivos,
utilizando un conjunto de componentes
primitivos y sujeto a restricciones.
El diseño de software es el proceso de
visionado y definición de soluciones software a
uno o más conjuntos de problemas. Uno de los
componentes principales del diseño de
software es el análisis de requisitos del
software (ARS, del inglés SRA). Se trata de
una parte del proceso de desarrollo de
software que enumera especificaciones
empleadas en ingeniería de software. Si el
software está "semiautomatizado" o centrado
en el usuario, el diseño de software puede
implicar también el diseño de experiencia de
usuario que utiliza un storyboard o guión
gráfico para ayudar determinar esas
especificaciones.
2
3
Abstracción
•Proceso o resultado de la generalización reduciendo el
contenido de información de un concepto o un
fenómeno observable
Refinamiento
• proceso de elaboración. Una jerarquía se desarrolla
descomponiendo una declaración macroscópica de
función de un modo sensato hasta que se logre obtener
declaraciones del lenguaje de programación.
Modularidad
• La arquitectura de software
está dividida en componentes
llamados módulos.
Arquitectura
• se refiere a la estructura global del
software y las maneras en que esa
estructura proporciona integridad
conceptual al sistema.
Diseño
4
Jerarquía de
control
•Un estructura de programa que representa la
organización de un componente e implica una
jerarquía de control.
Estructural
Partitioning
• La estructura de programa puede ser dividida horizontal
y verticalmente. Las particiones horizontales definen
ramas separadas de jerarquía modular para cada
función importante
Estructura de
datos
• es una representación de la
relación lógica entre los
elementos individuales de los
datos
Procedimiento
de software
• centra en el procesamiento de cada
módulo individualmente.
Diseño
Lenguaje de modelado
Un lenguaje de modelado es cualquier lenguaje artificial que
puede usarse para expresar información, conocimiento o sistemas
en una estructura que está definida por un conjunto consistente
de reglas.
• Architecture description language (ADL) es un lenguaje que se
usa para describir y representar la arquitectura de software
de un sistema de software.
• Business Process Modeling Notation (BPMN) es un ejemplo de
Lenguaje de modelado.
• EXPRESS and EXPRESS-G (ISO 10303-11) es lenguaje de
modelado estándar internacional de propósito general.
• LePUS3 es un lenguaje de diseño de descripciones orientado a
objetos y un lenguaje de especificación formal que sirve sobre
todo para modelar grandes programas orientados a objetos
(Java, C++, C#) y patrones de diseño.
• Entre otros…
1
Diseño orientado a
objetos
Se define como:
El término "orientación por objeto" significa
que organizaremos el software como una
colección de objetos discretos que incorporan
tanto estructuras de datos como
procedimientos. Esto contrasta con la
programación convencional, en la cual las
estructura de datos y el comportamiento
están solo aproximadamente conectados.
El desarrollo orientado por objetos es una
nueva forma de pensar acerca del software
basado sobre abstracciones que existen en el
mundo real. En este contexto, el desarrollo es
referido a la primera parte del ciclo de vida del
software: análisis, diseño e implantación.
6
“
Un objeto es una entidad física o
abstracta que tiene un comportamiento
antes ciertos estímulos, tanto externos
como de otros objetos específicos que
se encuentran dentro del sistema.
7
Objeto
Análisis y diseño
orientado a objetos
Enfoque de la ingeniería de software que modela un sistema como un
grupo de objetos que interactúan entre sí. Este enfoque representa un
domino absoluto en términos de conceptos compuestos por verbos y
sustantivos, clasificados de acuerdo a su dependencia funcional. Todo
sistema de información requiere de artefactos o componentes (clases)
para llevar a cabo tareas, es de gran importancia dentro de la
ingeniería de software tener un buen "análisis y diseño" para un mejor
desarrollo, que conlleva a que tan "escalable" sea un sistema de
información.
8
Características principales
del Diseño Orientado a
Objetos
◇ Los objetos son abstracciones del mundo real o
entidades del sistema que se administran entre ellas
mismas
◇ Los objetos son independientes y encapsulan el
estado y la representación de información
◇ La funcionalidad del sistema se expresa en términos
de servicios de los objetos
◇ Las áreas de datos compartidas son eliminadas. Los
objetos se comunican mediante paso de parámetros
◇ Los objetos pueden estar distribuidos y pueden
ejecutarse en forma secuencial o en paralelo
9
Diseño Orientado a
Objetos
Ventajas
◇ Fácil de mantener, los objetos
representan entidades auto-
contenidas
◇ Los objetos son componentes
reutilizables
◇ Para algunos sistemas, puede
haber un mapeo obvio entre las
entidades del mundo real y los
objetos del sistema
10
Fases:
El DOO consta de
◇ Diseño de la Estructura de Objetos
(DEO)
◇ Diseño del Comportamiento de
Objetos (DCO)
Clase
Es la implantación de
un tipo de objeto.
Especifica la
estructura de datos y
métodos operativos
permitidos para cada
objeto. entes
reactivos basados en
modelo
Conceptos básicos
Polimorfismo
Se aplica a una
operación que
adopta varias formas
de implantación, de
acuerdo al objeto.
Operación
Proceso que se
puede solicitar
como unidad
(tipo de servicio
solicitado)
11
Método
Herencia de
clase
Reutilización
Se toma el código
existente y se
adapta a la
circunstancia.
Permiten que se
adapten las clases.
Herencia de clase
Es una implantación de la generalización, donde las propiedades de un
tipo se aplican a sus subtipos. Hace que la estructura de datos y
operaciones sean disponibles para su reutilización por las subclases.
La herencia de las operaciones de una superclase permite que las
clases compartan el código y la herencia de estructura de datos permite
la reutilización de la estructura.
12
Herencia Múltiple
◇ Una clase puede heredar estructuras de datos y operaciones de
más de una superclase.
◇ Selección del Método
○ Cuando se envía solicitud a un objeto, el software
selecciona los métodos a usar. El método no se
almacena en el objeto. Se asocia con la clase. La
herencia permite que una clase reutilice
características de superclases.
13
Polimorfismo
Se aplica a una operación que adopta varias formas de implantación,
de acuerdo al objeto. Puede hacer una solicitud de una operación sin
conocer el método que debe ser llamado. Esos detalles quedan ocultos
para el usuario.
14

Mais conteúdo relacionado

Mais procurados

Analisis de requerimientos
Analisis de requerimientosAnalisis de requerimientos
Analisis de requerimientosssalzar
 
Diseño de objetos y diseño de sistemas
Diseño de objetos y diseño de sistemasDiseño de objetos y diseño de sistemas
Diseño de objetos y diseño de sistemasYazmin Polanco
 
Unidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetosUnidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetosRene Guaman-Quinche
 
Sistemas ii fundamentos y metodos de analisis de requerimientos
Sistemas ii   fundamentos y metodos de analisis de requerimientosSistemas ii   fundamentos y metodos de analisis de requerimientos
Sistemas ii fundamentos y metodos de analisis de requerimientosGalderIL057
 
Unidad 3 paradigmas de la ingeniería del software
Unidad 3 paradigmas de la ingeniería del softwareUnidad 3 paradigmas de la ingeniería del software
Unidad 3 paradigmas de la ingeniería del softwareAndhy H Palma
 
Analisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosAnalisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosLex Marin
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónicolandeta_p
 
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOSFUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOSLuis Jesus Curbata
 
Too Tecnologia orientada a objetos
Too Tecnologia orientada a objetosToo Tecnologia orientada a objetos
Too Tecnologia orientada a objetosFrangelys Perez
 
Diseño detallado
Diseño detalladoDiseño detallado
Diseño detalladojose
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a ObjetosNestor Traña
 
Proceso de analisis wilmer santeliz
Proceso de analisis wilmer santelizProceso de analisis wilmer santeliz
Proceso de analisis wilmer santelizwilensanz
 
1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetosCirino Silva tovar
 

Mais procurados (20)

Tc2 301403 21
Tc2 301403 21Tc2 301403 21
Tc2 301403 21
 
Analisis de requerimientos
Analisis de requerimientosAnalisis de requerimientos
Analisis de requerimientos
 
Diseño de objetos y diseño de sistemas
Diseño de objetos y diseño de sistemasDiseño de objetos y diseño de sistemas
Diseño de objetos y diseño de sistemas
 
Unidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetosUnidad 2 diseño orientado a objetos
Unidad 2 diseño orientado a objetos
 
Sistemas ii fundamentos y metodos de analisis de requerimientos
Sistemas ii   fundamentos y metodos de analisis de requerimientosSistemas ii   fundamentos y metodos de analisis de requerimientos
Sistemas ii fundamentos y metodos de analisis de requerimientos
 
Base de Datos Orientada a Objetos
Base de Datos Orientada a ObjetosBase de Datos Orientada a Objetos
Base de Datos Orientada a Objetos
 
Unidad 3 paradigmas de la ingeniería del software
Unidad 3 paradigmas de la ingeniería del softwareUnidad 3 paradigmas de la ingeniería del software
Unidad 3 paradigmas de la ingeniería del software
 
Analisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosAnalisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetos
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
Principales estilos arquitectónicos
Principales estilos arquitectónicosPrincipales estilos arquitectónicos
Principales estilos arquitectónicos
 
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOSFUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS
 
Too Tecnologia orientada a objetos
Too Tecnologia orientada a objetosToo Tecnologia orientada a objetos
Too Tecnologia orientada a objetos
 
Diseño detallado
Diseño detalladoDiseño detallado
Diseño detallado
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a Objetos
 
Tecnologia orientado a objetos
Tecnologia orientado a objetosTecnologia orientado a objetos
Tecnologia orientado a objetos
 
Proceso de analisis wilmer santeliz
Proceso de analisis wilmer santelizProceso de analisis wilmer santeliz
Proceso de analisis wilmer santeliz
 
Analisis orientados a objetos
Analisis orientados a objetosAnalisis orientados a objetos
Analisis orientados a objetos
 
Adoo martha hidalgo
Adoo   martha hidalgoAdoo   martha hidalgo
Adoo martha hidalgo
 
9.diseño de la arquitectura
9.diseño de la arquitectura9.diseño de la arquitectura
9.diseño de la arquitectura
 
1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos1.1 elementos en el paradigma orientado a objetos
1.1 elementos en el paradigma orientado a objetos
 

Semelhante a Diseño del Software y el Diseño Orientado a Objetos

Fundamentos y metodos analisis de requerimiento
Fundamentos y metodos analisis de requerimientoFundamentos y metodos analisis de requerimiento
Fundamentos y metodos analisis de requerimientoMonica Naranjo
 
Comunidad emagister 63082_63082-convertido
Comunidad emagister 63082_63082-convertidoComunidad emagister 63082_63082-convertido
Comunidad emagister 63082_63082-convertidoJamil Cajamarca
 
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon KoudsiFUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon KoudsiRaimonKoudsi
 
Fundamentos y metodos de analisis de requerimientos
Fundamentos y metodos de analisis de requerimientos Fundamentos y metodos de analisis de requerimientos
Fundamentos y metodos de analisis de requerimientos Mirla Montaño
 
Alejandro soto ingeneria sistema
Alejandro soto ingeneria sistemaAlejandro soto ingeneria sistema
Alejandro soto ingeneria sistemaAlejandross1
 
Desarrollo de Software Orienta a Objetos
Desarrollo de Software Orienta a ObjetosDesarrollo de Software Orienta a Objetos
Desarrollo de Software Orienta a ObjetosDat@center S.A
 
Sistemas de información diapositivas de la 3era unidad
Sistemas de información diapositivas de la 3era unidadSistemas de información diapositivas de la 3era unidad
Sistemas de información diapositivas de la 3era unidadBeto Meneses
 
Planificacion de proyecto de software
Planificacion de proyecto de softwarePlanificacion de proyecto de software
Planificacion de proyecto de softwareYORGELIS1608
 
Fundamentos para el diseño de un software
Fundamentos para el diseño de un softwareFundamentos para el diseño de un software
Fundamentos para el diseño de un softwaressalzar
 
Diseno Software
Diseno SoftwareDiseno Software
Diseno Softwarealfmuny
 

Semelhante a Diseño del Software y el Diseño Orientado a Objetos (20)

Fundamentos y metodos analisis de requerimiento
Fundamentos y metodos analisis de requerimientoFundamentos y metodos analisis de requerimiento
Fundamentos y metodos analisis de requerimiento
 
Fundamentos
FundamentosFundamentos
Fundamentos
 
Comunidad emagister 63082_63082-convertido
Comunidad emagister 63082_63082-convertidoComunidad emagister 63082_63082-convertido
Comunidad emagister 63082_63082-convertido
 
0 todo
0 todo0 todo
0 todo
 
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon KoudsiFUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
FUNDAMENTOS Y MÉTODOS DE ANÁLISIS DE REQUERIMIENTOS Raimon Koudsi
 
Fundamentos y metodos de analisis de requerimientos
Fundamentos y metodos de analisis de requerimientos Fundamentos y metodos de analisis de requerimientos
Fundamentos y metodos de analisis de requerimientos
 
Glosario de terminos
Glosario de terminosGlosario de terminos
Glosario de terminos
 
Alejandro soto ingeneria sistema
Alejandro soto ingeneria sistemaAlejandro soto ingeneria sistema
Alejandro soto ingeneria sistema
 
Deber analisis
Deber analisisDeber analisis
Deber analisis
 
Pdf glo
Pdf gloPdf glo
Pdf glo
 
Desarrollo de Software Orienta a Objetos
Desarrollo de Software Orienta a ObjetosDesarrollo de Software Orienta a Objetos
Desarrollo de Software Orienta a Objetos
 
Smbdoo
SmbdooSmbdoo
Smbdoo
 
Sistemas de información diapositivas de la 3era unidad
Sistemas de información diapositivas de la 3era unidadSistemas de información diapositivas de la 3era unidad
Sistemas de información diapositivas de la 3era unidad
 
Diseño o.o
Diseño o.oDiseño o.o
Diseño o.o
 
Diseño o.o
Diseño o.oDiseño o.o
Diseño o.o
 
Planificacion de proyecto de software
Planificacion de proyecto de softwarePlanificacion de proyecto de software
Planificacion de proyecto de software
 
Fundamentos para el diseño de un software
Fundamentos para el diseño de un softwareFundamentos para el diseño de un software
Fundamentos para el diseño de un software
 
Diseno Software
Diseno SoftwareDiseno Software
Diseno Software
 
Poovb
PoovbPoovb
Poovb
 
Glosario
GlosarioGlosario
Glosario
 

Último

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 

Último (13)

Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 

Diseño del Software y el Diseño Orientado a Objetos

  • 1. Diseño del Software y el Diseño Orientado a Objetos Integrante Alexander Sanchez 22.956.799 SAIAMateria: Sistemas 2
  • 2. Diseño de software Se define como: El proceso por el que un agente crea una especificación de un artefacto de software, pensado para cumplir unos objetivos, utilizando un conjunto de componentes primitivos y sujeto a restricciones. El diseño de software es el proceso de visionado y definición de soluciones software a uno o más conjuntos de problemas. Uno de los componentes principales del diseño de software es el análisis de requisitos del software (ARS, del inglés SRA). Se trata de una parte del proceso de desarrollo de software que enumera especificaciones empleadas en ingeniería de software. Si el software está "semiautomatizado" o centrado en el usuario, el diseño de software puede implicar también el diseño de experiencia de usuario que utiliza un storyboard o guión gráfico para ayudar determinar esas especificaciones. 2
  • 3. 3 Abstracción •Proceso o resultado de la generalización reduciendo el contenido de información de un concepto o un fenómeno observable Refinamiento • proceso de elaboración. Una jerarquía se desarrolla descomponiendo una declaración macroscópica de función de un modo sensato hasta que se logre obtener declaraciones del lenguaje de programación. Modularidad • La arquitectura de software está dividida en componentes llamados módulos. Arquitectura • se refiere a la estructura global del software y las maneras en que esa estructura proporciona integridad conceptual al sistema. Diseño
  • 4. 4 Jerarquía de control •Un estructura de programa que representa la organización de un componente e implica una jerarquía de control. Estructural Partitioning • La estructura de programa puede ser dividida horizontal y verticalmente. Las particiones horizontales definen ramas separadas de jerarquía modular para cada función importante Estructura de datos • es una representación de la relación lógica entre los elementos individuales de los datos Procedimiento de software • centra en el procesamiento de cada módulo individualmente. Diseño
  • 5. Lenguaje de modelado Un lenguaje de modelado es cualquier lenguaje artificial que puede usarse para expresar información, conocimiento o sistemas en una estructura que está definida por un conjunto consistente de reglas. • Architecture description language (ADL) es un lenguaje que se usa para describir y representar la arquitectura de software de un sistema de software. • Business Process Modeling Notation (BPMN) es un ejemplo de Lenguaje de modelado. • EXPRESS and EXPRESS-G (ISO 10303-11) es lenguaje de modelado estándar internacional de propósito general. • LePUS3 es un lenguaje de diseño de descripciones orientado a objetos y un lenguaje de especificación formal que sirve sobre todo para modelar grandes programas orientados a objetos (Java, C++, C#) y patrones de diseño. • Entre otros… 1
  • 6. Diseño orientado a objetos Se define como: El término "orientación por objeto" significa que organizaremos el software como una colección de objetos discretos que incorporan tanto estructuras de datos como procedimientos. Esto contrasta con la programación convencional, en la cual las estructura de datos y el comportamiento están solo aproximadamente conectados. El desarrollo orientado por objetos es una nueva forma de pensar acerca del software basado sobre abstracciones que existen en el mundo real. En este contexto, el desarrollo es referido a la primera parte del ciclo de vida del software: análisis, diseño e implantación. 6
  • 7. “ Un objeto es una entidad física o abstracta que tiene un comportamiento antes ciertos estímulos, tanto externos como de otros objetos específicos que se encuentran dentro del sistema. 7 Objeto
  • 8. Análisis y diseño orientado a objetos Enfoque de la ingeniería de software que modela un sistema como un grupo de objetos que interactúan entre sí. Este enfoque representa un domino absoluto en términos de conceptos compuestos por verbos y sustantivos, clasificados de acuerdo a su dependencia funcional. Todo sistema de información requiere de artefactos o componentes (clases) para llevar a cabo tareas, es de gran importancia dentro de la ingeniería de software tener un buen "análisis y diseño" para un mejor desarrollo, que conlleva a que tan "escalable" sea un sistema de información. 8
  • 9. Características principales del Diseño Orientado a Objetos ◇ Los objetos son abstracciones del mundo real o entidades del sistema que se administran entre ellas mismas ◇ Los objetos son independientes y encapsulan el estado y la representación de información ◇ La funcionalidad del sistema se expresa en términos de servicios de los objetos ◇ Las áreas de datos compartidas son eliminadas. Los objetos se comunican mediante paso de parámetros ◇ Los objetos pueden estar distribuidos y pueden ejecutarse en forma secuencial o en paralelo 9
  • 10. Diseño Orientado a Objetos Ventajas ◇ Fácil de mantener, los objetos representan entidades auto- contenidas ◇ Los objetos son componentes reutilizables ◇ Para algunos sistemas, puede haber un mapeo obvio entre las entidades del mundo real y los objetos del sistema 10 Fases: El DOO consta de ◇ Diseño de la Estructura de Objetos (DEO) ◇ Diseño del Comportamiento de Objetos (DCO)
  • 11. Clase Es la implantación de un tipo de objeto. Especifica la estructura de datos y métodos operativos permitidos para cada objeto. entes reactivos basados en modelo Conceptos básicos Polimorfismo Se aplica a una operación que adopta varias formas de implantación, de acuerdo al objeto. Operación Proceso que se puede solicitar como unidad (tipo de servicio solicitado) 11 Método Herencia de clase Reutilización Se toma el código existente y se adapta a la circunstancia. Permiten que se adapten las clases.
  • 12. Herencia de clase Es una implantación de la generalización, donde las propiedades de un tipo se aplican a sus subtipos. Hace que la estructura de datos y operaciones sean disponibles para su reutilización por las subclases. La herencia de las operaciones de una superclase permite que las clases compartan el código y la herencia de estructura de datos permite la reutilización de la estructura. 12
  • 13. Herencia Múltiple ◇ Una clase puede heredar estructuras de datos y operaciones de más de una superclase. ◇ Selección del Método ○ Cuando se envía solicitud a un objeto, el software selecciona los métodos a usar. El método no se almacena en el objeto. Se asocia con la clase. La herencia permite que una clase reutilice características de superclases. 13
  • 14. Polimorfismo Se aplica a una operación que adopta varias formas de implantación, de acuerdo al objeto. Puede hacer una solicitud de una operación sin conocer el método que debe ser llamado. Esos detalles quedan ocultos para el usuario. 14