69600848 act 1 3 4 7 8 ingenieria de sotfware

Upload: jahegima

Post on 18-Oct-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

  • Act 1: Revisin de Presaberes

    Pgina 1 - Importancia de la Ingeniera de Software

    A continuacin se presenta un conjunto de lecturas que lo ambientarn en el curso de

    Ingeniera de software y a la vez al final de cada lectura se le har unas preguntas para

    evaluar sus presaberes. La puntuacin de esta actividad es de 8 puntos de un total de

    500.

    El software satura nuestro mundo y algunas veces damos por sentado su rol en hacer que

    nuestras vidas sean ms confortables, eficientes y efectivas. Hoy en da, el software

    trabaja tanto explcitamente como detrs de la escena, virtualmente en todos los aspectos

    de nuestras vidas, incluso en los sistemas crticos que comprometen nuestra salud y

    bienestar. Por esta razn, la ingeniera de software es ms importante que nunca. Las

    buenas prcticas de la ingeniera de software deben asegurar que ste haga una

    contribucin positiva a la manera en que se desarrollan nuestras vidas.

    La ingeniera de software es el proceso de construir aplicaciones de tamao o alcance

    prcticos, en las que predomina el esfuerzo del software y que satisfacen los

    requerimientos de funcionalidad y desempeo.La ingeniera de software, ofrece mtodos

    y tcnicas para desarrollar, mantener,producir y asegurar software de calidad.

    Por tal razn, este curso pretende describir los aspectos tcnicos y de gestin de la

    Ingeniera de Software, as como de establecer la importancia de la garanta de calidad del

    software.

    Pgina 2 - Competencias a desarrollar

    Las competencias que promueve el curso y que son necesarias son:

    COGNITIVA: Capacidad de apropiarse de un conjunto de conocimientos a travs del desarrollo, control y accin de procesos de pensamiento como: conocer el lenguaje de la ingeniera de software, identificar lo que significa Calidad del Software, identificar el proceso de software y mtricas del proyecto. En la ingeniera de software es muy importante la Induccin Deduccin, donde se puede generalizar o particularizar a partir de diversos escenarios.

    COMUNICATIVA: Capacidad de comprender, expresar mensajes y de desarrollar procesos argumentativos, apoyados por la asertividad en las relaciones interpersonales. Estn relacionadas con el desarrollo de los sentidos para observar, hablar, leer, escribir y escuchar lo mejor posible, de tal manera que se optimice la comunicacin y las relaciones interpersonales, ya que como estudiante debe interactuar con sus compaeros y con su tutor y en su vida profesional debe interactuar con muchas personas, ya que en el proceso de

  • desarrollo de software es clave la recoleccin de informacin mediante entrevistas, charlas, observacin y lectura de documentos.

    CONTEXTUAL: Capacidad de ubicar el conocimiento en el contexto cientfico, poltico, cultural, tecnolgico, social y en el plano nacional e internacional, as como la disposicin y capacidad para aplicarlo en procesos de transformacin que inciden en la calidad de vida de la poblacin.

    VALORATIVA: Capacidad de apropiarse de valores como el respeto a la vida. La dignidad humana, la convivencia, la solidaridad, la tolerancia y la libertad que orientan las acciones del individuo como persona, como ser social y como profesional.

    1. El curso de Ingeniera de software pretende describir los aspectos tcnicos y de gestin de esta disciplina, as como de establecer la importancia de la garanta de calidad del software.

    Verdadero

    Falso

    2. La capacidad deubicar el conocimiento en un escenario cientfico, poltico, cultural, tecnolgico o social, as como la disposicin y capacidad para aplicarlo en procesos de transformacin que inciden en la calidad de vida de la poblacin, hacen parte de la siguiente competencia:

    Valorativa

    Comunicativa

    Contextual

    Cognitiva

    3. El desarrollo de habilidades como la Induccin y la Generalizacin, hace parte de la siguiente competencia:

    Comunicativa

    Valorativa

    Cognitiva

    Contextual

    4. La netiqueta, palabra derivada del ingls net (red) y del francs etiquette (buena educacin), es el conjunto de normas que regulan el comportamiento de los usuarios

    de las diversas aplicaciones del internet.

  • De la misma manera que existen protocolos para los encuentros fsicos entre personas, la

    netiqueta describe protocolos que se deben utilizar en los encuentros electrnicos..

    Ajustarse a las normas de la netiqueta en los cursos virtuales de la UNAD, hace parte del

    desarrollo de la siguiente competencia:

    Valorativa

    Contextual

    Comunicativa

    Cognitiva

    Pgina 7 - Intencionalidades Formativas

    El cursoIngeniera de Software correspondiente al componente bsico profesional del Programa de Ingeniera de Sistemas tiene como objetivo desarrollar habilidades y adquirir capacidades en la utilizacin de mtodos y tcnicas para desarrollar y mantener software de calidad.

    El curso tiene 3 crditos acadmicos los cuales comprenden el estudio independiente y el acompaamiento tutorial, con el propsito de:

    Comprender los aspectos tcnicos y de gestin de la disciplina de ingeniera de software.

    Capacitar a los estudiantes en las tcnicas de gestin necesarias para planificar, organizar, supervisar y controlar proyectos de software.

    Fomentar en el estudiante tcnicas de gestin de calidad del software. Obtener un conjunto de tcnicas de prueba de software con el propsito

    de encontrar y corregir errores antes de entregar el software al cliente.

    5. El curso de Ingeniera de Software est compuesto por tres unidades didcticas que corresponden a:

    2 Crditos Acadmicos

    4 Crditos Acadmicos

    3 Crditos Acadmicos

    6. Uno de los propsitos que pretende el curso Ingeniera de Software es:

  • Capacitar a los estudiantes en las tcnicas de gestin necesarias para que creen su

    propia empresa

    Fomentar en el estudiante tcnicas de gestin para desarrollar software libre.

    Capacitar a los estudiantes en las tcnicas de gestin necesarias para planificar,

    organizar, supervisar y controlar proyectos de software.

    Obtener un conjunto de tcnicas de prueba de software con el propsito de encontrar

    y corregir errores despus de entregar el software al cliente.

    7. El propsito de Capacitar a los estudiantes en las tcnicas de gestin para planificacin, supervisin y control de proyectos de software, hacen parte del

    desarrollo de la siguiente competencia:

    Contextual

    Valorativa

    Comunicativa

    Cognitiva

    Pgina 11 - Unidades Didcticas

    Este curso esta compuesto por tres unidades didcticas a saber:

    Unidad 1.Introduccin a la ingeniera de software: se presenta una vista general sobre la

    definicin de: ingeniera de software, producto de software, procesos de software, se

    determina las caractersticas del software, los mitos del software. Se presenta tambin los

    diferentes tipos de proceso y los modelos evolutivos del software.

    Unidad 2.Gestin y planificacin de proyectos de software: se trata de determinar como

    se debe gestionar el personal, el proceso y el problema durante un proyecto de software. Se

    identifican las mtricas de software y cmo pueden emplearse para gestionar el proceso de

    software y el proyecto llevado a cabo como parte del proceso.

    Unidad 3.Control de calidad del software: se contemplan los aspectos relacionados con

    la calidad del software, se identifican los aspectos de gestiny las actividades especficas

    del proceso de calidad del software. Se establece la importancia de la garanta de calidad

    del software as como se definen las estrategias para los planes de garanta de calidad del

    software.

    8. En la unidad didctica Control de calidad del softwarese identifican las mtricas de software y su empleo para gestionar el proceso de software y el proyecto llevado

  • a cabo como parte del proceso.

    Falso

    Verdadero

    9. La unidad didctica donde se determinan planes para garantizar la calidad del software a desarrollar, es:

    Unidad II

    Unidad I

    Unidad III

    Unidad IV

    10. El tema referente a los Mitos del Software, es abordado en la Unidad:.

    Unidad 2

    Unidad 3

    Unidad 4

    Unidad 1

  • Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Esta Leccin Evaluativa tiene un puntaje mximo de 8 puntos sobre un total de 500. Se

    espera que el estudiante haya explorado con anterioridad la Unidad 1.

    Introduccin a la Ingeniera de Software

    La ingeniera de Software fue definida por FritzBauer a finales de los 60's como "el

    establecimiento y uso de principios de ingeniera para obtener software que fuera confiable

    y que funcionara eficientemente con las mquinas reales". A pesar de tener ya bastante

    tiempo, esta definicin da el sentimiento correcto de lo que se espera de la disciplina.

    La importancia del uso de estas medidas es caracterstica para todas las disciplinas de la

    ingeniera. La mtrica se refiere a estndares de las medidas usadas para cuantificar

    aspectos especficos de un proceso, de un producto o de un proyecto de la ingeniera. Una

    medida es el mapa de un mundo emprico a un mundo ms formal y ms matemtico.

    En pocas tempranas la programacin era la tarea de oro de la Ingeniera del Software

    utilizando como tcnica la programacin estructurada o modular, pero ahora la ingeniera y

    el diseo de requisitos son las actividades relevantes de esta disciplina, emrgiendo mtodos

    estructurados de anlisis y tambin mtodos estructurados de diseo al igual que

    comenzaron tecnologas orientadas a objetos.

    En los aos 90's la gerencia de proyecto gan inters y llego a ser un componente

    importante en ingeniera del Software. En la dcada pasada, los estndares de la ingeniera

    de Software y la madurez de proceso han caracterizado la industria del software como una

    disciplina madura.

    En un nivel tcnico, la ingeniera del software comienza con una serie de tareas que hacen

    modelos y que resultan en una especificacin completa de requisitos y una representacion

    comprensiva de diseo del software que ser construido.

    A lo largo de la historia de la Industria del software han existido muchos mtodos o

    modelos de desarrollo de software, pero al parecer los mtodos orientados a objetos van a

    llegar a ser el estandard por el cual se va a regir esta industria.

    Aunque para ciertos sistemas que manejan informacin crtica, se han desarrollado mtodos

    formales para producir software con la integridad ms alta. Los mtodos formales confan

    en las tcnicas matemticas que expresan y modelan los requisitos de cualquier producto en

    el ciclo vital del software.

    El desarrollo de software orientado a objetos comenz en los 80's como una etapa natural

    de los mtodos estructurados. UML (Unified Modeling Language) ha emergido como una

    unificacin de los diversos mtodos orientados a objeto y se est convirtiendo en un

    estndard de ISO.

  • Actualmente, la tecnologa de componentes es un mtodo para desarrollar software que est creciendo. A diferencia de los mtodos tradicionales, la tecnologa Component-Base (Basada en Componentes) trata de sentar las bases para el diseo y desarrollo de aplicaciones distribuidas basadas en componentes software reutilizables.

    Segn la definicin del IEEE, "software es la suma total de los programas de ordenador,

    procedimientos, reglas, la documentacin asociada y los datos que pertenecen a un sistema

    de cmputo" y un producto de software "es un producto diseado para un usuario". En este

    contexto, la Ingeniera de Software (SE del ingls "Software Engineering") es un enfoque

    sistemtico del desarrollo, operacin, mantenimiento y retiro del software.

    Su origen se debe a que desde hace varios aos el entorno de desarrollo de sistemas

    software, viene adoleciendo de algunas dificultades que se hacen evidentes en los

    siguientes aspectos:

    Retrasos considerables en la planificacin

    Poca productividad

    Elevadas cargas de mantenimiento

    Demandas cada vez ms desfasadas con las ofertas

    Baja calidad y fiabilidad del producto

    Dependencia de los realizadores

    Esto es lo que se ha denominado comunmente "crisis del software". La palabra crisis se

    define en el diccionario como "un punto decisivo en el curso de algo, momento, etapa, o

    evento decisivo o crucial". Sin embargo para el software no ha habido ningn punto crucial,

    slo una lenta evolucin.

    La crisis en la industria del software ha permanecido durante muchos aos, lo cual parece

    una contradiccin para el trmino. Lo que si se podra decir es que hay un problema crnico

    en el desarrollo de software.

    Actualmente est surgiendo una gran expectativa ante la evolucin de la Ingeniera del

    Software, al ir apareciendo nuevos mtodos y herramientas formales que van a permitir en

    el futuro un replanteamiento de ingeniera en el proceso de elaboracin de software. Dicho

    replanteamiento vendr a suplir la demanda creciente por parte de los usuarios, permitiendo

    dar respuesta a los problemas de:

    Administracin

    Calidad

    Productividad

    Fcil mantenimiento

    Este ltimo es uno de los grandes problemas, pues puede llegar a suponer un incremento

    superior al 60% del total del costo del software.

  • Las nuevas metodologas suponen un enfoque integral del problema, abarcando todas las

    fases, que en su mayora no se consideraba en los desarrollos tradicionales. En particular

    son fundamentales la reduccin de costos y plazos, as como la calidad del producto final.

    Estas tecnologas constituyen la denominada "Ingeniera del Software", que se puede

    definir como "el tratamiento sistemtico de todas las fases del ciclo de vida del software".

    Hay otras definiciones, pero todas inciden en la importancia de una disciplina de ingeniera

    para el desarrollo de software.

    1

    Se puede decir que el desarrollo de la Ingeniera del Software comienza con el desarrollo de

    Software Orientada a Objetos.

    Su respuesta :

    Falso

    Correcto, realmente el desarrollo de la Ingeniera del Software comienza a partir de la

    programacin estructurada.

    2

    La definicin de la Ingeniera de Software como el establecimiento y uso de principios de ingeniera para obtener software que fuera confiable y que funcionara eficientemente con las mquinas reales, se debe a:

    Su respuesta :

    Fritz Bauer

    Muy bien, a pesar de ser vieja, esta definicin da el sentimiento correcto detrs de la

    disciplina.

    3

    La tecnologa Basada en Componentes trata de sentar las bases para el diseo y desarrollo

    de aplicaciones distribuidas basadas en mdulos de software.

    Su respuesta :

    Falso

    Correcto, se basa en componentes de software reutilizables.

    4

  • Los mtodos que utilizan tcnicas matemticas para expresar y modelar los requisitos de

    cualquier producto en el ciclo vital del software, se le denomina:

    Su respuesta :

    Formales

    Correcto, hay ciertos sistemas que manejan informacin crtica y los mtodos formales

    permiten desarrollar este tipo de software con la ms alta integridad

    5

    El desarrollo de software viene adoleciendo desde hace algn tiempo de algunas

    dificultades que han originado la crisis del software. Cul de las siguientes opciones NO

    corresponde a estas dificultades?

    Su respuesta :

    Independencia de los realizadores

    Correcto.

    6

    Las dificultades con las que ha venido adoleciendo el desarrollo y mantenimiento de

    software durante las ltimas dcadas, se le conoce como:

    Su respuesta :

    Crisis del Software

    Correcto, problemas como retrasos en la entrega, sobrecostos, dificultad en el

    mantenimiento, entre otros, originaron este trmino.

    7

    Uno de los problemas de los que adolece la Industria del Software es la dificultad en el

    mantenimiento del mismo, este problema representa un incremento notable en el costo final

    del software aproximado al 40%.

    Su respuesta :

    Falso

    Correcto, este incremento es mucho ms alto.

    8

  • De acuerdo a la lectura anterior, se puede inferir que la crisis del software ya se super.

    Su respuesta :

    Falso

    Correcto

    9

    Las nuevas metodologas aplicadas en el proceso de elaboracin de software suponen un

    enfoque del problema que abarca:

    Su respuesta :

    Todo el Ciclo de Vida del software.

    Correcto

    10

    La ingeniera del software pretende principalmente:

    Su respuesta :

    Reducir costos y plazos de entrega deteniendose en la calidad del producto final.

    Correcto, el objeto de esta disciplina es el desarrollo de software de calidad.

    Si desea puede realizar otro intento. (Solo tiene Dos).

  • Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Esta Leccin Evaluativa tiene un mximo puntaje de 25 puntos sobre un total de 500. Se espera que

    el estudiante haya realizado con anterioridad una lectura completa de la Unidad 1.

    Para poder comprender lo que es el software (y consecuentemente la Ingeniera del Software), es

    importante examinar las caractersticas del software que lo diferencian de otras cosas que los

    hombres pueden construir.

    El software es un elemento del sistema que es lgico, en lugar de fsico. Por lo tanto el software

    tiene unas caractersticas considerablemente distintas a las del hardware:

    El software se desarrolla, no se fabrica en un sentido clsico. Aunque existen similitudes entre el

    desarrollo del software y la construccin del hardware, ambas actividades son fundamentalmente

    diferentes. En ambas actividades la buena calidad se adquiere mediante un buen diseo, pero la

    fase de construccin del hardware puede introducir problemas de calidad que no existen (o son

    fcilmente corregibles) en el software. Ambas actividades dependen de las personas, pero la

    relacin entre las personas dedicadas y el trabajo realizado es completamente diferente para el

    software. Ambas actividades requieren de la construccin de un producto, pero los mtodos son

    diferentes.

    Los costos del software se encuentran en la ingeniera. Esto significa que los proyectos de software

    no se pueden gestionar como si fueran proyectos de fabricacin.

    El software no se estropea. El software no es susceptible a los males del entorno que hacen que el

    hardware se estropee. Otro aspecto de ese deterioro ilustra la diferencia entre el hardware y el

    software. Cuando un componente se estropea, se sustituye por una pieza de repuesto. No hay

    pieza de repuesto para el software. Cada fallo en el software indica un error en el diseo o en el

    proceso mediante el que se tradujo el diseo a cdigo maquina ejecutable. Por tanto, el

    mantenimiento del software tiene una complejidad considerablemente mayor que la del

    mantenimiento del hardware.

    La mayora del software se construye a medida, en vez de ensamblar componentes existentes.

    No existen catlogos de componentes de software. Se puede comprar software ya desarrollado,

    pero solo como una unidad completa, no como componentes que pueden reensamblarse en

    nuevos programas.

    El software puede aplicarse en cualquier situacin en la que se haya definido previamente

    un conjunto especifico de pasos procedimentales (es decir, un algoritmo). (Excepciones

    notables a esta regla son el software de los sistemas expertos y de redes neuronales).

    Las siguientes reas del software indican la amplitud de las aplicaciones potenciales:

  • Software de Sistemas: El software de sistemas es un conjunto de programas que han sido

    escritos para servir a otros programas. El rea del Software de Sistemas se caracteriza por

    una fuerte interaccin con el hardware de la computadora; una gran utilizacin por

    mltiples usuarios; una operacin concurrente que requiere una planificacin, una

    comparticin de recursos y una sofisticada gestin de procesos; unas estructuras de datos

    complejas y mltiples interfaces externas. (p. Ej.: compiladores, editores, utilidades, ciertos

    componentes del sistema operativo, utilidades de manejo de perifricos, procesadores de

    telecomunicaciones).

    Software de Tiempo Real: El software que mide/analiza/controla sucesos del mundo real

    conforme ocurren, se denomina de tiempo real. Entre los elementos del software de tiempo

    real se incluyen: un componente de adquisicin de datos que recolecta y da formato a la

    informacin recibida del entorno externo, un componente de anlisis que transforma la

    informacin recibida del entorno externo, un componente de anlisis que transforma la

    informacin segn lo requiera la aplicacin, un componente de control/salida que responda

    al entorno externo y un componente de monitorizacin que coordina todos los dems

    componentes, de forma tal que pueda mantenerse la respuesta en tiempo real.

    Software de Gestin: El procesamiento de informacin comercial constituye la mayor de

    las reas de aplicacin del software. Los sistemas discretos (p. Ej.: nominas, cuentas de

    haberes/dbitos, inventarios, etc.), han evolucionado hacia el software de sistemas de

    informacin de gestin (SIG), que accede a una o ms bases de datos grandes que contienen

    informacin comercial. Las aplicaciones en esta rea reestructuran los datos existentes para

    facilitar las operaciones comerciales o gestionar la toma de decisiones. Adems de las

    tareas convencionales de procesamiento de datos, las aplicaciones de software de gestin

    tambin realizan calculo interactivo (p. Ej. : el procesamiento de transacciones en puntos de

    ventas).

    Software de Ingeniera y Cientfico: El software de Ingeniera y Cientfico est

    caracterizado por los algoritmos de manejo de nmeros. Las aplicaciones van desde la

    astronoma a la vulcanologa, desde el anlisis de la presin de los automotores a la

    dinmica orbital de los lanzadores espaciales y desde la biologa molecular a la fabricacin

    automtica.

    Software Empotrado: El software Empotrado reside en memoria de solo lectura y se

    utiliza para controlar productos y sistemas de los mercados industriales y de consumo. El

    software empotrado puede ejecutar funciones muy limitadas y curiosas (p. Ej.: el control de

    las teclas de un horno de microondas) o suministrar una funcin significativa y con

    capacidad de control (p. Ej.: funciones digitales en un automvil, tales como control de la

    gasolina, indicaciones en el salpicadero, sistemas de frenado, etc.).

    Software de Computadoras Personales: El mercado del software de computadoras

    personales ha germinado en la pasada dcada. El procesamiento de textos, las hojas de

    calculo, los grficos por computadora, multimedia, entretenimientos, gestin de bases de

    datos, aplicaciones financieras de negocios y personales, y redes o acceso a bases de datos

    externas son algunas de los cientos de aplicaciones.

  • Software de Inteligencia Artificial: El software de inteligencia artificial (IA) hace uso de

    algoritmos no numricos para resolver problemas complejos para los que no son adecuados

    el calculo o el anlisis directo. El rea ms activa de la IA es la de los sistemas expertos,

    tambin llamados sistemas basados en el conocimiento.

    Durante los primeros aos de la era de la computadora, el software se contemplaba como

    un aadido. La programacin de computadoras era un "arte de andar por casa" para el que

    existan pocos mtodos sistemticos. El desarrollo del software se realizaba sin ninguna

    planificacin, hasta que los planes comenzaron a descalabrarse y los costos a correr. Los

    programadores trataban de hacer las cosas bien, y con un esfuerzo heroico, a menudo salan

    con xito. El software se diseaba a medida para cada aplicacin y tenia una distribucin

    relativamente pequea.

    La mayora del software se desarrollaba y era utilizado por la misma persona u

    organizacin. La misma persona lo escriba, lo ejecutaba y si fallaba, lo depuraba. Debido a

    este entorno personalizado del software, el diseo era un proceso implcito, realizado en la

    mente de alguien y la documentacin normalmente no exista.

    La segunda era en la evolucin de los sistemas de computadora se extienden desde la mitad

    de la dcada de los sesenta hasta finales de los setenta. La multiprogramacin y los sistemas

    multiusuario introdujeron nuevos conceptos de interaccin hombre - mquina. Las tcnicas

    interactivas abrieron un nuevo mundo de aplicaciones y nuevos niveles de sofisticacin del

    hardware y del software. Los sistemas de tiempo real podan recoger, analizar y transformar

    datos de mltiples fuentes, controlando as los procesos y produciendo salidas en

    milisegundos en lugar de minutos. Los avances en los dispositivos de almacenamiento en

    lnea condujeron a la primera generacin de sistemas de gestin de bases de datos.

    La segunda era se caracteriz tambin por el establecimiento del software como producto y

    la llegada de las "casas del software". Los patronos de la industria, del gobierno y de la

    universidad se aprestaban a "desarrollar el mejor paquete de software" y ganar as mucho

    dinero.

    Conforme creca el nmero de sistemas informticos, comenzaron a extenderse las

    bibliotecas de software de computadora. Las casas desarrollaban proyectos en los que se

    producan programas de decenas de miles de sentencia fuente. Todos esos programas, todas

    esas sentencias fuente tenan que ser corregidos cuando se detectaban fallos, modificados

    cuando cambiaban los requisitos de los usuarios o adaptados a nuevos dispositivos

    hardware que se hubieran adquirido. Estas actividades se llamaron colectivamente

    mantenimiento del software.

    La tercera era en la evolucin de los sistemas de computadora comenz a mediados de los

    aos setenta y continuo mas all de una dcada. El sistema distribuido, mltiples

    computadoras, cada una ejecutando funciones concurrente y comunicndose con alguna

    otra, increment notablemente la complejidad de los sistemas informticos. Las redes de

    rea local y de rea global, las comunicaciones digitales de alto ancho de banda y la

    creciente demanda de acceso "instantneo" a los datos, supusieron una fuerte presin sobre

    los desarrolladores del software.

  • La conclusin de la tercera era se caracteriz por la llegada y amplio uso de los

    microprocesadores. El microprocesador ha producido un extenso grupo de productos

    inteligentes, desde automviles hasta hornos microondas, desde robots industriales a

    equipos de diagnsticos de grupo sanguneo.

    La cuarta era de la evolucin de los sistemas informticos se aleja de las computadoras

    individuales y de los programas de computadoras, dirigindose al impacto colectivo de las

    computadoras y del software. Potentes mquinas personales controladas por sistemas

    operativos sofisticados, en redes globales y locales, acompaadas por aplicaciones de

    software avanzadas se han convertido en la norma.

    La industria del software ya es la cuna de la economa del mundo. Las tcnicas de la cuarta

    generacin para el desarrollo del software estn cambiando en la forma en que la

    comunidad del software construye programas informticos. Las tecnologas orientadas a

    objetos estn desplazando rpidamente los enfoques de desarrollo de software ms

    convencionales en muchas reas de aplicaciones.

    Sin embargo, un conjunto de problemas relacionados con el software ha persistido a travs

    de la evolucin de los sistemas basados en computadora, y estos problemas continan

    aumentando.

    los avances del software continan dejando atrs la habilidad de desarrollar software para alcanzar el potencial del hardware.

    La habilidad de desarrollar nuevos programas no pueden ir al mismo ritmo de la demanda de nuevos programas, no se puede construir programas lo suficientemente rpido

    como para cumplir las necesidades del mercado y de los negocios.

    El uso extenso de computadoras ha hecho de la sociedad cada vez ms dependiente de la operacin fiable del software. Cuando el software falla, pueden ocurrir daos econmicos

    enormes y ocasionar sufrimiento humano.

    En respuesta a estos problemas, las practicas de la Ingeniera del Software se estn

    adoptando en toda la industria.

    El proceso de desarrollo de software no es nico. No existe un proceso de software universal que sea efectivo para todos los contextos de proyectos de desarrollo. Debido a esta diversidad, es difcil automatizar todo un proceso de desarrollo de software.

    A pesar de la variedad de propuestas de proceso de software, existe un conjunto de actividades fundamentales que se encuentran presentes en todos ellos:

    1. Especificacin de software: Se debe definir la funcionalidad y restricciones operacionales que debe cumplir el software.

    2. Diseo e Implementacin: Se disea y construye el software de acuerdo a la especificacin.

  • 3. Validacin: El software debe validarse, para asegurar que cumpla con lo que quiere el cliente.

    4. Evolucin: El software debe evolucionar, para adaptarse a las necesidades del cliente.

    Adems de estas actividades fundamentales, hay otras que se aplican a lo largo de todo el proceso del software. Ellas se sealan a continuacin:

    Seguimiento y control de proyecto de software. Revisiones tcnicas formales. Garanta de calidad del software. Gestin de configuracin del software. Preparacin y produccin de documentos. Gestin de reutilizacin. Mediciones. Gestin de riesgos.

    Estas actividades de proteccin, tales como garanta de calidad del software, gestin de configuracin del software y medicin, abarcan el modelo del proceso. Las actividades de proteccin son independientes de cualquier actividad del marco de trabajo y aparecen durante todo el proceso.

    1

    Una de las siguientes opciones es una caracterstica del software.

    Su respuesta :

    Se construye a la medida

    Correcto, No existen catlogos de componentes de software.

    2

    El software que reside en memoria de solo lectura y que es utilizado para controlar

    productos y sistemas de los mercados industriales, se le denomina:

    Su respuesta :

    Empotrado

    Correcto.

    3

  • Un software diseado para mejorar los procesos de la bsqueda de informacin en Internet

    basado en ciertos patrones establecidos, estara dentro de la categora:

    Su respuesta :

    Inteligencia Artificial

    Correcto, El rea ms activa de la IA es la de los sistemas expertos, tambin llamados

    sistemas basados en el conocimiento.

    4

    Un software diseado para el Control de la Hora de Entrada y Salida a los trabajadores de

    una empresa y que utiliza la tecnologa touch screen para facilitar su interaccin, estara

    dentro de la categora:

    Su respuesta :

    Sistemas

    Correcto.

    5

    Una de las caractersticas de la primera era de la evolucin del software es:

    Su respuesta :

    La documentacin del software desarrollado no exista.

    Correcto, el diseo era implicito y estaba en la mente del programador

    6

    La tecnologa que actualmente est desplazando rpidamente los enfoques de desarrollo de

    software ms convencionales, se le denomina:

    Su respuesta :

    Orientada a Objetos

    Correcto.

    7

    Una de las caractersticas de la tercera era de la evolucin del software es:

    Su respuesta :

  • La Programacin Concurrente.

    Correcto, Aplicada a sistemas distribuidos, mltiples computadoras, donde cada una ejecuta

    funciones concurrentes y se comunican entre s.

    8

    La Actividad Especificacin de software presente en el proceso de desarrollo de software, se refiere a:

    Su respuesta :

    Definir la funcionalidad y restricciones operacionales que debe cumplir el software.

    Correcto.

    9

    De acuerdo a la lectura anterior se puede inferir que, existe un estndar nico para el

    desarrollo de software que es suministrado por la disciplina Ingeniera de Software.

    Su respuesta :

    Falso

    Correcto, No existe un proceso de software universal que sea efectivo para todos los

    contextos de proyectos de desarrollo.

    10

    El cliente debe daptarse a las limitaciones y restricciones del software desarrollado.

    Su respuesta :

    Falso

    Correcto, Al contrario el sofware debe hacerse a la medida del cliente.

    Si desea puede hacer otro intento desde el pricipio. (Recuerde son 2 intentos)

  • Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Pgina 1 - Gestin de Proyectos

    Esta Leccin Evaluativa tiene un puntaje mximo de 8 puntos sobre un total de 500. Se

    espera que el estudiante haya explorado con anterioridad la Unidad 2.

    Los proyectos software son diferentes por la sola razn de su tamao, esto hace que existan tres categoras diferenciadas de proyectos, con problemas diferentes cada una:

    Proyectos pequeos: consisten solamente en la implementacin. No tienen costos

    indirectos importantes.

    Proyectos grandes: poseen implementacin, pero hay muchas ms cosas. Poseen gerencia

    de proyecto, control de calidad, capacitacin de personal, hay un plan de mantenimiento,

    hay documentacin importante para uso interno y externo. Se genera imformacin para

    mercadeo.

    Proyectos medianos: es un caso intermedio entre los dos anteriores.

    Un error clsico de la historia de gestin de proyectos fue no advertir la existencia de estas

    tres categoras diferentes y lo peor, todava seguir pensando que la informacin o la

    experiencia adquirida en proyectos pequeos puede servir para proyectos medianos y

    grandes. Este hecho es una causa de los resultados catastrficos en la gestin de proyectos

    de software.

    Por otro lado, el tamao del proyecto software tamben determina el tamao del grupo de

    trabajo, si es un proyecto pequeo, se necesitar un grupo mximo de 3 personas donde la

    informacin se pueda manejar de manera informal, pero si es un proyecto grande donde

    involucra un equipo de mas de 10 personas, no se puede confiar en la memoria de los

    integrantes y adems la comunicacin no va a ser tan personalizada, ya que por lo general

    se necesita varios meses de trabajo para lograr los objetivos y esto conlleva a que se lleve la

    informacin de manera ms organizada.

    Pgina 5 - El Proceso de Software y Mtricas

    Cuando se empieza un proyecto de desarrollo de software, el primer problema a definir

    consiste en resolver los siguientes cuestionamientos: Cules son los datos del proyecto?

    De qu informacin debemos partir?

    La situacin o la respuesta es diferente si es un proyecto nuevo o en el replanteo de uno

  • existente.

    En un proyecto nuevo no hay nada hecho, la informacin que se posee es externa, la visin

    que tiene alguin desde afuera, la visin que tiene el usuario. No se sabe nada interno del

    proyecto como la cantidad de mdulos a disear, nmero de personas que participarn o

    lneas de cdigo a generar. A lo sumo se tiene una cierta especificacin del proyecto y

    algunas metas de costo y plazo de entrega que se debe alcanzar. Lo que se sabe es muy

    poco, sin embargo este pobre material, debera ser suficiente. Lo que falta en un proyecto

    nuevo es la informacin de realizacin: costos, tiempo y personas.

    Lo ideal sera dipsoner de una mtrica aplicada sobre los datos externos que midiera todo

    lo que hace falta. Luego con estimadores, obtener los costos, tiempo y personas necesarios.

    Con estos resultados se hara la comparacin con las metas externas. Se verificara si el

    costo y el plazo de entrega es aceptable. si no lo es, se debe replantear el proyecto,

    modificar alguno de sus datos externos si no hay ajustes con las metas y proceder

    nuevamente a recalcular. Una vez logrado esto, se aplican herramientas clsicas de gestin

    para dividir el proyecto en tareas, tiempos y otros elementos que permitan ejecutarlos.

    En el caso de replanteo de un proyecto la situacin es opuesta. Se tiene buenos registros de

    cunto cost el proyecto, en qu tiempo se hizo y cuntas personas trabajaron. Pero no se

    ha registrado nada de los datos externos del proyecto, no se ha medido en lo previo.

    El punto de partida consistira en la recuperacin de los datos externos del proyecto. Para

    esto se hace una estimacin preeliminar. Con esta estimacin se aplica la metodologa sobre

    los datos externos y se estiman los costos, tiempos y personas. Estos elementos pueden

    estar registrados, por lo tanto se pueden comparar los valores estimados con los datos del

    proyecto y realizar los ajustes respectivos.

    Pgina 9- Gestin del Riesgo

    Se han producido amplios debates sobre la definicin adecuada para riesgo de software, y

    hay acuerdo comn en que el riesgo siempre implica dos caractersticas:

    Incertidumbre: El acontecimiento que caracteriza al riesgo puede o no puede

    ocurrir; por ejemplo, no hay riesgos de un 100 por ciento de probabilidad.

    Prdida: Si el riesgo se convierte en una realidad, ocurrirn consecuencias no

    deseadas o prdidas.

    Cuando se analizan los riesgos es importante cuantificar el nivel de incertidumbre y el

    grado de prdidas asociado con cada riesgo. Para hacerlo, se consideran diferentes

    categoras de riesgos.

    Los riesgos del proyecto amenazan al plan del proyecto. Es decir, si los riesgos del

    proyecto se hacen realidad, es probable que la planificacin temporal del proyecto se

  • retrase y que los costos aumenten. Los riesgos del proyecto identifican los problemas

    potenciales de presupuesto, planificacin temporal, personal (asignacin y organizacin),

    recursos. cliente y requisitos y su impacto en un proyecto de software.

    Los riesgos tcnicos amenazan la calidad y la planificacin temporal del software que hay

    que producir. Si un riesgo tcnico se convierte en realidad, la implementacin puede llegar

    a ser difcil o imposible. Los riesgos tcnicos identifican problemas potenciales de diseo,

    implementacin, de interfaz. verificacin y de mantenimiento. Adems. las ambigedades

    de especificaciones, incertidumbre tcnica, tcnicas anticuadas y las "tecnologas punta"

    son tambin factores de riesgo. Los riesgos tcnicos ocurren porque el problema es ms

    difcil de resolver de lo que pensbamos

    Pgina 10 - Gestin del Riesgo

    Los riesgos del negocio amenazan la viabilidad del software a construir y a menudo ponen

    en peligro el proyecto o el producto. Los candidatos para los cinco principales riesgos del

    negocio son:

    1. Construir un producto o sistema excelente que no quiere nadie en realidad (riesgo de mercado),

    2. Construir un producto que no encaja en la estrategia comercial general de la compaa (riesgo estratgico),

    3. Construir un producto que ei departamento de ventas no sabe cmo vender 4. Perder el apoyo de una gestin experta debido a cambios de enfoque o a cambios de

    personal (riesgo de direccin)

    5. Perder presupuesto o personal asignado (riesgos de presupuesto).

    Es extremadamente importante recalcar que no siempre funciona una categorizacin tan

    sencilla. Algunos riesgos son simplemente imposibles de predecir.

    Los riesgos conocidos son todos aquellos que se pueden descubrir despus de una

    cuidadosa evaluacin del plan del proyecto. del entorno tcnico y comercial en el que se

    desarrolla el proyecto y otras fuentes de informacin fiables (p. ej.: fechas de entrega poco

    realistas. falta de especificacin de requisitos o de mbito del software. o un entorno pobre

    de desarrollo), los riesgos predecibles se extrapolan de la experiencia en proyectos

    anteriores (ej.: cambio de personal, mala comunicacin con el cliente. disminucin del

    esfuerzo del personal a medida que atienden peticiones de mantenimiento). Pueden ocurrir

    pero son extremadamente difciles de identificar por adelantado.

    1. Para la gestin de proyectos software no se tiene en cuenta el tamao del proyecto porque toda la informacin a manejar siempre es la misma.

  • Verdad

    Falso

    Falso Correcto, hay que tener en cuenta el tamao porque este me orienta que debo

    gestionar.

    2. En los equipos de trabajo con ms de 10 personas se puede utilizar una comunicacin de tipo informal.

    Falso

    Verdad

    Falso Correcto, lo ms probable es que se tenga que trabajar por mucho tiempo y la

    memoria falla!

    3. De acuerdo a la categorizacin anterior, un software desarrollado como opcin de grado estara en la categora.

    Proyectos pequeos

    Proyectos medianos.

    Proyectos Complejos

    Proyectos Grandes

    Proyectos medianos. Correcto, adems de la implementacin, debe haber otras actividades

    como la planificacin, pruebas, etc.

    4. Cuando se inicia un nuevo proyecto software la primera informacin a estimar es sobre los costos, tiempos y personas.

    Verdad

    Falso

    Verdad Correcto, esta la informacin externa que tenemos de primera mano

  • 5. Cuando se inicia un nuevo proyecto software o se replantea uno existente, el proceso de gestin a seguir es el mismo para ambos casos.

    Falso Correcto, la informacin con que se cuenta es diferente y eso hace que la gestin

    difiera.

    6. En un proyecto nuevo la nica informacin con que se cuenta desde el principio, es:

    La cantidad de mdulos a disear

    Nmero de personas que participarn

    Lneas de cdigo a generar

    Algunas metas de costo y plazo de entrega que se deben alcanzar.

    Algunas metas de costo y plazo de entrega que se deben alcanzar.

    Correcto, esta la informacin externa que tenemos de primera mano.

    7. Los riesgos tcnicos identifican problemas potenciales de diseo, implementacin, de interfaz, verificacin y de mantenimiento.

    Verdad Correcto, Los riesgos tcnicos amenazan la calidad y la planificacin temporal

    del software que hay que producir.

    8. El riesgo que se presenta cuando se desarrolla un software que nadie va a interesarse en comprar o utilizar por las caractersticas de hardware que necesita para su optimo

    funcionamiento, corresponde a:

    De Direccin

    De presupuesto

    Riesgo estratgico

    Riesgo de mercado

    Riesgo de mercado Correcto.

  • 9. Un riesgo en una interfaz de verificacin de datos, corresponde a:

    Riesgo Tcnico

    Riesgo Conocido

    Riesgo Del Proyecto

    Riesgo Predecible

    Riesgo Tcnico Correcto

    10. Los riesgos del proyecto identifican los problemas potenciales de presupuesto, planificacin temporal, personal y recursos.

    Verdad

    Correcto. Si los riesgos del proyecto se hacen realidad, es probable que la planificacin

    temporal del proyecto se retrase y que los costos aumenten.

    Si desea puede realizar otro intento. (Solo tiene Dos).

    Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    Hay cuatro P's que tienen una influencia sustancial en la gestin de proyectos software -

    personal, producto, proceso y proyecto -.

    El personal debe organizarse en equipos eficaces, motivados para hacer un software de alta

    calidad y coordinados para alcanzar una comunicacin efectiva.

    Los ingennieros de software pueden organizarse en diferentes organigramas de equipos que

    van desde las jerarquas de control tradicionales a los equipos de "paradigma abierto". Se

    pueden aplicar varias tcnicas de coordinacin y comunicacin para apoyar el trabajo del

    equipo. En general, las revisiones formales y las comunicaciones informales persona a

    persona son las ms valiosas para los profesionales.

    Los requisitos del producto deben comunicarse desde el cliente al desarrollador, dividirse

    (descomponerse) en las partes que lo constituyen y distribuirse para que trabaje el equipo

    de software.

    El proceso debe adaptarse al personal y al problema. Se selecciona una estructura comn

    del proceso, se aplica un paradigma apropiado de ingeniera de software y se elige un

    conjunto de tareas para completar el trabajo.

  • Finalmente, el proyecto debe organizarse de una manera que permita al equipo de software

    tener xito.

    La medicin permite que gestores y desarrolladores mejoren el proceso del software,

    ayuden en la planificacin, seguimiento y control de un proyecto de software, y evalen la

    calidad del producto (software) que se produce. Las medidas de los atributos especficos del

    proceso, del proyecto y del producto se utilizan para calcular las mtricas del software.

    Estas mtricas se pueden analizar para proporcionar indicadores que guan acciones de

    gestin y tcnicas.

    Las mtricas del proceso permiten que una organizacin tome una visin estratgica

    proporcionando mayor profundidad de la efectividad de un proceso de software.

    Las mtricas del proyecto son tcticas, permiten que el gestor de proyectos adapte el

    enfoque a flujos de trabajo del proyecto y a proyectos tcnicos en tiempo real.

    Las tcnicas orientadas tanto al tamao como a la funcin se utilizan en toda la industria.

    Las mtricas orientadas al tamao hacen uso de las lneas de cdigo como factor de

    normalizacin para otras medidas como persona-mes o defectos.

    El punto de funcin proviene de las medidas del dominio de informacin y de una

    evaluacin subjetiva de la complejidad del problema.

    Las mtricas de la calidad del software como mtricas de productividad se centran en el

    proceso, en el proyecto y en el producto. Desarrollando una lnea base de mtricas de

    calidad, una organizacin puede actuar con objeto de corregir reas de proceso del software

    que son la causa de los defectos del software.

    Las mtricas tienen significado solo si han sido examinadas para una validez estadstica.

    Los ingenieros de software y sus gestores pueden obtener una visin ms profunda del

    trabajo que realizan y del producto que elaboran creando un lnea base de mtricas una base de datos que contenga mediciones del proceso y del producto-.

    El planificador del proyecto de software tiene que estimar tres cosas antes de que comience el proyecto: cunto durar, cunto esfuerzo requerir y cunta gente estar implicada. Adems el planificador debe predecir los recursos (de hardware y software) que va a requerir, y el riesgo implicado.

    El enunciado del mbito ayuda a desarrollar estimaciones mediante una o varias de las tcnicas siguientes: descomposicin, modelos empricos y herramientas automticas. Las tcnicas de descomposicin requieren de un esbozo de las principales funciones del software, seguido de las estimaciones de nmero de LDC, de los valores seleccionados dentro del dominio de la informacin, del nmero de personas - mes requeridas para implementar cada funcin, o del nmero de personas - mes requeridas para cada actividad de ingeniera de software. Las tcnicas empricas usan expresiones empricamente obtenidas para el esfuerzo y para el tiempo, con las con las que se predicen esas magnitudes del proyecto. Las herramientas automticas implementan un determinado modelo emprico.

    Para obtener estimaciones exactas para un proyecto, generalmente se utilizan al menos dos de las tres tcnicas referidas anteriormente. Mediante la comparacin y la conciliacin de las estimaciones obtenidas con las diferentes

  • tcnicas, el planificador puede obtener una estimacin ms exacta. La estimacin del proyecto software nunca ser una ciencia exacta, pero la combinacin de buenos datos histricos y de tcnicas sistemticas pueden mejorar la precisin de la estimacin.

    Cuando se pone mucho en juego en un proyecto de software el sentido comn nos aconseja realizar un anlisis de riesgo. Sin embargo, la mayora de los jefes de proyecto lo hacen informal y superficialmente, si es que lo hacen. El tiempo invertido identificando, analizando y gestionando el riesgo merece la pena por muchas razones: menos trastornos durante el proyecto, una mayor habilidad de seguir y controlar el proyecto y la confianza que da planificar los problemas antes de que ocurran.

    El anlisis del riesgo puede absorber una cantidad significativa del esfuerzo de planificacin del proyecto, pero el esfuerzo merece la pena.

    1

  • La gestin de proyectos de software es una actividad que empieza y termina en la etapa de

    definicin del proyecto software.

    Su respuesta :

    Falso

    Correcto, Esta actividad empieza antes de iniciar cualquier actividad tcnica y contina a lo

    largo de la definicin, del desarrollo y del mantenimiento del software.

    2

    La gestin eficaz de un proyecto de software se centra en las cuatro P's, estas hacen

    referencia a: Personal, Producto, Proceso y Proyecto.

    Su respuesta :

    Verdad

    Correcto, Estas 4 P's tienen una influencia sustancial en la gestin de proyectos software.

    3

    De la anterior lectura se puede inferir que es imposible desarrollar un software en equipo.

    Su respuesta :

    Falso

    Correcto, El personal debe organizarse en equipos eficaces, motivados para hacer un

    software de alta calidad.

    4

    De acuerdo a la lectura anterior se puede inferir que para la gestin eficaz de un proyecto

    de software, el orden de atencin dado a las cuatro Ps no es importante.

    Su respuesta :

    Falso

    Correcto.

    5

  • De la lectura anterior se puede inferir que las mtricas del software solo se orientan a

    asegurar que el software desarrollado satisfaga las necesidades del cliente.

    Su respuesta :

    Falso

    Correcto, La medicin permite que gestores y desarrolladores mejoren no solo el producto

    (software) sino tambin el proceso del software.

    6

    De la lectura anterior se puede inferir que solo hasta que el software est terminado es que

    se puede medir su calidad.

    Su respuesta :

    Falso

    Correcto, las mtricas buscan asegurar la calidad del software desde el mismo momento

    que empieza la planificacin del mismo

    7

    Las mtricas que permiten redireccionar el flujo de trabajo en un proyecto software

    corresponde a:

    Mtricas del proyecto

    Mtricas de la Calidad

    Mtricas orientadas al tamao

    Mtricas de punto de funcin

    Las mtricas que permiten redireccionar el flujo de trabajo en un proyecto software

    corresponde a:

    Su respuesta :

    Mtricas del proyecto

  • Correcto, las mtricas tambin ayudan a la planificacin, seguimiento y control de un

    proyecto de software.

    8

    El planificador del proyecto de software tiene que estimar principalmente tres cosas antes de que comience el proyecto: cunto costar, cunto durar y cunto esfuerzo requerir.

    Su respuesta :

    Falso

    Correcto, antes de tener en cuenta el costo del proyecto, se debe saber cunta gente estar

    implicada.

    9

    Las tcnicas que implementan un determinado modelo emprico, se les conoce como:

    Herramientas automticas

    De descomposicin

    Modelos empricos

    Modelos fractales

    Las tcnicas que implementan un determinado modelo emprico, se les conoce como:

    Su respuesta :

    Herramientas automticas

    Correcto

    10

    Las tcnicas existentes para hacer estimaciones del proyecto software pueden asegurar un 100% de precisin en la estimacin.

  • Su respuesta :

    Falso

    Correcto, hay tcnicas que se basan en la experiencia o en datos histricos, lo cual las hace

    imprecisas.

    Esta actividad tiene dos intentos, si desea realice el otro.