SlideShare una empresa de Scribd logo
Introducción a la Ingeniería de
                        Software – Capítulo 1
                        Curso de Ing. De Software – FIIS UNAC




                                                               Ing. Eddie Malca Vicente

©Ian Sommerville 2004    Software Engineering, 7th edition. Chapter 1
„No es más sabio aquel que sabe mucho,
sino aquel que hace mucho con lo poco
              que sabe.“
Objetivos
Curso de Ingeniería de Software


 Introducir y comprender la Ingeniería de Software y explicar su
  importancia.
 Establecer respuestas a preguntas clave acerca de la Ingeniería
  de Software.
 Introducir aspectos éticos y profesionales y explicar la importancia
  de los mismos para los ingenieros de software.
Tópicos expuestos




   Preguntas frecuentes acerca de la Ingeniería de Software.
   Responsabilidad ética y profesional.
Ingeniería de Software


   Las economías de TODAS las naciones desarrolladas son
    dependientes de software y sistemas informáticos.
   Cada vez más sistemas son controlados por software.
   La Ingeniería de Software concierne teorías, métodos y
    herramientas para el desarrollo profesional de software.
   Los gastos en software representan una fracción significativa
    del PBI en todos los países desarrollados.
Costos del Software

       Los costos del software a menudo dominan en los costos
        de un sistema computacional o informático. Los costos
        de software en una PC son a menudo mayores que el
        costo del hardware.
       Cuesta más el mantenimiento del software que el
        desarrollo del mismo. Para sistemas de larga vida, los
        costos de mantenimiento se multiplican con respecto a
        los costos de desarrollo.
       A la Ingeniería de Software le compete el desarrollo de
        software rentable.
Preguntas frecuentes acerca de Ingeniería de Software


   Qué es Software?
   Qué es la Ingeniería de Software?
   Cuál es la diferencia entre Ingeniería de Software y
    Computación?
   Cuál es la diferencia entre Ingeniería de Software e Ingeniería
    de Sistemas?
   Qué es un proceso de software?
   Qué es un modelo de proceso de software?
Preguntas frecuentes acerca de Ingeniería de Software


   Cuáles son los costos que implica la Ingeniería de Software?
   Cuáles son las metodologías de desarrollo de Software?
   Qué son las herramientas CASE (Computer-Aided Software
    Engineering)
   Cuáles son los atributos de un buen software?
   Cuáles son los desafíos primordiales frente a la Ingeniería de
    Software?
Qué es software?


   Programas de cómputo y documentación asociada, como ser
    documentos de requerimientos, arquitectura y modelos de diseño y
    manuales de usuario.
   Los productos software pueden ser desarrollados para un cliente
    particular o bien para el mercado en general.
   Los productos software pueden ser:
     -   Genéricos – desarrollados para ser vendidos a una gama de
         diversos clientes, ejemplo: software como Excel o Word.
     -   Hecho a medida – desarrollado para un cliente particular
         acorde a sus requerimientos y especificaciones.
   Nuevo software puede ser creado desarrollando nuevos programas,
    configurando sistemas de software genérico o reutilizando software
    existente.
Qué es la Ingeniería de Software?


   La Ingeniería de Software es una disciplina de la ingeniería
    que concierne a todo lo referente con producción de software.
   Los ingenieros de software deberían adoptar un enfoque
    sistemático y organizado con respecto a su trabajo, utilizar
    herramientas y técnicas apropiadas con relación al problema
    planteado, las restricciones del desarrollo y los recursos
    disponibles.
Cuál es la diferencia entre Ingeniería de Software y Computación?



   La computación comprende teorías y fundamentos de
    cualquier sistema de cómputo; a la Ingeniería de Software le
    concierne los aspectos prácticos del desarrollo y entrega de
    software útil.
   Las teorías de la computación aún son insuficientes para
    respaldar completamente a la Ingeniería de Software
    (indistintamente a, ejemplo, la física y la ingeniería eléctrica).
Cuál es la diferencia entre Ingeniería de Software e ingeniería de sistemas?



   A la ingeniería de sistemas le competen todos los aspectos de
    desarrollo de sistemas basados en cómputos, incluyendo
    hardware, software y procesos de ingeniería. La Ingeniería de
    Software es parte de este proceso, haciendo referencia al
    desarrollo de la infraestructura del software, aplicaciones y
    bases de datos en el sistema.
   Los ingenieros de sistemas están involucrados con la
    especificación del sistema, diseño arquitectónico, integración y
    despliegue del mismo.
Qué es un proceso de software?


   Un conjunto sistemático de actividades cuya meta es el
    desarrollo o la evolución del software.
   Actividades genéricas en todos los procesos de software son:
    -   Especificación – lo que el sistema debería hacer y sus
        restricciones de desarrollo
    -   Desarrollo – producción del sistema software
    -   Validación – comprobando que el software es lo que el
        cliente quiere
    -   Evolución – cambios y mantenimiento en el software con
        relación a los cambios en los requerimientos y demandas.
Qué es un modelo de proceso de software?


   Una representación simplificada de un proceso de software,
    presentada desde una perspectiva específica.
   Ejemplos de perspectivas de proceso son:
     -   Perspectiva de flujo de trabajo – secuencia de actividades;
     -   Perspectiva de flujo de datos – flujo de información;
     -   Perspectiva de Casos de Uso – quién hace qué (funcionalidad).
   Modelos de proceso genéricos
     -   Modelo en Cascada;
     -   Desarrollo iterativo;
     -   Ingeniería de Software basada en componentes.
Cuáles son los costos de Ingeniería de Software?


         Rigurosamente, 60% de los costos son de desarrollo,
          40% son costos de prueba. Para software hecho a
          medida, los costos de evolución a menudo exceden los
          costos de desarrollo.
         Varían acorde al tipo de sistema a desarrollar y a los
          requerimientos con respecto a los atributos del mismo,
          como ser el funcionamiento y la confiabilidad del
          sistema.
         La distribución de los costos depende del modelo
          empleado para el desarrollo del software.
Distribución de costos por actividad
            W aterfall m odel
            0                         25                          50                          75                    1 00



            Specification             D esign                D evelopm ent              I nteg ration and testing



            I terative developm ent

            0                         25                          50                          75                    1 00



            Specification               I terative developm ent                                    System testing


            Com ponent-based software eng         ineering

            0                         25                          50                          75                    1 00



            Specification       D evelopm ent                                       I nteg ration and testing


            D evelopm ent and evolution costs for long-lifetim e syst        em s
            0                         10                          200                         30                    400



                System developm ent                                     System evolution
Costos de desarrollo del producto
Cuáles son las metodologías de desarrollo de software?



   Acercamientos estructurados al desarrollo de software que incluyen
    modelos del sistema, notaciones, reglas, pautas de diseño y pasos a
    seguir.
   Descripciones del modelo
     -   Descripciones de modelos gráficos que deben ser producidos;
   Reglas
     -   Restricciones aplicadas a los modelos del sistema;
   Recomendaciones
     -   Pautas para un buen diseño en la práctica;
   Pasos a seguir
     -   Qué actividades deben seguirse.
Qué son las herramientas CASE (Computer-Aided Software Engineering)



   Sistemas de software cuya finalidad es la de proveer soporte
    automatizado para actividades de proceso o desarrollo de software.
   Los sistemas CASE son usados con frecuencia como soporte dentro
    de la metodología de desarrollo.
   Herramientas CASE tempranas o Superiores
     -   Herramientas para soportar las actividades tempranas de
         requerimientos y diseño dentro del proceso de software;
   Herramientas CASE tardías o Inferiores
     -   Herramientas para soportar actividades posteriores como ser la
         programación, depuración y prueba o testeo.
Cuáles son los atributos de un buen software?


         El software debe entregar la funcionalidad y el funcionamiento
          requeridos por el usuario al él mismo, y debe ser mantenible,
          confiable y aceptable.
         Mantenibilidad
           -    El software debe evolucionar para cubrir necesidades
                cambiantes;
         Confiabilidad
           -    El software debe ser confiable;
         Eficiencia
           -    El software no debería hacer mal uso de los recursos del
                sistema;
         Aceptabilidad
           -    El software debe aceptar las necesidades de los usuarios
                para los cuales fue diseñado. Esto significa que debe ser
                entendible, de utilidad y compatible con otros sistemas.
Cuáles son los desafíos primordiales frente a la Ingeniería de Software?



   Heterogeneidad, entrega y confianza.
   Heterogeneidad
     -    Técnicas de desarrollo para la construcción de software que
          puedan encararse con plataformas heterogéneas y ambientes
          de ejecución apropiados;
   Entrega
     -    Técnicas de desarrollo que lleven a una entrega de software
          más rápida;
   Confianza
     -    Técnicas de desarrollo que demuestren que el software es de
          confianza para con sus usuarios.
Responsabilidad ética y profesional



     La Ingeniería de Software implica responsabilidades mayores
      que el simple uso de habilidades técnicas.
     Los ingenieros de software deben comportarse de manera
      honesta y éticamente responsable si van a ser respetados
      como profesionales.
     Comportamiento éticamente responsable es mucho más que
      simplemente actuar dentro de la ley.
Aspectos de responsabilidad profesional


   Confidencialidad
    -   Los ingenieros deberían normalmente respetar la
        confidencialidad de sus clientes independientemente de
        que se haya firmado o no un previo acuerdo de
        confidencialidad.
   Capacidad
    -   Los ingenieros no deberían pretender tener mayor
        capacidad (intelectual y laboral) de la que tienen, deben
        aceptar conscientemente trabajo que esté acorde a su
        capacidad.
Aspectos de responsabilidad profesional


   Derechos de propiedad intelectual
     -   Los ingenieros deberían estar conscientes de las leyes que
         gobiernan el uso de propiedad intelectual, como ser patentes y
         derechos reservados. Deben ser cuidadosos al garantizar que
         la propiedad intelectual de sus clientes está protegida.
   Mal uso de la computadora
     -   Los ingenieros de software no deberían usar sus habilidades
         técnicas para un mal uso de las computadoras de otras
         personas. El mal uso de una computadora comprende desde lo
         relativamente simple (jugar en la computadora del cliente) hasta
         lo extremamente serio (diseminar virus).
Código de Etica ACM/IEEE


   Las sociedades profesionales en los Estados             Unidos
    cooperaron para producir un código de práctica ética.
   Miembros de estas organizaciones fueron consecuentes con el
    código de práctica ética cuando se asociaron.
   El código contiene ocho principios relacionados al
    comportamiento y las decisiones hechas por ingenieros de
    software profesionales, incluyendo a los que lo ejercían,
    educadores, encargados, supervisores y editores, asi como
    aprendices y estudiantes de la profesión.
Código de Etica - preámbulo

   Preámbulo
    -   La versión corta del código resume aspiraciones a un alto nivel
        de abstracción; las cláusulas que se incluyen en la versión
        completa dan ejemplos y detalles de cómo estas aspiraciones
        cambian nuestro modo de actuar como profesionales de la
        Ingeniería de Software. Sin las aspiraciones, los detalles
        pueden llegar a ser legalistas y aburridos; sin los detalles, las
        aspiraciones pueden llegar a ser ruidosas pero vacías; juntas,
        las aspiraciones y los detalles forman un código cohesivo.
    -   Los ingenieros de software se comprometerán a hacer del
        análisis, especificación, diseño, desarrollo, prueba y
        mantenimiento de software una profesión respetable y
        beneficiosa. Acorde a su compromiso con la salud, bienestar y
        seguridad del público, los ingenieros de software se adherirán a
        los ocho principios siguientes:
Código de Etica - Principios


   PUBLICO
    -   Los ingenieros de software actuarán constantemente con el
        interés público.
   CLIENTE Y EMPLEADOR
    -   Los ingenieros de software actuarán acorde al mayor interés de
        sus clientes y empleadores en constancia con el interés
        público.
   PRODUCTO
    -   Los ingenieros de software garantizarán que sus productos y
        relativas modificaciones van acorde a los estándares
        profesionales más altos posibles.
Código de Etica - Principios


   JUICIO
    -   Los ingenieros de software mantendrán su integridad e
        independencia de juicio como profesional.
   GERENCIA
    -   Gerentes y líderes de Ingeniería de Software suscribirán y
        promoverán un acercamiento ético hacia el manejo de
        desarrollo de software y evolución.
   PROFESION
    -   Los ingenieros de Software incrementarán la integridad y
        reputación de la profesión en constancia con el interés público.
Código de Etica - Principios


   COLEGAS
    -   Los ingenieros de software serán condescendientes y brindarán
        apoyo a sus colegas.
   UNO MISMO
    -   Los ingenieros de software participarán en la formación
        continua con respecto a la práctica de su profesión y
        promoverán un acercamiento ético a la práctica de la profesión.
Dilemas Eticos


   Desacuerdo en principio con las políticas de administración
    superior.
   El empleador actúa de un modo no ético y lanza un sistema de
    seguridad crítico sin terminar la prueba del sistema.
   Participación en el desarrollo de armamento militar o sistemas
    nucleares.
Puntos Clave

       La Ingeniería de Software es una disciplina de la ingeniería
        concerniente a todos los aspectos de la producción de
        software.
       Los productos software están consistidos de programas
        desarrollados y su documentación asociada. Atributos
        esenciales del producto son la mantenibilidad, formalidad,
        eficiencia y utilidad.
       El proceso de software consiste en actividades involucradas
        en el desarrollo de productos software. Actividades básicas
        son la especificación del software, desarrollo, validación y
        evolución.
       Las metodologías son maneras organizadas de producir
        software. Estas incluyen sugerencias para el proceso a seguir,
        notaciones a usar, reglas que rigen las descripciones del
        sistema que son pautas para el desarrollo.
Puntos Clave


   Las herramientas CASE son sistemas de software diseñadas
    para soportar actividades rutinarias en el proceso de software,
    como ser: editar diagramas de diseño, verificaciones de la
    consistencia de diagramas y seguir el rastro de las pruebas del
    programa que han sido ejecutadas.
   Los ingenieros de software tienen responsabilidades para con
    la profesión y la sociedad. No deberían simplemente
    preocuparse de aspectos técnicos.
   Las sociedades profesionales publican códigos de conducta
    que establecen los estándares de comportamiento que se
    esperan de sus miembros.
Introducción a la Ingeniería de
                        Software – Capítulo 1
                        Curso de Ing. De Software – FIIS UNAC




                                                               Ing. Eddie Malca Vicente

©Ian Sommerville 2004    Software Engineering, 7th edition. Chapter 1

Más contenido relacionado

La actualidad más candente

Calidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de SoftwareCalidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de Software
Conferencias FIST
 
Ingeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidadIngeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidad
XKWDX
 
Ingenieria De Software
Ingenieria De SoftwareIngenieria De Software
Ingenieria De Software
Ricardo Mansilla
 
Procesos De Ingenieria Del Software
Procesos De Ingenieria Del SoftwareProcesos De Ingenieria Del Software
Procesos De Ingenieria Del Software
Raquel Solano
 
conceptos de ingenieria de software
conceptos de ingenieria de softwareconceptos de ingenieria de software
conceptos de ingenieria de software
liliana guadalupe rodriguez
 
Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1
Marta Silvia Tabares
 
Ingeniería de Requisitos
Ingeniería de RequisitosIngeniería de Requisitos
Ingeniería de Requisitos
Sorey García
 
02 unidad i proceso
02 unidad i   proceso02 unidad i   proceso
02 unidad i proceso
victdiazm
 
U1T1 - Conceptos Básicos de Ingeniería del Software
U1T1 - Conceptos Básicos de Ingeniería del SoftwareU1T1 - Conceptos Básicos de Ingeniería del Software
U1T1 - Conceptos Básicos de Ingeniería del Software
Luis Eduardo Pelaez Valencia
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
Jahiro Bojorquez
 
Introducción a la ingeniería del software
Introducción a la ingeniería del softwareIntroducción a la ingeniería del software
Introducción a la ingeniería del software
Facultad de Ciencias y Sistemas
 
Sesion2 Procesos del Software
Sesion2  Procesos del SoftwareSesion2  Procesos del Software
Sesion2 Procesos del Software
Oscar López
 
Sesion1 Introducción Ingeniería Software
Sesion1 Introducción Ingeniería SoftwareSesion1 Introducción Ingeniería Software
Sesion1 Introducción Ingeniería Software
Oscar López
 
Tecnicas.de.ingenieria.de.software
Tecnicas.de.ingenieria.de.softwareTecnicas.de.ingenieria.de.software
Tecnicas.de.ingenieria.de.software
juankexmisiodj
 
Tema Ingenieria Del Software
Tema Ingenieria Del SoftwareTema Ingenieria Del Software
Tema Ingenieria Del Software
gueste0af42
 
14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software
Jhon Barrera
 
Normas y Estándares de calidad para el desarrollo de Software
Normas y Estándares de calidad para el desarrollo de SoftwareNormas y Estándares de calidad para el desarrollo de Software
Normas y Estándares de calidad para el desarrollo de Software
EvelinBermeo
 
Conceptos
ConceptosConceptos
Conceptos
Sonia Elizabeth
 
Ingenieria del software
Ingenieria del software Ingenieria del software
Ingenieria del software
Ana Pau Lara
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
nancyespe21
 

La actualidad más candente (20)

Calidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de SoftwareCalidad y Seguridad en Procesos de Desarrollo de Software
Calidad y Seguridad en Procesos de Desarrollo de Software
 
Ingeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidadIngeniería de software Definicion,inicion,importancia y utilidad
Ingeniería de software Definicion,inicion,importancia y utilidad
 
Ingenieria De Software
Ingenieria De SoftwareIngenieria De Software
Ingenieria De Software
 
Procesos De Ingenieria Del Software
Procesos De Ingenieria Del SoftwareProcesos De Ingenieria Del Software
Procesos De Ingenieria Del Software
 
conceptos de ingenieria de software
conceptos de ingenieria de softwareconceptos de ingenieria de software
conceptos de ingenieria de software
 
Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1Ingeniería de software II - Parte 1
Ingeniería de software II - Parte 1
 
Ingeniería de Requisitos
Ingeniería de RequisitosIngeniería de Requisitos
Ingeniería de Requisitos
 
02 unidad i proceso
02 unidad i   proceso02 unidad i   proceso
02 unidad i proceso
 
U1T1 - Conceptos Básicos de Ingeniería del Software
U1T1 - Conceptos Básicos de Ingeniería del SoftwareU1T1 - Conceptos Básicos de Ingeniería del Software
U1T1 - Conceptos Básicos de Ingeniería del Software
 
Unidad 1 Ingenieria de software
Unidad 1 Ingenieria de softwareUnidad 1 Ingenieria de software
Unidad 1 Ingenieria de software
 
Introducción a la ingeniería del software
Introducción a la ingeniería del softwareIntroducción a la ingeniería del software
Introducción a la ingeniería del software
 
Sesion2 Procesos del Software
Sesion2  Procesos del SoftwareSesion2  Procesos del Software
Sesion2 Procesos del Software
 
Sesion1 Introducción Ingeniería Software
Sesion1 Introducción Ingeniería SoftwareSesion1 Introducción Ingeniería Software
Sesion1 Introducción Ingeniería Software
 
Tecnicas.de.ingenieria.de.software
Tecnicas.de.ingenieria.de.softwareTecnicas.de.ingenieria.de.software
Tecnicas.de.ingenieria.de.software
 
Tema Ingenieria Del Software
Tema Ingenieria Del SoftwareTema Ingenieria Del Software
Tema Ingenieria Del Software
 
14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software14. fundamentos de desarrollo de software
14. fundamentos de desarrollo de software
 
Normas y Estándares de calidad para el desarrollo de Software
Normas y Estándares de calidad para el desarrollo de SoftwareNormas y Estándares de calidad para el desarrollo de Software
Normas y Estándares de calidad para el desarrollo de Software
 
Conceptos
ConceptosConceptos
Conceptos
 
Ingenieria del software
Ingenieria del software Ingenieria del software
Ingenieria del software
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 

Destacado

Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
Aaron Irizarry
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and Archives
Ned Potter
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
LinkedIn
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
Seth Familian
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
Luminary Labs
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
Drift
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
Leslie Samuel
 

Destacado (7)

Designing Teams for Emerging Challenges
Designing Teams for Emerging ChallengesDesigning Teams for Emerging Challenges
Designing Teams for Emerging Challenges
 
UX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and ArchivesUX, ethnography and possibilities: for Libraries, Museums and Archives
UX, ethnography and possibilities: for Libraries, Museums and Archives
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
Hype vs. Reality: The AI Explainer
Hype vs. Reality: The AI ExplainerHype vs. Reality: The AI Explainer
Hype vs. Reality: The AI Explainer
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Similar a Curso de Ingeniería de Software - Capítulo 1

Is01
Is01Is01
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
Fernando Alfonso Casas De la Torre
 
IngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfIngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdf
cristian265023
 
SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)
denny osael lopez medina
 
Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.
usserp584
 
Marvin chicas
Marvin chicasMarvin chicas
Marvin chicas
marvinchicas
 
Marvin chicas
Marvin chicasMarvin chicas
Marvin chicas
marvinchicas
 
Tarea(1)
Tarea(1)Tarea(1)
Tarea(1)
daniel
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
ada estela colato
 
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
Jose Garcia
 
Trabajo de desarrollo desoftware
Trabajo de desarrollo desoftwareTrabajo de desarrollo desoftware
Trabajo de desarrollo desoftware
francisco alexander sanchez
 
Omar,luis,daniel
Omar,luis,danielOmar,luis,daniel
Seleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de softwareSeleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de software
Ingris Argueta
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
Andrés Sorto
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
Andrés Sorto
 
Tarea intro ing_sw_quina
Tarea intro ing_sw_quinaTarea intro ing_sw_quina
Tarea intro ing_sw_quina
diegoespinosap1978
 
Ingenieria del software pfd
Ingenieria del software pfdIngenieria del software pfd
Ingenieria del software pfd
David Silva Valdivieso
 
Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de software
Julio Pari
 
Ingeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelosIngeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelos
Rafael Fdo Lopez Castillo
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
manuel alfredo chacon valero
 

Similar a Curso de Ingeniería de Software - Capítulo 1 (20)

Is01
Is01Is01
Is01
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
IngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdfIngSoftCap01-Introduccion.pdf
IngSoftCap01-Introduccion.pdf
 
SeccióN De TéCnicas De IngenieríA De Software(2007)
SeccióN De TéCnicas  De IngenieríA De Software(2007)SeccióN De TéCnicas  De IngenieríA De Software(2007)
SeccióN De TéCnicas De IngenieríA De Software(2007)
 
Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.Ingenieria del Software: Software a medida y generico.
Ingenieria del Software: Software a medida y generico.
 
Marvin chicas
Marvin chicasMarvin chicas
Marvin chicas
 
Marvin chicas
Marvin chicasMarvin chicas
Marvin chicas
 
Tarea(1)
Tarea(1)Tarea(1)
Tarea(1)
 
Ingenieria de software
Ingenieria de softwareIngenieria de software
Ingenieria de software
 
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1Sanchez garcia juan jose  definiciones en la ingeniería de software sis4-1
Sanchez garcia juan jose definiciones en la ingeniería de software sis4-1
 
Trabajo de desarrollo desoftware
Trabajo de desarrollo desoftwareTrabajo de desarrollo desoftware
Trabajo de desarrollo desoftware
 
Omar,luis,daniel
Omar,luis,danielOmar,luis,daniel
Omar,luis,daniel
 
Seleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de softwareSeleccion de tecnicas de ingenieria de software
Seleccion de tecnicas de ingenieria de software
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
 
Ingenieria de software final.
Ingenieria de software final.Ingenieria de software final.
Ingenieria de software final.
 
Tarea intro ing_sw_quina
Tarea intro ing_sw_quinaTarea intro ing_sw_quina
Tarea intro ing_sw_quina
 
Ingenieria del software pfd
Ingenieria del software pfdIngenieria del software pfd
Ingenieria del software pfd
 
Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de software
 
Ingeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelosIngeniería de software - Descripción, características, modelos
Ingeniería de software - Descripción, características, modelos
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 

Último

edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
larapalaciosmonzon28
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
mantenimientocarbra6
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
LilibethEstupian
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
AMADO SALVADOR
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
al050121024
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
tamarita881
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
Miguel Rebollo
 
Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
JuanaNT7
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
KukiiSanchez
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
AMADO SALVADOR
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
gisellearanguren1
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
NajwaNimri1
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 

Último (20)

edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfqedublogs info.docx asdasfasfsawqrdqwfqwfqwfq
edublogs info.docx asdasfasfsawqrdqwfqwfqwfq
 
Manual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computoManual Web soporte y mantenimiento de equipo de computo
Manual Web soporte y mantenimiento de equipo de computo
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
 
Second Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro TapiaSecond Life, informe de actividad del maestro Tapia
Second Life, informe de actividad del maestro Tapia
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
 
IA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticulturaIA en entornos rurales aplicada a la viticultura
IA en entornos rurales aplicada a la viticultura
 
Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
 
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANOREVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
REVISTA TECNOLOGICA PARA EL DESARROLLO HUMANO
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
Actividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdfActividad Conceptos básicos de programación.pdf
Actividad Conceptos básicos de programación.pdf
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 

Curso de Ingeniería de Software - Capítulo 1

  • 1. Introducción a la Ingeniería de Software – Capítulo 1 Curso de Ing. De Software – FIIS UNAC Ing. Eddie Malca Vicente ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1
  • 2. „No es más sabio aquel que sabe mucho, sino aquel que hace mucho con lo poco que sabe.“
  • 3. Objetivos Curso de Ingeniería de Software  Introducir y comprender la Ingeniería de Software y explicar su importancia.  Establecer respuestas a preguntas clave acerca de la Ingeniería de Software.  Introducir aspectos éticos y profesionales y explicar la importancia de los mismos para los ingenieros de software.
  • 4. Tópicos expuestos  Preguntas frecuentes acerca de la Ingeniería de Software.  Responsabilidad ética y profesional.
  • 5. Ingeniería de Software  Las economías de TODAS las naciones desarrolladas son dependientes de software y sistemas informáticos.  Cada vez más sistemas son controlados por software.  La Ingeniería de Software concierne teorías, métodos y herramientas para el desarrollo profesional de software.  Los gastos en software representan una fracción significativa del PBI en todos los países desarrollados.
  • 6. Costos del Software  Los costos del software a menudo dominan en los costos de un sistema computacional o informático. Los costos de software en una PC son a menudo mayores que el costo del hardware.  Cuesta más el mantenimiento del software que el desarrollo del mismo. Para sistemas de larga vida, los costos de mantenimiento se multiplican con respecto a los costos de desarrollo.  A la Ingeniería de Software le compete el desarrollo de software rentable.
  • 7. Preguntas frecuentes acerca de Ingeniería de Software  Qué es Software?  Qué es la Ingeniería de Software?  Cuál es la diferencia entre Ingeniería de Software y Computación?  Cuál es la diferencia entre Ingeniería de Software e Ingeniería de Sistemas?  Qué es un proceso de software?  Qué es un modelo de proceso de software?
  • 8. Preguntas frecuentes acerca de Ingeniería de Software  Cuáles son los costos que implica la Ingeniería de Software?  Cuáles son las metodologías de desarrollo de Software?  Qué son las herramientas CASE (Computer-Aided Software Engineering)  Cuáles son los atributos de un buen software?  Cuáles son los desafíos primordiales frente a la Ingeniería de Software?
  • 9. Qué es software?  Programas de cómputo y documentación asociada, como ser documentos de requerimientos, arquitectura y modelos de diseño y manuales de usuario.  Los productos software pueden ser desarrollados para un cliente particular o bien para el mercado en general.  Los productos software pueden ser: - Genéricos – desarrollados para ser vendidos a una gama de diversos clientes, ejemplo: software como Excel o Word. - Hecho a medida – desarrollado para un cliente particular acorde a sus requerimientos y especificaciones.  Nuevo software puede ser creado desarrollando nuevos programas, configurando sistemas de software genérico o reutilizando software existente.
  • 10. Qué es la Ingeniería de Software?  La Ingeniería de Software es una disciplina de la ingeniería que concierne a todo lo referente con producción de software.  Los ingenieros de software deberían adoptar un enfoque sistemático y organizado con respecto a su trabajo, utilizar herramientas y técnicas apropiadas con relación al problema planteado, las restricciones del desarrollo y los recursos disponibles.
  • 11. Cuál es la diferencia entre Ingeniería de Software y Computación?  La computación comprende teorías y fundamentos de cualquier sistema de cómputo; a la Ingeniería de Software le concierne los aspectos prácticos del desarrollo y entrega de software útil.  Las teorías de la computación aún son insuficientes para respaldar completamente a la Ingeniería de Software (indistintamente a, ejemplo, la física y la ingeniería eléctrica).
  • 12. Cuál es la diferencia entre Ingeniería de Software e ingeniería de sistemas?  A la ingeniería de sistemas le competen todos los aspectos de desarrollo de sistemas basados en cómputos, incluyendo hardware, software y procesos de ingeniería. La Ingeniería de Software es parte de este proceso, haciendo referencia al desarrollo de la infraestructura del software, aplicaciones y bases de datos en el sistema.  Los ingenieros de sistemas están involucrados con la especificación del sistema, diseño arquitectónico, integración y despliegue del mismo.
  • 13. Qué es un proceso de software?  Un conjunto sistemático de actividades cuya meta es el desarrollo o la evolución del software.  Actividades genéricas en todos los procesos de software son: - Especificación – lo que el sistema debería hacer y sus restricciones de desarrollo - Desarrollo – producción del sistema software - Validación – comprobando que el software es lo que el cliente quiere - Evolución – cambios y mantenimiento en el software con relación a los cambios en los requerimientos y demandas.
  • 14. Qué es un modelo de proceso de software?  Una representación simplificada de un proceso de software, presentada desde una perspectiva específica.  Ejemplos de perspectivas de proceso son: - Perspectiva de flujo de trabajo – secuencia de actividades; - Perspectiva de flujo de datos – flujo de información; - Perspectiva de Casos de Uso – quién hace qué (funcionalidad).  Modelos de proceso genéricos - Modelo en Cascada; - Desarrollo iterativo; - Ingeniería de Software basada en componentes.
  • 15. Cuáles son los costos de Ingeniería de Software?  Rigurosamente, 60% de los costos son de desarrollo, 40% son costos de prueba. Para software hecho a medida, los costos de evolución a menudo exceden los costos de desarrollo.  Varían acorde al tipo de sistema a desarrollar y a los requerimientos con respecto a los atributos del mismo, como ser el funcionamiento y la confiabilidad del sistema.  La distribución de los costos depende del modelo empleado para el desarrollo del software.
  • 16. Distribución de costos por actividad W aterfall m odel 0 25 50 75 1 00 Specification D esign D evelopm ent I nteg ration and testing I terative developm ent 0 25 50 75 1 00 Specification I terative developm ent System testing Com ponent-based software eng ineering 0 25 50 75 1 00 Specification D evelopm ent I nteg ration and testing D evelopm ent and evolution costs for long-lifetim e syst em s 0 10 200 30 400 System developm ent System evolution
  • 17. Costos de desarrollo del producto
  • 18. Cuáles son las metodologías de desarrollo de software?  Acercamientos estructurados al desarrollo de software que incluyen modelos del sistema, notaciones, reglas, pautas de diseño y pasos a seguir.  Descripciones del modelo - Descripciones de modelos gráficos que deben ser producidos;  Reglas - Restricciones aplicadas a los modelos del sistema;  Recomendaciones - Pautas para un buen diseño en la práctica;  Pasos a seguir - Qué actividades deben seguirse.
  • 19. Qué son las herramientas CASE (Computer-Aided Software Engineering)  Sistemas de software cuya finalidad es la de proveer soporte automatizado para actividades de proceso o desarrollo de software.  Los sistemas CASE son usados con frecuencia como soporte dentro de la metodología de desarrollo.  Herramientas CASE tempranas o Superiores - Herramientas para soportar las actividades tempranas de requerimientos y diseño dentro del proceso de software;  Herramientas CASE tardías o Inferiores - Herramientas para soportar actividades posteriores como ser la programación, depuración y prueba o testeo.
  • 20. Cuáles son los atributos de un buen software?  El software debe entregar la funcionalidad y el funcionamiento requeridos por el usuario al él mismo, y debe ser mantenible, confiable y aceptable.  Mantenibilidad - El software debe evolucionar para cubrir necesidades cambiantes;  Confiabilidad - El software debe ser confiable;  Eficiencia - El software no debería hacer mal uso de los recursos del sistema;  Aceptabilidad - El software debe aceptar las necesidades de los usuarios para los cuales fue diseñado. Esto significa que debe ser entendible, de utilidad y compatible con otros sistemas.
  • 21. Cuáles son los desafíos primordiales frente a la Ingeniería de Software?  Heterogeneidad, entrega y confianza.  Heterogeneidad - Técnicas de desarrollo para la construcción de software que puedan encararse con plataformas heterogéneas y ambientes de ejecución apropiados;  Entrega - Técnicas de desarrollo que lleven a una entrega de software más rápida;  Confianza - Técnicas de desarrollo que demuestren que el software es de confianza para con sus usuarios.
  • 22. Responsabilidad ética y profesional  La Ingeniería de Software implica responsabilidades mayores que el simple uso de habilidades técnicas.  Los ingenieros de software deben comportarse de manera honesta y éticamente responsable si van a ser respetados como profesionales.  Comportamiento éticamente responsable es mucho más que simplemente actuar dentro de la ley.
  • 23. Aspectos de responsabilidad profesional  Confidencialidad - Los ingenieros deberían normalmente respetar la confidencialidad de sus clientes independientemente de que se haya firmado o no un previo acuerdo de confidencialidad.  Capacidad - Los ingenieros no deberían pretender tener mayor capacidad (intelectual y laboral) de la que tienen, deben aceptar conscientemente trabajo que esté acorde a su capacidad.
  • 24. Aspectos de responsabilidad profesional  Derechos de propiedad intelectual - Los ingenieros deberían estar conscientes de las leyes que gobiernan el uso de propiedad intelectual, como ser patentes y derechos reservados. Deben ser cuidadosos al garantizar que la propiedad intelectual de sus clientes está protegida.  Mal uso de la computadora - Los ingenieros de software no deberían usar sus habilidades técnicas para un mal uso de las computadoras de otras personas. El mal uso de una computadora comprende desde lo relativamente simple (jugar en la computadora del cliente) hasta lo extremamente serio (diseminar virus).
  • 25. Código de Etica ACM/IEEE  Las sociedades profesionales en los Estados Unidos cooperaron para producir un código de práctica ética.  Miembros de estas organizaciones fueron consecuentes con el código de práctica ética cuando se asociaron.  El código contiene ocho principios relacionados al comportamiento y las decisiones hechas por ingenieros de software profesionales, incluyendo a los que lo ejercían, educadores, encargados, supervisores y editores, asi como aprendices y estudiantes de la profesión.
  • 26. Código de Etica - preámbulo  Preámbulo - La versión corta del código resume aspiraciones a un alto nivel de abstracción; las cláusulas que se incluyen en la versión completa dan ejemplos y detalles de cómo estas aspiraciones cambian nuestro modo de actuar como profesionales de la Ingeniería de Software. Sin las aspiraciones, los detalles pueden llegar a ser legalistas y aburridos; sin los detalles, las aspiraciones pueden llegar a ser ruidosas pero vacías; juntas, las aspiraciones y los detalles forman un código cohesivo. - Los ingenieros de software se comprometerán a hacer del análisis, especificación, diseño, desarrollo, prueba y mantenimiento de software una profesión respetable y beneficiosa. Acorde a su compromiso con la salud, bienestar y seguridad del público, los ingenieros de software se adherirán a los ocho principios siguientes:
  • 27. Código de Etica - Principios  PUBLICO - Los ingenieros de software actuarán constantemente con el interés público.  CLIENTE Y EMPLEADOR - Los ingenieros de software actuarán acorde al mayor interés de sus clientes y empleadores en constancia con el interés público.  PRODUCTO - Los ingenieros de software garantizarán que sus productos y relativas modificaciones van acorde a los estándares profesionales más altos posibles.
  • 28. Código de Etica - Principios  JUICIO - Los ingenieros de software mantendrán su integridad e independencia de juicio como profesional.  GERENCIA - Gerentes y líderes de Ingeniería de Software suscribirán y promoverán un acercamiento ético hacia el manejo de desarrollo de software y evolución.  PROFESION - Los ingenieros de Software incrementarán la integridad y reputación de la profesión en constancia con el interés público.
  • 29. Código de Etica - Principios  COLEGAS - Los ingenieros de software serán condescendientes y brindarán apoyo a sus colegas.  UNO MISMO - Los ingenieros de software participarán en la formación continua con respecto a la práctica de su profesión y promoverán un acercamiento ético a la práctica de la profesión.
  • 30. Dilemas Eticos  Desacuerdo en principio con las políticas de administración superior.  El empleador actúa de un modo no ético y lanza un sistema de seguridad crítico sin terminar la prueba del sistema.  Participación en el desarrollo de armamento militar o sistemas nucleares.
  • 31. Puntos Clave  La Ingeniería de Software es una disciplina de la ingeniería concerniente a todos los aspectos de la producción de software.  Los productos software están consistidos de programas desarrollados y su documentación asociada. Atributos esenciales del producto son la mantenibilidad, formalidad, eficiencia y utilidad.  El proceso de software consiste en actividades involucradas en el desarrollo de productos software. Actividades básicas son la especificación del software, desarrollo, validación y evolución.  Las metodologías son maneras organizadas de producir software. Estas incluyen sugerencias para el proceso a seguir, notaciones a usar, reglas que rigen las descripciones del sistema que son pautas para el desarrollo.
  • 32. Puntos Clave  Las herramientas CASE son sistemas de software diseñadas para soportar actividades rutinarias en el proceso de software, como ser: editar diagramas de diseño, verificaciones de la consistencia de diagramas y seguir el rastro de las pruebas del programa que han sido ejecutadas.  Los ingenieros de software tienen responsabilidades para con la profesión y la sociedad. No deberían simplemente preocuparse de aspectos técnicos.  Las sociedades profesionales publican códigos de conducta que establecen los estándares de comportamiento que se esperan de sus miembros.
  • 33. Introducción a la Ingeniería de Software – Capítulo 1 Curso de Ing. De Software – FIIS UNAC Ing. Eddie Malca Vicente ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1