República Bolivariana de Venezuela
Ministerios del Poder Popular para la Educación
I.U.P Santiago Mariño
“Cabimas”
fundamentos básicos para el diseño de
software
Realizado Por:
Adrián Adrianza
C.I: 27.511.633
Carrera:
Ing. De sistemas (47) 8vo Semestre
¿Que es el desarrollo de software?
El diseño de software tiene un papel importante en el desarrollo
de software, ya que permite que ingenieros de software produzcan
modelos distintos que moldean una clase de plano de la solución
a ser implementado. Podemos analizar y valorar a estos modelos
para determinar cuál de estos permitirá o no, cumplir con una
gama de requerimientos.
 experiencia y creatividad para llegar a una solución que cumpla
con los requerimientos funcionales y no funcionales
establecidos en la fase de la toma de requisitos.
 El diseño del Software tiene un impacto directo sobre la
capacidad del sistema para cumplir o no el total de
requerimientos establecidos
Fundamentos Básicos Para el diseño de software
Abstracción
Refinamiento
Modularidad
Arquitectura del software
Jerarquía de control
Estructura de datos
Procedimientos de software
Ocultamiento de información
Fundamentos Básicos Para el diseño de software
Abstracción
En un alto grado de abstracción una solución se
establece en términos generales con el lenguaje
del entorno del problema.
En los grados de menor abstracción se
proporciona una descripción más detallada de la
solución.
En la medida en que se cambian los diferentes
grados de abstracción se trabaja para crear
abstracciones procedimentales y de datos.
Es el proceso o el resultado de la generalización de la reducción
del contenido de la información de un concepto o un fenómeno
observable, por lo general, con el fin de conservar únicamente la
información que es relevante para un propósito en particular.
Cuando se considera una solución modular a cualquier problema
se pueden exponer muchos grados de abstracción
Fundamentos Básicos Para el diseño de software
Refinamiento
Consiste en detallar el conjunto de
requerimientos establecido por los
interesados del proyecto.
En la fase de diseño se hace un
refinamiento de requerimientos, el cual
tiene como objetivo permitir a los
miembros del equipo de desarrollo
prepararse para la ejecución de las tareas
de desarrollo.
Esta actividad describe las tareas
que se deben realizar para reunir,
especificar, analizar y validar un
conjunto de requerimientos del
sistema previamente a la
implementación y verificación
MODULARIDAD
Fundamentos Básicos Para el diseño de software
El diseño deberá ser modular
dividiéndose en estructuras que
realicen funciones específicas. Esto
facilitará la reutilización. Además
deberá realizarse de manera que
permita cambios y que permita la
extensión de funcionalidades sin
afectar a otras
Fundamentos Básicos Para el diseño de software
Arquitectura
De
Software
Es un conjunto de patrones que
proporcionan un marco de referencia
necesario para guiar la construcción de un
software, permitiendo a
los programadores, analistas y todo el
conjunto de desarrolladores
del software compartir una misma línea de
trabajo y cubrir todos los objetivos y
restricciones de la aplicación
Es considerada el nivel más alto en el
diseño de la arquitectura de un
sistema puesto que establecen la
estructura, funcionamiento e
interacción entre las partes del
software.
Jerarquía De
Control
Fundamentos Básicos Para el diseño de software
La jerarquía de control, denominada también
estructura de programa, representa la
organización de los componentes de programa
(módulos) e implica una jerarquía de control. No
representa los aspectos procedimentales del
software, ni se puede aplicar necesariamente a
todos los estilos arquitectónicos
Fundamentos Básicos Para el diseño de software
Jerarquía De
Datos
Las estructuras de datos son un medio para
manejar grandes cantidades de datos de
manera eficiente para usos tales como
grandes bases de datos y servicios de
indización de Internet. Por lo general, las
estructuras de datos eficientes son clave para
diseñar algoritmos eficientes
Algunos métodos formales de diseño y
lenguajes de programación destacan las
estructuras de datos, en lugar de los
algoritmos, como el factor clave de
organización en el diseño de software.
Procedimiento
De
Software
Fundamentos Básicos Para el diseño de software
El procedimiento del software se centra sobre los
detalles de procesamiento de cada módulo individual.
El procedimiento debe proporcionar una
especificación precisa del procesamiento, incluyendo
la secuencia de procesos, las decisiones y la repetición
de operaciones. La representación procedimental del
software se realiza por capas.
Ocultamiento
De
Información
Fundamentos Básicos Para el diseño de software
La ocultación de información, en lo que respecta a las
computadoras, consiste en mantener partes de un
programa separadas de otras partes. Hay muchas
razones para hacer esto, una de las más comunes es la
facilidad de actualización. Si un programa mantiene su
núcleo separado de su interfaz, entonces uno u otro
se puede cambiar fácilmente sin afectar a su socio
Diseño Orientado a
objetos
El diseño orientado a objetos es la
disciplina que define los objetos y sus
interacciones para resolver un problema
de negocio que fue identificado y
documentado durante el análisis
orientado a objetos (AOO) Su uso induce
a desarrolladores y programadores a
pensar en términos de objetos, en vez de
procedimientos cuando planifican el
código.
Un objeto agrupa datos encapsulados y
procedimientos para representar una entidad. La
"interfaz del objeto", esto es, las formas de
interactuar con el objeto, también se definen en esta
etapa. Un programa orientado a objetos se
caracteriza por la interacción de esos objetos.
Métodos de prueba de software
validación Comparación de
datos
Tensión Utilidad
Es el acto de los datos que entran
que el probador sabe para ser
erróneo en un uso Comparación de
los Datos Se compara la salida de un
uso con parámetros específicos a un
sistema previamente creado de los
datos con los mismos parámetros
que se saben para ser exacto
Es cuando el software se
utiliza tan pesadamente
como sea posible por un
período de la hora de
considerar si hace frente a
los altos niveles de la carga
Se compara la salida
de un uso con
parámetros específicos
a un sistema
previamente creado
de los datos con los
mismos parámetros
que se saben para ser
exactos.
Consiguiendo a los usuarios
que son desconocedores con
el software, se le ofrece
utilizarlo para así poder
obtener las experiencia de
cada uno y así poder generar
mejoras de interfaz si los
usuario que utilizaran el
sistema lo encuentran muy
difícil de utilizar
Mantenimiento:
 Es una de las actividades en la Ingeniería de Software y es el proceso de
mejorar y optimizar el software desplegado (revisión del programa), así
como también remediar los defectos. El mantenimiento de software es
también una de las fases en el Ciclo de Vida de Desarrollo de Sistemas
(SDLC ó System Development Life Cycle), que se aplica al desarrollo de
software. La fase de mantenimiento es la fase que viene después del
despliegue (implementación) del software en el campo. La fase de
mantenimiento de software involucra cambios al software en orden de
corregir defectos y dependencias encontradas durante su uso tanto como
la adición de nueva funcionalidad para mejorar la usabilidad y aplicabilidad
del software.

Adrian adrianza

  • 1.
    República Bolivariana deVenezuela Ministerios del Poder Popular para la Educación I.U.P Santiago Mariño “Cabimas” fundamentos básicos para el diseño de software Realizado Por: Adrián Adrianza C.I: 27.511.633 Carrera: Ing. De sistemas (47) 8vo Semestre
  • 2.
    ¿Que es eldesarrollo de software? El diseño de software tiene un papel importante en el desarrollo de software, ya que permite que ingenieros de software produzcan modelos distintos que moldean una clase de plano de la solución a ser implementado. Podemos analizar y valorar a estos modelos para determinar cuál de estos permitirá o no, cumplir con una gama de requerimientos.  experiencia y creatividad para llegar a una solución que cumpla con los requerimientos funcionales y no funcionales establecidos en la fase de la toma de requisitos.  El diseño del Software tiene un impacto directo sobre la capacidad del sistema para cumplir o no el total de requerimientos establecidos
  • 3.
    Fundamentos Básicos Parael diseño de software Abstracción Refinamiento Modularidad Arquitectura del software Jerarquía de control Estructura de datos Procedimientos de software Ocultamiento de información
  • 4.
    Fundamentos Básicos Parael diseño de software Abstracción En un alto grado de abstracción una solución se establece en términos generales con el lenguaje del entorno del problema. En los grados de menor abstracción se proporciona una descripción más detallada de la solución. En la medida en que se cambian los diferentes grados de abstracción se trabaja para crear abstracciones procedimentales y de datos. Es el proceso o el resultado de la generalización de la reducción del contenido de la información de un concepto o un fenómeno observable, por lo general, con el fin de conservar únicamente la información que es relevante para un propósito en particular. Cuando se considera una solución modular a cualquier problema se pueden exponer muchos grados de abstracción
  • 5.
    Fundamentos Básicos Parael diseño de software Refinamiento Consiste en detallar el conjunto de requerimientos establecido por los interesados del proyecto. En la fase de diseño se hace un refinamiento de requerimientos, el cual tiene como objetivo permitir a los miembros del equipo de desarrollo prepararse para la ejecución de las tareas de desarrollo. Esta actividad describe las tareas que se deben realizar para reunir, especificar, analizar y validar un conjunto de requerimientos del sistema previamente a la implementación y verificación
  • 6.
    MODULARIDAD Fundamentos Básicos Parael diseño de software El diseño deberá ser modular dividiéndose en estructuras que realicen funciones específicas. Esto facilitará la reutilización. Además deberá realizarse de manera que permita cambios y que permita la extensión de funcionalidades sin afectar a otras
  • 7.
    Fundamentos Básicos Parael diseño de software Arquitectura De Software Es un conjunto de patrones que proporcionan un marco de referencia necesario para guiar la construcción de un software, permitiendo a los programadores, analistas y todo el conjunto de desarrolladores del software compartir una misma línea de trabajo y cubrir todos los objetivos y restricciones de la aplicación Es considerada el nivel más alto en el diseño de la arquitectura de un sistema puesto que establecen la estructura, funcionamiento e interacción entre las partes del software.
  • 8.
    Jerarquía De Control Fundamentos BásicosPara el diseño de software La jerarquía de control, denominada también estructura de programa, representa la organización de los componentes de programa (módulos) e implica una jerarquía de control. No representa los aspectos procedimentales del software, ni se puede aplicar necesariamente a todos los estilos arquitectónicos
  • 9.
    Fundamentos Básicos Parael diseño de software Jerarquía De Datos Las estructuras de datos son un medio para manejar grandes cantidades de datos de manera eficiente para usos tales como grandes bases de datos y servicios de indización de Internet. Por lo general, las estructuras de datos eficientes son clave para diseñar algoritmos eficientes Algunos métodos formales de diseño y lenguajes de programación destacan las estructuras de datos, en lugar de los algoritmos, como el factor clave de organización en el diseño de software.
  • 10.
    Procedimiento De Software Fundamentos Básicos Parael diseño de software El procedimiento del software se centra sobre los detalles de procesamiento de cada módulo individual. El procedimiento debe proporcionar una especificación precisa del procesamiento, incluyendo la secuencia de procesos, las decisiones y la repetición de operaciones. La representación procedimental del software se realiza por capas.
  • 11.
    Ocultamiento De Información Fundamentos Básicos Parael diseño de software La ocultación de información, en lo que respecta a las computadoras, consiste en mantener partes de un programa separadas de otras partes. Hay muchas razones para hacer esto, una de las más comunes es la facilidad de actualización. Si un programa mantiene su núcleo separado de su interfaz, entonces uno u otro se puede cambiar fácilmente sin afectar a su socio
  • 12.
    Diseño Orientado a objetos Eldiseño orientado a objetos es la disciplina que define los objetos y sus interacciones para resolver un problema de negocio que fue identificado y documentado durante el análisis orientado a objetos (AOO) Su uso induce a desarrolladores y programadores a pensar en términos de objetos, en vez de procedimientos cuando planifican el código. Un objeto agrupa datos encapsulados y procedimientos para representar una entidad. La "interfaz del objeto", esto es, las formas de interactuar con el objeto, también se definen en esta etapa. Un programa orientado a objetos se caracteriza por la interacción de esos objetos.
  • 13.
    Métodos de pruebade software validación Comparación de datos Tensión Utilidad Es el acto de los datos que entran que el probador sabe para ser erróneo en un uso Comparación de los Datos Se compara la salida de un uso con parámetros específicos a un sistema previamente creado de los datos con los mismos parámetros que se saben para ser exacto Es cuando el software se utiliza tan pesadamente como sea posible por un período de la hora de considerar si hace frente a los altos niveles de la carga Se compara la salida de un uso con parámetros específicos a un sistema previamente creado de los datos con los mismos parámetros que se saben para ser exactos. Consiguiendo a los usuarios que son desconocedores con el software, se le ofrece utilizarlo para así poder obtener las experiencia de cada uno y así poder generar mejoras de interfaz si los usuario que utilizaran el sistema lo encuentran muy difícil de utilizar
  • 14.
    Mantenimiento:  Es unade las actividades en la Ingeniería de Software y es el proceso de mejorar y optimizar el software desplegado (revisión del programa), así como también remediar los defectos. El mantenimiento de software es también una de las fases en el Ciclo de Vida de Desarrollo de Sistemas (SDLC ó System Development Life Cycle), que se aplica al desarrollo de software. La fase de mantenimiento es la fase que viene después del despliegue (implementación) del software en el campo. La fase de mantenimiento de software involucra cambios al software en orden de corregir defectos y dependencias encontradas durante su uso tanto como la adición de nueva funcionalidad para mejorar la usabilidad y aplicabilidad del software.