Está en la página 1de 5

SISTEMAS I. UNIDAD I PRINCIPIOS DEONTOLOGICO DEL ANALISTA.

Definicin: Es el conjunto de tcnicas y procedimientos que nos permiten conocer los elementos necesarios para definir un proyecto de software. Es la etapa ms crucial del desarrollo de un proyecto de software. La IEEE los divide en funcionales y no funcionales: Funcionales: Condicin o capacidad de un sistema requerida por el usuario para resolver un problema o alcanzar un objetivo. No Funcionales: Condicin o capacidad que debe poseer un sistema para satisfacer un contrato, un estndar, una especificacin u otro documento formalmente impuesto. Para realizar bien el desarrollo de software es esencial realizar una especificacin completa de los requerimientos de los mismos. Independientemente de lo bien diseado o codificado que est, un programa pobremente especificado decepcionar al usuario y har fracasar el desarrollo. La tarea de anlisis de los requerimientos es un proceso de descubrimiento y refinamiento, El mbito del programa, establecido inicialmente durante la ingeniera del sistema, es refinado en detalle. Se analizan y asignan a los distintos elementos de los programas las soluciones alternativas. Tanto el que desarrolla el software como el cliente tienen un papel activo en la especificacin de requerimientos. El cliente intenta reformular su concepto, algo nebuloso, de la funcin y comportamiento de los programas en detalles concretos, El que desarrolla el software acta como interrogador, consultor y el que resuelve los problemas. El anlisis y especificacin de requerimientos puede parecer una tarea relativamente sencilla, pero las apariencias engaan. Puesto que el contenido de comunicacin es muy alto, abundan los cambios por mala interpretacin o falta de informacin. El dilema con el que se enfrenta un ingeniero de software puede ser comprendido repitiendo la esentencia de un cliente annimo: S que crees que comprendes lo que piensas que he dicho, pero no estoy seguro de que lo que creste or sea lo que yo quise decir. ANLISIS DE REQUERIMIENTO. El anlisis de requerimientos: es la tarea que plantea la asignacin de software a nivel de sistema y el diseo de programas (Figura 1). El anlisis de requerimientos facilita al ingeniero de sistemas especificar la funcin y comportamiento de los programas, indicar la interfaz con otros elementos del sistema y establecer las ligaduras de diseo que debe cumplir el programa. El anlisis de requerimientos permite al ingeniero refinar la asignacin de software y representar el dominio de la informacin que ser tratada por el programa. El anlisis de requerimientos del diseador, la representacin de la informacin y las funciones que pueden ser traducidas en datos, arquitectura y diseo procedimental. Finalmente, la especificacin de requerimientos suministra al tcnico y al cliente, los medios para valorar la calidad de los programas, una vez que se haya construido 3.-TAREAS DEL ANLISIS El anlisis de requerimientos puede dividirse en cuatro reas: 1.- Reconocimiento del problema 2.- Evaluacin y sntesis 3.- Especificacin 4.- Revisin.

Inicialmente, el analista estudia la especificacin del sistema (si existe) y el plan de proyecto. Es importante comprender el contexto del sistema y revisar el mbito de los programas que se us para generar las estimaciones de la planificacin. A continuacin, debe establecerse la comunicacin necesaria para el anlisis, de forma que se asegure el reconocimiento del problema. Las formas de comunicacin requeridas para el anlisis se ilustran en la Figura 2. El analista debe establecer contacto con el equipo tcnico y de gestin del usuario/cliente y con la empresa que vaya a desarrollar el software. El gestor del programa puede servir como coordinador para facilitar el establecimiento de los caminos de comunicacin. El objetivo del analista es reconocer los elementos bsicos del programa tal como lo percibe el usuario/cliente. La evaluacin del problema y la sntesis de la solucin es la siguiente rea principal de trabajo del anlisis. El analista debe evaluar el flujo y estructura de la informacin, refinar en detalle todas las funciones del programa, establecer las caractersticas de la interfase del sistema y descubrir las ligaduras del diseo, Cada una de las tareas sirven para descubrir el problema de forma que pueda sintetizarse un enfoque o solucin global. Las tareas asociadas con el anlisis y especificacin existen para dar una representacin del programa que pueda ser revisada y aprobada por el cliente. En un mundo ideal el cliente desarrolla una especificacin de requerimientos del software completamente por s mismo. Esto se presenta raramente en el mundo real. En el mejor de los casos, la especificacin se desarrolla conjuntamente entre el cliente y el tcnico. Una vez que se hayan descrito las funcionalidades bsicas, comportamiento, interfase e informacin, se especifican los criterios de validacin para demostrar una comprensin de una correcta implementacin de los programas. Estos criterios sirven como base para hacer una prueba durante el desarrollo de los programas. Para definir las caractersticas y atributos del software se escribe una especificacin de requerimientos formal. Adems, para los casos en los que se desarrolle un prototipo se realiza un manual de usuario preliminar. Puede parecer innecesario realizar un manual de usuario en una etapa tan temprana del proceso de desarrollo, Pero de hecho, este borrador del manual de usuario fuerza al analista a tomar el punto de vista del usuario del software. El manual permite al usuario / cliente revisar el software desde una perspectiva de ingeniera humana y frecuentemente produce el comentario: La idea es correcta pero esta no es la forma en que pens que se podra hacer esto. Es mejor descubrir tales comentarios lo mas tempranamente posible en el proceso. Los documentos del anlisis de requerimiento (especificacin y manual de usuario) sirven como base para una revisin conducida por el cliente y el tcnico. La revisin de los requerimientos casi siempre produce modificaciones en la funcin, comportamiento, representacin de la informacin, ligaduras o criterios de validacin. Adems, se realiza una nueva apreciacin del plan del proyecto de software para determinar si las primeras estimaciones siguen siendo validas despus del conocimiento adicional obtenido durante el anlisis. 4.-PRINCIPIOS DEL ANALISTA. Se desarrollaron varios mtodos de anlisis y especificacin del software. Los investigadores han identificado los problemas y sus causas y desarrollando reglas y procedimientos para resolverlos. Cada mtodo de anlisis tiene una nica notacin y punto de vista. Sin embargo, todos los mtodos de anlisis estn relacionados por un conjunto de principios fundamentales: El dominio de la informacin, as como el dominio funcional de un problema debe ser representado y comprendido. El problema debe subdividirse de forma que se descubran los detalles de una manera progresiva (o jerrquica) Deben desarrollarse las representaciones lgicas y fsicas del sistema. Aplicando estos principios, el analista enfoca el problema sistemticamente. Se examina el dominio de

la informacin de forma que pueda comprenderse su funcin mas completamente. La particin se aplica para reducir la complejidad. La visin lgica y fsica del software, es necesaria para acomodar las ligaduras lgicas impuestas por los requerimientos de procesamiento, y las ligaduras fsicas impuestas por otros elementos del sistema. 6.- El dominio de la Informacin Todas las aplicaciones del software pueden colectivamente llamarse procesamiento de datos. Este trmino contiene la clave de lo que entendemos por requerimientos del software. El software se construye para procesar datos; para transformar datos de una forma a otra; esto es, para aceptar entrada, manipularla de alguna forma y producir una salida. Este establecimiento fundamental de los objetivos es verdad tanto si construimos software por lotes para un sistema de nominas, como software empotrado en tiempo real para controlar el flujo de la gasolina de un motor de automvil; el dominio de la informacin contiene tres visiones diferentes de los datos que se procesan por los programas de computadoras: 1) el flujo de informacin; 2) el contenido de la informacin y 3) la estructura de la informacin. Para comprender completamente el dominio de la informacin, deben considerarse cada una de estas tres partes. El flujo de la informacin representa la manera en la que los datos cambian conforme pasan a travs de un sistema. Refirindonos a la Figura 3, la entrada se transforma en datos intermedios y ms adelante se transforma en la salida. 7.-PARTICION Normalmente los problemas son demasiado grandes y complejos para ser comprendidos como un todo. Por esta razn, tendemos a particionar (dividir) tales problemas en partes que puedan ser fcilmente comprendidas, y establecer interfases entre las partes, de forma que se realice la funcin global. Durante el anlisis de requerimientos, el dominio funcional y el dominio de la informacin del software pueden ser particionados. En esencia la particin descompone un problema en sus partes constituyentes. Conceptualmente, establecemos una representacin jerrquica de la funcin o informacin y luego partimos el elemento superior mediante: 1) incrementando los detalles, movindonos verticalmente en la jerarqua, o 2) descomponiendo funcionalmente el problema, movindonos horizontalmente en la jerarqua. 8.-VISIONES LGICAS Y FISICAS La visin lgica de los requerimientos del software presenta las funciones que han de realizarse y la informacin que ha de procesarse independientemente de los detalles de implementacin. La visin fsica de los requerimientos del software presenta una manifestacin del mundo real de las funciones de procesamiento y las estructuras de informacin. En algunos casos se desarrolla una representacin fsica como el primer paso del diseo del software. Sin embargo la mayora de los sistemas basados en computador, se especifican de forma que se dictan ciertas recomendaciones fsicas 9.-CONSTRUCCION DE PROTOTIPOS DE SOFTWEAR En anlisis debe ser conducido independientemente del paradigma de ingeniera de software aplicado. Sin embargo, la forma que ese anlisis tomara puede variar. En algunos casos es posible aplicar los principios de anlisis fundamental y derivar a una especificacin en papel del software desde el cual pueda desarrollarse un diseo. En otras situaciones, se va a una recoleccin de los requerimientos, se aplican los principios de anlisis y se construye un modelo de software, llamado un prototipo, segn las apreciaciones del cliente y del que lo desarrolla. Finalmente, hay circunstancias que requieren la construccin de un prototipo al comienzo del anlisis, puesto que el modelo es el nico mediante el que los requerimientos pueden ser derivados efectivamente. INTRODUCCION AL CICLO DE VIDA DE SISTEMAS. El ciclo clsico consta de las siguientes etapas: 1- Reconocimiento del problema 2- Estudio de factibilidad 3- Anlisis 4- Diseo 5- Implementacin (Codificacin) 6- Prueba

7- Mantenimiento Analicemos cada una de las partes que conforman el ciclo de vida: Reconocimiento del problema: La idea de desarrollar un nuevo sistema surge cuando el usuario reconoce que tiene problemas con los medios con que cuenta actualmente para llevar a cabo su trabajo. As comienza esta fase que trata de reemplazar el sistema existente (ya sea manual o automatizado) por otro. En esta fase interviene totalmente el usuario. Estudio de la factibilidad: Se decide si el usuario necesita o no una computadora. Este estudio sirve para: - Identificar los problemas con el sistema actual. - Identificar el alcance del sistema a ser estudiado. - Identificar los principales objetivos del nuevo sistema. - Identificar un nmero de soluciones que pueden satisfacer las necesidades del usuario dentro de su esquema. - Desarrollar estimados de los beneficios y desventajas de cada solucin. - Desarrollar esquemas de cmo puede llevarse a cabo el proyecto teniendo una idea de los recursos que se requieren. - Obtener puntos de vista del usuario y el administrador sobre las modificaciones. - Obtener una decisin de si se lleva a cabo la parte de anlisis. Todo este estudio evitar el gasto de un anlisis de un proyecto imposible. En l intervienen el usuario y el analista. Anlisis: Es la fase de diseo externo. Consiste en cuestionar al usuario sobre qu hace el sistema, qu caractersticas extras l quiere en su nuevo sistema y qu restricciones debe satisfacer. La salida del anlisis debe incluir una especificacin funcional y un anlisis estructurado que contiene los requerimientos para el nuevo sistema, los cuales el usuario debe leer, analizar y sealar lo que l quiere. Diseo: Es la fase de diseo interno. Consiste en definir cmo organizar lo anterior de forma adecuada para la ejecucin. Incluye la realizacin de diagramas de estructura, explicaciones del programa, etc.... (diseo preliminar). Posteriormente se lleva a cabo un diseo detallado donde se describen las especificaciones de los mdulos. Implementacin: Es la fase de programacin o escritura del cdigo. Lo que se produce en el diseo se lleva a cdigo. Prueba: En esta etapa se planea el diseo de casos de prueba con el fin de "asegurar" la correctitud de los programas.

Ingeniera de software es la disciplina o rea de la Ingeniera que ofrece mtodos y tcnicas para desarrollar y mantener software. La creacin del software es un proceso intrnsecamente creativo y la Ingeniera del Software trata de sistematizar este proceso con el fin de acotar el riesgo del fracaso en la consecucin del objetivo creativo por medio de diversas tcnicas que se han demostrado adecuadas en base a la experiencia previa. Esta ingeniera trata con reas muy diversas de la informtica y de las ciencias de la computacin, tales como construccin de compiladores, sistemas operativos, o desarrollos Intranet/Internet, abordando todas las fases del ciclo de vida del desarrollo de cualquier tipo de sistemas de informacin y aplicables a infinidad de reas: negocios, investigacin cientfica, medicina, produccin, logstica, banca, control de trfico, meteorologa, derecho, Internet, Intranet, etc. Una definicin precisa an no ha sido contemplada en los diccionarios, sin embargo se pueden citar las enunciadas por algunos de los ms prestigiosos autores: Ingeniera de Software es el estudio de los principios y metodologas para el desarrollo y mantenimiento de sistemas software (Zelkovitz, 1978) Ingeniera de software es la aplicacin prctica del conocimiento cientfico al diseo y construccin de programas de computadora y a la documentacin asociada requerida para desarrollar, operar y mantenerlos. Se conoce tambin como Desarrollo de Software o Produccin de Software ( Bohem, 1976). Ingeniera de Software trata del establecimiento de los principios y mtodos de la ingeniera a fin de obtener software de modo rentable, que sea fiable y trabaje en mquinas reales (Bauer, 1972).

Es la aplicacin de un enfoque sistemtico, disciplinado y cuantificable al desarrollo, operacin y mantenimiento del software; es decir, la aplicacin de la ingeniera al software (IEEE, 1993).

En el 2004, en los Estados Unidos, la Oficina de Estadsticas del Trabajo (U. S. Bureau of Labor Statistics) cont 760.840 ingenieros de software de computadora.1 El trmino "ingeniero de software", sin embargo, se utiliza en forma genrica en el ambiente empresarial, y no todos los ingenieros de software poseen realmente ttulos de Ingeniera de universidades reconocidas. Algunos autores consideran que Desarrollo de Software es un trmino ms apropiado que Ingeniera de Software (IS) para el proceso de crear software. Personas como Pete McBreen (autor de "Software Craftmanship") cree que el trmino IS implica niveles de rigor y prueba de procesos que no son apropiados para todo tipo de desarrollo de software. Indistintamente se utilizan los trminos Ingeniera de Software o Ingeniera del Software. En Hispanoamrica el trmino usado normalmente es el primero de ellos.

También podría gustarte