martes, 26 de abril de 2016

TAREA 6

¿Qué es tablero de control?
El tablero de control (TdeC) es una herramienta del campo de la administración de empresas, aplicable a cualquier organización y nivel de la misma, cuyo objetivo y utilidad básica es diagnosticar adecuadamente una situación. Se le define como el conjunto de indicadores cuyo seguimiento y evaluación periódica permitirá contar con un mayor conocimiento de la situación de su empresa o sector apoyándose en nuevas tecnologías informáticas.
El diagnóstico y monitoreo permanente de determinados indicadores e información ha sido y es la base para mantener un buen control de situación en muchas de las disciplinas de la vida. Como ejemplo de estos podemos señalar a la: medicina, basada en mediciones para el diagnóstico de la salud de los pacientes, a laaviación, cuyos indicadores de tablero de control sintetiza la información del avión y del entorno para evitar sorpresas y permite a los pilotos dirigir el avión a buen puerto; el tablero de un sistema eléctrico o de una represa son otros ejemplos. En todos estos casos el Tablero permite a través del color de las luces y alarmas ser el disparador para la toma de decisiones. En todos estos ejemplos es fundamental definir los indicadores a monitorear.
La empresa como organización formal e informal es sujeta de parametrización en muchos de sus valores para facilitar el diagnóstico y la toma de decisiones. Si bien hay indicadores genéricos para todas las empresas, especialmente en áreas como las económicas financieras, cada empresa o sector requiere definiciones a medida de sus propios parámetros y definir quién y cómo va a monitorear esa información.
El Tablero de Control nace al no existir una metodología clara para enseñar a los directivos a organizar y configurar la información. En un campo en que las ciencias empresariales han podido evolucionar notoriamente dada la revolución de la información generada a finales del siglo XX. Es necesario generar metodologías gerenciales para que las empresas no se basen sólo en su intuición y conocimientos de cada directivo o por la sola inteligencia existente en herramientas informáticas.
http://www.axoft.com/img/pantallas/tablero/1.jpg
¿Cuáles son los tipos de tableros?
A partir de la experiencia de implementación y de las diferentes necesidades de las empresas me he encontrado con la posibilidad de implementar cuatros tipos genéricos de Tableros:
·         Tablero de Control Operativo: Es aquel que permite hacer un seguimiento, al menos diario, del estado de situación de un sector o proceso de la empresa, para poder tomar a tiempo las medidas correctivas necesarias. El Tablero debe proveer la información que se necesita para entrar en acción y tomar decisiones operativas en áreas como las finanzas, compras, ventas, precios, producción, logística, etc.
·         Tablero de Control Directivo: Es aquel que permite monitorear los resultados de la empresa en su conjunto y de los diferentes temas claves en que se puede segmentarse. Está más orientado al seguimiento de indicadores de los resultados internos de la empresa en su conjunto y en el corto plazo. Su monitoreo es de aproximadamente cada mes. Puede incluir indicadores de todos los sectores para los directivos claves o sectorizado para un directivo.
·         Tablero de Control Estratégico: Nos brinda la información interna y externa necesaria para conocer la situación y evitar llevarnos sorpresas desagradables importantes respecto al posicionamiento estratégico y a largo plazo de la empresa.
·         Tablero de Control Integral: Información relevantes para que la alta dirección de una empresa pueda conocer la situación integral de su empresa. Engloba a las tres perspectivas anteriores


http://www.presupuestosdeobra.com/uploads/238.png



TAREA 5

¿Qué es tablero de control?
El tablero de control (TdeC) es una herramienta del campo de la administración de empresas, aplicable a cualquier organización y nivel de la misma, cuyo objetivo y utilidad básica es diagnosticar adecuadamente una situación. Se le define como el conjunto de indicadores cuyo seguimiento y evaluación periódica permitirá contar con un mayor conocimiento de la situación de su empresa o sector apoyándose en nuevas tecnologías informáticas.
El diagnóstico y monitoreo permanente de determinados indicadores e información ha sido y es la base para mantener un buen control de situación en muchas de las disciplinas de la vida. Como ejemplo de estos podemos señalar a la: medicina, basada en mediciones para el diagnóstico de la salud de los pacientes, a laaviación, cuyos indicadores de tablero de control sintetiza la información del avión y del entorno para evitar sorpresas y permite a los pilotos dirigir el avión a buen puerto; el tablero de un sistema eléctrico o de una represa son otros ejemplos. En todos estos casos el Tablero permite a través del color de las luces y alarmas ser el disparador para la toma de decisiones. En todos estos ejemplos es fundamental definir los indicadores a monitorear.
La empresa como organización formal e informal es sujeta de parametrización en muchos de sus valores para facilitar el diagnóstico y la toma de decisiones. Si bien hay indicadores genéricos para todas las empresas, especialmente en áreas como las económicas financieras, cada empresa o sector requiere definiciones a medida de sus propios parámetros y definir quién y cómo va a monitorear esa información.
El Tablero de Control nace al no existir una metodología clara para enseñar a los directivos a organizar y configurar la información. En un campo en que las ciencias empresariales han podido evolucionar notoriamente dada la revolución de la información generada a finales del siglo XX. Es necesario generar metodologías gerenciales para que las empresas no se basen sólo en su intuición y conocimientos de cada directivo o por la sola inteligencia existente en herramientas informáticas.
¿Cuáles son los tipos de tableros?
A partir de la experiencia de implementación y de las diferentes necesidades de las empresas me he encontrado con la posibilidad de implementar cuatros tipos genéricos de Tableros:
·         Tablero de Control Operativo: Es aquel que permite hacer un seguimiento, al menos diario, del estado de situación de un sector o proceso de la empresa, para poder tomar a tiempo las medidas correctivas necesarias. El Tablero debe proveer la información que se necesita para entrar en acción y tomar decisiones operativas en áreas como las finanzas, compras, ventas, precios, producción, logística, etc.
·         Tablero de Control Directivo: Es aquel que permite monitorear los resultados de la empresa en su conjunto y de los diferentes temas claves en que se puede segmentarse. Está más orientado al seguimiento de indicadores de los resultados internos de la empresa en su conjunto y en el corto plazo. Su monitoreo es de aproximadamente cada mes. Puede incluir indicadores de todos los sectores para los directivos claves o sectorizado para un directivo.
·         Tablero de Control Estratégico: Nos brinda la información interna y externa necesaria para conocer la situación y evitar llevarnos sorpresas desagradables importantes respecto al posicionamiento estratégico y a largo plazo de la empresa.
·         Tablero de Control Integral: Información relevantes para que la alta dirección de una empresa pueda conocer la situación integral de su empresa. Engloba a las tres perspectivas anteriores















¿Qué es Focus Group?
El grupo focal (focus group en inglés) (no confundir con el "grupo de discusión") es una técnica cualitativa de estudio de las opiniones o actitudes de un público, utilizada en ciencias sociales y en estudios comerciales. Consiste en la reunión de un grupo de personas, entre 6 y 12, con un moderador, investigador o analista; encargado de hacer preguntas y dirigir la discusión. Su labor es la de encauzar la discusión para que no se aleje del tema de estudio y, de este modo, da a la técnica su nombre en inglés ("grupo con foco"). Las preguntas son respondidas por la interacción del grupo en una dinámica en que los participantes se sienten cómodos y libres de hablar y comentar sus opiniones. Normalmente los grupos focales requieren cerca de dos horas para cumplir su tarea.
Ventajas de Focus Group Online
1.-Participa gente de todo el país o incluso del mundo y observa el grupo desde la comodidad de su hogar u oficina.
2.-Se eliminan las limitaciones geográficas y disminuyen las limitaciones de tiempo.
 3.-Se tiene la oportunidad única de ponerse en contacto nuevamente con los participantes del grupo posteriormente para revisar ciertos aspectos o para mostrarles modificaciones realizadas al material presentado en la sesión de grupo original.
4.-Los moderadores pueden tener conversaciones colaterales con participantes individuales e indagar con mayor profundidad en áreas de interés.
 5.-Las personas suelen mostrarse menos inhibidas en sus respuestas y son más proactivas a expresar sus pensamientos con plenitud.
 6.-El costo es mucho menos que el de las sesiones de grupo tradicionales.


TAREA 4

¿Qué es el software ERP?
Los sistemas de planificación de recursos empresariales ('ERP', por sus siglas en inglés, enterprise resource planning) son sistemas de información gerenciales que integran y manejan muchos de los negocios asociados con las operaciones de producción y de los aspectos de distribución de una compañía en laproducción de bienes o servicios.
La planificación de recursos empresariales es un término derivado de la planificación de recursos de manufactura (MRPII) y seguido de la planificación de requerimientos de material (MRP); sin embargo los ERP han evolucionado hacia modelos de suscripción por el uso del servicio (SaaS, cloud computing).
Los sistemas ERP típicamente manejan la producción, logística, distribución, inventario, envíos, facturas y contabilidad de la compañía de forma modular. Sin embargo, la planificación de recursos empresariales o el software ERP puede intervenir en el control de muchas actividades de negocios como ventas, entregas, pagos, producción, administración de inventarios, calidad de administración y la administración de recursos humanos.
Los sistemas ERP son llamados ocasionalmente back office (trastienda) ya que indican que el cliente y el público general no están directamente involucrados. Este sistema es, en contraste con el sistema de apertura de datos (front office), que crea una relación administrativa del consumidor o servicio al consumidor (CRM), un sistema que trata directamente con los clientes, o con los sistemas de negocios electrónicos tales como comercio electrónico, administración electrónica, telecomunicaciones electrónicas y finanzas electrónicas; asimismo, es un sistema que trata directamente con los proveedores, no estableciendo únicamente una relación administrativa con ellos (SRM). No obstante progresivamente el software ERP tiende a ocupar todos los espacios de la organización, absorbiendo las funciones del CRM. De hecho las principales compañías productoras de CRM del mundo fueron absorbidas por empresas de software ERP en los últimos 10 años.
Los ERP funcionaban ampliamente en las empresas. Entre sus módulos más comunes se encuentran el de manufactura o producción, almacenamiento, logística e información tecnológica, incluyen además la contabilidad, y suelen incluir un sistema de administración de recursos humanos, y herramientas de mercadotecnia y administración estratégica.
Los ERP de última generación tienden a implementar en sus circuitos abstracciones de la administración tales como MECAF (Método de Expresión de Circuitos Administrativos Formalizado), o Formalized Administrative Notation_(FAN) los cuales brindan gran flexibilidad para describir diferentes circuitos usados en distintas empresas. Esto simplifica la regionalización y la adaptación de los ERP a diferentes mercados verticales
Las características que distinguen a un ERP de cualquier otro software empresarial son que deben ser modulares y configurables:
·         Modulares. Los ERP entienden que una empresa es un conjunto de departamentos que se encuentran interrelacionados por la información que comparten y que se genera a partir de sus procesos. Una ventaja de los ERP, tanto económica como técnica, es que la funcionalidad se encuentra dividida en módulos, los cuales pueden instalarse de acuerdo con los requerimientos del cliente. Ejemplo: ventas, materiales, finanzas, control de almacén, recursos humanos, etc.
·         Configurables. Los ERP pueden ser configurados mediante desarrollos en el código del software. Por ejemplo, para controlar inventarios, es posible que una empresa necesite manejar la partición de lotes pero otra empresa no. Los ERP más avanzados suelen incorporar herramientas de programación de cuarta generación para el desarrollo rápido de nuevos procesos.
Otras características destacadas de los sistemas ERP son:
·         Base de datos centralizada.
·         Los componentes del ERP interactúan entre sí consolidando las operaciones.
·         En un sistema ERP los datos se capturan y deben ser consistentes, completos y comunes.
·         Las empresas que lo implanten suelen tener que modificar alguno de sus procesos para alinearlos con los del sistema ERP. Este proceso se conoce como reingeniería de procesos, aunque no siempre es necesario.

¿Qué es el software SAE ,NOI ASPEL SAE?
Aspel SAE es un sistema administrativo creado para controlar las operaciones de compra veta de la empresa entre los procesos controlados se encuentran los siguientes: facturación, inventarios, cuentas por cobrar, clientes, proveedores, vendedores, cuentas por pagar y compras.
Por medio de Aspel SAE podrá automatizar los procesos administrativos y asegurar el correcto cumplimiento de las disposiciones fiscales vigentes en el país.
Para tener un mejor control de su negocio Aspel SAE le ofrece  estadísticas, consultas, graficas y reportes de alto nivel creados para colaborar en la oportuna toma de decisiones y desarrollo de estrategias comerciales.
Aspel SAE le puede hacer interfaz con: Aspel Banco, Aspel COI, Aspel CAJA y Aspel PROD.
Al integrar Aspel SAE a su empresa obtendrá beneficios inmediatos entre las funciones destacadas de Aspel SAE se encuentran las siguientes:
  • Las funciones de CRM de Aspel SAE le permitirán conocer mejor a su cliente conociendo sus hábitos de compra y necesidades lo que le permitirá mantenerlo informado fácilmente.
  • Controle el ciclo de compra venta completamente desde la foto del producto hasta la factura electrónica.
  • Cubra las necesidades de facturación ya sea de manera impresa o electrónica.
  • Mantenga un control total de su inventario
Los requerimientos mínimos de software y hardware de Aspel SAE son los siguientes.
  • 512Mb de RAM 1Gb recomendado.
  • Monitor súper VGA (800 x 600) o superior
  • Procesador Intel de 32 Bits (X86) a 1.0 GHz o superior
  • 350 Mb de espacio libre en disco duro.
  • Microsoft Windows xp, 2003, Vista, 2008 o 7.

ASPEL NOI
Aspel-NOI automatiza el control de los aspectos más importantes de la nómina, su fácil manejo y versatilidad ofrece un cálculo exacto de las percepciones y deducciones de los trabajadores atendiendo los requerimientos específicos de la empresa. Calcula la retención de ISR, cuotas obrero-patronales IMSS e INFONAVIT, subsidio para el empleo y previsión social, entre otros, de acuerdo con las disposiciones fiscales y laborales vigentes. Asimismo, se encuentra preparado para emitir Comprobantes Fiscales Digitales por Internet (CFDI) de los recibos de nómina, para dar cumplimiento a la Reforma Fiscal 2014.
Expide y entrega los
recibos de nómina digitales
en menos de un segundo
chicos_noi
https://secure.adnxs.com/seg?add=4818224&t=2
Beneficios
·         noi-cumple-con-la-reforma-fiscal-de-2014

Recibos de nómina CFDI
o    Genera Comprobantes Fiscales Digitales por Internet (CFDI) de los recibos de pago de nómina de los trabajadores.
o    En un solo paso se timbran fiscalmente los recibos, asegurando así la deducción de la nómina.
o    Modalidad de timbrado de comprobantes uno por uno y masivo.
o    Envío de los Comprobantes Fiscales Digitales al correo electrónico de los trabajadores.
o    Cancelación de Comprobantes Fiscales Digitales de los recibos de pago.
SAE
Un sistema de ayuda a la explotación, o sistema avanzado de ayuda a la explotación, también conocido por sus siglas SAE es un conjunto de soluciones que aúnan distintas tecnologías para mejorar el servicio y gestión de medios de transporte.
Entre estas tecnologías figuran un localizador GPS, una unidad central de proceso y un sistema de comunicaciones con el que transmitir en tiempo real (o con una frecuencia configurable) la posición del vehículo a un centro de control. Esta información se procesa en el centro de control donde a través de una consola de operador, se pueden tomar decisiones sobre las acciones del vehículo.
Las aplicaciones de un sistema SAE son diversas; sin embargo, destacan la gestión de flotas de vehículos, por ejemplo flotas de autobuses, coches de alquiler, sistemas de reparto, etc. Mediante un sistema SAE, es posible entre otras acciones:
·         Confirmar la regularidad de paso por parada de autobuses en el caso de líneas regulares.
·         Informar a los pasajeros del tiempo estimado de llegada del siguiente autobús.
·         Verificar que un coche alquilado no sale de la zona acordada en el contrato.
·         Optimizar las rutas de recogida en una empresa de paquetería.
·         Optimizar la ubicación de las grúas de una aseguradora.
El hecho de embarcar una unidad central de proceso en cada vehículo, habilita la posibilidad de conectar otros periféricos para obtener ventajas adicionales.


TAREA 3

Herramientas CASE
Las herramientas CASE (Computer Aided Software Engineering, Ingeniería de Software Asistida por Computadora) son diversas aplicaciones informáticas o programas informáticosdestinadas a aumentar la productividad en el desarrollo de software reduciendo el costo de las mismas en términos de tiempo y de dinero.
Estas herramientas pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software en tareas como el proceso de realizar un diseño del proyecto, cálculo de costos, implementación de parte del código automáticamente con el diseño dado, compilación automática, documentación o detección de errores entre otras. Ya en los años 70 un proyecto llamado ISDOS diseñó un lenguaje y por lo tanto un producto que analizaba la relación existente entre los requisitos de un problema y las necesidades que estos generaban, el lenguaje en cuestión se denominaba PSL (Problem Statement Language) y la aplicación que ayudaba a buscar las necesidades de los diseñadores PSA (Problem Statement Analyzer).
Aunque ésos son los inicios de las herramientas informáticas que ayudan a crear nuevos proyectos informáticos, la primera herramienta CASE fue Excelerator que salió a la luz en el año 1984 y trabajaba bajo una plataforma PC.
Las herramientas CASE alcanzaron su techo a principios de los años 90. En la época en la que IBM había conseguido una alianza con la empresa de software AD/Cycle para trabajar con sus mainframes o computadoras centrales, estos dos gigantes trabajaban con herramientas CASE que abarcaban todo el ciclo de vida del software. Pero poco a poco los mainframes han ido siendo menos utilizados y actualmente el mercado de las Big CASE ha muerto completamente abriendo el mercado de diversas herramientas más específicas para cada fase del ciclo de vida del software.

Sus objetivos son:
1.   Mejorar la productividad del software.
2.   Aumentar la calidad del software.
3.   Reducir el tiempo y costo de desarrollo y mantenimiento de los sistemas informáticos.
4.   Mejorar la planificación de un proyecto.
5.   Aumentar la biblioteca de conocimiento informático de una empresa ayudando a la búsqueda de soluciones para los requisitos.
6.   Automatizar el desarrollo del software, la documentación, la generación de código, las pruebas de errores y la gestión del proyecto.
7.   Ayuda a la reutilización del software, portabilidad y estandarización de la documentación.
8.   Gestión global en todas las fases de desarrollo de software con una misma herramienta.
9.   Facilitar el uso de las distintas metodologías propias de la ingeniería del software.

¿Qué es un software portable?
Definición:
Programas portables o software portable son aquellos programas que se ejecutan en la pc sin necesidad de instalación y puedes llevarlos en cualquier dispositivo de memoria extraíble (disquete, pendrive USB, memorias SD, etc.).
La configuración de estos programas se mantiene en el mismo dispositivo portable, por la que no se modifican ningún archivo de la pc.

Nota:

Recomiendo usar programas portables para mayor comodidad ya que es fácil y no modifica el REGEDIT de la pc.

¿Qué son las técnicas de diseño de software?
Técnicas generales de diseño de software
 I. Diseño procedimental
1. Diseño funcional descendente
1.1. Técnica del refinamiento progresivo Aplicación, a la fase de diseño, del concepto de refinamientos sucesivos [Wirth]. Consiste en plantear la aplicación como única operación global, e irla descomponiendo en operaciones más sencillas, detalladas y específicas. En cada nivel de refinamiento, las operaciones identificadas se asignan a módulos separados. La construcción de programas mediante refinamientos sucesivos proviene de la metodología de programación estructurada [Dijkstra]. Esta metodología de programación consiste en la utilización sólo de estructuras de control claras y sencillas, con esquemas de ejecución con un único punto de inicio y un único punto final.
 1.2. Técnica de programación estructurada de Jackson Aplicación, a la fase de diseño, de la metodología de programación estructurada [Dijkstra]. Esta metodología de programación consiste en la utilización sólo de estructuras de control claras y sencillas, con esquemas de ejecución con un único punto de inicio y un único punto final. Dichas estructuras son la secuencia, la selección y la iteración. La técnica de Jackson consiste en construir las estructuras del programa de forma similar a las estructuras de los datos de entrada-salida que se manejan. 1.3. Técnica de diseño estructurado [Yourdon] Técnica de diseño complementaria del ‘análisis estructurado’ (utilización de DFD). Consiste en:
. Utilización de DFD para la descripción del funcionamiento de la aplicación.
2. Con los primeros niveles de la descomposición en DFD, se construye un único diagrama en el que se incluyen los procesos implicados y se prescinde de los elementos de almacenamiento. Es este último diagrama, se realiza un análisis para identificar o bien un único flujo global (flujo de transformación) o bien uno o varios puntos en los que el flujo global se bifurca (flujo de transacción).
3. Según el patrón identificado en el análisis anterior, se construye el diagrama de diseño mediante la notación de los diagramas de estructura. Para ello, a partir de los DFD iniciales, se asignan procesos o grupos de procesos a los módulos de diseño y se establece una jerarquía o estructura de control en función del mencionado patrón identificado en el punto anterior (transformación o transacción).

2. Diseño con abstracciones
 2.1. Descomposición modular con abstracciones Consiste en dedicar módulos separados a la realización de cada tipo abstracto de datos y cada función importante. Se emplea la notación de los diagramas de bloques jerarquizados; en los que se representan las relaciones de uso y la jerarquía se establece de arriba hacia abajo (‘los de arriba usan a los de abajo’). Se puede aplicar de forma descendente (ampliación del refinamiento progresivo con las abstracciones) o ascendente (ampliación de primitivas hacia abstracciones de nivel superior).
 2.2. Método de Abbott Metodología para identificar los elementos abstractos que formarán parte del diseño. Las abstracciones obtenidas se complementan y se organizan en un diagrama de diseño. El método se suele aplicar a las descripciones del análisis (formales o informales).

3 3. Diseño orientado a objetos En esencia es similar al diseño con abstracciones pero, además de la relaciones de uso y agregación, hay que considerar la herencia y el polimorfismo. En la descomposición modular del sistema, cada módulo contiene la descripción de una clase o de varias clases de objetos relacionadas entre sí. Se suele utilizar un diagrama de estructura para describir la arquitectura del sistema y las relaciones de uso y diagramas ampliados de las clases y objetos en las que se representan las distintas relaciones entre los datos (herencia, polimorfismo, etc.).

¿Qué es el desarrollo en cascada?
En Ingeniería de software el desarrollo en cascada, también llamado modelo en cascada (denominado así por la posición de las fases en el desarrollo de esta, que parecen caer en cascada “por gravedad” hacia las siguientes fases), es el enfoque metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal forma que el inicio de cada etapa debe esperar a la finalización de la etapa anterior.1 Al final de cada etapa, el modelo está diseñado para llevar a cabo una revisión final, que se encarga de determinar si el proyecto está listo para avanzar a la siguiente fase. Este modelo fue el primero en originarse y es la base de todos los demás modelos de ciclo de vida.
La versión original fue propuesta por Winston W. Royce en 1970 y posteriormente revisada por Barry Boehm en 1980 e Ian Sommerville en 1985.2
Un ejemplo de una metodología de desarrollo en cascada es:
1.   Análisis de requisitos.
2.   Diseño del Sistema.
3.   Diseño del Programa.
4.   Codificación.
5.   Pruebas.
6.   Verificación.
7.   Mantenimiento.
De esta forma, cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo. La palabra cascada sugiere, mediante la metáfora de la fuerza de la gravedad, el esfuerzo necesario para introducir un cambio en las fases más avanzadas de un proyecto.
Sus fases del modelo son:
Análisis de requisitos
En esta fase se analizan las necesidades de los usuarios finales del software para determinar qué objetivos debe cubrir. De esta fase surge una memoria llamada SRD (documento de especificación de requisitos), que contiene la especificación completa de lo que debe hacer el sistema sin entrar en detalles internos.
Es importante señalar que en esta etapa se debe consensuar todo lo que se requiere del sistema y será aquello lo que seguirá en las siguientes etapas, no pudiéndose requerir nuevos resultados a mitad del proceso de elaboración del software de una manera.
Diseño del Sistema
Descompone y organiza el sistema en elementos que puedan elaborarse por separado, aprovechando las ventajas del desarrollo en equipo. Como resultado surge el SDD (Documento de Diseño del Software), que contiene la descripción de la estructura relacional global del sistema y la especificación de lo que debe hacer cada una de sus partes, así como la manera en que se combinan unas con otras.
Es conveniente distinguir entre diseño de alto nivel o arquitectónico y diseño detallado. El primero de ellos tiene como objetivo definir la estructura de la solución (una vez que la fase de análisis ha descrito el problema) identificando grandes módulos (conjuntos de funciones que van a estar asociadas) y sus relaciones. Con ello se define la arquitectura de la solución elegida. El segundo define los algoritmos empleados y la organización del código para comenzar la implementación.
Diseño del Programa
Es la fase en donde se realizan los algoritmos necesarios para el cumplimiento de los requerimientos del usuario así como también los análisis necesarios para saber qué herramientas usar en la etapa de Codificación
Codificación
Es la fase en donde se implementa el código fuente, haciendo uso de prototipos así como de pruebas y ensayos para corregir errores.
Dependiendo del lenguaje de programación y su versión se crean las bibliotecas y componentes reutilizables dentro del mismo proyecto para hacer que la programación sea un proceso mucho más rápido.
Pruebas
Los elementos, ya programados, se ensamblan para componer el sistema y se comprueba que funciona correctamente y que cumple con los requisitos, antes de ser entregado al usuario final.
Verificación
Es la fase en donde el usuario final ejecuta el sistema, para ello el o los programadores ya realizaron exhaustivas pruebas para comprobar que el sistema no falle.
Mantenimiento
Una de las etapas más críticas, ya que se destina un 75 % de los recursos, es el mantenimiento del Software ya que al utilizarlo como usuario final puede ser que no cumpla con todas nuestras expectativas.

¿Qué es el desarrollo en espiral?
El desarrollo en espiral es un modelo de ciclo de vida del software definido por primera vez por Barry Boehm en 1986, utilizado generalmente en la Ingeniería de software. Las actividades de este modelo se conforman en una espiral, en la que cada bucle o iteración representa un conjunto de actividades. Las actividades no están fijadas a ninguna prioridad, sino que las siguientes se eligen en función del análisis de riesgo, comenzando por el bucle interior.
Sus ciclos ó interaciones son:
En cada vuelta o iteración hay que tener en cuenta:
·         Los Objetivos: qué necesidad debe cubrir el producto.
·         Alternativas: las diferentes formas de conseguir los objetivos de forma exitosa, desde diferentes puntos de vista como pueden ser:
1.   Características: experiencia del personal, requisitos a cumplir, etc.
2.   Formas de gestión del sistema.
3.   Riesgo asumido con cada alternativa.
·         Desarrollar y Verificar: Programar y probar el software.
Si el resultado no es el adecuado o se necesita implementar mejoras o funcionalidades:
·         Se planificaran los siguientes pasos y se comienza un nuevo ciclo de la espiral. La espiral tiene una forma de caracola y se dice que mantiene dos dimensiones, la radial y la angular:
1.   Angular: Indica el avance del proyecto del software dentro de un ciclo.
2.   Radial: Indica el aumento del coste del proyecto, ya que con cada nueva iteración se pasa más tiempo desarrollando.
Este sistema es muy utilizado en proyectos grandes y complejos como puede ser, por ejemplo, la creación de un Sistema Operativo.
Al ser un modelo de Ciclo de Vida orientado a la gestión de riesgo se dice que uno de los aspectos fundamentales de su éxito radica en que el equipo que lo aplique tenga la necesaria experiencia y habilidad para detectar y catalogar correctamente los riesgos.

¿Qué son los Diagramas de Warnier/Orr?
Los diagramas de Warnier/Orr (también conocidos como construcción lógica de programas/construcción lógica de sistemas) fueron desarrollados inicialmente en Francia por Jean Dominique Warnier y en los Estados Unidos por Kenneth Orr. Este método ayuda al diseño de estructuras de programas identificando la salida y resultado del procedimiento, y entonces trabaja hacia atrás para determinar los pasos y combinaciones de entrada necesarios para producirlos. Los sencillos métodos gráficos usados en los diagramas de Warnier/Orr hacen evidentes los niveles en un sistema y más claros los movimientos de los datos en dichos niveles.

Los diagramas de Warnier/Orr son un tipo de diagramas jerárquicos que se utilizan para
Describir tanto la organización de datos como de procedimientos.
Hay cuatro construcciones básicas utilizadas en los diagramas de W/O: jerarquía,Secuencia, repetición, y selección.
¿Qúe es el desarrollo de software UML?
UML es el primer método en publicar un meta-modelo en su propia notación, incluyendo la notación para la mayoría de la información de requisitos, análisis y diseño. Se trata pues de un meta-modelo auto-referencial (cualquier lenguaje de modelado de propósito general debería ser capaz de modelarse a sí mismo).
UML es un lenguaje estándar que sirve para escribir los planos del software, puede utilizarse para visualizar, especificar, construir y documentar todos los artefactos que componen un sistema con gran cantidad de software. UML puede usarse para modelar desde sistemas de información hasta aplicaciones distribuidas basadas en Web, pasando por sistemas empotrados de tiempo real.
UML es solamente un lenguaje por lo que es sólo una parte de un método de desarrollo software, es independiente del proceso aunque para que sea optimo debe usarse en un proceso dirigido por casos de uso, centrado en la arquitectura, iterativo e incremental.
UML es un lenguaje por que proporciona un vocabulario y las reglas para utilizarlo, además es un lenguaje de modelado lo que significa que el vocabulario y las reglas se utilizan para la representación conceptual y física del sistema.
UML es un lenguaje que nos ayuda a interpretar grandes sistemas mediante gráficos o mediante texto obteniendo modelos explícitos que ayudan a la comunicación durante el desarrollo ya que al ser estándar, los modelos podrán ser interpretados por personas que no participaron en su diseño (e incluso por herramientas) sin ninguna ambigüedad. En este contexto, UML sirve para especificar, modelos concretos, no ambiguos y completos.
Debido a su estandarización y su definición completa no ambigua, y aunque no sea un lenguaje de programación, UML se puede conectar de manera directa a lenguajes de programación como Java, C++ o Visual Basic, esta correspondencia permite lo que se denomina como ingeniería directa (obtener el código fuente partiendo de los modelos) pero además es posible reconstruir un modelo en UML partiendo de la implementación, o sea, la ingeniería inversa.
UML proporciona la capacidad de modelar actividades de planificación de proyectos y de sus versiones, expresar requisitos y las pruebas sobre el sistema, representar todos sus detalles así como la propia arquitectura. Mediante estas capacidades se obtiene una documentación que es valida durante todo el ciclo de vida de un proyecto.
El lenguaje UML se compone de tres elementos básicos, los bloques de construcción, las reglas y algunos mecanismos comunes. Estos elementos interaccionan entre sí para dar a UML el carácter de completitud y no-ambigüedad que antes comentábamos.
Los bloques de construcción se dividen en tres partes:
·         Elementos, que son las abstracciones de primer nivel.
·         Relaciones, que unen a los elementos entre sí.
·         Diagramas, que son agrupaciones de elementos.
Existen cuatro tipos de elementos en UML, dependiendo del uso que se haga de ellos:
·         Elementos estructurales.
·         Elementos de comportamiento.
·         Elementos de agrupación
·         Elementos de anotación.