capitulo1-(2)

22
30/03/2015 1 Universidad Politécnica Salesiana Carrera de Sistemas 2015 Ingeniería de Software ING. MAURICIO ORTIZ [email protected] Ing. Mauricio Ortiz Capítulo 1 - Generalidades 1 Objetivos Presentar una visión general de la materia Presentar los contenidos, herramientas de evaluación y metodología de aprendizaje. Introducir los conceptos de software e Ingeniería de software Presentar la responsabilidad ética de un profesional del software Introducir al proceso genérico del software Ing. Mauricio Ortiz Capítulo 1 - Generalidades 2

Upload: luis-ramon-pasato

Post on 25-Sep-2015

222 views

Category:

Documents


0 download

DESCRIPTION

is

TRANSCRIPT

  • 30/03/2015

    1

    Universidad Politcnica SalesianaCarrera de Sistemas 2015Ingeniera de Software

    ING. MAURICIO ORTIZ

    [email protected]

    Ing

    . Ma

    uric

    io

    Ortiz

    Ca

    ptu

    lo 1

    -G

    en

    era

    lida

    de

    s

    1

    Objetivos

    Presentar una visin general de la materia

    Presentar los contenidos, herramientas de evaluacin y metodologa de aprendizaje.

    Introducir los conceptos de software e Ingeniera de software

    Presentar la responsabilidad tica de un profesional del software

    Introducir al proceso genrico del software

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    2

  • 30/03/2015

    2

    Visin general

    de la materia

    VISIN GENERAL DE LA MATERIA

    SOFTWARE E INGENIERA DE SOFTWARE

    RESPONSABILIDAD PROFESIONAL Y TICA

    PROCESO DE SOFTWARE

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    3

    Contenidos I

    INTRODUCCION ( 5 sesiones )

    DEFINICIONES DE SOFTWARE E INGENIERA DE

    SOFTWARE

    RESPONSABILIDAD PROFESIONAL Y TICA

    PROCESO DE SOFTWARE

    PROCESOS DEL SOFTWARE (6 sesiones)

    MODELOS DE PROCESOS DE SOFTWARE

    ITERACION DE PROCESOS

    ESPECIFICACIN DEL PROCESO

    REQUERIMIENTOS DEL SOFTWARE (9 sesiones)

    REQUERIMIENTOS FUNCIONALES Y NO FUNCIONALES

    ANALISIS DE REQUERIMIENTOS

    DOCUMENTOS DE ESPECIFICACIN DE

    REQUERIMIENTOS

    VALIDACIN DE REQUERIMIENTOS

    ADMINISTRACION DE REQUERIMIENTOS

    MODELOS DE SISTEMAS (4 sesiones)

    MODELOS DE COMPORTAMIENTO, DATOS, OBJETOS

    Y CONTEXTO

    HERRAMIENTAS CASE

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    4

  • 30/03/2015

    3

    Contenidos II

    DISEO DE SOFTWARE (10 sesiones)

    FUNDAMENTOS DE DISEO

    ESTRUCTURA Y ARQUITECTURA DE DISEO

    NOTACIONES DE DISEO

    MODULARIZACIN

    REUTILIZACIN

    PATRONES DE DISEO

    CONSTRUCCIN DE SOFTWARE

    BUENAS PRCTICAS DE PROGRAMACIN (7 sesiones)

    LENGUAJES DE PROGRAMACIN

    REUTILIZACIN DE COMPONENTES DE SOFTWARE

    INTEGRACIN

    CONTROL DE VERSIONES

    VERIFICACIN Y VALIDACIN (4 sesiones)

    PRUEBAS FUNCIONALES

    PRUEBAS NO FUNCIONALES

    PLAN DE PRUEBAS

    DESPLIEGUE Y MANTENIMIENTO DE SOFTWARE (3 sesiones)

    GESTIN DE CONFIGURACIN

    PROCESOS DE MANTENIMIENTO

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    5

    Herramientas de evaluacin I

    ACTIVIDADES DE EVALUACIN CANTIDAD VALOR INDIVIDUAL

    TRABAJO A CASA - RESPONSABILIDAD TICA Y

    PROFESIONAL1 2

    TRABAJO EN CLASE - PROCESO DE SOFTWARE 1 2

    TRABAJO A CASA - MODELO DE PROCESOS DE SOFTWARE 1 3

    PRUEBA - CAP. 1 Y CAP. 2 1 8

    TRABAJO EN CLASE - ANLISIS DE REQUERIMIENTOS 1 2

    TRABAJO A CASA - ESPECIFICACIN DE REQUERIMIENTOS 1 3

    TRABAJO A CASA - ADMINISTRACIN DE REQUERMIENTOS 1 3

    PRUEBA - CAP. 3 1 6

    TRABAJO A CASA - MODELOS DE SISTEMAS 1 2

    SUSTENTACIN - PAPERS 1 4

    EXAMEN INTERCICLO 1 15

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    6

  • 30/03/2015

    4

    Herramientas de evaluacin II

    ACTIVIDADES DE EVALUACIN CANTIDAD VALOR INDIVIDUAL

    TRABAJO A CASA - DISEO 1 2

    TRABAJO A CASA - PATRONES DE DISEO 1 4

    PRUEBA CAP. 5 1 9

    TRABAJO A CASA - BUENAS PRCTICAS 1 2

    TRABAJO A CASA - LENGUAJES DE PROGRAMACIN 1 3

    TRABAJO EN CLASE - LENGUAJES DE PROGRAMACIN 1 2

    TRABAJO A CASA - PLAN DE PRUEBAS 1 4

    TRABAJO A CASA - GESTIN DE MANTENIMIENTO 1 4

    SUSTENTACIN - PAPERS 1 5

    EXAMEN FINAL 1 15

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    7

    Software e

    Ingeniera de software

    VISIN GENERAL DE LA MATERIA

    SOFTWARE E INGENIERA DE SOFTWARE

    RESPONSABILIDAD PROFESIONAL Y TICA

    PROCESO DE SOFTWARE

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    8

  • 30/03/2015

    5

    Qu es el Software?

    El software es ms que programas.

    Lo primero que se debe entender es que el software es un sistema.

    Lo importante no es qu es el software, sino:

    Cmo se piensa sobre l (qu imagen se tiene)

    Qu papel juega en un contexto mayor

    Punto de vista de una computadora:

    El software es slo programas

    Pensar as genera problemas.

    Medir la productividad por las lneas de cdigo producidas por unidad de tiempo (la visin errnea ms difundida). Identifica productividad en la construccin del sistema con la capacidad de generar cdigo

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    9

    El software es:

    Alma y cerebro de una computadora

    Corporizacin de las funciones de un sistema

    El conocimiento capturado acerca de un rea de aplicacin

    Coleccin de los programas y datos necesarios para convertir a una

    computadora (de propsito general) en una mquina de propsito

    especial diseada para una aplicacin particular.

    Informacin (documentacin) producida durante el desarrollo de un

    sistema software-intensivo

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    10

  • 30/03/2015

    6

    Resumiendo

    El software es muchas cosas, pero todos son aspectos de la informacin

    En definitiva es una cuestin de semntica:

    Si software es solo programas ejecutables

    Excluimos una cantidad de informacin que debemos llamar de alguna manera

    Si incluimos toda la informacin relevante a una pieza de software ejecutable

    Nos debemos relacionar con esa informacin en la misma forma rigurosa y

    sistemtica que lo hacemos con el software ejecutable,

    Esto es crucial para un desarrollo exitoso, pues si no se hace, la

    informacin se pierde o altera introduciendo errores

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    11

    Ejercicio 01.01

    Objetivos del Ejercicio

    Entender el concepto de Software

    Utilizar Bibliotecas virtuales

    Tipo de Ejercicio

    Ejercicio en Casa

    Ejercicio Grupal (3)

    Entregable

    Entregar Resultado

    Discusin en clase

    Investigar cuatro definiciones de

    Software utilizando artculos cientficos

    de las bibliotecas virtuales:

    SpringerLink

    IEEExplorer

    Citar cada una de las definiciones

    utilizando el formato APA

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    12

  • 30/03/2015

    7

    Definicin de Software

    Part of a system that can be encoded

    to execute on a computer as a set of

    instructions; it includes all the

    associated documentation necessary

    to understand, transform and use that

    solution the collection of computer

    programs, procedures, rules, and

    associated documentation and data

    (IEEE)

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    13

    Informacin en el ambiente de

    Desarrollo

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    14

  • 30/03/2015

    8

    Representaciones del Software

    Cualquier informacin que en forma directa representa un eventual

    conjunto de programas y los datos asociado

    Incluye

    programas,

    diseos detallados

    diseos de arquitectura (representados como diagramas de estructura)

    especificaciones escritas en un lenguaje formal

    requerimientos del sistema expresados en una combinacin de notaciones

    cualquiera de centenares de posibilidades

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    15

    Conocimiento de la Ingeniera de

    Software

    Toda la informacin relativa al desarrollo en general (ej: cmo usar un

    mtodo especfico de diseo) o relativa a un desarrollo en particular (ej:

    programa de testeo en un proyecto

    Incluye:

    informacin relativa al proyecto

    informacin sobre la tecnologa de software (mtodos, conceptos, tcnicas)

    conocimiento acerca de sistemas similares

    informacin detallada relativa a la identificacin y solucin de problemas tcnicos del sistema en desarrollo

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    16

  • 30/03/2015

    9

    Conocimiento del dominio especfico

    Es esencial para la creacin del software

    Descubrirla y ponerla en forma til es la esfera de un especialista en el

    rea de aplicacin

    Incluye

    conocimiento del proceso especifico a ser controlado

    reglas de la contabilidad

    procedimientos para actualizar y cambiar los registros de los empleados

    Etc.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    17

    Ejemplos de formas que toma el

    software

    Colecciones de programas: a testear, terminados, en lenguaje de mquina, en lenguajes de alto nivel

    Necesidades

    Requerimientos

    Especificaciones

    Diseos de arquitectura

    Diseos detallados

    Formatos de datos

    Sistemas en uso para produccin

    Anlisis de requerimientos

    Documentacin del usuario

    Documentacin de mantenimiento

    Pedidos de cambio

    Especificaciones de modificaciones

    Informes de errores

    Mediciones de performance

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    18

  • 30/03/2015

    10

    Producto o Conocimiento

    Producto A medida que los computadores

    extendieron su mbito de aplicacin se los vio como procesadores simblicos, de all que no se viera al software como producto

    Desde los 60 (separacin Sw y Hw) comenz a constituirse como producto

    El software es tanto un producto como un objeto tcnico, esto es: conocimiento empaquetado

    Conocimiento Si los programas (final de una cadena

    de representaciones que llamamos software), contienen conocimiento, entonces las versiones iniciales tambin contienen conocimiento, y lo perdemos si nos reducimos a los conceptos del software ejecutable.

    No perder este conocimiento es una de las principales razones de la reusabilidad del software.

    El software se puede comparar a un informe de investigacin

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    19

    Contexto del Software

    El software es muchas cosas, y cosas que difieren:

    segn el tiempo

    segn la gente de que se trate

    segn lo que se intente hacer

    Uno y sus circunstancias

    Balancear las actividades de anlisis y la construccin de programas:

    software como conocimiento.

    Se vincula con la organizacin del desarrollo de software:

    software como producto;

    Provisin de herramientas para ayudar al desarrollo de software:

    software como una serie de transformaciones;

    Para entender la naturaleza esencial de la actividad, la visin del software como conocimiento es la ms idnea

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    20

  • 30/03/2015

    11

    Caractersticas del Software

    (Cochran)

    Robert Cochran: I use the following definition to describe what is unique

    or special about software:

    Software is intangible

    It has high intellectual content

    It is generally not recognized as an asset by accountants and so is off balance sheet.

    Its development process is labor intensive and is team and project based.

    Software doesnt exhibit any real separation between R&D and production.

    Software is potentially infinitely changeable.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    21

    Ejercicio 01.02

    Objetivos del ejercicio

    Revisar el concepto de software

    Tipo de ejercicio

    Ejercicio en clase

    Ejercicio grupal

    Entregable de ejercicio

    Comunicar resultado

    Discusin en clase

    El ejercicio consiste en completar las columnas del cuadro de la siguiente presentacin

    En la primera columna se encuentran algunas caractersticas del software segn Cochran

    En las siguientes columnas se encuentran diferentes tipos de proyectos

    Se pide completar las columnas correspondientes con los otros procesos de produccin

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    22

  • 30/03/2015

    12

    Ejercicio 01.02

    Caractersticas

    del Proyecto

    Desarrollo de

    Software

    Construccin

    de un Puente

    Escritura de una

    Novela

    Intangible

    Contenido

    Intelectual

    Activo

    Contable

    Por Proyectos

    Modificabilidad

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    23

    Caractersticas del Software (Basili)

    Hay factores que crean similitudes y diferencias entre proyectos

    Hay una relacin directa entre proceso y producto

    Las mediciones son necesarias y deben estar basadas en los objetivos y

    modelos asociados

    Evaluacin y feedback son necesarios para el control del proyecto

    El desarrollo del software sigue un paradigma experimental

    La experiencia necesita ser empaquetada

    Los procesos de desarrollo de software y de mantenimiento deben

    soportar el reso de la experiencia

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    24

  • 30/03/2015

    13

    Caractersticas del Software

    (Conceptuales)

    Objetivo de la ingeniera: construccin de producto.

    Ingeniera Software: sistemas de software

    El software es maleable.

    Existe la idea que los cambios en el soft son fciles.

    En este punto debe pensarse a los productos de soft de otra forma:

    Un cambio en el soft debe ser visto como un cambio en el diseo ms que en el cdigo

    Su produccin es humano-intensiva: requiere ms ingeniera que manufactura. El proceso de produccin de software se vincula ms con el diseo e implementacin que con la manufactura.

    Tradicionalmente en la ingeniera el ingeniero dispone de herramientas para describir el producto que son distintas del producto, no es as en la Ingeniera Software.

    Las cualidades del producto de software estn a menudo entremezcladas en especificaciones con las cualidades del diseo

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    25

    Caractersticas del software

    (Enumeracin)

    1. Correccin funcional

    2. Confiabilidad

    3. Robustez

    4. Performance

    5. "Amistosidad

    6. Mantenibilidad

    7. Reusabilidad

    8. Portabilidad

    9. Comprensibilidad

    10. Interoperatividad

    11. Productividad

    12. Oportunidad

    13. Visibilidad

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    26

  • 30/03/2015

    14

    Caractersticas del Software (Segn la

    visin)

    Usuario

    Confiable

    Eficiente

    Fcil de Usar

    Project Manager (Proceso)

    Productivo

    Fcil de controlar

    Productor

    Verificable

    Mantenible

    Portable

    Extensible

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    27

    Caractersticas del Software (Externas vs

    Internas)

    Externas: visibles para los usuarios

    Internas: conciernen a los desarrolladores, slo son visibles para ellos

    Hay fuerte relacin entre unas y otras. Por ejemplo: la cualidad interna de

    la verificabilidad se requiere para alcanzar la cualidad externa de la

    confiabilidad.

    Vale decir:

    confiabilidad -> verificabilidad

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    28

  • 30/03/2015

    15

    Responsabilidad

    Profesional y ticahttp://www.ati.es/novatica/1999/140/docs140.html

    http://www.acm.org/about/se-code

    VISIN GENERAL DE LA MATERIA

    SOFTWARE E INGENIERA DE SOFTWARE

    RESPONSABILIDAD PROFESIONAL Y TICA

    PROCESO DE SOFTWARE

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    29

    Principios del Cdigo de tica de la

    Ingeniera de Software

    Sociedad: Los ingenieros del software actuarn de manera coherente con el inters general.

    Cliente y empresario: Los ingenieros del software debern actuar de tal modo que se sirvan los mejores intereses para sus clientes y empresarios, y consecuentemente con el inters general.

    Producto: Los ingenieros del software debern garantizar que sus productos y las modificaciones relacionadas con ellos cumplen los estndares profesionales de mayor nivel ms que sea posible.

    Juicio: Los ingenieros del software debern mantener integridad e independencia en su valoracin profesional.

    Gestin: Los gestores y lderes en ingeniera del software suscribirn y promovern un enfoque tico a la gestin del desarrollo y el mantenimiento del software.

    Profesin: Los ingenieros del software debern progresar en la integridad y la reputacin de la profesin, coherentemente con el inters general.

    Compaeros: Los ingenieros del software sern justos y apoyarn a sus compaeros.

    Persona: Los ingenieros del software debern participar en el aprendizaje continuo de la prctica de su profesin y promovern un enfoque tico en ella.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    30

  • 30/03/2015

    16

    Principio 1: Sociedad

    Aceptar la completa responsabilidad de su trabajo.

    Mitigar sus propios intereses, los del empresario, los del cliente y los de los usuarios con los del bienestar pblico.

    Dar el visto bueno al software slo si se tiene fundada creencia de que es seguro, de que cumple las especificaciones, de que ha pasado las pruebas pertinentes y de que no disminuye la calidad de la vida, la confidencialidad ni daa el medio ambiente.

    Revelar a las personas o autoridades correspondientes cualquier peligro real o potencial para el usuario, la sociedad o el medio ambiente, peligro que razonablemente consideren que est asociado con el software o con documentos relacionados.

    Cooperar en las materias relacionadas con preocupaciones graves causadas por el software, su instalacin, mantenimiento, soporte o documentacin.

    Ser justos y veraces en todas las afirmaciones, especialmente en las que sean pblicas, relativas al software o a documentos, mtodos y herramientas relacionados.

    Considerar las cuestiones de discapacidades fsicas, asignacin de recursos, desventajas econmicas y otros factores que puedan disminuir el acceso a los beneficios del software.

    Estar dispuestos a utilizar las capacidades profesionales para buenas causas y contribuir a la educacin del pblico en general con respecto a su disciplina.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    31

    Principio 2: Cliente y empresario

    Proporcionar servicios slo en las reas de su competencia, siendo honestos y francos acerca de cualquier limitacin que haya en su experiencia o educacin.

    No utilizar conscientemente software obtenido o retenido de manera ilegal o no tica.

    Utilizar la propiedad de un cliente o patrn slo de maneras adecuadamente autorizadas, y con el conocimiento y el consentimiento de ste.

    Garantizar que cualquier documento en el que se confa ha sido aprobado, cuando as se requiera, por alguien con autoridad para hacerlo.

    Mantener como privada cualquier informacin confidencial obtenida mediante el trabajo profesional, siempre que tal confidencialidad no sea inconsistente con los aspectos de inters general ni con la ley.

    Identificar, documentar, recoger evidencia e informar con prontitud al cliente o al empresario si, en su opinin, existe la probabilidadde que un proyecto fracase, resulte demasiado caro, viole la legislacin sobre propiedad intelectual o sea proble-mtico.

    Identificar, documentar e informar al empresario o al cliente sobre cualquier asunto de inters social, o del que se tenga conocimiento, acerca del software o de documentos rela-cionados.

    No aceptar trabajo externo que vaya en detrimento de aqul que desarrollen para su principal contra-tante.

    No representar inters contrario al del empresario o al del cliente, a menos que se comprometa otro valor tico ms elevado; en este ltimo caso se informar al empresario o a otra autoridad competente acerca de esa preocupacin tica.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    32

  • 30/03/2015

    17

    Principio 3: Producto

    Promover la mxima calidad, un coste aceptable y un plazo razonable, garantizando que los compromisos significativos al respecto quedan claros, que el empresario y el cliente los aceptan y que estn disponibles para consideracin del usuario y del pblico en general.

    Garantizar objetivos adecuados y alcanzables para cualquier proyecto en el que trabajen o vayan a trabajar.

    Identificar, definir y examinar temas ticos, econmicos, culturales, legales y medioambientales relacionados con cualquier proyecto.

    Garantizar, mediante una conveniente combinacin de educacin, adiestramiento y experiencia, que estn cualificados para cualquier proyecto en el que trabajen o vayan a trabajar.

    Garantizar una metodologa adecuada para cualquier proyecto en el que trabajen o vayan a trabajar.

    Trabajar para seguir los estndares de la industria, si estn disponibles, que sean los ms adecuados para las tareas, desvindose de los mismos slo cuando est justificado tica o tcnicamente.

    Esforzarse para entender completamente las especificaciones del software que estn desarrollando.

    Garantizar que las especificaciones para el software sobre el que trabajan han sido bien documentadas, satisfacen los requisitos

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    33

    Principio 3: Producto

    Garantizar estimaciones cuantitativas realistas de coste, plazos, personal y resultados de cualquier proyecto en el que trabajen o vayan a trabajar, y proporcionar una evaluacin de la incertidumbre de esas estimaciones.

    Garantizar unas pruebas, depuraciones y revisiones adecuadas del software y de los documentos relacionados en los que trabajen.

    Garantizar una correcta documentacin, incluyendo problemas significativos descubiertos y las soluciones adoptadas, para cualquier proyecto en el que trabajen.

    Trabajar para desarrollar software y documentos relacionados que respeten la confidencialidad de aqullos que van a verse afectados por ese software.

    Ser cuidadosos para manejar slo datos precisos, obtenidos mediante medios legales y ticos, y utilizarlos slo de maneras debida-mente autorizadas.

    Mantener la integridad de los datos, siendo sensibles a aqullos que estn obsoletos o equivocados.

    Tratar todas las formas del mantenimiento del software con la misma profesionalidad que los nuevos desarrollos.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    34

  • 30/03/2015

    18

    Principio 4: Juicio

    Moderar todos los juicios tcnicos por la necesidad de amparar y mantener valores humanos.

    Firmar slo los documentos preparados bajo su supervisin o dentro de sus reas de competencia, y con los que estn de acuerdo.

    Mantener objetividad profesional con respecto a cualquier software o documentos relacionados para los que se les pida evaluacin.

    No involucrarse en prcticas financieras engaosas, tales como sobornos, dobles facturaciones u otras prcticas impropias.

    Comunicar a todas las partes los conflictos de intereses que no puedan evitarse razonablemente.

    Rechazar la participacin, como miembros o asesores, en organismos privados, gubernamentales o profesionales vinculados con temas de software, en los que ellos, o sus patronos o clientes, tengan potenciales conflictos de intereses no revelados.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    35

    Principio 5. Gestin

    Garantizar una buena gestin en cualquier proyecto en el que trabajen, incluyendo procedimientos efectivos para promover calidad y reduccin del riesgo.

    Garantizar que se informa a los empleados de los estndares antes de adherirse a ellos.

    Garantizar que los empleados conocen las polticas y los procedimientos del empresario para la proteccin de las claves de acceso, ficheros y otra informacin que sea confidencial para el empresario o para otros.

    Asignar trabajo slo despus de tener en cuenta la educacin y la experiencia, teniendo en cuenta el deseo de mejorar tal educacin y experiencia.

    Garantizar unas estimaciones cuantitativas realistas de coste, plazo, personal, calidad y productos en cualquier proyecto en el que trabajen o tengan intencin de trabajar, y proporcionar una valoracin de la incertidumbre de esas estimaciones.

    Atraer empleados slo mediante una descripcin completa y precisa de las condiciones del trabajo.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    36

  • 30/03/2015

    19

    Principio 5. Gestin

    Ofrecer una remuneracin adecuada y justa.

    No impedir injustamente a otro obtener la posicin que merece de acuerdo con su cualificacin.

    Garantizar que hay un acuerdo correcto en lo referente a la propiedad de cualquier software, proceso, investigacin, escrito, u otra propiedad intelectual a la que el ingeniero del software haya contribuido.

    Proporcionar los medios correspondientes en caso de alegaciones de incumplimiento de la poltica del empresario o de este Cdigo.

    No pedir a un ingeniero del software hacer algo inconsistente con este Cdigo.

    No castigar a nadie por expresar preocupaciones ticas sobre un proyecto.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    37

    Principio 6: Profesin

    Ayudar a desarrollar un ambiente organizativo favorecedor de un comportamiento tico.

    Promover el conocimiento general de la ingeniera del software.

    Diseminar el conocimiento de la ingeniera del software mediante la participacin en organizaciones profesionales, reuniones y publicaciones.

    Apoyar, como miembros de una profesin, a otros ingenieros que se esfuercen en seguir este Cdigo.

    No promover el inters propio a costa de la profesin, el cliente o el empresario.

    Obedecer todas las leyes que gobiernen su trabajo, a menos que, en circunstancias excepcionales, tal cumplimiento sea inconsistente con el inters general.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    38

  • 30/03/2015

    20

    Principio 6: Profesin

    Ser precisos en la descripcin de las caractersticas del software en el que trabajan, evitando, no slo falsas declaraciones, sino tambin aqullas otras que razonablemente podran suponerse especulativas, vacas, decepcionantes, engaosas o dudosas.

    Tener la responsabilidad de detectar, corregir e informar errores en el software y documentos asociados en los que trabajen.

    Asegurarse de que los clientes, patronos y gerentes conocen la obligacin del ingeniero del software con respecto a este Cdigo de tica, y las ramificaciones subsecuentes de tal obligacin.

    Evitar asociaciones con empresas y organizaciones que estn en conflicto con este cdigo.

    Considerar que las inobservancias de este Cdigo son inconsistentes con ser un ingeniero del software profesional.

    Expresar las preocupaciones a las personas implicadas cuando se detecten incumplimientos significativos de este Cdigo, a menos que sea imposible, contraproducente o peli-groso.

    Informar sobre las vulneraciones de este Cdigo a las autoridades pertinentes cuando est claro que sea imposible, contraproducente o peli-groso consultar a las personas implicadas en estas inobservancias.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    39

    Principio 7: Compaeros

    Animar a los compaeros a adherirse a este Cdigo.

    Ayudar a los compaeros en el desarrollo profesional.

    Reconocer completamente el trabajo de otros y abstenerse de atribuirse mritos que no son propios.

    Revisar el trabajo de los dems de forma objetiva, sincera y convenientemente documentada.

    Tratar justamente las opiniones, preocupaciones o quejas de un compaero.

    Ayudar a los compaeros en el conocimiento completo de los estndares de trabajo, incluyendo polticas y procedimientos para proteger claves de acceso, ficheros y otra informacin confidencial, y medidas de seguridad en general.

    No interferir injustamente en la carrera profesional de un compaero; sin embargo, la preocupacin por el empresario, el cliente o el inters pblico puede exigir, con buena voluntad, a cuestionar la competencia de un compaero.

    En las situaciones que quedan fuera de las reas de competencia personales, consultar las opiniones de otros profesionales que tengan competencia en ese rea.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    40

  • 30/03/2015

    21

    Principio 8. Persona

    Mejorar su conocimiento de los avances en el anlisis, la especificacin, el diseo, el desarrollo, el mantenimiento y pruebas del software y documentos relacionados, junto con la gestin del proceso de desarrollo.

    Mejorar su capacitacin para crear software de calidad, seguro, fiable y til, con un coste y en un plazo razonables.

    Mejorar su capacidad para producir documentacin precisa informativa y correctamente escrita.

    Mejorar su comprensin del software y documentos relacionados en los que trabajan y del entorno en el que se utilizarn.

    Mejorar su conocimiento de los estndares pertinentes y de las leyes que regulan el software y los documentos relacionados en los que trabajan.

    Mejorar su conocimiento de este Cdigo, su interpretacin y su aplicacin al trabajo.

    No dar un tratamiento injusto a nadie por prejuicios irrelevantes.

    No influir a otros para emprender accin alguna que conlleve el incumplimiento de este Cdigo.

    Reconocer que las inobservancias personales de este Cdigo son inconsistentes con ser un ingeniero del software profesional.

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    41

    Ejercicio 01.03

    Objetivos del ejercicio

    Profundizar sobre los principios de tica del Ingeniero de Software

    Tipo de ejercicio

    Ejercicio en casa

    Ejercicio grupal

    Entregable de ejercicio

    Entregar

    Discusin en clase

    Ejemplificar dos casos por cada principio.

    El formato de cada caso deber tener:

    Contexto

    Problema

    Escenarios (tico, Deshonesto, Otro)

    Conclusin

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    42

  • 30/03/2015

    22

    Proceso de

    Software

    VISIN GENERAL DE LA MATERIA

    SOFTWARE E INGENIERA DE SOFTWARE

    RESPONSABILIDAD PROFESIONAL Y TICA

    PROCESO DE SOFTWARE

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    43

    Definiciones

    IEEE: Una secuencia de pasos ejecutados para un propsito dado

    Se ajusta a las prcticas especficas de las distintas ingenieras

    Dos componentes: acciones y propsito;

    La meta le da al proceso una serie de cualidades

    Pfleeger: Podemos pensar al conjunto ordenado de tareas como un proceso: una serie de pasos que involucran actividades, restricciones y recursos que producen una determinada salida esperada

    Basili: Los procesos de ingeniera de software son especficos.

    Importante: El proceso est conformado por los pasos que se dan, no por su descripcin

    Ing. Mauricio Ortiz

    Captulo 1 - Generalidades

    44