Conceptos asociados a la producción de software

Muestra conceptos como bibliotecas de clases, bibliotecas para construcción de GUI (Awt vs Swing), IDE, Java, diagramas UML como el de casos de uso y de actividad, además de el software Visual Paradigm. Además del perfil de ingenieros de software.

Get Started. It's Free
or sign up with your email address
Conceptos asociados a la producción de software by Mind Map: Conceptos asociados a la producción de software

1. Perfil de Ingeniero de Software

1.1. Posee capacidad para enfrentarse a una diversidad creciente, demandas por tiempo de distribución limitadas y al desarrollo de software confiables.

1.2. Profesional comprometido consigo mismo en el análisis, la especificación, el diseño, el desarrollo, las pruebas y el mantenimiento del software.

1.3. Posee interés por los procesos técnicos del desarrollo del software, la administración del proceso del software y el desarrollo de herramientas, métodos y teorías de apoyo.

1.4. Tiene responsabilidad en ámbitos profesionales o éticos —debido al involucramiento con la salud, la seguridad y bienestar público— en temas como la confidencialidad, buen uso de computadoras, garantía de alto estándar profesional, integridad en juicio, entre otras.

2. Biblioteca de clases

2.1. Son conjuntos de clases —en algunos casos de cientos a miles— que son de utilidad para los desarrolladores de aplicaciones.

2.2. Funcionan como plantillas para el desarrollo de software.

2.3. Ventajas

2.3.1. Reducen el tiempo de desarrollo de software

2.3.2. Reducen la realización de tareas repetitivas

3. Java

3.1. Es un lenguaje de programación orientado a objetos diseñado para ser utilizado independiente del equipo.

3.2. Características

3.2.1. Simple al escribir código

3.2.2. Altamente seguro

3.2.3. De gran portabilidad

3.2.4. Orientado a objetos

3.2.5. Posee programación multi-hilos

3.2.6. Funciona independiente del sistema operativo y equipo

4. IDE

4.1. Proviene del ingles "Integrated Development Environment".

4.2. Corresponde a un conjunto de herramientas de software que tienen como objetivo facilitar el desarrollo de software.

4.3. Por lo general proveen

4.3.1. Editor de código fuente

4.3.2. Herramientas de construcción automática de proyectos

4.3.3. Un depurador

4.4. Ventajas

4.4.1. Reducen el tiempo de desarrollo de software

4.4.2. Estandarizan la forma de trabajo

4.4.3. Permiten la administración de múltiples proyectos simultaneamente

5. Bibliotecas para construcción de GUI

5.1. AWT

5.1.1. Conecta la aplicación y la GUI del sistema operativo original, depende del código nativo para sus funciones ("heavyweight"). Se usa para applet sencillos o programa que se ejecute en una plataforma.

5.1.2. Características

5.1.2.1. Variedad de componentes GUI

5.1.2.2. Robustez de manejo de eventos

5.1.2.3. Herramientas gráficas y de imágenes

5.1.2.4. Manejador de layout

5.1.2.5. Posee clases de transferencia de datos donde se ejecuta la aplicación

5.1.3. Ventajas

5.1.3.1. La velocidad al usar código nativo

5.1.3.2. Portabilidad del applet por la compatibilidad con la mayoría de navegadores web

5.1.3.3. Apariencia del sistema operativo que ejecuten

5.1.4. Desventajas

5.1.4.1. La portabilidad, ya que usar código nativo limita el uso en algunas plataformas

5.1.4.2. El desarrollo actual se basa en Swing

5.1.4.3. Incompatible con íconos y tool-tips

5.2. Swing

5.2.1. Basado en AWT. Tiene un mecanismo para modificar la apariencia de la GUI de acuerdo al sistema operativo, no depende del código nativo de sus contrapartes para sus funciones.

5.2.2. Características

5.2.2.1. Todas las características de AWT

5.2.2.2. Componentes de alto nivel como tree view, list box y tabbed panes

5.2.2.3. Mecanismo look and feel que modifica apariencia

5.2.2.4. Diseño de java puro, sin dependencia del código nativo

5.2.3. Ventajas

5.2.3.1. Portabilidad gracias al diseño puro de java con limitaciones a menos plataformas

5.2.3.2. Comportamiento de componentes sin limitación de donde se ejecuten

5.2.3.3. Compatibilidad con iconos y herramientas pop-up para componentes

5.2.3.4. Desarrollo activo del proveedor

5.2.3.5. Mecanismo look and feel

5.2.3.6. Utilización de componentes Borland con JBuilder como dbSwing y JBCL

5.2.4. Desventajas

5.2.4.1. La portabilidad applet, ya que los navegadores web no lo incluye y debe usarse plugin de java

5.2.4.2. El rendimiento, pues los componentes generalmente son más lentos y defectuosos, en cuestiones java y conflictos de video.

6. Diagrama de casos de uso UML

6.1. Un caso de uso es una interacción típica entre usuario y sistema.

6.1.1. Características

6.1.1.1. Capta una función visible para el usuario

6.1.1.2. Puede ser pequeño o grande

6.1.1.3. Logra un objetivo discreto para el usuario

6.2. Sirve para tener una visión clara de la interacción entre los usuarios y el sistema.

6.2.1. Por ende ayudan a comprender los requerimientos del software.

6.3. El diagrama está compuesto por

6.3.1. Actores

6.3.2. Casos de uso

6.3.3. Relaciones

6.3.3.1. Relación actor-caso de uso

6.3.3.2. Relación de extensión

6.3.3.3. Relación de uso

7. Visual Paradigm

7.1. Herramientas

7.1.1. Modelado de UML

7.1.1.1. Diagrama de clases

7.1.1.2. Diagrama de casos de uso

7.1.1.3. Diagrama de secuencia

7.1.1.4. Diagrama de comunicación

7.1.1.5. Diagrama de estados

7.1.1.6. Diagrama de actividad

7.1.1.7. Diagrama de componentes

7.1.1.8. Diagrama de distribución

7.1.1.9. Diagrama de objeto

7.1.1.10. Diagrama de sincronización

7.1.1.11. Diagrama de paquetes

7.1.1.12. Diagrama de estructura compuesta

7.1.1.13. Diagrama general de interacción

7.1.2. Modelado de requerimientos

7.1.3. Modelado de bases de datos

7.1.4. Modelado de procesos de negocios

7.1.5. Mapeo objeto-relacional para bases de datos

7.1.6. Modelado en colaboración y simultáneamente

7.1.7. Exporta diseños a documentos en formato: HTML, PDF, Microsoft Word

7.2. Herramienta de diseño UML y UML CASE

7.3. Soporta lenguajes y estándares como UML, SysML, BPMN, XMI, entre otros

8. Diagrama de actividad UML

8.1. Muestra procesos de flujos de trabajo y describe comportamiento de procesos paralelos, además selecciona el orden en que se realizarán

8.2. El diagrama está compuesto por

8.2.1. Actividad

8.2.2. Acción

8.2.3. Bifurcación

8.2.4. División concurrente

8.2.5. Unión concurrente

8.2.6. Particiones