Macedo Martinez

Translate

miércoles, 21 de junio de 2017

DERECHOS DE AUTOR


El derecho de autor es un conjunto de normas y principios que regulan los derechos morales y patrimoniales que la ley concede a los autores (los derechos de autor), por el solo hecho de la creación de una obra literaria, artística, científica o didáctica, esté publicada o inédita.

Se utiliza la noción de copyright (traducido literalmente como "derecho de copia") que -por lo general- comprende la parte patrimonial de los derechos de autor (derechos patrimoniales).

El símbolo del copyright "©" es usado para indicar que una obra está sujeta al derecho de autor.

Derechos Patrimoniales

Los derechos patrimoniales son una clasificación dentro de los derechos subjetivos. Son susceptibles de tener un valor económico.

Los derechos patrimoniales se subdividen en:


Los derechos patrimoniales son los derechos económicos y de posesión de una obra. Con respecto a este último punto, los propietarios (autor, editorial o un tercero) están facultados para establecer:
  • El modo de difusión
  • La autorización de su traducción a un idioma
  • La reproducción en cualquier formato.

Los derechos económicos son las ganancias percibidas de la posesión de la obra; el tanto por ciento depende de lo pactado con la editorial.

Una obra pasa al dominio público cuando los derechos patrimoniales han expirado. Esto sucede habitualmente trascurrido un plazo desde la muerte del autor (post mortem auctoris). Por ejemplo, en el derecho europeo, 70 años desde la muerte del autor. Dicha obra entonces puede ser utilizada en forma libre, respetando los derechos morales.

Este tipo de derecho es limitado, pues expira a los 70 años de la muerte del autor, generalmente. Si el autor tiene descendientes, éstos heredan los derechos patrimoniales y morales, pero si no existiera ningún descendiente pasaría a ser de dominio público.

Derecho de Autor y Copyright

El derecho de autor y copyright constituyen dos concepciones sobre la propiedad literaria y artística.

El derecho de autor se basa en la idea de un derecho personal del autor, fundado en una forma de identidad entre el autor y su creación. El derecho moral está constituido como emanación de la persona del autor: reconoce que la obra es expresión de la persona del autor y así se le protege.

La protección del copyright se limita estrictamente a la obra, sin considerar atributos morales del autor en relación con su obra, excepto la paternidad; no lo considera como un autor propiamente, pero tiene derechos que determinan las modalidades de utilización de una obra.

Campo de aplicación

La protección del derecho de autor abarca únicamente la expresión de un contenido, pero no las ideas. Para su nacimiento no necesita de ninguna formalidad, es decir, no requiere de la inscripción en un registro o el depósito de copias, los derechos de autor nacen con la creación de la obra.

Son objeto de protección las obras originales, del campo literario, artístico y científico, cualquiera que sea su forma de expresión, soporte o medio. Entre otras:
  • Libros, folletos y otros escritos;
  • Obras dramáticas o dramático-musicales;
  • Obras coreográficas y las pantomimas;
  • Composiciones musicales con o sin letra;
  • Obras musicales y otras grabaciones sonoras;
  • Obras cinematográficas y otras obras audiovisuales;
  • Obras de dibujo, pintura, escultura, grabado, litografía;
  • Historietas gráficas, tebeos o comics, así como sus ensayos o bocetos;
  • Obras fotográficas;
  • Gráficos, mapas y diseños relativos a la geografía, a la topografía o a las ciencias;
  • Los proyectos, planos, maquetas y diseños de obras arquitectónicas y de ingeniería.
  • Programas informáticos.
  • Entrevistas.
  • Sitios web.
Los Derechos de Autor

El titular de los derechos de autor goza de derechos exclusivos respecto de:
  • Reproducir la obra en copias o fonogramas.
  • Preparar obras derivadas basadas en la obra.
  • Distribuir copias o fonogramas de la obra al público vendiéndolas o haciendo otro tipo de transferencias de propiedad tales como alquilar, arrendar o prestar dichas copias.
  • Presentar la obra públicamente, en el caso de obras literarias, musicales, dramáticas y coreográficas, pantomimas, películas y otras producciones audiovisuales.
  • Mostrar la obra públicamente, en el caso de obras literarias, musicales, dramáticas coreográficas, pantomimas, obras pictóricas, gráficas y esculturales, incluyendo imágenes individuales de películas u otras producciones audiovisuales.
  • En el caso de grabaciones sonoras, interpretar la obra públicamente a través de la transmisión audiodigital.
La protección del derecho de autor existe desde que la obra es creada de una forma fijada. El derecho de autor sobre una obra creada se convierte inmediatamente en propiedad del autor que creó dicha obra. Sólo el autor o aquellos cuyos derechos derivan del autor pueden reclamar propiedad.

Los autores de una obra colectiva son co-dueños del derecho de autor de dicha obra a menos que haya un acuerdo que indique lo contrario.

Los menores de edad pueden reclamar derecho de autor, pero las leyes específicas pueden reglamentar cualquier transacción relacionada con este tema donde ellos sean parte.

Clases de Derechos de Autor


Dentro de la tradición jurídica del Derecho continental, Derecho internacional, y Derecho mercantil, se suelen distinguir los siguientes tipos de derechos de autor:
  • Derechos Patrimoniales: son aquellos que permiten de manera exclusiva la explotación de la obra hasta un plazo contado a partir de la muerte del último de los autores, posteriormente pasan a formar parte del dominio público pudiendo cualquier persona explotar la obra.
  • Derechos Morales: son aquellos ligados al autor de manera permanente y son irrenunciables e imprescriptibles.
  • Derechos Conexos: son aquellos que protegen a personas distintas al autor, como pueden ser los artistas, intérpretes, traductores, editores, productores, etc.
  • Derechos de Reproducción: es un fundamento legal que permite al autor de la obra impedir a terceros efectuar copias o reproducciones de sus obras.
  • Derecho de Comunicación Pública: derecho en virtud del cual el autor o cualquier otro titular de los derechos puede autorizar una representación o ejecución viva o en directo de su obra, como la representación de una pieza teatral o la ejecución de una sinfonía por una orquesta en una sala de concierto. Cuando los fonogramas se difunden por medio de un equipo amplificador en un lugar público, como una discoteca, un avión o un centro comercial, también están sujetos a este derecho.
  • Derechos de Traducción: para reproducir y publicar una obra traducida se debe solicitar un permiso del titular de la obra en el idioma original.
Regulación del derecho de autor

La legislación sobre derecho de autor cambia de un país a otro. Para ciertas obras y otro material objeto de protección, puede obtener una autorización acudiendo a una organización de gestión colectiva. Éstas autorizan la utilización de obras y otro material protegido por el derecho de autor y los derechos conexos cuando resulta impracticable el ejercicio individual de los derechos por los titulares. Sin embargo, varias organizaciones internacionales no gubernamentales promueven el contacto entre distintas organizaciones de gestión colectiva nacionales.

Las leyes de cada país difieren especialmente en los siguientes puntos:
  • Plazo de protección. En la mayoría de los países, los derechos de autor expiran no más allá de 70 años tras la muerte del autor.
  • Situación de la obras del Estado. En muchos países (pero no en todos), los documentos publicados por el Estado para uso oficial están en el dominio público.
  • Tipo de material sujeto a derecho de autor.

Argentina

En Argentina, el Derecho de autor está enmarcado, en principio, por el artículo 17 de la

Constitución que expresa que Todo autor o inventor es propietario exclusivo de su obra, invento o descubrimiento, por el término que le acuerde la ley. La Ley 11723 regula el régimen Legal de la Propiedad Intelectual. El artículo 5 de la Ley de Propiedad Intelectual (Argentina) dice que "La propiedad intelectual sobre sus obras corresponde a los autores durante su vida y a sus herederos o derechohabientes hasta setenta años contados a partir del 1 de Enero del año siguiente al de la muerte del autor".

En el caso de obras realizadas en colaboración, el plazo se cuenta desde el 1 de enero del año siguiente a la muerte del último de los autores. Si el autor no dejara herederos, los derechos pasan directamente al Estado Argentino por el mismo plazo que estipula la ley.



Tratados Internacionales

Artículos principales: Convenio de Berna para la Protección de las Obras Literarias y Artísticas y Tratado de la OMPI sobre Derecho de Autor

En marzo del 2002 entró en vigencia el Tratado de la OMPI sobre Derecho de Autor (WCT) y en mayo del 2002 el Tratado de la OMPI sobre Interpretación o Ejecución y Fonogramas

(WPPT).

Ambos «Tratados de Internet» (como se les conoce) fueron acordados en 1996 por la

Organización Mundial de la Propiedad Intelectual. Actualizan y complementan el Convenio de Berna e introducen elementos de la sociedad digital. Tomó un total de 6 años (1996 - 2002) conseguir la ratificación de estos nuevos tratados por parte de 30 países, el mínimo exigido para su aplicación.

Software Según Autores

Definición de Software según estos Autores.

John W. Tukey (1957). En computación, el software -en sentido estricto- es todo programa o aplicación programado para realizar tareas específicas.

Alcalde Garcia Eduardo (1994). El software es un conjunto de elemento lógicos necesarios para que se pueda realizar las tareas encomendadas al mismo, se puede definir de la siguiente forma: es la parte lógica que dota al equipo físico de capacidad para realizar cualquier tipo de trabajo.

Castellano Casas Ricardo (2001). El software es el conjunto de instrucciones y datos en formato binario almacenados en la memoria principal, que le indica a una computadora que debe hacer y como, es decir, el software dirige al hardware el software es la parte lógica del sistema informático.

Tipos de Nuevos Software.

Software Empotrado.

Es aquel que va instalado en otros productos industriales, como por ejemplo la electrónica de consumo, dotando a estos productos de un grado de inteligencia cada vez mayor. Se aplica a todo tipo de productos, desde un vídeo doméstico hasta un misil con cabeza atómica, pasando por algunos sistemas de control de los automóviles, y realiza funciones muy diversas, que pueden ir desde complicados cálculos en tiempo real a sencillas interacciones con el usuario facilitando el manejo del aparato que los incorpora.
Programas que pertenecen a esta categoría.

Entre estos se encuentran los artefactos electrónicos que parecen “inteligentes”, como videocaseteras, reproductores de DVD, automóviles, hornos de microondas, cámaras digitales, videocámaras, teléfonos celulares, sistemas de alarma, máquinas de rayos x, herramientas quirúrgicas láser, entre muchos más.
Además de los sistemas operativos como LynxOS, Windows CE, Palm OS o Symbian.

Ventajas.
  • No se limita a una sola tarea (gracias a su desarrollo).
  • Los sistemas operativos empotrados logran crear aplicaciones complejas para este software.
  • Cada vez es mas completo.

Desventajas.
  • Dispone de hardware y software muy específicos y limitados, por lo que generalmente son diseñados desde un punto de vista electrónico.
  • Disponen de hardware y software muy específicos y limitados.


Ejemplos de aplicaciones del software empotrados.
Cajeros automáticos - máquinas de revelado automatico de fotos - equipos de medicina en hospitales – sistema de radar de aviones.

Software heredado.

El Software heredado es conocido también como Legacy (Software de legado). Los sistemas de software de herencia fueron desarrollados desde hace muchísimas décadas y aún hoy en día continúan con su funcionamiento, para seguir prestando sus servicios, siendo obviamente modificados o actualizados.
Un ejemplo práctico podría ser Word, dado a que se creo para destinarlo a una finalidad determinada que hoy en día aún persiste en el medio informático, pero dicha aplicación con el transcurso de  los años ha pasado por varias versiones y podemos notar que  versión tras versión es incluso más  impactante, ya que nos  sorprende cada vez con más aplicaciones novedosas y sus características van de la mano del desarrollo tecnológico.

Software de Inteligencia Artificial.

La inteligencia artificial (IA), o mejor llamada inteligencia computacional, es la inteligencia exhibida por máquinas. En ciencias de la computación, una máquina "inteligente" ideal es un agente racional flexible que percibe su entorno y lleva a cabo acciones que maximicen sus posibilidades de éxito en algún objetivo o tarea. Coloquialmente el término "inteligencia artificial" se aplica cuando una máquina imita las funciones "cognitivas" que los humanos asocian con otras mentes humanas, como por ejemplo: "aprender" y "resolver problemas". A medida de que las máquinas se vuelven cada vez más capaces, tecnología que alguna vez se pensó que requería de inteligencia se elimina de la definición. Por ejemplo, el reconocimiento óptico de caracteres ya no se percibe como un ejemplo de la "inteligencia artificial" habiéndose convertido en una tecnología común. Avances tecnológicos todavía clasificados como inteligencia artificial son los sistemas capaces de jugar ajedrez, GO y manejar por si mismos.
En 1956, John McCarthy acuñó la expresión «inteligencia artificial», y la definió como: "...la ciencia e ingenio de hacer máquinas inteligentes, especialmente programas de cómputo inteligentes".

Software de Ingeniería y Ciencia.

Es otro de los campos clásicos de aplicación de la informática. Se encarga de realizar complejos cálculos sobre datos numéricos de todo tipo. En este caso la corrección y exactitud de las operaciones que realizan es uno de los requisitos básicos que deben de cumplir.
El campo del software científico y de ingeniería se ha visto ampliado últimamente con el desarrollo de los sistemas de diseño, ingeniería y fabricación asistida por ordenador (CAD, CAE y CAM), los simuladores gráficos y otras aplicaciones interactivas que lo acercan más al software de tiempo real e incluso al software de sistemas.

Línea de Producto de Software.

La definición más comúnmente aceptada de una LPS procede de Clements (2001) donde “se definen las líneas del producto de software como un conjunto de sistemas software, que comparten un conjunto común de características (features), las cuales satisfacen las necesidades específicas de un dominio o segmento particular.
Beneficios.
  • Entrega de productos de software mas rápida, econámica y de mejor calidad.
  • Mejoras en: tiempo de entrega del producto, costos de ingeniería, tamaño del portafolio de productos, valor competitivo del producto, mayor márgenes de ganancias.
  • Reducción de: tiempo promedio de creación y entrega de nuevos productos, esfuerzo promedio requerido para desarrollar y mantener productos, costos promedio de producción de productos y disminución de tasa de defectos.
Software de Aplicación Web.

En la ingeniería de software se denomina aplicación web a aquellas herramientas que los usuarios pueden utilizar accediendo a un servidor web a través de Internet o de una intranet mediante un navegador. En otras palabras, es una aplicación software que se codifica en un lenguaje soportado por los navegadores web en la que se confía la ejecución al navegador.
Las aplicaciones web son populares debido a lo práctico del navegador web como cliente ligero, a la independencia del sistema operativo, así como a la facilidad para actualizar y mantener aplicaciones web sin distribuir e instalar software a miles de usuarios potenciales. Existen aplicaciones como los webmails, wikis, weblogs, tiendas en línea y la propia Wikipedia que son ejemplos bastante conocidos de aplicaciones web.
Es importante mencionar que una página Web puede contener elementos que permiten una comunicación activa entre el usuario y la información. Esto permite que el usuario acceda a los datos de modo interactivo, gracias a que la página responderá a cada una de sus acciones, como por ejemplo rellenar y enviar formularios, participar en juegos diversos y acceder a gestores de base de datos de todo tipo.

Ventajas.
  • Ahorra tiempo: se pueden realizar tareas sencillas sin necesidad de descargar ni instalar ningún programa.
  • No hay problemas de compatibilidad: basta tener un navegador actualizado para poder utilizarlas. 
  • No ocupan espacio en nuestro disco duro.
  • Actualizaciones inmediatas: como el software lo gestiona el propio desarrollador, cuando nos conectamos estamos usando siempre la última versión que haya lanzado.
  • Consumo de recursos bajo: dado que toda (o gran parte) de la aplicación no se encuentra en nuestra computadora, muchas de las tareas que realiza el software no consumen recursos nuestros porque se realizan desde otra computadora.
  • Multiplataforma: se pueden usar desde cualquier sistema operativo porque solamente es necesario tener un navegador.
  • Portables: es independiente de la computadora donde se utilice (PC de sobremesa, portátil) porque se accede a través de una página web (solamente es necesario disponer de acceso a Internet). La reciente tendencia al acceso a las aplicaciones web a través de teléfonos móviles requiere sin embargo un diseño específico de los ficheros CSS para no dificultar el acceso de estos usuarios.
  • La disponibilidad suele ser alta porque el servicio se ofrece desde múltiples localizaciones para asegurar la continuidad del mismo.
  • Los virus no dañan los datos porque están guardados en el servidor de la aplicación.
  • Colaboración: gracias a que el acceso al servicio se realiza desde una única ubicación es sencillo el acceso y compartición de datos por parte de varios usuarios. Tiene mucho sentido, por ejemplo, en aplicaciones en línea de calendarios u oficina.
  • Los navegadores ofrecen cada vez más y mejores funcionalidades para crear "aplicaciones web enriquecidas" (Rich Internet application o RIA).
Desventajas.
  • Habitualmente ofrecen menos funcionalidades que las aplicaciones de escritorio. Se debe a que las funcionalidades que se pueden realizar desde un navegador son más limitadas que las que se pueden realizar desde el sistema operativo.
  • La disponibilidad depende de un tercero, el proveedor de la conexión a internet o el que provee el enlace entre el servidor de la aplicación y el cliente. Así que la disponibilidad del servicio está supeditada al proveedor.

martes, 20 de junio de 2017

INGENIERÍA DEL SOFTWARE


Es la disciplina o área de la informática que ofrece métodos y técnicas para desarrollar y mantener software de calidad.
Esta ingeniería trata con áreas muy diversas de la informática y de las ciencias de la computación, tales como:
  • Construcción de compiladores,
  • Construcción de sistemas operativos,
  • Desarrollos Intranet/Internet,

Abordando todas las fases del ciclo de vida del desarrollo de cualquier tipo de sistemas de información y aplicables a infinidad de áreas: negocios, investigación científica, medicina, producción, logística, banca, control de tráfico, meteorología, derecho, Internet, Intranet, etc.
Una definición precisa aún no ha sido contemplada, sin embargo se pueden citar las enunciadas por algunos de los más prestigiosos autores en la disciplina:
  • Ingeniería de Software es el estudio de los principios y metodologías para el desarrollo y mantenimiento de sistemas software (Zelkovitz, 1978).
  • Ingeniería de Software es la aplicación práctica del conocimiento científico al diseño y construcción de programas de computadora y a la documentación asociada requerida para desarrollar, operar y mantenerlos. Se conoce también como Desarrollo de Software o Producción de Software (Bohem, 1976).
  • Ingeniería de Software trata del establecimiento de los principios y métodos de la ingeniería a fin de obtener software de modo rentable, que sea fiable y trabaje en máquinas reales (Bauer, 1972).

Es la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento del software: es decir la aplicación de la ingeniería al software.


Implicaciones Socioeconómicas.

La ingeniería de software afecta a la economía y las sociedades de variadas formas.

Económicamente

Ejemplo:
En los EEUU, el software contribuyó a 1/8 de todo el incremento del PIB (Producto Bruto Interno) durante los 90's (alrededor de 90.000 millones de dólares por año), y 1/9 de todo el crecimiento de productividad durante los últimos años de la década (alrededor de 33.000 millones de dólares por año). La ingeniería de software contribuyó a $1 billón de crecimiento económico y productividad en esa década.
Alrededor del globo, el software contribuye al crecimiento económico en formas similares, aunque es difícil de encontrar estadísticas precisas del fenómeno, pues solo en algunos países se realizan estudios fiables del mismo.
Además, la ingeniería de software, con la industria del lenguaje está hallando cada vez más campos de aplicación a escala global.

Socialmente

La ingeniería de software cambia la cultura del mundo debido al extendido uso de la computadora. El correo electrónico (E-mail), la WWW y la mensajería instantánea permiten a la gente interactuar en nuevas formas. El software baja el costo y mejora la calidad de los servicios de salud, los departamentos de bomberos, las dependencias gubernamentales y otros servicios sociales. Los proyectos exitosos donde se han usado métodos de ingeniería de software incluyen a:
  • El proyecto GNU/Linux.
  • El software del transbordador espacial.
  • Los cajeros automáticos y muchos otros.

La IS se puede considerar como la ingeniería aplicada al software, esto es, por medios sistematizados y con herramientas preestablecidas, la aplicación de ellos de la forma más eficiente para la obtención de resultados óptimos; objetivos que siempre busca la ingeniería. No es sólo de la resolución de problemas, sino más bien teniendo en cuenta las diferentes soluciones, elegir la más apropiada. 

Metodología

Un objetivo de décadas ha sido el encontrar procesos y metodologías, que sean sistemáticas, predecibles y repetibles, a fin de mejorar la productividad en el desarrollo y la calidad del producto software.


Etapas del proceso

La ingeniería de software requiere llevar a cabo numerosas tareas, dentro de etapas como las siguientes:

1. Análisis de requisitos
Extraer los requisitos de un producto de software es la primera etapa para crearlo. Mientras que los clientes piensan que ellos saben lo que el software tiene que hacer, se requiere de habilidad y experiencia en la ingeniería de software para reconocer requisitos incompletos, ambiguos o contradictorios. El resultado del análisis de requisitos con el cliente se plasma en el documento ERS, Especificación de Requerimientos del Sistema. Asimismo, se define un DER Diagrama de Entidad/Relación, en el que se plasman las principales entidades que participarán en el desarrollo del software.

La captura, análisis y especificación de requisitos (incluso pruebas de ellos), es una parte crucial; de esta etapa depende en gran medida el logro de los objetivos finales.

2. Especificación
La Especificación de Requisitos describe el comportamiento esperado en el software una vez desarrollado. Gran parte del éxito de un proyecto de software radicará en la identificación de las necesidades del negocio (definidas por la alta dirección), así como la interacción con los usuarios funcionales para la recolección, clasificación, identificación, priorización y especificación de los requisitos del software.

3. Arquitectura
La integración de infraestructura, desarrollo de aplicaciones, bases de datos y herramientas gerenciales, requieren de capacidad y liderazgo para poder ser conceptualizados y proyectados a futuro, solucionando los problemas de hoy. El rol en el cual se delegan todas estas actividades es el del Arquitecto. El Arquitecto de Software es la persona que añade valor a los procesos de negocios gracias a su valioso aporte de soluciones tecnológicas. La Arquitectura de Sistemas en general, es una actividad de planeación, ya sea a nivel de infraestructura de red y hardware, o de Software. La Arquitectura de Software consiste en el diseño de componentes de una aplicación (entidades del negocio), generalmente utilizando patrones de arquitectura. El diseño arquitectónico debe permitir visualizar la interacción entre las entidades del negocio y además poder ser validado, por ejemplo por medio de diagramas de secuencia. Un diseño arquitectónico describe en general el cómo se construirá una aplicación de software. Para ello se documenta utilizando diagramas.

4. Programación
Reducir un diseño a código puede ser la parte más obvia del trabajo de ingeniería de software, pero no necesariamente es la que demanda mayor trabajo y ni la más complicada. La complejidad y la duración de esta etapa está íntimamente relacionada al o a los lenguajes de programación utilizados, así como al diseño previamente realizado.

5. Prueba
Consiste en comprobar que el software realice correctamente las tareas indicadas en la especificación del problema (etapa de especificaciones). Una técnica de prueba es probar por separado cada módulo del software, y luego probarlo de forma integral, para así llegar al objetivo.

Se considera una buena práctica el que las pruebas sean efectuadas por alguien distinto al desarrollador que la programó, idealmente un área de pruebas; sin perjuicio de lo anterior el programador debe hacer sus propias pruebas.

En general hay dos grandes formas de organizar un área de pruebas:
  1. El primer enfoque es que esté compuesta por personal inexperto y que desconozca el tema de pruebas, de esta forma se evalúa que la documentación entregada sea de calidad, que los procesos descritos son tan claros que cualquiera puede entenderlos y el software hace las cosas tal y como están descritas.
  2. El segundo enfoque es tener un área de pruebas conformada por programadores con experiencia, personas que saben sin mayores indicaciones en qué condiciones puede fallar una aplicación y que pueden poner atención en detalles que personal inexperto no consideraría.

6.    Documentación
Todo lo concerniente a la documentación del propio desarrollo del software y de la gestión del proyecto, pasando por modelaciones, diagramas, pruebas, manuales de usuario, manuales técnicos, etc.; todo con el propósito de eventuales correcciones, usabilidad, mantenimiento futuro y ampliaciones al sistema.

7.  Mantenimiento

Mantener y mejorar el software para enfrentar errores descubiertos y nuevos requisitos.

Esto puede llevar más tiempo incluso que el desarrollo inicial del software. Alrededor de 2/3 de toda la ingeniería de software tiene que ver con dar mantenimiento. Una pequeña parte de este trabajo consiste en arreglar errores, o bugs. La mayor parte consiste en extender el sistema para hacer nuevas cosas.

Modelos de desarrollo de Software

La ingeniería de software tiene varios modelos, paradigmas o filosofías de desarrollo en los cuales se puede apoyar para la realización de software, de los cuales podemos destacar a éstos por ser los más utilizados y los más completos:
  • Modelo en cascada o Clásico (modelo tradicional)


  • Modelo de prototipos


  • Modelo en espiral (modelo evolutivo)


  • Desarrollo por etapas



  • Desarrollo iterativo y creciente o Iterativo e Incremental



Naturaleza de la Ingeniería del Software

La Ingeniería de Software tiene que ver con varios campos en diferentes formas:

1. Matemáticas
Los programas tienen muchas propiedades matemáticas. Por ejemplo la corrección y la complejidad de muchos algoritmos son conceptos matemáticos que pueden ser rigurosamente probados. El uso de matemáticas en la IS es llamado métodos formales.

2. Creación
Los programas son construidos en una secuencia de pasos. El hecho de definir propiamente y llevar a cabo estos pasos, como en una línea de ensamblaje, es necesario para mejorar la productividad de los desarrolladores y la calidad final de los programas. Este punto de vista inspira los diferentes procesos y metodologías que encontramos en la IS.

3. Gestión de Proyectos
El software comercial (y mucho no comercial) requiere gestión de proyectos. Hay presupuestos y establecimiento de tiempos. Gente para liderar. Recursos (espacio de oficina, computadoras) por adquirir. Todo esto encaja apropiadamente con la visión de la Gestión de Proyectos.

4. Arte
Los programas contienen muchos elementos artísticos. Las interfaces de usuario, la codificación, etc. Incluso la decisión para un nombre de una variable o una clase. Donald Knuth es famoso porque ha argumentado que la programación es un arte.


Responsabilidad

La responsabilidad en la Ingeniería del Software es un concepto complejo, sobre todo porque al estar los sistemas informáticos fuertemente caracterizados por su complejidad, es difícil apreciar sus consecuencias.

En la Ingeniería del Software la responsabilidad será compartida por un grupo grande de personas, que comprende desde el ingeniero de requisitos, hasta el arquitecto software, y contando con el diseñador, o el encargado de realizar las pruebas. Por encima de todos ellos destaca el director del proyecto. El software demanda una clara distribución de la responsabilidad entre los diferentes roles que se dan en el proceso de producción.

El ingeniero del Software tiene una responsabilidad moral y legal limitada a las consecuencias directas, esa formación se da a través de una educación ética.

Educación Ética

Existen muchas organizaciones con y sin fines de lucro, gubernamentales y de profesionales que se dedican a la normalización y estandarización del software.

Organizaciones
  • Software Engineering Institute (SEI)
  • Association for Computing Machinery (ACM)
  • British Computer Society (BCS)
  • IEEE Computer Society
  • RUSSOFT Association
  • Society of Software Engineers