Download NOMBRE: DIANA VASCONEZ NOLIVOS MATERIA: TECN. DE
Document related concepts
Transcript
NOMBRE: DIANA VASCONEZ NOLIVOS MATERIA: TECN. DE INFORMACION PROFESORA: KATHY LAGOS ORTIZ FECHA: 07-10-2013 Que tipos de software hay y como se clasifican? Podemos encontrar distintos tipos de software, hay desde una clasificación básica hasta una avanzada, por el momento veremos la básica para no entrar demasiado en el tema e ir a lo que queremos. Software básico o de Sistema: es aquel que permite a los usuarios interactuar con el sistema operativo así como también controlarlo. Este sistema está compuesto por una serie de programas que tienen como objetivo administrar los recursos del hardware y, al mismo tiempo, le otorgan al usuario una interfaz. El sistema operativo permite facilitar la utilización del ordenador a sus usuarios ya que es el que le da la posibilidad de asignar y administrar los recursos del sistema, como ejemplo de esta clase de software se puede mencionar a Windows, Linux y Mac OS X, entre otros. Además de los sistemas operativos, dentro del software de sistema se ubican las herramientas de diagnóstico, los servidores, las utilidades, los controladores de dispositivos y las herramientas de corrección y optimización, etcétera. Es el software que nos permite tener una interacción con nuestro hardware, es decir, es el sistema operativo. Dicho sistema es un conjunto de programas que administran los recursos del hardware y proporciona una interfaz al usuario. Es el software esencial para una computadora, sin el no podría funcionar, como ejemplo tenemos a Windows, Linux, Mac OS X. Se clasifica en: Sistemas operativos Controladores de dispositivo Herramientas de diagnóstico Herramientas de Corrección y Optimización Servidores Utilidades Sistemas operativos: EcomStation MacOSX Solaris Windows Cristal BSD Minix Be OS MS_Dos OS/2 AmigaOS XiniXZ sco unix hpux as400 Software de Programación o desarrollo : son aquellas herramientas que un programador utiliza para poder desarrollar programas informáticos. Para esto, el programador se vale de distintos lenguajes de programación. Como ejemplo se pueden tomar compiladores, programas de diseño asistido por computador, paquetes integrados, editores de texto, enlazadores, depuradores, intérpretes, entre otros. Es un conjunto de aplicaciones que permiten a un programador desarrollar sus propios programas informáticos haciendo uso de sus conocimientos lógicos y lenguajes de programación. Algunos ejemplos: Editores de texto Compiladores Intérpretes Enlazadores Depuradores Entornos de Desarrollo Integrados (IDE) Editores de texto (Pascal, Edit de MS-DOS) Compiladores (C, C++, Visual basic, Fortran, Cobol) Intérpretes (Ensamblador, Java) Enlazadores (Oracle, Circle) Depuradores (GNU Debugger (gdb), SoftICE ) Entornos de Desarrollo Integrados ó IDE (NetBean, Visual Basic) Software de Aplicación: aquí se incluyen todos aquellos programas que permiten al usuario realizar una o varias tareas específicas. Aquí se encuentran aquellos programas que los individuos usan de manera cotidiana como: procesadores de texto, hojas de cálculo, editores, telecomunicaciones, software de cálculo numérico y simbólico, videojuegos, entre otros. Ejemplos de software de aplicación: Aplicaciones de Sistema de control y automatización industrial (Cibermatrix) Aplicaciones ofimáticas (Office, Word, Excel) Software educativo (Clic, GCompris, PLATO) Software médico (Cardiactrex X/70) Software de Cálculo Numérico (Excel, COI, NOI, SAE) Software de Diseño Asistido ó CAD (AutoCad) Software de Control Numérico ó CAM (CAM350, Gerbtool ) Además existen otros tipos de ejemplos de software de acuerdo a su utilidad o uso que se ocupan, como son los: software de sistemas, software de inteligencia artificial, software de tiempo real, software de gestión, software de ingeniería y científico, software de empotrado. Software de Aplicación: aquí se incluyen todos aquellos programas que permiten al usuario realizar una o varias tareas específicas. Aquí se encuentran aquellos programas que los individuos usan de manera cotidiana como: procesadores de texto, hojas de cálculo, editores, telecomunicaciones, software de cálculo numérico y simbólico, videojuegos, entre otros.Son los programas que nos permiten realizar tareas especificas en nuestro sistema. A diferencia del software de sistema, el software de aplicación esta enfocada en un área especifica para su utilización. La mayoría de los programas que utilizamos diariamente pertenecen a este tipo de software, ya que nos permiten realizar diversos tipos de tareas en nuestro sistema. Ejemplos: Procesadores de texto. (Bloc de Notas) Editores. (Photoshop para el Diseño Gráfico Hojas de Cálculo. (MS Excel) Sistemas gestores de bases de datos. (MySQL) Programas de comunicaciones. (MSN Messenger) Paquetes integrados. (Ofimática: Word, Excel, PowerPoint…) Programas de diseño asistido por computador. (AutoCAD) Los clasificamos en: Aplicaciones de Sistema de control y automatización industrial Aplicaciones ofimáticas Software educativo Software médico Software de Cálculo Numérico Software de Diseño Asistido (CAD) Software de Control Numérico (CAM) Los Procesadores de texto como Word, Bloc de Notas. Editores de imágenes como Adobe Fireworks, o Adobe Photoshop. Sistemas Administradores de Bases de Datos (Oracle, SQL Server, Informix). Editores de Páginas Web, Adobe Dreamweaver. Editores de Lenguaje de programación Visual Studio PHP Edit. Programas de Contabilidad como Contavisión. Programas de Administración de Empresas como ASPEL o SAP. Programas de Gestión de relaciones con clientes como los CRM’s. Programas de Gestión de proyectos como MS Project. Programas de Diseño asistido por computadora como Auto CAD. FASES DE LIBERACIÓN DEL SOFTWARE Etapas de Liberación de Software Cada versión importante de un software pasa por varias etapas o fases. Primero se le agregan las nuevas características (etapa alfa), después viene una etapa donde se eliminan errores activamente (etapa beta), y finalmente una etapa en donde se han quitado todos los bugs importantes (etapa estable). Alfa: Es la etapa en la que el equipo de desarrollo implementa todas las funcionalidades especificadas en los requerimientos. Beta: En esta etapa se tiene la primera versión completa del software. Generalmente es muy inestable, y se manda a personas especializadas para las pruebas o se pone a disposición del público en general, donde pueden hacer públicos los errores que encuentran. Candidata a versión definitiva: En esta etapa se tiene la versión final del software, lista para ser lanzada como versión definitiva, aparentemente se encuentra libre de errores. Aquí se implementan todas las funciones del diseño. Dorada: En esta etapa se tiene la versión final del software. Es muy parecida a la candidata a versión final, sólo que contiene correcciones a los errores encontrados en la etapa anterior. Esta versión es la que se le entrega a los usuarios finales. Mantenimiento de software "La definición de “Mantenimiento del Software” del estándar IEEE 1219 es: El mantenimiento del software es la modificación de un producto software después de la entrega para corregir fallos, para mejorar el rendimiento u otros atributos, o para adaptar el producto a un entorno modificado”. [1] El mantenimiento de software consiste en el proceso de mejora y optimización del software desplegado (es decir; revisión del programa), así como también corrección de los defectos. La fase de mantenimiento de software involucra cambios al software en orden de corregir defectos y dependencias encontradas durante su uso tanto como la adición de nueva funcionalidad para mejorar la usabilidad y aplicabilidad del software. Las personas involucradas en la fase de mantenimiento de software esperan trabajar en los defectos detectados, ubicarlos y preparar un nuevo lanzamiento del software, conocido como un lanzamiento de mantenimiento, el cual resolverá los temas pendientes. Tipos de mantenimiento Perfectivo: Son las acciones llevadas a cabo para mejorar la calidad interna de los sistemas en cualquiera de sus aspectos: reestructuración del código, definición más clara del sistema y optimización del rendimiento y eficiencia. Evolutivo: Son las incorporaciones, modificaciones y eliminaciones necesarias en un software para cubrir la expansión o cambio en las necesidades del usuario. Adaptativo: Son las modificaciones que afectan a los entornos en los que el sistema opera, por ejemplo, cambios de configuración del hardware, software de base, gestores de base de datos, comunicaciones, etc. Correctivo: Son aquellos cambios precisos para corregir errores del software. Para llevar a cabo adecuadamente y lograr el objetivo de liberación de un software, es recomendable seguir una serie de pautas a priori que implican el análisis y estudio de los componentes y del software, teniendo claro, entre otros, elementos como son los sujetos que intervienen así como las licencias a las que están sujetos, y otra serie de pautas a posteriori, encaminadas a la seleccioón de la licencia más adecuada a la que estará sujeta el software liberado, y a la preparación del código para las distribución. La base sobre la que girará toda la acción consistirá en poder hacer accesible el código fuente del programa de ordenador. Por tanto, podemos dividir el procedimiento en tres grandes fases: 1. Estudio y análisis previo 2. Selección de la licencia 3. Preparación del código para la distribución Estudio y análisis previo En esta primera fase, es necesario analizar cuidadosamente elementos clave del software o de los componentes que conforman el mismo, para lo cual se requiere: Identificar el autor o los autores del software: si estamos ante un único creador esto no conlleva mayores dificultades; no obstante, si se trata de una obra creada en colaboración por varios autores diferentes, se pueden presentar ciertas dificultades jurídicas añadidas: o Si las aportaciones de los distintos creadores se ha realizado mediante una relación laboral con un tercero, ya sea persona física o jurídica, salvo pacto en contrario se entienden cedidos los derechos de propiedad intelectual de los primeros al empleador. o Si las aportaciones provienen de freelance o autónomos, es necesario que el interesado en la liberación cuente con la cesión de los derechos sobre sus aportaciones. Además esta cesión debe cumplir con las siguientes particularidades: o Que la cesión sea expresa y conste por escrito; o Que la cesión sea exclusiva: es la única forma de garantizar al interesado que puede realizar la explotación tal y como quiere; o Que sea para todo el mundo y por todo el período de protección de copyright (en la Unión Europea corresponde a toda la vida del autor más setenta años después de su muerte); o Que sea para cualquier modalidad de explotación, soporte o formato. Este criterio es también de aplicación cuando se subcontrata parte del desarrollo de un software a una empresa externa, que funciona como proveedor.