Desarrollo de Software - Introducción
48 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿Cuál de las siguientes afirmaciones describe mejor el hardware?

  • Una interfaz que une el usuario con el sistema operativo.
  • Instrucciones que permiten al ordenador funcionar.
  • Programas que resuelven necesidades concretas del usuario.
  • Componentes físicos que se pueden ver y tocar. (correct)
  • ¿Cuál es la función principal del software de sistema?

  • Permitir que el usuario realice tareas específicas.
  • Proporcionar una plataforma para el desarrollo de aplicaciones.
  • Facilitar la comunicación entre el hardware y el usuario.
  • Gestionar eficientemente los recursos del ordenador. (correct)
  • ¿Qué tipo de software se utiliza para tareas específicas de los usuarios?

  • Software de sistema.
  • Software de procesamiento.
  • Software de aplicación. (correct)
  • Software de desarrollo.
  • ¿Qué interacción se establece entre hardware y software?

    <p>El software permite al hardware operar de manera eficiente.</p> Signup and view all the answers

    ¿Cuál de estas opciones NO es un ejemplo de software de sistema?

    <p>Hojas de cálculo.</p> Signup and view all the answers

    ¿Cuál de las siguientes es una característica del software?

    <p>Su funcionalidad depende del hardware.</p> Signup and view all the answers

    ¿Qué tipo de software se clasifica por el método de distribución?

    <p>Software libre y propietario.</p> Signup and view all the answers

    ¿Cuál es la relación entre hardware y software en un ordenador?

    <p>El software permite que el hardware ejecute las instrucciones necesarias.</p> Signup and view all the answers

    ¿Cuál es una ventaja clave del modelo evolutivo iterativo en espiral?

    <p>Disminuye el riesgo en la elaboración del proyecto</p> Signup and view all the answers

    ¿En qué tipo de proyectos es recomendable utilizar el modelo evolutivo iterativo en espiral?

    <p>Proyectos muy grandes que cambian constantemente</p> Signup and view all the answers

    ¿Qué elemento no se considera un principio clave de las metodologías ágiles?

    <p>La planificación rígida y estricta</p> Signup and view all the answers

    ¿Por qué es importante la autonomía de los equipos en metodologías ágiles?

    <p>Aumenta la capacidad de adaptación a las necesidades del cliente</p> Signup and view all the answers

    ¿Cuál de las siguientes metodologías ágiles se enfoca en la programación extrema?

    <p>Extreme Programming (XP)</p> Signup and view all the answers

    ¿Qué resultado se espera de la entrega continua de software en metodologías ágiles?

    <p>Satisfacción del cliente a través de interacciones frecuentes</p> Signup and view all the answers

    ¿Qué característica de las metodologías ágiles permite mayor flexibilidad en el desarrollo de software?

    <p>Sistema de planificación no rígido</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones es un principio fundamental de la metodología ágil?

    <p>Las personas motivadas son el centro del desarrollo de proyectos</p> Signup and view all the answers

    ¿Cuál es una característica del software libre?

    <p>Se puede utilizar, modificar y distribuir libremente.</p> Signup and view all the answers

    ¿Qué significa que un software sea de dominio público?

    <p>El software carece de licencia y puede ser utilizado libremente por cualquier persona.</p> Signup and view all the answers

    ¿Qué restricción suele tener el software propietario?

    <p>Impide el acceso al código fuente.</p> Signup and view all the answers

    ¿Cuál es el propósito principal de la Licencia Pública General (GPL)?

    <p>Obligar a hacer públicas las versiones modificadas del software.</p> Signup and view all the answers

    ¿Qué proceso abarca el ciclo de vida del software según la ISO?

    <p>Desde la definición de requisitos hasta la eliminación del software.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre las licencias Creative Commons es correcta?

    <p>Son estándares que regulan el derecho de uso de obras protegidas.</p> Signup and view all the answers

    ¿Qué significa 'libertad de mejorar el programa' en el contexto del software libre?

    <p>La capacidad de modificar el software y agregar nuevas características.</p> Signup and view all the answers

    ¿Qué característica distintiva tiene el software libre en comparación con el software propietario?

    <p>El software libre asegura la libertad de uso, modificación y distribución.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre los procesos ágiles es correcta?

    <p>El desarrollo sostenible es promovido por los procesos ágiles.</p> Signup and view all the answers

    Los lenguajes de programación son utilizados para:

    <p>Comunicar instrucciones al ordenador en un formato comprensible.</p> Signup and view all the answers

    ¿Qué elemento es considerado parte de la estructura de un lenguaje de programación?

    <p>Vocabulario.</p> Signup and view all the answers

    Dentro de los lenguajes de programación, la semántica se refiere a:

    <p>El significado de las construcciones del lenguaje.</p> Signup and view all the answers

    ¿Cuál de las siguientes opciones describe mejor el ciclo de vida del software según metodologías ágiles?

    <p>Iteraciones frecuentes con reflexiones sobre la eficacia.</p> Signup and view all the answers

    ¿Qué tipo de lenguajes de programación se consideraría de bajo nivel?

    <p>C y ensamblador.</p> Signup and view all the answers

    En el contexto de las metodologías ágiles, ¿cuál es la importancia de un equipo autoorganizado?

    <p>Permite la creación de diseños precisos y efectivos.</p> Signup and view all the answers

    ¿Qué proceso sigue a la escritura del código fuente en la programación?

    <p>Depuración y prueba del código.</p> Signup and view all the answers

    ¿Cuál es una ventaja principal de utilizar máquinas virtuales?

    <p>Ofrecen flexibilidad sin desconfigurar el sistema operativo primario.</p> Signup and view all the answers

    ¿Cuál de las siguientes afirmaciones sobre las máquinas virtuales es incorrecta?

    <p>Son más eficientes que una instalación nativa del sistema operativo.</p> Signup and view all the answers

    ¿Qué característica define a una máquina virtual de proceso?

    <p>Inicia automáticamente con el proceso deseado y se detiene al finalizar.</p> Signup and view all the answers

    ¿Cuál es el objetivo principal de la máquina virtual de Java?

    <p>Proporcionar un entorno de ejecución independiente de la plataforma hardware.</p> Signup and view all the answers

    ¿Qué limitación se presenta al trabajar con lenguajes de programación compilados?

    <p>Es necesario compilar nuevamente al cambiar de plataforma.</p> Signup and view all the answers

    ¿Qué tipo de máquina virtual permite ejecutar diferentes máquinas con sistemas operativos en una sola máquina física?

    <p>Máquina virtual de sistema.</p> Signup and view all the answers

    ¿Cuál es un inconveniente significativo de las máquinas virtuales?

    <p>Pueden causar ralentización del sistema anfitrión.</p> Signup and view all the answers

    Al cambiar de una plataforma a otra, ¿qué debe hacerse con el código objeto obtenido de lenguajes compilados?

    <p>Recompilarlo para la nueva plataforma es imprescindible.</p> Signup and view all the answers

    ¿Cuál es la principal ventaja de la máquina virtual de Java (JVM)?

    <p>Asegurar que el programa sea independiente del hardware y sistema operativo</p> Signup and view all the answers

    ¿Cuál es el primer paso para ejecutar un programa en Java?

    <p>Escribir el programa fuente en Java</p> Signup and view all the answers

    ¿Qué se obtiene después de compilar un programa en Java?

    <p>Código en un formato intermedio llamado bycode</p> Signup and view all the answers

    ¿Qué desventaja se menciona acerca de las aplicaciones Java?

    <p>Todo ordenador debe tener instalada la máquina virtual de Java</p> Signup and view all the answers

    ¿Cuál es el propósito de utilizar múltiples máquinas virtuales?

    <p>Permitir pruebas de software sin afectar el sistema operativo principal</p> Signup and view all the answers

    ¿En qué se diferencia la máquina virtual de Java de los productos desarrollados en Java?

    <p>La máquina virtual debe ser instalada en cada sistema operativo</p> Signup and view all the answers

    ¿Qué función cumple la máquina virtual de Java al ejecutar un programa?

    <p>Interpretar el bytecode y simular un entorno de ejecución</p> Signup and view all the answers

    ¿Cuál es un resultado del uso de Java en el desarrollo de aplicaciones?

    <p>Permite la creación de aplicaciones que pueden ejecutarse en diversas plataformas</p> Signup and view all the answers

    Study Notes

    Introducción a Entornos de Desarrollo

    • El curso se titula Desarrollo de Aplicaciones Multiplataforma (DAM1)
    • El curso se imparte durante el curso 2024-2025
    • El profesor del curso es María Miranda Herrero
    • El centro donde se imparte el curso es CIFP Santa Catalina, Aranda de Duero

    Unidad Temática 1: Desarrollo del Software

    • La unidad se centra en el desarrollo del software.
    • El contenido abarca temas como hardware y software.
    • Se exploran conceptos sobre el ciclo de vida del software, lenguajes de programación, código fuente, código objeto y código ejecutable, y máquinas virtuales.

    Unidad Temática 1: Introducción

    • Un sistema informático almacena y procesa información
    • Está formado por tres componentes fundamentales.
    • Hardware: el conjunto de componentes físicos (generalmente electricos y electrónicos)
    • Software: el conjunto de instrucciones, programas o aplicaciones que hacen funcionar al ordenador (no físico)
    • Personal Informático: el personal técnico que crea y mantiene el sistema. El personal que utiliza el sistema de forma final.

    Unidad Temática 1: ¿Qué es un programa informático?

    • Un programa es un conjunto de instrucciones, que sirve para realizar tareas en un ordenador.
    • Sin programas, el ordenador no puede funcionar.
    • El programa puede ser un código fuente o un programa ejecutable
    • Un conjunto de programas y datos relacionados forma el software.

    Unidad Temática 1: ¿Para qué sirve un programa informático?

    • La función básica de un programa informático en un ordenador es recoger datos de entrada, procesarlos y producir datos de salida.

    Unidad Temática 2: Relación entre Hardware y Software

    • Hardware: Es todo lo que se puede tocar en el ordenador
      • El hardware dentro de la CPU no es visible a simple vista
      • El hardware externo se conoce como periféricos
    • Software: Son las instrucciones que necesita el ordenador para funcionar (no son físicas).
      • Sistemas operativos: Controlan los recursos del ordenador eficientemente y permiten la comunicación con el usuario.
      • Aplicaciones: Son programas para satisfacer las necesidades del usuario (escritura, dibujo, etc.).

    Unidad Temática 3: El Software

    • El software maneja las instrucciones para el hardware y los datos con los que trabajan los programas.
    • Existen diferentes formas de clasificar el software:
      • Según el tipo de tarea: Sistema, Aplicación o Programación.
      • Según el método de distribución: Shareware, Freeware, Adware o SaaS.
    • Licencias de software: Contractas entre el desarrollador y usuario. En base a esto se categorizan en Libre, Propietario o Dominio Publico.
    • Creative Commons: Modelos de licencias para las publicaciones con derechos de autor (se identifican con iconos CC).

    Unidad Temática 4: Ciclo de vida del software

    • La Organización Internacional de Estandarización (ISO) normaliza el trabajo del desarrollo de software.
    • El ciclo de vida del software es un marco de referencia donde se describe como se desarrolla y mantiene un programa desde los requisitos hasta finalización de su uso
    • El ciclo de vida se divide en etapas: Análisis, Diseño, Codificación, Pruebas, Explotación y Mantenimiento, que deben completarse en orden, aunque puede haber realimentaciones
    • La documentación es importante para cada etapa.
      • Documentación interna (comentarios en el código)
      • Documentación externa (documentos más extensos)
      • Manual de usuario (instrucciones para el uso del producto)
    • Modelos de ciclo de vida: cascada, evolutivo (iterativo, incremental, en espiral), metodologías ágiles (Scrum, XP, Kanban)

    Unidad Temática 5: Lenguajes de programación

    • Lenguajes de programación son el idioma que une a programador y ordenador.
    • Están formados por símbolos, reglas sintácticas y semánticas
    • Según el nivel de abstracción:
      • Bajo nivel: Lenguaje máquina o de primera generación
      • Medio nivel: lenguaje ensamblador o de segunda generación (más parecido al lenguaje humano)
      • Alto nivel: C++, Java, etc (más parecido al lenguaje humano).
    • Según la forma de ejecutarse:
      • Compilados: El programa traduce todo el código a código máquina
      • Interpretados: El programa traduce y ejecuta instrucciones en tiempo real
      • Mixtos: Traducción en código intermedio, seguido de interpretación
    • Según el paradigma de programación:
      • Estructurada: Programación secuencial, con decisiones y procesos repetidos
      • Orientada a objetos: resolución mediante objetos que interactúan entre sí.

    Unidad Temática 6: Código fuente, código objeto y código ejecutable

    • Código fuente: Conjunto de líneas de texto/ instrucciones/pasos que un ordenador necesita para ejecutar un programa.
    • Código objeto: Resultado de traducir el código fuente
    • Código ejecutable: Código objeto unido a librerías para su ejecución por el hardware del ordenador
    • El proceso de obtener el código ejecutable se denomina compilación
      • El compilador traduce el código fuente a código objeto
      • El enlazador conecta el código objeto a las librerías necesarias

    Unidad Temática 7: Máquinas virtuales

    • Las máquinas virtuales son aplicaciones que simulan un ordenador físico
    • Son útiles para ejecutar programas o sistemas operativos en un entorno distinto sin afectar directamente a nuestro sistema principal.
    • Tipos de máquinas virtuales:
      • De sistema: Ejecutar varias máquinas virtuales simultáneamente, con cada una de ellas pudiendo tener un sistema operativo distinto.
      • De proceso: Proporciona un entorno de ejecucion independiente de la plataform, permitiendo ejecutar un único proceso.
    • Máquina virtual Java (JVM): permite la ejecución de programas escritos en lenguaje Java en cualquier sistema operativo.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    UT1 Desarrollo del Software PDF

    Description

    Este cuestionario explora los conceptos fundamentales del desarrollo de software, incluyendo hardware y software, así como el ciclo de vida del software. Abordamos los lenguajes de programación y los diferentes tipos de código involucrados. Ideal para estudiantes del curso de Desarrollo de Aplicaciones Multiplataforma.

    More Like This

    Use Quizgecko on...
    Browser
    Browser