Está en la página 1de 13

A. Anlisis de Sistemas A 1.

Definicin de la situacin problemtica por solucionar con aplicaciones computacionales Realizar un anlisis preliminar de los sistemas de la organizacin Modelo de Negocio: Muestra la funcionalidad completa de la empresa. * Venta | Solo es uno de los procesos, atiende a un carcter temporal. *Plan de Contingencia | Es tomado como una medida de seguridad *Marketing | Es solo uno de los procesos, atiende un carcter temporal. Generar un diagnstico de la situacin actual de los sistemas de la organizacin Anlisis FODA Factor Interno a la Organizacin | Fortalezas y Debilidades Factor Externo a la Organizacin | Oportunidades y Amenazas Identificar los problemas a solucionar con aplicaciones computacionales Anlisis de problemas | Razonamiento Comn A 2. Elaboracin de estudios de factibilidad para el desarrollo de aplicaciones computacionales Comparar alternativas de solucin (productos comerciales o desarrollos a la medida) mediante estudios de factibilidad Estudio de Factibilidad Definir un marco de tiempo de la solucin Determinar si se requieren recursos de informacin o es la solucin ptima para las necesidades del negocio Determinar si un sistema existente puede corregir la situacin sin modificaciones. Determinar si un producto del mercado ofrece una solucin Determinar el costo/beneficio aproximado Determinar si la solucin encaja la estrategia de negocio Benchmarking | Puede definirse como un proceso sistemtico y continuo para evaluar comparativamente los productos, servicios y procesos de trabajo en organizaciones. Consiste en tomar "comparadores" o benchmarks a aquellos productos, servicios y procesos de trabajo que pertenezcan a organizaciones que evidencien las mejores prcticas sobre el rea de inters, con el propsito de transferir el conocimiento de las mejores prcticas y su aplicacin. Costo beneficio | El proceso involucra, ya sea explcita o implcitamente, un peso total de los gastos previstos en contra del total de los beneficios previstos de una o ms acciones con el fin de seleccionar la mejor opcin o la ms rentable. El coste-beneficio es una lgica o razonamiento basado en el principio de obtener los mayores y mejores resultados al menor esfuerzo invertido, tanto por eficiencia tcnica como por motivacin humana. Se supone que todos los hechos y actos pueden evaluarse bajo esta lgica, aquellos dnde los beneficios superan el coste son exitosos, caso contrario fracasan. La informacin proporcionada est asociada al costo de las propuestas. Anlisis operativo | Realizar un diagnstico de las operaciones, detallando las oportunidades de mejora existentes. Valorar el impacto econmico que tendran en la cuenta de resultados. Elaborar un plan de accin para cada una de las oportunidades identificadas, adecuando el desarrollo del mismo a las necesidades y disponibilidad de la organizacin para conseguir la involucracin del personal en la consecucin de esas mejoras. Incorrecta. La informacin proporcionada no da elementos para establecer la factibilidad operativa del sistema. Anlisis tcnico | El Analista evala los principios tcnicos del Sistema y al mismo tiempo recoge informacin adicional sobre el rendimiento, fiabilidad, caractersticas de mantenimiento y productividad. Los resultados obtenidos del anlisis tcnico son la base para determinar sobre si continuar o abandonar el proyecto, si hay riesgos de que no funcione, no tenga el rendimiento deseado, o si las piezas no encajan perfectamente unas con otra. Incorrecta. La informacin proporcionada no es de tipo tcnica. Elaborar propuestas de aplicaciones computacionales para solucionar la problemtica detectada en la organizacin Ciclo de Vida del Desarrollo de Sistemas

Elementos que deben incluirse en la propuesta de sistema | Requerimiento de hardware, Estudios de factibilidad, Alance del proyecto, Duracin del Proyecto

A 3. Determinacin de requerimientos del sistema computacional Realizar un anlisis de requerimientos Pasos necesarios para preparar una entrevista para la obtencin de los requerimientos de una aplicacin computacional. 1. Leer los antecedentes | Conocer los antecedentes de la organizacin; Leer y entender tanto como sea posible los antecedentes de los entrevistados y su organizacin. Con frecuencia este material se puede obtener del sitio Web corporativo, de un informe anual actual, de un boletn corporativo o de cualquier publicacin que explique el estado de la organizacin.

2.

3. 4. 5.

Establecer los objetivos de la entrevista | Utilice los antecedentes que haya recopilado as como su propia experiencia para establecer los objetivos de la entrevista. Debe haber de cuatro a seis reas clave referentes al procesamiento de la informacin y el comportamiento relacionado con la toma de decisiones acerca de las cuales tendr usted que hacer preguntas. Estas reas incluyen fuentes de informacin, formatos de informacin, frecuencia de la toma de decisiones, cualidades de la informacin y estilo de la toma de decisiones. Decidir a quin entrevistar | Cuando tenga que decidir a quin entrevistar, incluya a gente clave de todos los niveles que vayan a ser afectadas por el sistema de alguna manera. Esfurcese por conseguir el equilibrio de tal manera que atienda las necesidades de tantos usuarios como sea posible. Su persona de contacto en la organizacin tambin tendr algunas ideas sobre quin deba ser entrevistado. Preparar al entrevistado | Prepare a la persona que va a ser entrevistada hablndole por anticipado o envindole un mensaje de correo electrnico y dndole tiempo para pensaren la entrevista. Decidir el tipo de preguntas y la estructura | Escriba preguntas que abarquen las reas clave de la toma de decisiones que haya descubierto al determinar los objetivos de la entrevista. Las tcnicas apropiadas para preguntar son el corazn de la entrevista. Las preguntas tienen algunas formas bsicas que usted debe conocer. Los dos tipos bsicos de preguntas son las abiertas y las cerradas.

Validar los requerimientos identificados Para obtener una descripcin correcta de las necesidades del usuario, los requerimientos deben ser consistentes, ntegros o completos, verificables y entendibles Documentar los requerimientos identificados * Definicin de Casos de Uso

Diagrama de Componentes Muestra la interaccin entre elementos lgicos del sistema.

Diagrama de colaboracin. Muestra las relaciones entre clases y objetos del sistema.

Diagrama de Interactividad. Muestra los mensajes entre los objetos del sistema

Diagrama de Caso de Uso. Representa las actividades que realizar un usuario (actor) con el sistema.

B. Desarrollo e implantacin de aplicaciones computacionales B 1. Disear la solucin del problema de tecnologa de informacin Elaborar el modelo inicial de la solucin del problema de tecnologa de informacin Modelo en Cascada: Este modelo no tiene la posibilidad de incluir los cambios requeridos, Consideras las actividades fundamentales del proceso de especificacin, desarrollo, validacin y evolucin, y los representa como fases separadas del proceso, tales como la especificacin de requerimientos, el diseo de software, la implementacin, las pruebas, etc. 1. Anlisis y definicin de requerimientos | Consultas con usuarios y especificacin del sistema 2. Diseo del sistema y del software | HW & SW 3. Implementacin y prueba de unidades | Conjunto o unidades de programas 4. Integracin y prueba del sistema | Aseguramiento de los requerimientos y entrega del software 5. Funcionamiento y mantenimiento | Instalacin, correccin de errores y nuevos requerimientos Desarrollo Evolutivo: Este enfoque entrelaza las actividades de especificacin, desarrollo y la validacin. Un sistema inicial se desarrolla rpidamente a partir de especificaciones abstractas. Este se refina basndose en las peticiones del cliente para producir un sistema que satisfaga sus necesidades. *Diferentes versiones hasta que se desarrolla un sistema adecuado. 1. Desarrollo exploratorio | Trabajar con el cliente para explorar requerimientos y entregar el sistema final, empezando con las partes del sistema mejor entendidas. 2. Prototipos desechables | Este modelo contempla ajustes en funcin de un modelo ya implementado, Comprender los requerimientos del cliente y entonces desarrollar una definicin mejorada de los requerimientos para el sistema, experimentar con los requerimientos del cliente que no se comprenden del todo. Ingeniera de Software basada en Componentes: Este enfoque se basa en la existencia de un nmero significativo de componentes reutilizables. El proceso de desarrollo del sistema se enfoca en integrar estos componentes en el sistema ms que en desarrollarlos desde cero. 1. Anlisis de Componentes | identificacin de los componentes y la funcionalidad requerida. 2. Modificacin de requerimientos | Anlisis de la informacin obtenida de los componentes. 3. Diseo del sistema con reutilizacin | Reutilizacin y organizacin de componentes. 4. Desarrollo e integracin | Desarrollo interno de los componentes del sistema. Iteracin de procesos 1. Entrega incremental | Este modelo va orientado a aumentar las funcionalidades no a modificarlas, la especificacin, el diseo y la implementacin del software se dividen en una serie de incrementos, los cuales se desarrollan por turnos.

2.

Desarrollo espiral | Porque este modelo contempla ajustes evolutivos en el proceso, el desarrollo del sistema gira en espiral hacia afuera, empezando con un esbozo inicial y terminando con el desarrollo final del mismo.

Adecuar el modelo de la solucin de tecnologa de informacin Diagrama de flujo | Esta es una herramienta que se utiliza en general para modelar todo tipo de sistemas concentrndose en las funciones que se realizan y los datos de entrada y salida de las funciones; adems no ofrecen datos relacionados con el tiempo. Diagrama de transicin de estados | Este tipo de herramientas se utilizan para el modelado de sistemas de tiempo real dado que los estados representan el comportamiento del sistema en un tiempo. Pruebas | En las pruebas se verifica y valida que un software realiza las funciones para las que fue diseado. o Pruebas de caja negra | Estas pruebas no ofrecen datos relacionados con el tiempo, se denomina caja negra a aquel elemento que es estudiado desde el punto de vista de las entradas que recibe y las salidas o respuestas que produce, sin tener en cuenta su funcionamiento interno. Nos interesar su forma de interactuar con el medio que le rodea. Se refiere a las pruebas que se llevan a cabo sobre la interfaz del software. O sea, los casos de prueba pretenden demostrar que las funciones del software son operativas, que la entrada se acepta de forma adecuada y que se produce un resultado correcto, as como que la integridad de la informacin externa (por ejemplo, archivos de datos) se mantiene. Una prueba de caja negra examina algunos aspectos del modelo fundamental del sistema sin tener mucho en cuenta la estructura lgica interna del software. o Pruebas de caja blanca| Se denomina cajas blancas a un tipo de pruebas de software que se realiza sobre las funciones internas de un mdulo. Se basa en el minucioso examen de los detalles procedimentales. Se comprueban los caminos lgicos del software proponiendo casos de prueba que ejerciten conjuntos especficos de condiciones y/o bucles. Se puede examinar el estado del programa en

varios puntos para determinar si el estado real coincide con el esperado o mencionado; las pruebas de caja blanca son diseadas despus de que exista un diseo de componente (o cdigo fuente). El detalle de la lgica del programa debe estar disponible. o Prueba de caja de cristal | Es un mtodo de diseo de casos de prueba que usa la estructura de control del diseo procedimental para obtener los casos de prueba. Especificacin de procesos | Esta es una herramienta que permite definir que sucede en los procesos o funciones de un sistema; adems no ofrece datos relacionados con el tiempo.

Disear la arquitectura del sistema Arquitectura Centrada en Datos | Se basan en el uso que hacen los componentes de los datos Un almacn de datos se encuentra en el centro de esta arquitectura; otros componentes tiene acceso a l y cuentan con la opcin de actualizar, agregar, eliminar y modificar los datos. Promueve capacidad de integracin, posibilidad de cambiar componentes existentes y agregar nuevos componentes cliente a la arquitectura. Los componentes cliente ejecutan procesos de manera independiente. Arquitectura de Flujo de Datos | Se centran en los componentes y sus interacciones, modelo estructural, Se aplica cuando los datos de entrada se habrn que transformarse en datos de salida mediante una serie de componentes para el clculo o la manipulacin. Tuberas y Filtros, con flujos ascendentes y descendentes. Si el flujo de datos degenera en una sola lnea de transformaciones se denomina procesamiento por lotes secuencial. Arquitectura de Llamada y Retorno | Fcil de modificar y cambiar el tamao. Arquitectura de programa principal/subprograma | Invoca a varios componentes de programa, que a su vez pueden invocar a otros. Arquitectura de llamada de procesamiento remoto | Se distribuyen en varias computadoras de un red. Arquitectura Orientada a Objetos | Se centran en los componentes y sus interacciones, modelo estructural, Los componentes de un sistema encapsulan los datos y las operaciones que deben aplicarse para manipular los datos. La comunicacin y coordinacin entre componentes se consigue mediante el paso de mensajes. Arquitectura Estratificada | Se basan en las funciones lgicas de los componentes, Existen varias capas definidas, cada una de ellas realiza operaciones que se acercan progresivamente al conjunto de instrucciones de la mquina. Capas (GUI, Aplicacin, Utileras, Central). Distribuida | Requiere de dos o ms servidores. Monoltica | En Capas | Implica dividir desde el punto de vista lgico a la aplicacin en capas que agrupan funciones. Orientada a Servicios | Se centra en dividir slo los servicios que ofrece la aplicacin.

Modelar datos para el sistema Modelo de Datos Lgico | Diagrama mostrado est orientado a la descripcin de las operaciones. Modelo de Datos Fsico | Representa estructuras de datos a bajo nivel. Modelo de Datos Conceptual | El diagrama Entidad-Relacin, el cual es un ejemplo del Modelo Conceptual. Modelo de Datos Relacional | Es un Modelo de Datos, es una clasificacin del Modelo de Datos Lgico. Pasos que se requieren para elaborar el diagrama relacional a partir de un diagrama entidad relacin de un modelo de datos 1. Fusionar las entidades con relaciones de cardinalidad uno a uno. 2. Elaborar por cada una de las entidades del diagrama ER una relacin en el diagrama relacional. 3. Reduccin de las relaciones muchos a uno con el paso de llaves. 4. Elaborar por cada una de las relaciones con cardinalidad muchos a muchos una relacin asociativa.

B 2. Desarrollo de sistemas Seleccionar herramientas de desarrollo que resuelvan mejor la problemtica detectada Lenguaje de Alto Nivel | Ada, ALGOL, BASIC, C++, C#, COBOL, Fortran, Java, Lisp, Modula-2, Pascal, Perl, PHP, PL/1, PL/SQL, Python , LISP Se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las mquinas. Se crearon para que el usuario comn pudiese solucionar un problema de procesamiento de datos de una manera ms fcil y rpida. ORIENTADOS A OBJETOS | C++, Objective C, Java, Samalltalk, Eiffel, Lexico, Ruby, Ptyhon, OCAML, Object Pascal, CLIPS, Visual .NET, Actionscript, COBOL, Perl, C#, Visual Basic .NET, PHP, Simula, Delphi, PowerBuilder Lenguaje de Bajo Nivel | Ensamblador, C, Basic Proporciona un conjunto de instrucciones aritmeticolgicas sin la capacidad de encapsular dichas instrucciones en funciones que no estn ya contempladas en la arquitectura del hardware. Licencias para Software Libre | GPL-GNU General Public License, OCL Object Constraint Language, BSD Berkeley Software Distribution Licencias para Software Propietario | EULA End User License Agreement Codificar el sistema Polimorfismo | Permite crear clases distintas que heredan mtodos de una superclase. Abstraccin | Slo es descriptivo a un objeto. Encapsulamiento | Se refiere a la cohesin de los componentes ms que apoyo a la reutilizacin. Ocultacin | Cada objeto es independiente y est oculto de los dems.

Probar la solucin tecnolgica Prueba de Unidad | Slo prueba que un mdulo funcione correctamente en los lmites establecidos como restricciones de procesamiento, Se centra en cada mdulo individualmente, asegurando que funcionan adecuadamente como una unidad. Prueba de Integracin | Prueba que todos los mdulos del sistema funcionen de manera conjunta, se dirige a todos los aspectos asociados con el doble problema de verificacin y de construccin del programa. Prueba de Alto Nivel Prueba de Validacin | proporciona una seguridad final de que el software satisface todos los requisitos funcionales, de comportamiento y de rendimiento (Pruebas de Caja Negra Exclusivamente). Prueba de Sistema | verifica que cada elemento encaja de forma adecuada y que se alcanza la funcionalidad y el rendimiento del sistema tota. Prueba de Usabildad | Slo prueba la interfaz del sistema. Prueba de Especificacin | Slo prueba que la aplicacin contemple todas las especificaciones documentadas. Anlisis de Codigos -> Resultados Adecuar el modelo codificado del sistema Capa de Datos | Esta capa slo contempla los accesos a los datos. Capa de Interfaz de Usuario | Esta capa slo es la interfaz con el usuario. Capa de Negocios | Porque en esta capa se implementan las reglas de operacin de la empresa.

B 3. Implantacin de sistemas Identificar tcnicas de implantacin de sistemas Conversin en Fases | La implantacin de la nueva aplicacin es un proceso gradual que ocurre en varias fases donde partes antiguas son reemplazadas de manera incremental por nuevas partes y a menudo partes nuevas an estn en desarrollo. Conversin Prototipo | En la implantacin prototipo la nueva aplicacin se instala para unos cuantos usuarios quienes lo evalan y ayudan a decidir si cubre los requerimientos establecidos. Conversin Directa | Ocurre una transicin instantnea a la nueva aplicacin y todos comienzan a utilizarla en la misma fecha. La aplicacin antigua deja de ser utilizada de inmediato. Conversin Paralela | Ambas aplicaciones se utilizan de manera paralela por un tiempo para corregir problemas con la nueva aplicacin y con la transferencia de datos. Una vez que la nueva aplicacin cumple con los requerimientos y es totalmente funcional, la aplicacin antigua se descarta. Poner en operacin el sistema Modelos de Implantacin o Fases | La implantacin de la nueva aplicacin es un proceso gradual que ocurre en varias fases donde partes antiguas son reemplazadas de manera incremental por nuevas partes y a menudo partes nuevas an estn en desarrollo. o Distribuida | En la implantacin distribuida se refiere a muchas instalaciones del mismo sistema que son implantadas de manera escalonada. o Gradual | Implica operacin simultnea entre el sistema anterior y el nuevo, cambiando gradualmente el nmero de operaciones entre ambos. o Paralela | Ambas aplicaciones se utilizan de manera paralela por un tiempo para corregir problemas con la nueva aplicacin y con la transferencia de datos. Una vez que la nueva aplicacin cumple con los requerimientos y es totalmente funcional, la aplicacin antigua se descarta. Integrar el producto y los procesos desarrollados Criterios bsicos a utilizar cuando se evala un producto de software | Estabilidad, Confiabilidad y Usabilidad Escalabilidad & Sustentabilidad -> Solo es un criterio a considerar a menos que sea parte de los requerimientos.

B 4. Desarrollo y aplicacin de modelos matemticos Aplicar modelos matemticos computacionales y sus respectivos algoritmos Matemticas Discretas Simular sistemas mediante herramientas computacionales Etapas para realizar un estudio de simulacin: 1. Definicin del sistema | Anlisis preliminar del sistema y determinar interacciones, restricciones, variables e interrelaciones, resultados esperados. 2. Formulacin del modelo | Definir y construir el modelo con el cual se obtendrn los resultados deseados. Variables, Relaciones Lgicas y Diagramas de Flujo. 3. Coleccin de datos | Se definen con exactitud los datos que se van a modelar. Pero an el sistema no ha sido construido. 4. Implementacin del modelo en la computadora | Codificacin del sistema o modelo de simulacin. 5. Validacin | Es donde se pueden detectar deficiencias del modelo o en los datos alimentados en el modelo. 6. Experimentacin | Consiste en generar los datos deseados y en realizar anlisis de sensibilidad de los ndices requeridos. 7. Interpretacin | Se interpretan los resultados de la simulacin y se toma una decisin en base a ello. 8. Documentacin | Documentacin Tcnica y Manual de Usuario (facilita la interaccin y uso del modelo).

C. Gestin de proyectos de tecnologas de informacin C 1. Administracin de proyectos de tecnologas de informacin Administrar los recursos en proyectos de tecnologas de informacin Caractersticas que debe tener el lder 1. Resolucin del problema (Diagnosticar aspectos tcnicos y de organizacin) | Un gestor eficiente de un proyecto de software puede diagnosticar los aspectos tcnicos y de organizacin ms relevantes, estructurar una solucin sistemticamente o motivar apropiadamente a otros profesionales para que desarrollen la solucin, aplicar las lecciones aprendidas de anteriores proyectos a las nuevas situaciones, mantenerse lo suficientemente flexible para cambiar la gestin si los intentos iniciales de resolver el problema no dan resultado. 2. Dotes de gestin (Tomar las riendas) | Un buen gestor de proyectos debe tomar las riendas. Debe tener confianza para asumir el control cuando sea necesario y la garanta para permitir que los buenos tcnicos sigan sus instintos. 3. Incentivos por logros (Recompensar) | Para optimizar la productividad de un equipo de proyecto, un gestor debe recompensar la iniciativa y los logros, y demostrar a travs de sus propias acciones que no se penalizar si se corren riesgos controlados. 4. Influencia y construccin de espritu de equipo | Un gestor de proyecto eficiente debe ser capaz de leer a la gente; debe ser capaz de entender seales verbales y no verbales y reaccionar ante las necesidades de las personas que mandan esas seales. El gestor debe mantener el control en situaciones de gran estrs. Los recursos humanos del equipo de DESARROLLO necesarios del proyecto. | Lder del proyecto, Analista y Programador o El proceso del software (y todos los proyectos de software)lo componen participantes que pueden clasificarse en una de estas cinco categoras: 1. Gestores superiores | que definen los aspectos de negocios que a menudo tienen una significativa influencia en el proyecto. 2. Gestores (tcnicos) del proyecto | que deben planificar, motivar, organizar y controlar a los profesionales que realizan el trabajo de software. 3. Profesionales | que proporcionan las capacidades tcnicas necesarias para la ingeniera de un producto o aplicacin. 4. Clientes | que especifican los requisitos para la ingeniera del software y otros elementos que tienen menor influencia en el resultado. 5. Usuarios finales | que interaccionan con el software una vez que se ha entregado para la produccin. *Para ser eficaz, el equipo del proyecto debe organizarse de manera que maximice las habilidades y capacidades de cada persona. Y este es el trabajo del jefe del equipo. Tipos de modelos de costeo bsicos para la estimacin de un producto de software. 1. Histricos | A menudo se basan en la analoga con otros proyectos parecidos y se fundamentan casi exclusivamente en la experiencia profesional de los que efectan la estimacin. 2. Estadsticos & Estndares | Superan la experiencia histrica de los profesionales que intervinieron en el proyecto y a partir del estudio estadstico de los datos reales obtienen frmulas que relacionan las diferentes unidades de medida del software, a menudo las lneas de cdigo (LOC) y el esfuerzo (generalmente medido en hombre-mes). 3. Base Terica | Parten de una serie de ideas generales sobre el proceso de construccin de software y elaboran frmulas que relacionan diferentes mtricas de software. 4. Compuestos | Consideran los dos sistemas anteriores: estadsticos y tericos. *Herramientas Automticas de Estimacin | Son propiamente una herramienta de software para realizar la estimacin concreta de la estimacin basada en un modelo de estimacin. *Cocomo | Son mtodos de costeo especficos del tipo de modelos basados en estadsticas. *Basados en lneas de cdigos | Son slo una variable ms de mtodo de costeo. Herramientas y Tcnicas para el Control de Costo 1. Sistema de control de cambios en los costos | Un sistema de control de cambios de costos define los procedimientos por medio de los cuales se puede cambiar la base de costos. Este incluye el papeleo, los sistemas de seguimiento, y los niveles de aprobacin necesarios para autorizar los cambios. 2. Medicin del rendimiento / desempeo | Ayudan a evaluar la magnitud de cualquier variacin que llegase a ocurrir. 3. La Gestin del Valor Ganado (GVG) | Es la determinacin de qu est provocando la variacin y la decisin de si dicha modificacin requiere o no de una accin correctiva. deben medir continuamente el rendimiento del proyecto, relacionando tres variables independientes: a. El Valor Planificado | El trabajo fsico que se ha programado realizar, incluido el valor estimado de este trabajo (previamente denominado Costos Presupuestados para el Trabajo Programado [CPTP]). b. El Valor Ganado | El trabajo fsico que realmente se llev a cabo, incluido el valor estimado de este trabajo (previamente denominado Costos Presupuestados para el Trabajo Realizado [CPTR]) y, con (3) los Costos Reales incurridos para lograr el Valor Ganado. La relacin de (2) el Valor Ganado menos (1) el Valor Planificado menos (3) los Costos Reales, constituye la Varianza de Costos (VC) del proyecto. 4. Planificacin adicional | Son pocos los proyectos que se ejecutan exactamente de acuerdo a lo planificado. Los cambios potenciales pueden requerir estimaciones de costos nuevas o revisadas o un anlisis de los enfoques alternativos. 5. Herramientas computarizadas | A menudo, herramientas computarizadas tales como software de gestin de proyectos y planillas de clculo, se utilizan para hacer un seguimiento de los costos planificados versus los costos reales, y para predecir los efectos de los cambios en los costos.

*Control de actualizaciones presupuestarias | Son un producto o resultado del sistema de control de costos. *Anlisis costo beneficio del proyecto | Es una tcnica para comparar el costo del proyecto contra el beneficio que ste otorga al cliente, pero no tiene incidencia en el control del costo del proyecto. Verificar el cumplimiento de las metas del proyecto de tecnologas de informacin Despliegue | Esta actividad verifica el cumplimiento de los objetivos del proyecto de tecnologa. Planeacin | Esta actividad es primaria es cualquier proyecto de software. Implementacin | Esta actividad se refiere a la generacin de cdigo. Modelado | Esta actividad se refiere a la creacin de modelos, antes de la actividad de implementacin.

C 2. Control de calidad de proyectos de tecnologas de informacin Seleccionar modelos de calidad para tecnologas de informacin PSP | Es un modelo de calidad particular. Se enfoca al desarrollo de habilidades del ingeniero de software. TSP | Es un modelo de desarrollo de software basado en equipos de trabajo. CMMI | Es un modelo integral de capacidad y madurez de los proceso de desarrollo de software y sistemas. CMM | Es un modelo que permite medir la capacidad de los procesos de desarrollo nicamente de software. Aplicar metodologas para el modelo de calidad seleccionado MoProSoft | Es una metodologa de certificacin a nivel nacional. COBIT | Es una metodologa para asegurar la calidad de servicios de tecnologas de informacin en organizaciones gubernamentales. UP | Es una metodologa que incorpora las mejores prcticas para el desarrollo de software de calidad a nivel internacional. ITIL | Es una metodologa de aseguramiento de calidad de la administracin de servicios de tecnologas de informacin que no incluye el desarrollo en organizaciones privadas. Establecer las mtricas de calidad para proyectos de tecnologas de informacin Benchmarking | Implica comparar las prcticas reales o planificadas del proyecto con aquellas de otros proyectos, a fin de generar ideas para mejorar o para establecer una norma por medio de la cual medir el desempeo de un proyecto. Anlisis Costo/Beneficio | Esta mtrica toma como base los beneficios y los costos que se obtienen de llevar a cabo los proyectos actuales, a menor costo menor beneficio. Diagrama Causa-y-Efecto | Detecta los posibles factores con los problemas potenciales que existen en un proyecto de software. Diseo de Experimentos | Es un mtodo estadstico que ayuda a identificar cules son los factores que influyen en variables especficas.

Mtricas de Software Facilidad de operacin | Esta mtrica se refiere a la facilidad con la que opera el sistema de respaldo y recuperacin. Complejidad del procesamiento | Esta mtrica es referente a la entrada, salida o lgica de procesamiento. Facilidad de instalacin | Esta mtrica es referente a la facilidad de instalacin del sistema. Diseo para la eficiencia de usuario final | Esta mtrica es referente a la eficiencia en el diseo de herramientas. Verificar el cumplimiento de las mtricas de calidad en proyectos de tecnologas de informacin El departamento de control de calidad de una empresa de consultora, implementa un plan de aseguramiento de calidad como un mecanismo de control. Ordene las actividades de dicho plan. 1. Preparar el plan de SQA (Software Quality Assurance) | GCS (Gestin de calidad del software) a. evaluaciones a realizar, b. auditoras y revisiones a realizar, c. estndares que se pueden aplicar al proyecto, d. procedimientos para informacin y seguimiento de errores, e. documentos producidos por el grupo SQA, f. realimentacin de informacin proporcionada al equipo de proyecto del software. 2. Desarrollar la descripcin del proceso de software | Participacin en el desarrollo de la descripcin del proceso de software del proyecto. 3. Auditar productos de trabajo de software para verificar que se ajusten con los requerimientos | Revisin de las actividades de ingeniera del software para verificar su ajuste al proceso de software definido; Auditora de los productos de software designados para verificar el ajuste con los definidos como parte del proceso del software. 4. Garantizar que estn documentadas las desviaciones | Asegurar que las desviaciones del trabajo y los productos del software se documentan y se manejan de acuerdo con un procedimiento establecido. 5. Registrar cualquier falta de ajuste para informar al gestor ejecutivo | Registrar lo que no se ajuste a los requisitos e informar a sus superiores.

D. Implantacin de infraestructura tecnolgica (redes, bases de datos, sistemas operativos, etc.) D 1. Gestin de redes de datos Disear modelos de redes para una organizacin

Protocolo de la Capa de Enlace de Datos | HDLC. Protocolo de la Capa de Red | RIP. Enrutador (Router) | Es el nico dispositivo para segmentar una red. Pasarela (Gateway) | Dispositivo que permite interconectar redes con protocolos y arquitecturas diferentes a todos los niveles de comunicacin pero no permite segmentar la red. Conmutador (Switch) | Este dispositivo nos permite interconectar dos o ms segmentos de red, pero no segmentarla. Repetidor (Repeater) | Un repetidor es un dispositivo que recibe una seal dbil y la retransmite, pero no segmenta una red.

Implementar redes de datos Actividades para la implementacin de una red: 1. Identificar los servicios que se utilizarn | Es indispensable conocer que servicios van a estar en funcionamiento para seleccionar los recursos de la red. 2. Saber qu sistema operativo se instalar en el servidor | Primero debe analizar los servicios y usuarios que utilizarn en la red, para identificar cual es el mejor modelo de red a implementar y plataforma a utilizar en el servidor. 3. Seleccionar el firewall que se utilizara | La seleccin de tipo de firewall o cortafuegos es un actividad posterior a la identificacin de servicios. WIMAX | 80Km, Su alcance mximo es de unas decenas de kilmetros. WLAN | Es tecnologa inalmbrica pero slo con alcance local. Remote Access Services (RAS) | Es una tecnologa de conectividad pero de bajo desempeo y normalmente es de uso personal y no empresarial. E1 | Es la tecnologa de conectividad de largo alcance (enlace dedicado), medio de comunicacin ofrece rapidez y seguridad en la transferencia de informacin.

Administra redes de datos (mantenimiento, seguridad, tuning, etc.) VPN | Para utilizar tecnologa VPN se requerira usar el router y contar con conectividad directa al router adems de software adicional para instalarse en las PCs. VLSM | Al cambiar las direcciones de red, esto no da conectividad en el switch. VLAN | Debido que la configuracin es sencilla, no se necesita realizar mayor inversin de equipos y/o cableado. NO deniegan acceso a servicios. Wireless | Comunicacin en la que extremos de la comunicacin (emisor/receptor), utiliza la modulacin de ondas electromagnticas a travs del espacio. Configuracin de Firewall y ACLs | Son formas para permitir o denegar entrada/salida a un servicio en especfico. Configurar un filtrado por MAC Address | Deniega solo el acceso a la red y no permite filtrar por servicio. Sniffer | Analiza el trfico en la red de computadora. SMTP in | POP out Protocolos de trasferencia de correo simple SNMP | Protocolo para la administracin de objetos en una red. Firewall | Un firewall no tiene la funcin de analizar el ancho de banda, solo habilita y cierra puertos.

D 2. Gestin de bases de datos Disear bases de datos Pasos involucrados en el diseo de una base de datos relacional 1. Identificacin de entidades 2. Identificacin de relaciones 3. Elaboracin del modelo entidad relacin 4. Identificacin de atributos 5. Normalizacin 6. Validacin del diseo vs necesidades del usuario Elementos de una base de datos relacional 1. ndice | que proporcionan acceso rpido a elementos de datos que tienen valores particulares 2. Vista 3. Procedimiento.

Implementar bases de datos CREATE TABLE Generales ( numPer INT AUTO_INCREMENT NOT NULL PRIMARY KEY(numPer), Nombre CHAR(50) NOT NULL, Direccion CHAR(50) NOT NULL, Telefono CHAR(10) NULL, fechaIngr DATE NOT NULL, RFC CHAR(13) NULL); CREATE TABLE Sueldos( numPer INT NOT NULL, qna INT NOT NULL, fecha DATE, importe NUMERIC(5, 2) NOT NULL, descto NUMERIC(3, 2) NOT NULL DEFAULT 0, pago NUMERIC NOT NULL DEFAULT 0 FOREIGN KEY(fkNumPer) REFERENCES Generales(numPer));

Con base en el siguiente esquema lgico, el cdigo SQL correcto es: Generales numPer integer PK Nombre char(50) Direccion char(50) Telefono char(10) fechaIngr date RFC char(13) Sueldos integer FK integer date numeric(5,2) numeric(3,2) numeric(3,2)

numPer qna fecha importe descto pago

Con base en los datos de las siguientes tablas, llamadas propiamente Tbl1 y Tbl2: id nombre 1 Pedro 2 Antonio 3 Antonio 4 Jos apaterno Montero Melgar Garca Velzquez amaterno Gmez Garca Domnguez Martnez fechaNac 12/12/1989 01/05/1980 05/03/1986 05/05/1990 id importe 1 2 1 4 1 2 1500 2000 1500 2500 1500 2000 SELECT Tbl1.id, Tbl1.nombre, Tbl1.apaterno as paterno, Tbl1.amaterno as materno, (Tbl2. importe*1.16) as IVA FROM Tbl1 LEFT OUTER JOIN Tbl2 ON (Tbl1.id=Tbl2.id); *LEFT OUTER JOIN -> Despliega todo *INNER JOIN -> Despliega parcialmente

4 2500 Y para desplegar los siguientes resultados, cul es la consulta que despliega estos resultados? i d nombre paterno materno IVA 1 Pedro 1 Pedro 1 Pedro 2 Antonio 2 Antonio 3 Antonio 4 Jos 4 Jos Montero Montero Montero Melgar Melgar Garca Velzquez Velzquez Gmez Gmez Gmez Garca Garca Domnguez Martnez Martnez 1740 1740 1740 2320 2320 null 2900 2900

Administrar bases de datos (mantenimiento, seguridad, tuning, respaldo, recuperacin, etc.) CREATE INDEX <nombre_indice> ON <nombre_tabla> (<campos ordenados>); GRANT SELECT ON facturacion.* TO 'factconsul'@'localhost' IDENTIFIED BY 'mypass'; o Solo le asigna el atributo de lectura a la Base de Datos en todas sus tablas GRANT ALL ON *.* TO 'factconsul'@'localhost' IDENTIFIED BY 'mypass'; o Esta sentencia le da los permisos, pero sobre todas las Bases de datos del servidor GRANT SELECT ON *.facturacion TO 'factconsul'@'localhost' IDENTIFIED BY 'mypass'; o Ya que le asigna el atributo de lectura sobra la tabla de facturacin que est en todas las bases de datos del servidor. GRANT SELECT, INSERT ON facturacion.* TO 'factconsul'@'localhost' IDENTIFIED BY 'mypass'; o Ya que adems de asignarle el atributo de lectura, le permite insertar registros, que era la vulnerabilidad que origin el problema. Se tiene una Base de Datos (ver figura). El respaldo de la Base de Datos del Servidor A se realiza de manera automtica cada 60 minutos. En el minuto 80 se cae el sistema. Ordene las actividades a realizar para restaurar la base de datos con la menor prdida de datos, considerando las diferencias temporales entre las actualizaciones de cada base de datos.

1. 2. 3. 4. 5. 6. 7.

Replicar manualmente el Servidor B al Servidor D Replicar manualmente el Servidor A al Servidor C Restaurar del respaldo del Servidor D al Servidor B Restaurar del respaldo del Servidor C al Servidor A Respaldar del Servidor A al Servidor B Restaurar del Servidor B al Servidor A *se perdera la informacin de los ltimos 20 minutos RESPUESTA = 4,5,1

D 3. Gestin de sistemas operativos y lenguajes de desarrollo Seleccionar sistemas operativos y lenguajes de desarrollo (requerimientos, anlisis de costo-beneficio, etc.) Sistemas Operativos orientados a Servidor | Windows Server, Linux CentOS, Unix, BSD Sistemas Operativos orientados a Usuario | Windows, Mac OS X, Linux Ubuntu Windows | Windows ante un ataque tiene mayor impacto, dada su base de usuarios instalada adems de tener un costo de adquisicin considerable. Linux | Sistema Operativo de Software Libre. Mac OS X | Mac OS X tiene un costo mayor que Linux, ambos son seguros. Configurar sistemas operativos Se tiene un touch screen que termina una operacin de E/S, en la cual se produce la siguiente secuencia de eventos, seleccione el orden correcto: 1. El dispositivo enva una seal de interrupcin al procesador 2. El procesador comprueba si hay alguna interrupcin; en caso de haber alguna, enva una seal de reconocimiento al dispositivo que la origin 3. El procesador debe guardar el contexto 4. El procesador carga y ejecuta la rutina servidora de la interrupcin 5. Cuando finaliza el servicio de la interrupcin, se restaura el contexto 6. El procesador contina con el ciclo de instruccin siguiente Un usuario acaba de adquirir una computadora personal, deber realizar una instalacin bsica de sistema operativo la cual se compone de los siguientes pasos. Cul es el orden correcto que debe de seguir? 1. Configuracin inicial de arranque (BIOS) 2. Creacin de las particiones en el disco duro 3. Seleccin del sistema de archivos 4. Identificacin y seleccin de aplicaciones del sistema operativo 5. Configuracin de dispositivos 6. Instalacin y configuracin de aplicaciones para el usuario Lder del proyecto | Lectura, escritura, creacin, eliminacin Desarrollador | Lectura, escritura, creacin Personal de soporte tcnico | Lectura

Administrar servidores (mantenimiento, seguridad, tuning, respaldo, recuperacin, etc.) El acceso a informacin depende de la cuenta y de la conectividad/disponibilidad del servidor. Una lista de acceso no afecta a una red local. El acceso a informacin no depende del servicio de internet. Configurar un servidor en espejo | De las soluciones es la que implica mayor costo y tiempo. Respaldar en discos compactos o DVDs | Dado el nmero de discos necesarios a utilizar es inviable econmicamente. Generar un RAID con los discos existentes | De las opciones, es la que hace un uso ms eficiente del tiempo utilizando slo los recursos existentes. Redireccionar los respaldos a otra ubicacin remota | Ahorra tiempo en la implementacin, pero decrementa su uso en la realizacin de los respaldos al tener que almacenar en una ubicacin remota.

ANEXO

SQL Criteria for Normal Forms


To ensure that database tables are designed in such a way that they will hold your data reliably, you need to be sure that they are not subject to modification anomalies. Normalizing your databases will give you that assurance. Compare the SQL criteria in the following list to the tables in your database. Doing so will alert you to the possibility of anomalies, when you find that your database is not sufficiently normalized. First Normal Form (1NF): Table must be two-dimensional, with rows and columns. Each row contains data that pertains to one thing or one portion of a thing. Each column contains data for a single attribute of the thing being described. Each cell (intersection of row and column) of the table must be single-valued. All entries in a column must be of the same kind. Each column must have a unique name. No two rows may be identical. The order of the columns and of the rows does not matter. Second Normal Form (2NF): Table must be in first normal form (1NF). All nonkey attributes (columns) must be dependent on the entire key. Third Normal Form (3NF): Table must be in second normal form (2NF). Table has no transitive dependencies. Domain-Key Normal Form (DK/NF): Every constraint on the table is a logical consequence of the definition of keys and domains. SQL Data Types Heres a list of all the formal data types that ISO/IEC standard SQL recognizes. In addition to these, you may define additional data types that are derived from these. Exact Numerics: INTEGER SMALLINT BIGINT NUMERIC DECIMAL Boolean: BOOLEAN Approximate Numerics: REAL DOUBLE PRECISION FLOAT Binary Strings: BINARY BINARY VARYING BINARY LARGE OBJECT

Character Strings: CHARACTER CHARACTER VARYING (VARCHAR) CHARACTER LARGE OBJECT NATIONAL CHARACTER NATIONAL CHARACTER VARYING NATIONAL CHARACTER LARGE OBJECT Collection Types: ARRAY MULTISET

Datetimes: DATE TIME WITHOUT TIMEZONE TIMESTAMP WITHOUT TIMEZONE TIME WITH TIMEZONE TIMESTAMP WITH TIMEZONE

Intervals: INTERVAL DAY INTERVAL YEAR

Other Types: ROW XML

SQL Value Functions These SQL value functions perform operations on data. There are all kinds of operations that could conceivably be performed on data items, but these are some that are needed most often. String Value Functions Function SUBSTRING SUBSTRING SIMILAR SUBSTRING_REGEX TRANSLATE_REGEX UPPER LOWER TRIM TRANSLATE CONVERT Numeric Value Functions Function Effect Extracts a substring from a source string Extracts a substring from a source string, using POSIX-based regular expressions Extracts from a string the first occurrence of an XQuery regular expression pattern and returns one occurrence of the matching substring Extracts from a string the first or every occurrence of an XQuery regular expression pattern and replaces it or them with an XQuery replacement string Converts a character string to all uppercase Converts a character string to all lowercase Trims off leading or trailing blanks Transforms a source string from one character set to another Transforms a source string from one character set to another Effect

POSITION CHARACTER_LENGTH OCTET_LENGTH EXTRACT Datetime Value Functions Function CURRENT_DATE CURRENT_TIME(p) CURRENT_TIMESTAMP(p)

Returns the starting position of a target string within a source string Returns the number of characters in a string Returns the number of octets (bytes) in a character string Extracts a single field from a datetime or interval Effect Returns the current date Returns the current time; (p) is precision of seconds Returns the current date and the current time; (p) is precision of seconds

SQL Set Functions The SQL set functions give you a quick answer to questions you may have about the characteristics of your data as a whole. How many rows does a table have? What is the highest value in the table? What is the lowest? These are the kinds of questions that the SQL set functions can answer for you. COUNT MAX MIN SUM AVG Returns the number of rows in the specified table Returns the maximum value that occurs in the specified table Returns the minimum value that occurs in the specified table Adds up the values in a specified column Returns the average of all the values in the specified column

SQL WHERE Clause Predicates Predicates boil down to either a TRUE or a FALSE result. You can filter out unwanted rows from the result of an SQL query by applying a WHERE clause whose predicate excludes the unwanted rows. Comparison Predicates = Equal <> Not equal < Less than <= Less than or equal > Greater than >= Greater than or equal Other Predicates ALL DISTINCT IN MATCH NOT LIKE OVERLAPS SOME, ANY BETWEEN EXISTS LIKE NOT IN NULL SIMILAR UNIQUE Other Predicates ALL DISTINCT IN MATCH NOT LIKE OVERLAPS SOME, ANY BETWEEN EXISTS LIKE NOT IN NULL SIMILAR UNIQUE

Common Linux Commands


Open-source Linux is a popular alternative to Microsoft Windows, and if you choose to use this low-cost or free operating system, you need to know some basic Linux commands to make your system smoothly. The most common Linux commands are shown in this table. Command cat [filename] cd /directorypath chmod [options] mode filename chown [options] filename clear cp [options] source destination date [options] df [options] du [options] file [options] filename find [pathname] [expression] grep [options] pattern [filesname] kill [options] pid less [options] [filename] ln [options] source [destination] locate filename lpr [options] ls [options] man [command] mkdir [options] directory mv [options] source destination passwd [name [password]] ps [options] pwd rm [options] directory rmdir [options] directory ssh [options] user@machine su [options] [user [arguments]] tail [options] [filename] tar [options] filename top Description Display files contents to the standard output device (usually your monitor). Change to directory. Change a files permissions. Change who owns a file. Clear a command line screen/window for a fresh start. Copy files and directories. Display or set the system date and time. Display used and available disk space. Show how much space each file takes up. Determine what type of data is within a file. Search for files matching a provided pattern. Search files or output for a particular pattern. Stop a process. If the process refuses to stop, use kill -9 pid. View the contents of a file one page at a time. Create a shortcut. Search a copy of your filesystem for the specified filename. Send a print job. List directory contents. Display the help information for the specified command. Create a new directory. Rename or move file(s) or directories. Change the password or allow (for the system administrator) to change any password. Display a snapshot of the currently running processes. Display the pathname for the current directory. Remove (delete) file(s) and/or directories. Delete empty directories. Remotely log in to another Linux machine, over the network. Leave an ssh session by typing exit. Switch to another user account. Display the last n lines of a file (the default is 10). Store and extract files from a tarfile (.tar) or tarball (.tar.gz or .tgz). Displays the resources being used on your system. Press q to exit.

touch filename who [options]

Create an empty file with the specified name. Display who is logged on.

How to Use CDs and DVDs with Linux Just because youre using open-source Linux as your operating system is no reason to think you cant play CDs or watch DVDs on your computer. To access or remove disks, just follow these procedures: To access your CDs/DVDs: If youre in the GUI, the media should be automatically detected. On the command line, start by typing mount /media/cdrom. If this doesnt work, look in the /media directory. You may need to use /media/cdrecorder, /media/dvdrecorder, or some other variant. To remove your CDs/DVDs: In the GNOME desktop, right-click the CD icon and select Eject from the context menu. If you're using the KDE desktop, select the Device Notifier icon in the Panel, then select the CD icon to eject. On the command line, type umount /media/cdrom, or change cdrom to whatever you had to use to mount the item. How to Get Help on Linux You may find yourself needing more help using Linux than you do using more pervasive operating systems, like Windows. Fortunately, Linux provides fairly easy ways to find help, as shown here: Type This . . . man -k [keyword] info [command] man [command] whatis [command] To Find This . . . Search a database for commands that involve the keyword. Can also be used as apropos [keyword]. Display a files help information in an alternate format. Display a files help information. Display a short blurb about the command.

The Fedora Documentation Project is growing its collection of help manuals for Fedora users. In addition, theres the Fedora Forum, Fedora News, and the Unofficial Fedora FAQ. If youre tapping into Ubuntu, the Ubuntu Wiki Project provides basic information on how to get started with most common desktop tasks and has a community documentation project where Ubuntu users can contribute their own guides and tutorials.