Analisis Y Diseño De Software
Enviado por josewagner • 15 de Diciembre de 2013 • 3.967 Palabras (16 Páginas) • 348 Visitas
INTRODUCCION
Un proceso del software es un conjunto de actividades que conducen a la creación de. un producto software. Estas actividades pueden consistir en el desarrollo de software desde cero en un lenguaje de programación estándar como Java o C. Sin embargo, cada vez más se desarrolla nuevo software ampliando y modificando los sistemas existentes y configurando e integrando software comercial o componentes del sistema.
Los procesos del software son complejos y, como todos los procesos intelectuales. y creativos, dependen de las personas que toman decisiones y juicios. Debido a la necesidad de juzgar y crear, los intentos para automatizar estos procesos han tenido un éxito limitado. Las herramientas de ingeniería del software asistida por computadora (CASE) pueden ayudar a algunas actividades del proceso. Sin embargo, no existe posibilidad alguna, al menos en los próximos años, de una automatización mayor en el diseño creativo del software realizado por los ingenieros relacionados con el proceso del software.
Una razón por la cual la eficacia de las herramientas CASE está limitada se halla en la inmensa diversidad de procesos del software. No existe un proceso ideal, y muchas organizaciones han desarrollado su propio enfoque para el desarrollo del software. Los procesos han evolucionado para explotar las capacidades de las personas de una organización, así como las características específicas de los sistemas, que se están desarrollando. Para algunos sistemas, como los sistemas críticos, se requiere un proceso de desarrollo muy estructurado. Para sistemas de negocio, con requerimientos rápidamente cambiantes, un proceso flexible y ágil probablemente sea más efectivo.
Aunque existen muchos procesos diferentes de software, algunas actividades fundamentales son comunes para todos ellos:
l. Especificación del software: Se debe definir la funcionalidad del software y las restricciones en su operación.
2. Diseño e implementación del software: Se debe producir software que cumpla su especificación.
3. Validación del software :. Se debe validar el software para asegurar que hace lo que el
cliente desea.
4. Evolución del software: El software debe evolucionar para cubrir las necesidades cambiantes del cliente.
Los procesos del software se pueden mejorar por la estandarización del proceso donde la diversidad de los procesos del software en una organización sea reducida. Esto conduce a mejorar la comunicación y a una reducción del tiempo de formación, y hace la ayuda al proceso automatizado más económica. La estandarización también es un primer paso importante para introducir nuevos métodos, técnicas y buenas prácticas de ingeniería del software.
un modelo del proceso del software es una representación abstracta de un proceso del software. Cada modelo de proceso representa un proceso desde una perspectiva particular. y así proporciona sólo información parcial sobre ese proceso. Se introducen varios modelos de proceso muy generales (algunas veces llamados paradigmas de proceso) y se presentan desde una perspectiva arquitectónica. Esto es, vemos el marco de trabajo del proceso. pero no los detalles de actividades específicas. Estos modelos generales no son descripciones definitivas de los procesos del software. Más bien, son abstracciones de los procesos que se pueden utilizar para explicar diferentes enfoques para el desarrollo de software. Puede pensarse en ellos como marcos de trabajo del proceso que pueden ser extendidos y adaptados para crear procesos más específicos de ingeniería del software.
Los modelos de procesos que se incluyen en este capítulo son:
EL MODELO EN CASCADA Considera las actividades fundamentales del proceso de especificación, desarrollo, validación y evolución, y los representa como tases separa del proceso, tales como la especificación de requerimientos, el diseño del software, la Implementación, las pruebas, etcétera.(TOMAREMOS ESTE MODELO COMO REFERENCIA PARA EL SIGUIENTE TRABAJO QUE ENCUENTRA DENTRO DE SUS ACTIVIDADES EL ANALISIS Y DEFINICION DE REQUERIMIENTOS Y EL DISEÑO DEL SISTEMA DEL SOFWARE)
DESARROLLO EVOLUTIVO: Este enfoque entrelaza las actividades de especificación, desarrollo y validación. Un sistema inicial se desarrolla rápidamente a partir de especificaciones abstractas. Éste se refina basándose en las peticiones del cliente para producir un sistema que satisfaga sus necesidades.
INGENIERIA DEL SOFWARE BASADO EN COMPONENTES: Este enfoque se basa en la existencia de un número significativo de componentes reutilizables. El proceso de desarrollo del sistema se enfoca en integrar estos componentes en el sistema más que en desarrollarlos desde cero.
Vamos a referirnos brevemente sobre el modelo CASCADA.
El primer modelo de proceso de desarrollo de software que se publicó se derivó de procesos de ingeniería de sistemas más generales (Royce, 1970).
Debido a la cascada de una fase a otra, dicho modelo se conoce como modelo en cascada o como ciclo de vida del software. Las principales etapas de este modelo se transforman en actividades fundamentales de desarrollo:
ANALISIS Y DEFINICION DE REQUERIMIENTOS: Los servicios, restricciones y metas del sistema se definen a partir de las consultas con los usuarios. Entonces, se definen en detalles y sirven como una especificación del sistema.
DISEÑO DEL SISTEMA DE SOFWARE: El proceso de diseño del sistema divide los requerimientos en sistemas hardware o software. Establece una arquitectura completa del sistema. El diseño del software identifica y describe las abstracciones fundamentales del sistema software y sus relaciones.
INTEGRACION Y PRUEBA DE UNIDADES: Durante esta etapa, el diseño del software se lleva a cabo como un conjunto o unidades de programas. La prueba de unidades implica verificar que cada una cumpla su especificación.
INTEGRACION Y PRUEBA DEL SISTEMA: Los programas o las unidades individuales de programas se integran y prueban como un sistema completo para asegurar que se cumplan los requerimientos del software. Después de las pruebas, el sistema software se entrega al cliente.
FUNCION Y MANTENIMIENTO: Por lo general (aunque no necesariamente), ésta es la fase más larga del ciclo de vida. El sistema se instala y se pone en funcionamiento práctico. El mantenimiento implica corregir errores no descubiertos en las etapas anteriores del ciclo de vida, mejorar la implementación de las unidades del sistema y resaltar los servicios del sistema una vez que se descubren nuevos requerimientos.
...