Concepto y definición de tipos de Datos Abstractos en c++.pptx
4.- SEMANA DEL 1 al 05 de abril.pptx
1. Los botones de comando son
aquellos botones típicos que vemos
frecuentemente en las aplicaciones de
Windows, que realizan una operación
en
especifico, por ejemplo, salir, imprimir,
cancelar, etc.
Los botones de comando
(CommandButton)
2. Caption: Establece el texto que aparece escrito sobre el objeto, en este
caso sobre el botón de comando.
3. Enabled: Habilita o deshabilita el objeto, es decir, indica si el objeto responderá a
los eventos del usuario. Esta propiedad puede tomar los valores lógicos: True y
True y False.
4. Picture: Asigna una imagen (Bitmap) en el objeto. En un botón de comando esta
propiedad tendrá efecto siempre y cuando el valor de la propiedad Style este
establecido a “1 – Graphical”.
5. ToolTipText : Se utiliza para mostrar el texto contextual que aparece cuando se
coloca el puntero del mouse sobre el objeto o control.
7. GotFocus
Este evento ocurre cuando un objeto recibe el enfoque o
focus. Un objeto tiene el enfoque cuando el usuario a
realizado un evento sobre el y no lo ha hecho sobre otro
objeto hasta ese momento. Cuando usted hace clic sobre un
botón de comando u otro objeto de la aplicación, en ese
momento el objeto recibe el enfoque o la atención del
usuario.
8. El termino GotFocus significa “obtener el enfoque”,
ocurre exactamente cuando el usuario realiza una
acción o evento sobre el objeto, causado de esta
manera que el objeto anterior pierda el enfoque o la
atención del usuario.
9.
10. KeyDown, KeyUp
Ocurre cuando el usuario presiona (KeyDown) y suelta (KeyUp)
una tecla mientras un objeto tiene el enfoque. Aunque son dos
eventos que suelen usarse combinados, son eventos distintos y,
por consiguiente, serán definidos de
manera independiente.
11. El evento KeyDown (Tecla Abajo) ocurre cuando el
presiona una tecla. Es un evento que se gestiona
rápidamente y en un plazo de corto tiempo. La razón es,
porque ocurre inmediatamente el usuario presiona una tecla
antes que esta vuelva a levantarse. Si el usuario mantiene
presionada cualquier tecla, entonces, este evento se efectuará
constantemente.
12.
13.
14.
15. KeyUp
Usted puede observar que el botón de comando permanece con el
el color seleccionado hasta que se pulsa otra tecla. Esto es, porque
no se ha codificado aun el procedimiento KeyUp del botón de
comando, que nos va ha permitir restablecer el color inicial o el
color por defecto que tenia el botón antes de ser cambiado.
16.
17.
18. KeyPress
Este evento ocurre cuando el usuario presiona y
suelta una tecla. Es un evento prácticamente similar
al evento KeyUp con la única diferencia de sus
argumentos.
19. Este evento solo posee un único argumento llamado
KeyAscii. Este argumento devuelve un entero que
representa un código ANSI de la tecla pulsada por el
usuario. Es posible detectar cual es la tecla pulsada por el
usuario combinado este argumento con la sentencia If o
Case. Por ejemplo:
If KeyAscii = 65 Then MsgBox ("Se pulso la tecla A en
mayúscula")
22. Los programas definidos hasta este punto se ejecutan de modo
secuencial, es decir, una sentencia después de otra.
La ejecución comienza con la primera sentencia del programa y
prosigue hasta la última sentencia, cada una de las cuales se
ejecuta una sola vez. Esta forma de programación es adecuada
para programas sencillos. Sin embargo, para la resolución de
problemas de tipo general se necesita la capacidad de
controlar cuáles son las sentencias que se ejecutan, y en qué
momentos.
23. Los botones de comando se utilizan principalmente para
iniciar, interrumpir o terminar un proceso.
Estos controles pueden ser activados de múltiples formas como
son: Haciendo clic sobre el, presionando la tecla barra
espaciadora o la tecla ENTRAR cuando este tiene el enfoque, o
bien, pulsando desde el teclado su respectivo acceso directo.
24. Las estructuras de control o construcciones de control
controlan la secuencia o flujo de ejecución de las
sentencias. Las estructuras de control se dividen en
tres grandes categorías en función del flujo de
ejecución:
Secuencia
Selección
Iteración.
25. ESTRUCTURA DE CONTROL DE SECUENCIA
Es la más sencilla, simplemente indica una secuencia de acciones a
ser ejecutadas de forma consecutiva. La composición secuencial no
es conmutativa.
26.
27. If KeyCode = vbKeyR Then
Command1.BackColor = vbRed
End If
28.
29. Evento – MouseMove (Pág.77)
Este evento ocurre mientras el usuario mueve el
puntero del Mouse sobre un objeto.
Este evento es muy utilizado para dar efectos a
imágenes y botones gráficos.
30. Por ejemplo, se puede crear una aplicación con un
menú compuesto de botones de comando, y que
estos cambien de color cada vez que el usuario
coloque el puntero del mouse sobre cada uno de
ellos.
41. Definición de Software
El software es un conjunto de instrucciones que nos
permite ejecutar una función determinada, en un
tiempo razonable y facilita una actividad. Una
estructura de datos que permiten a los programas
manipular adecuadamente la información y los
documentos que describen la operación y el uso de
programas.
42. De acuerdo a lo anterior, existen tres componentes que
describen el software:
Programas, datos y documentos.
Actualmente el software juega un papel fundamental dentro
de la sociedad, apoyándola en diversos sectores y áreas,
sistematizando muchas de las tareas que se realizan
diariamente, hoy el software, se puede considerar con un
producto y un servicio.
43. Como producto ofrece la producción, el manejo, la
adquisición, la modificación, el despliegue, la
transformación y transmisión de la información por
medio del hardware, es decir, en una red de
computadores donde no importa el lugar de ubicación
del software, sea en una maquina central u otro
dispositivo, todos van a poder acceder a él,
proporcionando potencia.
44. Como servicio, toma la forma de provisión dando soporte
lógico específico, para satisfacer las necesidades del usuario.
Además sirve para ejecutar el control de la unidad central de
procesamiento (CPU); los sistemas operativos; comunicación
de información, y permite la creación y control de otros
programas, como lo son los lenguajes de programación, en
estos casos ocurre a la prestación de servicios.
45. Como dice Pressman1 , el software entrega el producto más
importante de nuestro tiempo: información. Transforma los
datos personales (por ejemplo, las transacciones financieras
de un individuo) de forma que los datos sean más útiles en un
contexto local; maneja información de negocios para mejorar
la competitividad; proporciona una vía para las redes de
información alrededor del mundo (Internet) y proporciona los
medios para adquirir información en todas sus formas.
46. Características del software
Hoy en día los problemas que se generaron en los inicios
de la industria del software, son los mismos, son éstos los
que le dan las características esenciales a un software, y son
los siguientes,
47. • ¿Por qué tarda tanto la obtención del software terminado?
• ¿Por qué son tan altos los costos de desarrollo del software?
• ¿Por qué es imposible encontrar todos los errores en el software
antes de entregarlo a los clientes?
• ¿Por qué se gastan tanto tiempo y esfuerzo en el mantenimiento de
los programas existentes?
• ¿Por qué es difícil medir el progreso al desarrollar y darle
mantenimiento al software?
48. Estas preguntas y la preocupación de la industria, han
generado lo que se denomina, la ingeniería del software,
donde se nos brindan las herramientas necesarias y estándar
para el desarrollo.
Para entender el software (y la ingeniería del software), es
importante examinar las características que lo hacen diferente
de otras cosas que construye el ser humano. El software es un
elemento lógico, en lugar de físico, de un sistema. Por lo tanto,
el software tiene características muy diferentes a las del
hardware:
49. El software se desarrolla no se fabrica
Esta característica parte de la necesidad de diferenciar la
manufactura del hardware del desarrollo de software, en ambos
la calidad se alcanza a través de un buen diseño, pero en la
manufactura se pueden dar problemas de calidad difíciles de
corregir, mientras en el desarrollo del software éstos son fáciles
de corregir. Las dos actividades son desarrolladas por personas
diferentes en cada campo, y el trabajo en ambos proyectos es
diferente y se manejan o se dirigen de diferente forma.
50. El software sufre una curva de obsolescencia
El software no se ve afectado por las inclemencias del tiempo, o por los
males ambientales que desgastan el hardware, esto hace que las tasas de
errores del hardware sean altas.
Ahora las tasas de errores al inicio del desarrollo de un software son altas,
pero estos errores se corrigen, lo que hace que requiera añadir continuas
actualizaciones.
51. La vida útil de un producto de software sin cambios puede ser de
dos a tres años.
Lo que significa que un software no se desgasta sino que se
deteriora, como ejemplo, cuando un componente del hardware se
desgasta se sustituye con un repuesto. Pero en el software no
existen repuestos. Cualquier falla del software implica un error en
el diseño o el proceso mediante el cual se pasó del diseño al
código máquina ejecutable.
Por lo tanto, el mantenimiento del software implica de manera
considerable una complejidad mayor que el del hardware.
52. Tipos de Software
En la actualidad existen siete grandes categorías
del software de computadora que presentan retos
continuos para los ingenieros de software.
53. Software de sistemas
El software de sistemas es una colección de programas escritos para
servir a otros programas. Algunos programas de sistemas (como los
compiladores, editores y utilerías para la administración de archivos)
procesan estructuras de informaciones complejas pero determinadas.
Otras aplicaciones de sistemas (por ejemplo, componentes del sistema
operativo, consoladores, software de red, procesadores para
telecomunicaciones) procesan datos indeterminados.
54. En cada caso, el área de software de sistemas se caracteriza
por una interacción muy intensa con el hardware de la
computadora; utilización por múltiples usuarios; operación
concurrente que requiere la gestión de itinerarios, de
compartición de recursos, y de procesos sofisticados;
estructuras de datos complejas y múltiples interfaces externas.
55. Software de aplicación
El software de aplicación consiste en programas independientes que
resuelven una necesidad de negocios específica. Las aplicaciones en
esta área procesan datos empresariales o técnicos de forma que
facilitan las operaciones de negocios o la toma de decisiones técnicas o
de gestión. Además del procesamiento de datos convencional, el
software de aplicación se utiliza para controlar las funciones de
negocios en tiempo real (por ejemplo, el procesamiento de
transacciones en los puntos de venta y el control de procesos de
manufactura en tiempo real.)
56. Software científico y de ingeniería
El software científico y de ingeniería, que se caracterizaba por
algoritmos "devoradores de números", abarca desde la astronomía
hasta la vulcanología, desde el análisis de la tensión automotriz
hasta la dinámica orbital de los transbordadores espaciales, y desde
la biología molecular hasta la manufactura automatizada. Sin
embargo, las aplicaciones modernas dentro del área científica y de
ingeniería se alejan en la actualidad de los algoritmos numéricos
convencionales. El diseño asistido por computadora, la simulación
de sistemas y otras aplicaciones interactivas han comenzado a
tomar características de software en tiempo real e incluso de
software de sistemas.
57. Software empotrado
El software empotrado reside dentro de la memoria de sólo
lectura del sistema y con él se implementan y controlan
características y funciones para el usuario final y el sistema
mismo. El software incrustado puede desempeñar funciones
limitadas y curiosas (como el control del teclado de un horno
de microondas) o proporcionar capacidades de control y
funcionamiento significativas (por ejemplo, las funciones
digitales de un automóvil, como el control de combustible, el
despliegue de datos en el tablero, los sistemas de frenado,
etcétera).
58. Software de línea de productos
El software de línea de productos, diseñado para proporcionar
una capacidad específica y la utilización de muchos clientes
diferentes, se puede enfocar en un nicho de mercado limitado
(como en los productos para el control de inventarios) o
dirigirse hacia los mercados masivos (por ejemplo,
aplicaciones de procesadores de palabras, hojas de cálculo,
gráficas por computadora, multimedia, entretenimiento,
manejo de bases de datos, administración de personal y
finanzas en los negocios).
59. Aplicaciones basadas en Web
Las "WebApps" engloban un espectro amplio de aplicaciones. En su
forma más simple, las WebApps son apenas un poco más que un
conjunto de archivos de hipertexto ligados que presenta información
mediante texto y algunas gráficas.
Sin embargo, a medida que el comercio electrónico y las aplicaciones
B2B adquieren mayor importancia, las WebApps evolucionan hacia
ambientes computacionales sofisticados que no sólo proporcionan
características, funciones de cómputo y contenidos independientes al
usuario final, sino que están integradas con bases de datos
corporativas y aplicaciones de negocios.
60. Software de inteligencia artificial
Este software utiliza algoritmos no numéricos en la resolución de
problemas complejos que es imposible abordar por medio de un
análisis directo.
Las aplicaciones dentro de esta área incluyen la robótica, los
sistemas expertos, el reconocimiento de patrones (imagen y voz),
las redes neuronales artificiales, la comprobación de teoremas y los
juegos en computadora.
62. ¿Qué es el análisis estructurado?
Es un método para el análisis de sistemas manuales o
automatizados, que conducen al desarrollo de
especificaciones para sistemas nuevos o para efectuar
modificaciones a los ya existentes.
63. En el análisis estructurado, la palabra estructura significa que:
1. El método intenta estructurar el proceso de determinación de los
requerimientos comenzando con la documentación del sistema existente;
2. el proceso está organizado de tal forma que intenta incluir todos los detalles
relevantes que describen al sistema en uso;
3. es fácil verificar cuando se han omitido detalles relevantes;
4. la identificación de los requerimientos será similar entre varios analistas e
incluirá las mejores soluciones y estrategias para las oportunidades de
desarrollo de sistemas; y
5. los documentos de trabajo generados para documentar los sistemas
existente y propuesto son dispositivos de comunicación eficientes.
64. Objetivo de la metodología
Organizar las diferentes tareas asociadas con la determinación de
requerimientos para obtener el entendimiento, la comprensión
completa y exacta de una situación dada.
El diseño estructurado, tiende a transformar el desarrollo de
software de una práctica artesanal a una disciplina de ingeniería,
llevando consigo diferentes características como eficiencia,
mantenibilidad, modificabilidad, flexibilidad, generalidad, utilidad.
66. El análisis estructurado hace uso de los siguientes componentes:
1. Símbolos gráficos. Iconos y convenciones para identificar y describir los
componentes de un sistema junto con las relaciones entre estos
componentes.
2. Diccionario de datos. Descripciones de todos los datos utilizados en el
sistema. Puede ser manual o automatizado (y estar incluido en el diccionario
de un proyecto más grande que quizá contenga las descripciones de los
procesos que integran al sistema).
67. 3. Descripción de procesos y procedimientos. Declaraciones
formales que emplean técnicas y lenguajes que permiten a
los analistas describir actividades importantes que forman
parte del sistema.
4. Reglas. Estándares para describir y documentar el sistema
en forma correcta y completa.
68. METODOLOGÍAS ESTRUCTURADAS
• Estas metodologías proponen modelos del sistema que
representen los procesos, los flujos y las estructuras de datos
de una forma descendente “top-down”.
• Estas metodologías se basan en el modelo básico
entrada/proceso/salida, es decir los datos entran al sistema y
éste los transforma para dar lugar a las salidas.
69. CLASIFICACIÓN DE LAS METODOLOGÍAS
ESTRUCTURADAS
• Orientadas a procesos
• Orientadas a datos:
– Orientadas a estructuras de datos jerárquicas. –
Orientadas a estructuras de datos no jerárquicos.
• Mixtas: enfocan procesos, datos y el factor tiempo
(análisis de eventos)
70. Herramientas y Metodologías de Análisis y Diseño Estructurado
El desarrollo de sistemas pequeños, en la cual participan una o dos
personas, es una tarea simple. Los cambios naturales que surgen
durante el ciclo de desarrollo del sistema no producen una gran
propagación de cambios en el sistema. Sin embargo, si el sistema es
grande y en su desarrollo participan varios grupos de personas
desarrollando una tarea específica, hay que tener en cuenta no solo la
comunicación con el usuario sino también la inter - relación entre los
distintos grupos de trabajo.
71. Algunos de los problemas comunes que los desarrolladores
encuentran en la construcción de software de cierta
complejidad son los siguientes:
• El dominio de aplicación no es conocido.
• La comunicación con el usuario.
• La comunicación con el grupo de desarrollo.
• La carencia de buena documentación.
72. Por esta razón, es necesario seguir una serie de
pasos sistemáticos para que los diferentes
grupos de desarrollo posean una buena
comunicación. Estos pasos son brindados por
los modelos de ciclo de vida, los cuales están
constituidos por diferentes etapas:
73. Especificación de requerimientos: Se realizan entrevistas con el
usuario identificando los requerimientos y necesidades del
usuario.
Análisis: Modela los requerimientos del usuario.
Diseño: Se modela la solución del sistema, teniendo en cuenta
el ambiente de implementación a utilizar, por ejemplo, si el
sistema es centralizado o distribuido, la base de datos a utilizar,
lenguaje de programación, performance deseada, etc.
Implementación: Dado el lenguaje de programación elegido
se implementa el sistema.
74. Testeo o Prueba: En esta etapa se verifica y
valida el sistema teniendo en cuenta algunos
criterios determinados por el grupo
correspondiente.
Mantenimiento: Es la etapa más difícil de
desarrollo del sistema, actualiza y modifica el
sistema si surgen nuevos requerimientos.
75. Existen varios métodos para describir el ciclo de vida de un sistema,
uno de ellos es el desarrollo estructurado en Cascada
76. En un principio fue de gran utilidad pero el problema es que para
pasar de una etapa a la otra había que terminar la primera,
produciendo un gran problema si algún cambio era requerido. La
etapa de Mantenimiento consumía el 80% del costo de producción.
Debido a los nuevos requerimientos en el desarrollo de software,
surgieron muchos otros modelos que trataban de solucionar los
problemas existentes, los cuales se basaron en el modelo en Cascada.
Por ejemplo, el Modelo en Espiral, en el cual el sistema se desarrolla
incrementalmente (fig.2).
77. Los modelos propuestos poseen básicamente
las mismas etapas, pero varían en:
• los métodos y herramientas utilizadas en cada
actividad,
• los controles requeridos, paralelismo en las
actividades y
• en las salidas de cada etapa.
78.
79. Los Modelos del Sistema - Enfoque
Estructurado
La siguiente figura describe todos los modelos
desarrollados durante el ciclo de desarrollo de un
sistema, basándose en el enfoque estructurado. Abarca
las actividades de Análisis y Diseño. La actividad de
análisis se construye el Modelo Esencial, en tanto la
actividad de diseño construye el Modelo de
Implementación.