Documente Academic
Documente Profesional
Documente Cultură
ESTÁNDARES DE CALIDAD
Por tal motivo la ingeniería del software pretende utilizar los recursos computacionales
de tal manera que se produzcan soluciones eficientes y eficaces a los problemas informáticos,
el éxito de un proyecto involucra elementos como la planeación, la administración y la
utilización de metodologías de desarrollo de software.
A través del uso de una metodología se busca lograr el acople de los participantes y la
garantía de una determinada calidad. Debe notarse que las metodologías de desarrollo de
software sólo constituyen uno de los mecanismos que actualmente se utilizan para alcanzar
software de calidad; no debemos dejar de lado aspectos de la dirección de proyectos que
también buscan calidad en el proceso de desarrollo y en el producto final.
SEGÚN:
Todo esto puede ser llevado acabo de una buena planificación, compromiso para así
alcanzar los objetivos que se adapte a las necesidades del usuario, cabe destacar que dicho
proyecto logrará el éxito mientras le sea aplicada su respectiva metodología a determinado
programa.
Técnicas y Escrituras:
DATO
Puede significar un número, una letra, un signo ortográfico o cualquier símbolo que
represente una cantidad, una medida, una palabra o una descripción. La importancia de los
datos está en su capacidad de asociarse dentro de un contexto para convertirse en
información. Es decir, por si mismos los datos no tienen capacidad de comunicar un
significado y por tanto no pueden afectar el comportamiento de quien los recibe.
Tipos de Datos
“Abril”
Carácter String Su valor está representado por un conjunto de “Reporte Anual de
o cadena caracteres. Fa-llas Técnicas”
6
- Restar A-B -3
** Exponenciación A ** B 100.000.000.000.000
El Resultado es:
> Mayor que Si A =10 y B = 13 A > B
FALSO
Información
Identificadores
Son los nombres que reciben las variables y algunas constantes, suelen constar de
varios caracteres alfanuméricos, de los cuales el primero suele ser una letra.
Constante
Es un dato que permanece con un valor, sin cambios, es decir constante, a lo largo
del desarrollo del algoritmo o a lo largo de la ejecución del programa.
Variable
Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en el
transcurso de la ejecución del programa.
Se utiliza cuando el dato que contiene sufrirá cambios o variará en la medida que
cambien los valores que maneje.
Expresiones Lógicas
Una expresión lógica “Y” (AND) es verdadera, si y sólo sí, se cumplen las dos
condiciones simples.
Lectura de Datos
Si Nacionalidad = “V” y Edad > 30 Entonces
Status = “Aspirante”
Grabar en archivo de Aspirantes
Fin Si
Para esto, se requiere una metodología que defina cada uno de los pasos que nos llevara
a obtener la solución, visto de otro modo, generar un plan de acción eficaz para alcanzar
la meta.
Es necesario seguir una serie de pasos sistemáticos para que el desarrollo posea una
buena un óptimo y eficaz resultado. Estos pasos son brindados por los modelos de ciclo
de vida, los cuales están constituidos por diferentes etapas:
11
Para lograr esto, existen modelos de análisis estructurado que se puede detallar en el
siguiente cuadro:
12
La calidad del diseño debe ser una meta para el diseñador. El diseño estructurado ofrece
guías para apoyar al diseñador a determinar módulos, y sus interconexiones, que mejor
realizarán los requerimientos especificados por el analista. Las dos reglas más
importantes son las referentes al acoplamiento y la cohesión.
Pudiéramos decir que el diseño es la capacidad de producir y aplicar un modelo que sirva
como base para su implementación, todo esto bajo metodologías y estándares que gracias
a estos se podrá desarrollar dicho modelo bajo criterios para solucionar un problema.
Son aquellos métodos en que las funciones o los datos son vistos como entidades
independientes, tienen a ser sistemas difíciles de mantener y dependen de la estructura de
los datos que usualmente producen programas difíciles de leer o modificar, pero tienen
fuerte transformación de datos y usualmente son dependientes los programas de la
estructura de los datos.
Orientado a objetos
Se consideran métodos orientados a objetos en donde los cuales, datos y funciones están
relacionados, la abstracción de datos, son mapeados a entidades del mundo real, tienden
a ser más fáciles de mantener y leer gracias a la construcción de subclases.
Desarrollo de la solución
Una vez que se obtenga la solución tomando en cuenta todas las posibles alternativas se
escribe de forma clara y precisa para que pueda ser entendida y revisada. Consiste en
definir cada uno de los pasos que nos permitirá llegar a la solución, en pocas palabras,
explica claramente cuáles son las acciones para llegar a la meta. Esta serie de pasos se
conocen como algoritmos.
Dentro de este modelo se encuentra El Modelo del Ambiente: Declaración de los objetivos.
Creación de un Diagrama de Contexto y de una Lista de Eventos, describe los estímulos
que recibe el sistema y las respuestas generadas por los estímulos. Definición del
Diccionario de Datos inicial. Tabla de Estímulo/Respuesta.
ERDs por eventos se unen en un único ERD (el Modelo de Datos). Se acostumbra,
también, modelar el comportamiento externo del sistema con DTE, árboles de pantallas o
menús, etc. La creación simultánea del modelo de datos, modelo funcional y modelo de
interfaz o comportamiento externo, ayuda en la validación y completitud del modelo
esencial (descubriendo, por ejemplo, eventos no considerados).
La entrada, se considera como todos los datos que hay que ingresar para la resolución del
problema. Para diseñar un algoritmo o programa se debe comenzar por identificar las
tareas más importantes para resolver el problema y disponerlas en el orden en el que han
de ser ejecutadas. Los pasos en esta primera descripción pueden requerir una revisión
adicional antes de que podamos obtener un algoritmo claro, preciso y completo.
Este método de diseño de algoritmos en etapas, yendo de los conceptos generales a los
de detalle, se conoce como método descendente (top-down).
Como ejemplo supongamos que desea desarrollar un algoritmo lo primero que debemos
hacer es plantearnos las siguientes preguntas:
Especificaciones de entrada
¿Que datos son de entrada?
¿Cuántos datos se introducirán?
¿Cuántos son datos de entrada válidos?
Entendido el problema (que se desea obtener del computador), para resolverlo es preciso
analizar:
15
Una recomendación muy práctica es el que nos pongamos en el lugar del computador, y
analizar que es necesario que me ordenen y en que secuencia, para poder producir los
resultados esperados. También da buenos resultados hacer similitudes con la labor de un
empleado que hace el mismo trabajo que deseamos programarle al computador.
Especificaciones de salida
¿Cuáles son los datos de salida?
¿Cuántos datos de salida se producirán?
¿Qué formato y precisión tendrán los resultados?
Lista de Eventos
La lista de eventos es una lista narrativa de los estímulos que ocurren en el mundo externo, y
al que el sistema debe responder. En pocas palabras al saber que datos de entrada
obtendremos podemos hacer una correlación de estimulo respuesta en esta tabla.
La lista de eventos es una simple lista textual de eventos del ambiente a los cuales el sistema
debe responder. Al construirla asegúrese de distinguir entre un evento y un flujo relacionado a
un evento.
Evento de flujo
Se asocia a un flujo de datos; es decir, el sistema percibe la ocurrencia del evento cuando un
grupo de datos llega.
Eventos Temporales
Se descargan en un cierto momento, los eventos temporales no se descargan ni son
representados por cualquier flujo de datos de entrada.
Eventos de control
Son estímulos externos que ocurren en momentos imprevistos.
Eventos de múltiple respuesta
Hay múltiples transacciones que son activadas por la condición temporal . Dichas
transacciones son activadas por un Evento Temporal que precisa de múltiples respuestas.
Diagrama de Contexto
16
En el diagrama de contexto una única burbuja (proceso) representa el sistema. Los Agentes
Externos (o Terminadores) por definición no son parte del sistema y están representados por
un cuadro rectangular y se comunican directamente con el sistema a través de los Flujos de
Datos o de Control.
Los terminadores representan entidades externas con las cuales el sistema se comunica.
Comúnmente un terminador es una persona o un grupo, por ejemplo una organización externa
o una agencia gubernamental, o un grupo o departamento que esté dentro de la misma
compañía u organización, pero fuera del control del sistema que se está modelando. En
algunos casos, el terminador puede ser otro sistema.
Como se está interesado en el desarrollo del modelo esencial del sistema, es importante que
se distinga entre fuentes y manipuladores cuando se dibuja a los agentes externos en el
diagrama de contexto. Un manipulador es un mecanismo, dispositivo, o el medio físico para
transportar datos dentro o fuera del sistema.
Los flujos mostrados en el diagrama de contexto modelan los datos que llegan y dejan el
sistema. Estos serán incluidos en este diagrama si son necesarios para determinar un evento
del ambiente al que el sistema debe contestar, o si son necesarios (como datos) para que se
produzca una respuesta. También pueden mostrarse los flujos de datos en el diagrama del
contexto cuando los datos son producidos por el sistema para responder a un evento.
Hay también una clase de flujos que no representan entrada o salida de datos del sistema sino
que establecen la necesidad de ejecutar una función dada. Estos flujos se denominan flujos de
control y son mostrados con una línea punteada.
Diagrama de Contexto
17
Se puede comenzar con la lista de eventos o con el diagrama de contexto. Realmente, esto
no importa, a medida que los componentes del modelo ambiental son generados se debe
confirmar que haya consistencia entre ellos.
La siguiente fase que debe enfrentar el analista tiene que ver con el análisis de las
necesidades del sistema. De nueva cuenta, herramientas y técnicas especiales auxilian al
analista en la determinación de los requerimientos. Una de estas herramientas es el uso de
diagramas de flujo de datos para graficar las entradas, los procesos y las salidas de las
funciones del negocio en una forma gráfica estructurada. A partir de los diagramas de flujo de
datos se desarrolla un diccionario de datos que enlista todos los datos utilizados en el sistema,
así como sus respectivas especificaciones.
Durante esta fase el analista de sistemas analiza también las decisiones estructuradas que se
hayan tomado. Las decisiones estructuradas son aquellas en las cuales se pueden determinar
las condiciones, las alternativas de condición, las acciones y las reglas de acción.
En este punto del ciclo de vida del desarrollo de sistemas, el analista prepara una propuesta
de sistemas que sintetiza sus hallazgos, proporciona un análisis de costo/beneficio de las
alternativas y ofrece, en su caso, recomendaciones sobre lo que se debe hacer. Si la
administración de la empresa considera factible alguna de las recomendaciones, el analista
sigue adelante. Cada problema de sistemas es único, y nunca existe sólo una solución
correcta. La manera de formular una recomendación o solución depende de las cualidades y
la preparación profesional de cada analista.
Para la creación del DFD básicamente existen dos enfoques: Partición en Eventos
McMenam, Yourdon y Enfoque de Análisis Estructurado Clásico DeMarco, Gane.
En el enfoque de partición por eventos para la construcción del DFD preliminar, se agrega una
burbuja por cada evento definido en la lista de eventos. Por cada evento, se especifican los
flujos (control y datos), agentes externos y depósitos de datos considerado por McMenam
como partición de eventos y DeMarco lo llamo enfoque de análisis estructurado.
18
En el enfoque de análisis estructurado clásico para la construcción del DFD de primer nivel (o
nivel 0), el analista (o el grupo de analistas) estudia el diagrama de contexto y crea un DFD de
nivel 0 sin una estrategia que lo asista. Sobre la base de su conocimiento del sistema, o del
tipo de aplicación, divide en "Burbujas Importantes" (por ejemplo, que representen
subsistemas).
El DFD preliminar puede ser representado como un único diseño o por un conjunto de
Diagramas separados. Para la construcción del diagrama de flujo de datos preliminar, con un
enfoque de partición por eventos, la metodología de análisis estructurado moderna propone la
siguientes cuatro etapas:
El diagrama de flujo de datos describe cómo los datos fluyen a través del sistema, pero no
proveen información acerca de estructuras de control o de secuencias de ejecución. La única
secuencia que puede ser reconocida en un DFD es la determinada por la necesidad de
información. Podemos considerar al diagrama de flujo de datos como un lenguaje gráfico, útil
para describir la funcionalidad de un sistema, en un cierto grado de detalle.
20
El Diccionario de Datos
El diccionario de datos es una lista organizada de todos los elementos de datos pertinentes al
sistema (todos los nombres de las componentes de los diagramas), con definiciones precisas
y rigurosas para que el usuario y el analista de sistemas puedan conocer todas las entradas,
salidas, componentes de depósitos y cálculos intermedios.
Un DFD es una herramienta comúnmente utilizada para análisis de arriba hasta abajo, es
decir que permite realizar un análisis que va de lo general a lo particular del problema. Los
DFDs son utilizados para modelar tanto vistas detalladas como de alto nivel de un sistema o
22
Los procesos del DFD pueden ser refinados en otra red de procesos conectados por flujos de
datos, constituyendo un DFD de menor nivel de abstracción. Esta forma de especificar un
proceso, por medio de otro DFD completo se denomina refinamiento, descomposición o
explosión. El problema es definir cuál es el criterio más adecuado para hacer esto y,
determinar hasta dónde bajar en la jerarquía de DFDs, es decir cuando parar de realizar
explosiones.
Dentro de este método de análisis y planteamiento del problema, se llega a obtener una
estructura clara y eficaz por medio de una serie de pasos para alcanzar la solución del
problema, esto también cuenta con operaciones dentro de los algoritmos que podemos llamar
cálculos.
Estos cálculos están íntimamente conectados con el tipo de dato de entrada que se espera
recibir y la salida que nos interesa obtener, todo previamente planificado según el caso, se
formulan operaciones precisas ya sean lógicas o aritméticas representadas como
instrucciones a seguir.