SlideShare una empresa de Scribd logo
1 de 32
REPUBLICA BOLIVARIANA DE VENEZUELA
INSTITUTO UNIVERSITARIO POLITECNICO
“SANTIAGO MARIÑO”
EXTENSION MARACAY
Autor:
Esteban Ortegón
C.I.: 26.192.490
Un sistema informático
está compuesto por
hardware y software.
En cuanto al hardware,
su producción se realiza
sistemáticamente y la
base de conocimiento
para el desarrollo de
dicha actividad está
claramente definida.
La fiabilidad del
hardware es, en
principio, equiparable a
la de cualquier otra
máquina construida por
el hombre.
Por su parte el
desarrollo del software,
al ser una herramienta
que pretende tener
aplicación dentro del
contexto de un
problema real, tiene que
seguir un proceso de
análisis y diseño que
proporcione los
cimientos bajo los
cuales se va desarrollar
la aplicación
conjuntamente.
Los fundamentos del diseño ayudan al desarrollador de software a responder a estas preguntas:
ƒ¿Qué criterios puedo utilizar para dividir el software en componentes
individuales?
ƒ¿Cómo se separan los detalles de una función o de la estructura
de los datos de la representación conceptual del software?
ƒ¿Existen criterios uniformes que definan la calidad técnica de un
diseño de software?
•Pueden formularse varios niveles de abstracción.
•En el nivel superior de abstracción se establece una solución en términos generales, en lenguaje natural.
•En los niveles inferiores de abstracción se utiliza una orientación más procedimental.
•Por último, en el nivel más bajo de abstracción, se establece una solución, de forma que pueda implementarse
directamente
1. ABSTRACCIÓN:
•Es una estrategia de diseño descendente.
•La arquitectura de un programa se desarrolla en niveles sucesivos de refinamiento de los detalles
procedimentales.
•Se desarrolla una jerarquía descomponiendo una función de forma sucesiva hasta que se llega a las sentencias
del lenguaje de programación.
2. REFINAMIENTO:
•El software se divide en componentes con nombres y ubicaciones determinados, que se denominan módulos y
que se integran para satisfacer los requisitos del proveedor.
3. MODULARIDAD:
•La arquitectura del software se obtiene mediante un proceso de partición, que relaciona los problemas del mundo
real (definidos en el análisis de requerimientos) con las soluciones software para resolver los problemas software.
4. ARQUITECTURA DEL SOFTWARE:
• Representa la organización jerárquica de los módulos de un programa e implica una jerarquía de
control.
• La representación de jerarquía se suele representar con diagramas de árbol, aunque también se
pueden utilizar otros tipos de notaciones.
5. JERARQUÍA DE CONTROL:
• Es una representación de la lógica que existe entre los elementos individuales de información.
• Debido a que la estructura de la información afectará de forma determinante al diseño procedimental, la
estructura de datos es tan importante como la estructura del programa en la representación de la
arquitectura del software.
6. ESTRUCTURA DE DATOS:
• Mientras que la estructura del programa define la jerarquía de control, independientemente de las
decisiones y secuencias de procesamiento.
• El procedimiento del software se centra en los detalles de procesamiento de cada módulo individual.
7. PROCEDIMIENTOS DEL SOFTWARE:
• El principio de ocultamiento de la información sugiere que los módulos deben especificarse de forma
que la información (procedimientos y datos) contenida dentro de un módulo sea inaccesible a otros
módulos que no necesiten tal información.
8. OCULTAMIENTO DE INFORMACIÓN:
El diseño orientado a objetos más conocido como DOO, transforma el modelo de análisis
creado, usando análisis orientado a objetos. El DOO requiere la definición de:
Una arquitectura multicapa.
La especificación de subsistemas que realizan
funciones y proveen soporte de infraestructura.
Una descripción de objetos (clases).
Una descripción de los mecanismos de
comunicación.
Es importante porque,
establece un anteproyecto de
diseño, el cual hace que se
maximice la reutilización de
este.
DISEÑO PARA SISTEMAS ORIENTADOS A OBJETOS
Se divide en 4 capas:
La Capa
Subsistema:
• Contiene una representación de cada uno de los
subsistemas, para conseguir sus requisitos definidos por
el cliente.
La Capa De Clases
Y Objetos:
• Contiene la jerarquía de clases, que permite al sistema
ser creado usando generalizaciones y con
especificaciones mas acertadas.
La Capa De
Mensaje:
• Contiene detalles de diseño, que permite a cada objeto
comunicarse son sus colaboradores.
La Capa De
Responsabilidades:
• Contiene estructuras de datos y diseños algorítmicos,
para todos los atributos y operaciones de cada objeto.
La calidad del software se define como:
Concordancia Con
Los Requisitos
Funcionales
Y De Rendimiento
Explícitamente
Establecidos,
Con Los
Estándares De
Desarrollo
Explícitamente
Documentados,
Y Con Las
Características
Implícitas
Que Se Espera De
Todo Software
Desarrollado
Profesionalmente.
La garantía de calidad del software se define como:
Consiste En La Auditoría
Y Las
Funciones
De Información
De La Gestión.
El Objetivo De
La Garantía De
Calidad
Es
Proporcionar
La Gestión
Para Informar
De Los Datos
Necesarios
Sobre La
Calidad Del
Producto,
Por Lo Que Se
Va Adquiriendo
Una Visión Más
Profunda
Y Segura De
Que La Calidad
Del Producto
Está
Cumpliendo
Sus Objetivos.
Tres puntos importantes:
1. Los requisitos del software son la
base de las medidas de la calidad. La
falta de concordancia con los
requisitos es una falta de calidad.
2. Los estándares especificados
definen un conjunto de criterios de
desarrollo que guían la forma en que
se aplica la ingeniería del software. Si
no se siguen esos criterios, casi
siempre habrá falta de calidad.
3. Existe un conjunto de requisitos
implícitos que a menudo no se
mencionan (por ejemplo: el deseo por
facilitar el uso y un buen
mantenimiento). Si el software se
ajusta a sus requisitos explícitos pero
falla en alcanzar los requisitos
implícitos, la calidad del software
queda en entredicho.
1. Prueba Unitaria
•La prueba unitaria se aplica en el elemento más pequeño de un sistema, cada componente es testeado para asegurar que
funciona correctamente.
•Normalmente desarrolla una única función cohesiva.
•La función de la prueba unitaria es de analizar cada pequeña parte y testear que funciona correctamente.
2. Pruebas De Integración
•La prueba de integración es una extensión lógica de las pruebas unitarias.
•Dos unidades que ya han sido testeadas y combinadas en un componente y su interface son testeadas entre ellas.
•El motivo de las pruebas de integración es de verificar la funcionalidad y la seguridad entre los componentes que han sido
integrados.
•Identifica los problemas que ocurren cuando las unidades se combinan.
3. Pruebas Funcionales
•Las pruebas funcionales se basan en asegurarse de que todas las características funcionen de cabo a rabo.
•Las pruebas funcionales testean una pequeña parte de la funcionalidad del sistema entera.
•Se aplica para verificar que las aplicaciones y funcionalidades del software actuan correctamente acorde a un diseño específico.
•Las pruebas funcionales son elementos cruciales para asegurar la calidad del producto software y confirmar que actúa acorde a
sus funciones tal y como el usuario espera.
4. Pruebas De Rendimiento
•La prueba de rendimiento es una práctica de test que determina la actuación de un sistema en términos de respuesta y
estabilidad en una carga de trabajo en particular.
•También puede servir para investigar, medir, validar o verificar otros atributos de calidad del sistema, como la escalabilidad,
seguridad y uso de recursos.
•Las pruebas de rendimiento construye unos estándares de actuación en la implementación, diseño y arquitectura de un sistema.
Proceso Por El Cual Se Mejora Y Optimiza
El SoftwareInstalado,
Este
Mantenimiento
Se Realiza
Para
La Prevención
De
Posibles
Problemas
Que Puedan
Llegar A Surgir
A Medida Que
Se Utiliza
Seguridad del software
La seguridad del software es
una actividad de garantía de
calidad del software que se
centra en la identificación y
evaluación de los riesgos
potenciales que pueden
producir un impacto negativo en
el software y hacer que falle el
sistema completo.
Si se pueden identificar pronto
los riesgos en el proceso de
ingeniería del software podrán
especificarse las características
del diseño del software que
permitan eliminar o controlar los
riesgos potenciales.
1.- Descomposición funcional
La descomposición funcional se
refiere al proceso de identificar y
resolver las relaciones funcionales
en sus partes constituyentes, de tal
forma que la función global pueda
ser reconstruida a partir de sus
partes.
Por lo general, la descomposición
funcional se realiza para identificar y
entender los componentes o partes
que constituyen un todo (o función
global).
En este proceso, es vital identificar
las interacciones entre
componentes.
Aplicado a la Ingeniería de
requisitos, consiste en tomar los
requerimientos de software,
dividirlos en partes y analizarlos
individualmente. De ser necesario,
se pueden descomponer en más
partes hasta lograr un nivel
adecuado de detalle.
En cierto sentido, el proceso es
similar al de la elaboración de una
estructura de desglose de trabajo de
un proyecto.
En Ingeniería de sistemas, la
descomposición funcional consiste
en definir un sistema en términos
funcionales, para luego definir
funciones de más bajo nivel y
establecer las relaciones con estas
funciones de alto nivel.
La intención es dividir un sistema de
tal forma que cada componente se
pueda describir sin necesidad de
referir a otro componente.
De esta forma, cada parte del
sistema tendrá funciones
independientes, que pueden
reusarse y reemplazarse.
2.- Especificación vía Sentencias Textuales
Es la forma tradicional de la especificación de requerimientos de software.
Se usan especificaciones textuales en lenguaje natural, que se documentan en
matrices de trazabilidad de requerimientos o definiciones del alcance.
El procedimiento consiste en tomar el requerimiento producto del levantamiento de
información, para desarrollar una narrativa más detallada.
No usa herramientas visuales como los flujogramas o estructura como los casos de uso,
es simplemente una descripción más detallada del requerimiento en lenguaje natural.
3.- Modelado del proceso
Comprende la elaboración de diagramas de flujo de procesos (Flujogramas) a partir de los requerimientos
del software.
Existen diversas herramientas de modelado de procesos, cada una de las cuales posee sus propios
símbolos y reglas.
Es muy útil para entender el trabajo realizado en múltiples pasos, tareas, roles y departamentos
intervinientes.
Los procesos son iniciados por eventos y pueden abarcar actividades automatizadas, manuales o
combinación entre ambas.
Su naturaleza visual ayuda a la comprensión y comunicación a terceros.
Cuando los procesos son complejos, deben desglosarse en componentes (subprocesos).
La relación entre los diagramas de flujo y la gerencia de proyectos es fundamental para el éxito.
En Ingeniería de software, en análisis de
dominio consiste en analizar sistemas o
software relacionados en un dominio, con
la finalidad de encontrar sus partes
comunes y partes que los diferencian.
Produce un modelo de contexto de
negocio para todo el sistema.
Un modelo de dominio comprende
diagramas conceptuales que incluyen
tanto el comportamiento de un sistema
como sus datos.
Un tipo de modelo de dominio son los
diagramas de funcionalidades (Features
Diagrams), que es una representación
“compacta” del sistema o aplicación en
términos de sus características.
El análisis de dominio produce modelos
orientados a objetos o modelos
relacionales de datos, que pueden ser
usados por los desarrolladores de
software como base de arquitecturas de
software y aplicaciones.
4.- Modelo de dominio
No son la mejor opción en sistemas sin usuarios, o dominados fundamentalmente por requerimientos no funcionales.
Son útiles en sistemas informáticos orientados a la funcionalidad (transacciones con el usuario), que se van a implementar
orientados a objetos y con UML.
Además de usarse para analizar los requerimientos de software, también pueden usarse en el diseño del sistema e inclusive
para definir pruebas de caja negra (Testing).
Formato simple y estructurado que puede ser compartido entre usuarios y desarrolladores.
En el ámbito académico y profesional, es una de las técnicas de mayor difusión para especificar el comportamiento del
Sistema.
En el Lenguaje de Modelado Unificado (UML), un caso de uso es una secuencia de interacciones entre un sistema y alguien o
algo que usa alguno de sus servicios.
5.- Casos de Uso
La lista de chequeo (Checklist) consiste en una serie de preguntas o revisiones que se
realizan sobre los requerimientos de software, que nos sean presentados de forma escrita.
Una lista de chequeo puede realizar preguntas como:
• ¿Se han especificado los requisitos de hardware y software?
• ¿Se han realizado consideraciones de seguridad?
• ¿El nivel de granularidad del requerimiento se ha incluido?
• ¿Se ha incluido el código de referencia en para identificar el requisito en el desglose de requerimientos?
• ¿Está escrito el requerimiento en un lenguaje claro y conciso?
• ¿El requerimiento es único? (no existe duplicidad con otro requerimiento).
• Y muchas preguntas más.
La lista de chequeo sirve de marco de trabajo y procedimental para revisar el requerimiento,
facilitando su análisis de forma estructurada.
Los requerimientos se pueden revisar sobre la matriz de trazabilidad de requerimientos o
sobre la definición del alcance.
6.- Checklists
Revisión no destructiva de los requerimientos de software. Por
ejemplo:
• Examinar un software visualmente para constatar que las pantallas solicitadas se
encuentran incluidas.
• Verificar la inclusión de los campos necesarios para el ingreso de datos.
• Verificar la existencia de los botones necesarios para iniciar la funcionalidad que ha sido
requerida.
• Verificar que el requerimiento se apega a los estándares definidos para la aplicación. Por
ejemplo estándares de navegación entre pantallas y estándares de interfaz gráfica.
De forma similar al uso de la lista de chequeo, la inspección consiste
en tomar el requerimiento definido en la matriz de trazabilidad o
definición de alcance, leerlo y producir un resultado para su corrección.
7.- Inspección
Consiste en elaborar representaciones visuales (interfaz gráfica con el usuario) de los requerimientos de
software.
Es una herramienta muy útil para validar con los usuarios, clientes e interesados de proyecto que el
diseño funcional corresponde con los requerimientos de software (Que existe entendimiento común
entre desarrolladores de software y usuarios).
Permite a desarrolladores y usuarios entender mejor los requerimientos, determinar cuáles son
indispensables y cuales deseables, e identificar riesgos de forma temprana.
Puede enfocarse en toda la solución o sólo en áreas específicas.
Puede extenderse innecesariamente en el tiempo si las discusiones se realizan en torno al como en
lugar de en torno al que.
La elaboración de prototipos conlleva iteraciones entre desarrolladores y usuarios, en los cuales se van
elaborando varios prototipos y sometidos a evaluación del cliente.
8.- Prototipos
Con el constante
desarrollo e innovación
de las tecnologías
utilizadas en las
implementaciones de
software, es deseable
tener un modelo no
dependiente de
mecanismos, métodos y
plataformas específicas,
adecuándolo a
necesidades y
ambientes particulares.
Si bien se han utilizado
conceptos de
paradigmas como el de
desarrollo orientado a
objetos o sistemas en
tiempo real, se ha
buscado generalizarse
para que su
interpretación pueda
hacerse según
condiciones singulares
de los problemas a
tratar.
La consideración de un
mecanismo para realizar
la gestión del riesgo
hace parte de los
principios técnicos para
el desarrollo de
proyectos de ingeniería.
A nivel de la Ingeniería
de software y del
modelo planteado, la
gestión actúa como
instrumento para el
control de calidad y
como guía para conocer
las limitaciones y
características del ciclo
de vida.
Anónimo. (2014) Fundamentos del diseño de software. [Pagina web en Línea] Disponible en:
https://cmapspublic.ihmc.us/rid=1LQ5KGY9H-J0CYGK-3GBN/FundamentosDiseno.pdf (Consulta: 2019, 06 de
Julio)
Cabrera, A. (2016) Diseño orientado a objetos. [Pagina web en Línea] Disponible en:
https://www.emagister.com/uploads_courses/Comunidad_Emagister_63082_63082.pdf (Consulta: 2019, 06 de
Julio)
Fernández, R. (2019) Garantía de la Calidad de Software. [Pagina web en Línea] Disponible en:
http://files.rfernandez.webnode.es/200000013-3f04e40f77/Resumen%20del%203%20parcial%20Cap%208-9-
19.pdf (Consulta: 2019, 06 de Julio)
Anónimo. (2019) Técnicas de testeo de software y herramientas. [Pagina web en Línea] Disponible en:
https://apiumhub.com/es/tech-blog-barcelona/tecnicas-de-testeo-de-software/ (Consulta: 2019, 06 de Julio)
Anónimo. (2011) Mantenimiento preventivo del software. [Pagina web en Línea] Disponible en:
http://informacione13.over-blog.com/article-mantwnimiwnto-preventivo-del-software-88394816.html (Consulta:
2019, 06 de Julio)

Más contenido relacionado

La actualidad más candente

Fundamentos del diseño de software
Fundamentos del diseño de software Fundamentos del diseño de software
Fundamentos del diseño de software AlessandreMndez
 
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...negroues
 
4. Diseño e Implementación de Software
4. Diseño e Implementación de Software4. Diseño e Implementación de Software
4. Diseño e Implementación de SoftwareMario A Moreno Rocha
 
Proyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de CosteProyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de CosteCAMILO
 
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 REQUERIMIENTOSValentina
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructuradomateraactivo
 
Fundamentos para el diseno de software
Fundamentos para el diseno de softwareFundamentos para el diseno de software
Fundamentos para el diseno de softwareMaraPierua
 
Arquitectura Basada En Componentes
Arquitectura Basada En ComponentesArquitectura Basada En Componentes
Arquitectura Basada En Componentesurumisama
 
Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software
Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del softwarePteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software
Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del softwaresara272016
 
Capitulo04
Capitulo04Capitulo04
Capitulo04martin
 
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREMETODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREadark
 
Diseno Software
Diseno SoftwareDiseno Software
Diseno Softwarealfmuny
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de SoftwareUPT
 
Fundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de SoftwareFundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de SoftwareJoseCaira2
 
Diseño del software
Diseño del softwareDiseño del software
Diseño del softwareduberlisg
 

La actualidad más candente (20)

Fundamentos del diseño de software
Fundamentos del diseño de software Fundamentos del diseño de software
Fundamentos del diseño de software
 
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...Clase no. 1 unidad no. iii  introduccion al analisis y diseño estructurado  d...
Clase no. 1 unidad no. iii introduccion al analisis y diseño estructurado d...
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
 
Adrian adrianza
Adrian adrianzaAdrian adrianza
Adrian adrianza
 
mule db
mule dbmule db
mule db
 
Diseño Estructurado
Diseño EstructuradoDiseño Estructurado
Diseño Estructurado
 
4. Diseño e Implementación de Software
4. Diseño e Implementación de Software4. Diseño e Implementación de Software
4. Diseño e Implementación de Software
 
Proyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de CosteProyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de Coste
 
Diseño Estructurado
Diseño EstructuradoDiseño Estructurado
Diseño Estructurado
 
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
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructurado
 
Fundamentos para el diseno de software
Fundamentos para el diseno de softwareFundamentos para el diseno de software
Fundamentos para el diseno de software
 
Arquitectura Basada En Componentes
Arquitectura Basada En ComponentesArquitectura Basada En Componentes
Arquitectura Basada En Componentes
 
Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software
Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del softwarePteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software
Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software
 
Capitulo04
Capitulo04Capitulo04
Capitulo04
 
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWAREMETODOLOGÍA PARA EL DISEÑO DE SOFTWARE
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
 
Diseno Software
Diseno SoftwareDiseno Software
Diseno Software
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
 
Fundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de SoftwareFundamentos Básicos del Diseño de Software
Fundamentos Básicos del Diseño de Software
 
Diseño del software
Diseño del softwareDiseño del software
Diseño del software
 

Similar a FUNDAMENTO DEL DISEÑO DE SOFTWARE

Diseño del software
Diseño del softwareDiseño del software
Diseño del softwaregenesisptc_
 
Fundamentos del software
Fundamentos del softwareFundamentos del software
Fundamentos del softwaremrquaife
 
Fundamento del Diseño de Software
Fundamento del Diseño de SoftwareFundamento del Diseño de Software
Fundamento del Diseño de SoftwareGlamisleidys Chourio
 
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
 
Trabajo 2 exposicion
Trabajo 2 exposicionTrabajo 2 exposicion
Trabajo 2 exposicionEvelin Oña
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de SoftwareMaricela Ramirez
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructuradoDascorp
 
presentacion_edisleynissilva
presentacion_edisleynissilvapresentacion_edisleynissilva
presentacion_edisleynissilvaeddysilva18
 
Fundamentos del diseno software
Fundamentos del diseno softwareFundamentos del diseno software
Fundamentos del diseno softwareclaudiocaizales
 
Fundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de softwareFundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de softwaremichellvillegas3
 
2. requerimientos del software
2. requerimientos del software2. requerimientos del software
2. requerimientos del softwareuniv of pamplona
 
Fundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del SoftwareFundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del SoftwareRichard J. Nuñez
 
presentacion hebelyn
presentacion hebelynpresentacion hebelyn
presentacion hebelynHebelynBravo
 
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116AlejandroCoronado26
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxRunayli
 
Exposicion.ppt
Exposicion.pptExposicion.ppt
Exposicion.pptEmiAkd
 

Similar a FUNDAMENTO DEL DISEÑO DE SOFTWARE (20)

Diseño del software
Diseño del softwareDiseño del software
Diseño del software
 
Fundamentos del software
Fundamentos del softwareFundamentos del software
Fundamentos del software
 
Fundamento del Diseño de Software
Fundamento del Diseño de SoftwareFundamento del Diseño de Software
Fundamento del Diseño 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
 
Trabajo 2 exposicion
Trabajo 2 exposicionTrabajo 2 exposicion
Trabajo 2 exposicion
 
Análisis del Proyecto de Software
Análisis del Proyecto de SoftwareAnálisis del Proyecto de Software
Análisis del Proyecto de Software
 
Jose r ojas ii
Jose r ojas iiJose r ojas ii
Jose r ojas ii
 
Diseño estructurado
Diseño estructuradoDiseño estructurado
Diseño estructurado
 
presentacion_edisleynissilva
presentacion_edisleynissilvapresentacion_edisleynissilva
presentacion_edisleynissilva
 
Fundamentos del diseno software
Fundamentos del diseno softwareFundamentos del diseno software
Fundamentos del diseno software
 
Diseño de sistemas
Diseño de sistemasDiseño de sistemas
Diseño de sistemas
 
Fundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de softwareFundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de software
 
2. requerimientos del software
2. requerimientos del software2. requerimientos del software
2. requerimientos del software
 
Diseno de Software y DOO
Diseno de Software y DOODiseno de Software y DOO
Diseno de Software y DOO
 
Fundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del SoftwareFundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del Software
 
presentacion hebelyn
presentacion hebelynpresentacion hebelyn
presentacion hebelyn
 
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
Fundamentos básicos para el Diseño de Software - Alejandro Coronado 26776116
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptx
 
Taller de Programación Distribuida
Taller de Programación DistribuidaTaller de Programación Distribuida
Taller de Programación Distribuida
 
Exposicion.ppt
Exposicion.pptExposicion.ppt
Exposicion.ppt
 

Último

Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIAAbelardoVelaAlbrecht1
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 

Último (20)

Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 

FUNDAMENTO DEL DISEÑO DE SOFTWARE

  • 1. REPUBLICA BOLIVARIANA DE VENEZUELA INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO” EXTENSION MARACAY Autor: Esteban Ortegón C.I.: 26.192.490
  • 2.
  • 3. Un sistema informático está compuesto por hardware y software. En cuanto al hardware, su producción se realiza sistemáticamente y la base de conocimiento para el desarrollo de dicha actividad está claramente definida. La fiabilidad del hardware es, en principio, equiparable a la de cualquier otra máquina construida por el hombre. Por su parte el desarrollo del software, al ser una herramienta que pretende tener aplicación dentro del contexto de un problema real, tiene que seguir un proceso de análisis y diseño que proporcione los cimientos bajo los cuales se va desarrollar la aplicación conjuntamente.
  • 4.
  • 5. Los fundamentos del diseño ayudan al desarrollador de software a responder a estas preguntas: ƒ¿Qué criterios puedo utilizar para dividir el software en componentes individuales? ƒ¿Cómo se separan los detalles de una función o de la estructura de los datos de la representación conceptual del software? ƒ¿Existen criterios uniformes que definan la calidad técnica de un diseño de software?
  • 6. •Pueden formularse varios niveles de abstracción. •En el nivel superior de abstracción se establece una solución en términos generales, en lenguaje natural. •En los niveles inferiores de abstracción se utiliza una orientación más procedimental. •Por último, en el nivel más bajo de abstracción, se establece una solución, de forma que pueda implementarse directamente 1. ABSTRACCIÓN: •Es una estrategia de diseño descendente. •La arquitectura de un programa se desarrolla en niveles sucesivos de refinamiento de los detalles procedimentales. •Se desarrolla una jerarquía descomponiendo una función de forma sucesiva hasta que se llega a las sentencias del lenguaje de programación. 2. REFINAMIENTO: •El software se divide en componentes con nombres y ubicaciones determinados, que se denominan módulos y que se integran para satisfacer los requisitos del proveedor. 3. MODULARIDAD: •La arquitectura del software se obtiene mediante un proceso de partición, que relaciona los problemas del mundo real (definidos en el análisis de requerimientos) con las soluciones software para resolver los problemas software. 4. ARQUITECTURA DEL SOFTWARE:
  • 7. • Representa la organización jerárquica de los módulos de un programa e implica una jerarquía de control. • La representación de jerarquía se suele representar con diagramas de árbol, aunque también se pueden utilizar otros tipos de notaciones. 5. JERARQUÍA DE CONTROL: • Es una representación de la lógica que existe entre los elementos individuales de información. • Debido a que la estructura de la información afectará de forma determinante al diseño procedimental, la estructura de datos es tan importante como la estructura del programa en la representación de la arquitectura del software. 6. ESTRUCTURA DE DATOS: • Mientras que la estructura del programa define la jerarquía de control, independientemente de las decisiones y secuencias de procesamiento. • El procedimiento del software se centra en los detalles de procesamiento de cada módulo individual. 7. PROCEDIMIENTOS DEL SOFTWARE: • El principio de ocultamiento de la información sugiere que los módulos deben especificarse de forma que la información (procedimientos y datos) contenida dentro de un módulo sea inaccesible a otros módulos que no necesiten tal información. 8. OCULTAMIENTO DE INFORMACIÓN:
  • 8.
  • 9. El diseño orientado a objetos más conocido como DOO, transforma el modelo de análisis creado, usando análisis orientado a objetos. El DOO requiere la definición de: Una arquitectura multicapa. La especificación de subsistemas que realizan funciones y proveen soporte de infraestructura. Una descripción de objetos (clases). Una descripción de los mecanismos de comunicación. Es importante porque, establece un anteproyecto de diseño, el cual hace que se maximice la reutilización de este.
  • 10. DISEÑO PARA SISTEMAS ORIENTADOS A OBJETOS Se divide en 4 capas: La Capa Subsistema: • Contiene una representación de cada uno de los subsistemas, para conseguir sus requisitos definidos por el cliente. La Capa De Clases Y Objetos: • Contiene la jerarquía de clases, que permite al sistema ser creado usando generalizaciones y con especificaciones mas acertadas. La Capa De Mensaje: • Contiene detalles de diseño, que permite a cada objeto comunicarse son sus colaboradores. La Capa De Responsabilidades: • Contiene estructuras de datos y diseños algorítmicos, para todos los atributos y operaciones de cada objeto.
  • 11.
  • 12. La calidad del software se define como: Concordancia Con Los Requisitos Funcionales Y De Rendimiento Explícitamente Establecidos, Con Los Estándares De Desarrollo Explícitamente Documentados, Y Con Las Características Implícitas Que Se Espera De Todo Software Desarrollado Profesionalmente.
  • 13. La garantía de calidad del software se define como: Consiste En La Auditoría Y Las Funciones De Información De La Gestión. El Objetivo De La Garantía De Calidad Es Proporcionar La Gestión Para Informar De Los Datos Necesarios Sobre La Calidad Del Producto, Por Lo Que Se Va Adquiriendo Una Visión Más Profunda Y Segura De Que La Calidad Del Producto Está Cumpliendo Sus Objetivos.
  • 14. Tres puntos importantes: 1. Los requisitos del software son la base de las medidas de la calidad. La falta de concordancia con los requisitos es una falta de calidad. 2. Los estándares especificados definen un conjunto de criterios de desarrollo que guían la forma en que se aplica la ingeniería del software. Si no se siguen esos criterios, casi siempre habrá falta de calidad. 3. Existe un conjunto de requisitos implícitos que a menudo no se mencionan (por ejemplo: el deseo por facilitar el uso y un buen mantenimiento). Si el software se ajusta a sus requisitos explícitos pero falla en alcanzar los requisitos implícitos, la calidad del software queda en entredicho.
  • 15.
  • 16. 1. Prueba Unitaria •La prueba unitaria se aplica en el elemento más pequeño de un sistema, cada componente es testeado para asegurar que funciona correctamente. •Normalmente desarrolla una única función cohesiva. •La función de la prueba unitaria es de analizar cada pequeña parte y testear que funciona correctamente. 2. Pruebas De Integración •La prueba de integración es una extensión lógica de las pruebas unitarias. •Dos unidades que ya han sido testeadas y combinadas en un componente y su interface son testeadas entre ellas. •El motivo de las pruebas de integración es de verificar la funcionalidad y la seguridad entre los componentes que han sido integrados. •Identifica los problemas que ocurren cuando las unidades se combinan. 3. Pruebas Funcionales •Las pruebas funcionales se basan en asegurarse de que todas las características funcionen de cabo a rabo. •Las pruebas funcionales testean una pequeña parte de la funcionalidad del sistema entera. •Se aplica para verificar que las aplicaciones y funcionalidades del software actuan correctamente acorde a un diseño específico. •Las pruebas funcionales son elementos cruciales para asegurar la calidad del producto software y confirmar que actúa acorde a sus funciones tal y como el usuario espera. 4. Pruebas De Rendimiento •La prueba de rendimiento es una práctica de test que determina la actuación de un sistema en términos de respuesta y estabilidad en una carga de trabajo en particular. •También puede servir para investigar, medir, validar o verificar otros atributos de calidad del sistema, como la escalabilidad, seguridad y uso de recursos. •Las pruebas de rendimiento construye unos estándares de actuación en la implementación, diseño y arquitectura de un sistema.
  • 17.
  • 18. Proceso Por El Cual Se Mejora Y Optimiza El SoftwareInstalado, Este Mantenimiento Se Realiza Para La Prevención De Posibles Problemas Que Puedan Llegar A Surgir A Medida Que Se Utiliza
  • 19. Seguridad del software La seguridad del software es una actividad de garantía de calidad del software que se centra en la identificación y evaluación de los riesgos potenciales que pueden producir un impacto negativo en el software y hacer que falle el sistema completo. Si se pueden identificar pronto los riesgos en el proceso de ingeniería del software podrán especificarse las características del diseño del software que permitan eliminar o controlar los riesgos potenciales.
  • 20.
  • 21. 1.- Descomposición funcional La descomposición funcional se refiere al proceso de identificar y resolver las relaciones funcionales en sus partes constituyentes, de tal forma que la función global pueda ser reconstruida a partir de sus partes. Por lo general, la descomposición funcional se realiza para identificar y entender los componentes o partes que constituyen un todo (o función global). En este proceso, es vital identificar las interacciones entre componentes. Aplicado a la Ingeniería de requisitos, consiste en tomar los requerimientos de software, dividirlos en partes y analizarlos individualmente. De ser necesario, se pueden descomponer en más partes hasta lograr un nivel adecuado de detalle. En cierto sentido, el proceso es similar al de la elaboración de una estructura de desglose de trabajo de un proyecto. En Ingeniería de sistemas, la descomposición funcional consiste en definir un sistema en términos funcionales, para luego definir funciones de más bajo nivel y establecer las relaciones con estas funciones de alto nivel. La intención es dividir un sistema de tal forma que cada componente se pueda describir sin necesidad de referir a otro componente. De esta forma, cada parte del sistema tendrá funciones independientes, que pueden reusarse y reemplazarse.
  • 22. 2.- Especificación vía Sentencias Textuales Es la forma tradicional de la especificación de requerimientos de software. Se usan especificaciones textuales en lenguaje natural, que se documentan en matrices de trazabilidad de requerimientos o definiciones del alcance. El procedimiento consiste en tomar el requerimiento producto del levantamiento de información, para desarrollar una narrativa más detallada. No usa herramientas visuales como los flujogramas o estructura como los casos de uso, es simplemente una descripción más detallada del requerimiento en lenguaje natural.
  • 23. 3.- Modelado del proceso Comprende la elaboración de diagramas de flujo de procesos (Flujogramas) a partir de los requerimientos del software. Existen diversas herramientas de modelado de procesos, cada una de las cuales posee sus propios símbolos y reglas. Es muy útil para entender el trabajo realizado en múltiples pasos, tareas, roles y departamentos intervinientes. Los procesos son iniciados por eventos y pueden abarcar actividades automatizadas, manuales o combinación entre ambas. Su naturaleza visual ayuda a la comprensión y comunicación a terceros. Cuando los procesos son complejos, deben desglosarse en componentes (subprocesos). La relación entre los diagramas de flujo y la gerencia de proyectos es fundamental para el éxito.
  • 24. En Ingeniería de software, en análisis de dominio consiste en analizar sistemas o software relacionados en un dominio, con la finalidad de encontrar sus partes comunes y partes que los diferencian. Produce un modelo de contexto de negocio para todo el sistema. Un modelo de dominio comprende diagramas conceptuales que incluyen tanto el comportamiento de un sistema como sus datos. Un tipo de modelo de dominio son los diagramas de funcionalidades (Features Diagrams), que es una representación “compacta” del sistema o aplicación en términos de sus características. El análisis de dominio produce modelos orientados a objetos o modelos relacionales de datos, que pueden ser usados por los desarrolladores de software como base de arquitecturas de software y aplicaciones. 4.- Modelo de dominio
  • 25. No son la mejor opción en sistemas sin usuarios, o dominados fundamentalmente por requerimientos no funcionales. Son útiles en sistemas informáticos orientados a la funcionalidad (transacciones con el usuario), que se van a implementar orientados a objetos y con UML. Además de usarse para analizar los requerimientos de software, también pueden usarse en el diseño del sistema e inclusive para definir pruebas de caja negra (Testing). Formato simple y estructurado que puede ser compartido entre usuarios y desarrolladores. En el ámbito académico y profesional, es una de las técnicas de mayor difusión para especificar el comportamiento del Sistema. En el Lenguaje de Modelado Unificado (UML), un caso de uso es una secuencia de interacciones entre un sistema y alguien o algo que usa alguno de sus servicios. 5.- Casos de Uso
  • 26. La lista de chequeo (Checklist) consiste en una serie de preguntas o revisiones que se realizan sobre los requerimientos de software, que nos sean presentados de forma escrita. Una lista de chequeo puede realizar preguntas como: • ¿Se han especificado los requisitos de hardware y software? • ¿Se han realizado consideraciones de seguridad? • ¿El nivel de granularidad del requerimiento se ha incluido? • ¿Se ha incluido el código de referencia en para identificar el requisito en el desglose de requerimientos? • ¿Está escrito el requerimiento en un lenguaje claro y conciso? • ¿El requerimiento es único? (no existe duplicidad con otro requerimiento). • Y muchas preguntas más. La lista de chequeo sirve de marco de trabajo y procedimental para revisar el requerimiento, facilitando su análisis de forma estructurada. Los requerimientos se pueden revisar sobre la matriz de trazabilidad de requerimientos o sobre la definición del alcance. 6.- Checklists
  • 27. Revisión no destructiva de los requerimientos de software. Por ejemplo: • Examinar un software visualmente para constatar que las pantallas solicitadas se encuentran incluidas. • Verificar la inclusión de los campos necesarios para el ingreso de datos. • Verificar la existencia de los botones necesarios para iniciar la funcionalidad que ha sido requerida. • Verificar que el requerimiento se apega a los estándares definidos para la aplicación. Por ejemplo estándares de navegación entre pantallas y estándares de interfaz gráfica. De forma similar al uso de la lista de chequeo, la inspección consiste en tomar el requerimiento definido en la matriz de trazabilidad o definición de alcance, leerlo y producir un resultado para su corrección. 7.- Inspección
  • 28. Consiste en elaborar representaciones visuales (interfaz gráfica con el usuario) de los requerimientos de software. Es una herramienta muy útil para validar con los usuarios, clientes e interesados de proyecto que el diseño funcional corresponde con los requerimientos de software (Que existe entendimiento común entre desarrolladores de software y usuarios). Permite a desarrolladores y usuarios entender mejor los requerimientos, determinar cuáles son indispensables y cuales deseables, e identificar riesgos de forma temprana. Puede enfocarse en toda la solución o sólo en áreas específicas. Puede extenderse innecesariamente en el tiempo si las discusiones se realizan en torno al como en lugar de en torno al que. La elaboración de prototipos conlleva iteraciones entre desarrolladores y usuarios, en los cuales se van elaborando varios prototipos y sometidos a evaluación del cliente. 8.- Prototipos
  • 29.
  • 30. Con el constante desarrollo e innovación de las tecnologías utilizadas en las implementaciones de software, es deseable tener un modelo no dependiente de mecanismos, métodos y plataformas específicas, adecuándolo a necesidades y ambientes particulares. Si bien se han utilizado conceptos de paradigmas como el de desarrollo orientado a objetos o sistemas en tiempo real, se ha buscado generalizarse para que su interpretación pueda hacerse según condiciones singulares de los problemas a tratar. La consideración de un mecanismo para realizar la gestión del riesgo hace parte de los principios técnicos para el desarrollo de proyectos de ingeniería. A nivel de la Ingeniería de software y del modelo planteado, la gestión actúa como instrumento para el control de calidad y como guía para conocer las limitaciones y características del ciclo de vida.
  • 31.
  • 32. Anónimo. (2014) Fundamentos del diseño de software. [Pagina web en Línea] Disponible en: https://cmapspublic.ihmc.us/rid=1LQ5KGY9H-J0CYGK-3GBN/FundamentosDiseno.pdf (Consulta: 2019, 06 de Julio) Cabrera, A. (2016) Diseño orientado a objetos. [Pagina web en Línea] Disponible en: https://www.emagister.com/uploads_courses/Comunidad_Emagister_63082_63082.pdf (Consulta: 2019, 06 de Julio) Fernández, R. (2019) Garantía de la Calidad de Software. [Pagina web en Línea] Disponible en: http://files.rfernandez.webnode.es/200000013-3f04e40f77/Resumen%20del%203%20parcial%20Cap%208-9- 19.pdf (Consulta: 2019, 06 de Julio) Anónimo. (2019) Técnicas de testeo de software y herramientas. [Pagina web en Línea] Disponible en: https://apiumhub.com/es/tech-blog-barcelona/tecnicas-de-testeo-de-software/ (Consulta: 2019, 06 de Julio) Anónimo. (2011) Mantenimiento preventivo del software. [Pagina web en Línea] Disponible en: http://informacione13.over-blog.com/article-mantwnimiwnto-preventivo-del-software-88394816.html (Consulta: 2019, 06 de Julio)