Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INTRODUCCIÓN
Debido a las tecnologías que utilizamos como parte de nuestra vida diaria, en el campo de
la programación surgen algunas necesidades que se requieren cubrir respecto al
desarrollo de un sistema de información (SI); éste deberá estar actualizado y brindar la
posibilidad al programador del mejoramiento para su aplicación, así como posibilitar la
solución eficaz y a corto plazo de problemas que pudieran presentarse en un futuro en el
sistema.
CONCEPTOS BÁSICOS
El desarrollo de un sistema de información puede iniciarse al existir problemas con el
sistema actual, incorporar nuevas oportunidades de negocio, aumentar la competencia,
hacer uso más eficiente de la información o por crecimiento en la organización.
Metodología
Una metodología de desarrollo de software incluye un conjunto de actividades utilizadas
como marco de referencia para la estructuración, planeación y control de todo el proceso
de desarrollo de los sistemas de información.
Las metodologías de desarrollo de sistemas deben definir objetivos, fases, tareas,
productos y responsables, necesarios para la correcta realización del proceso y su
seguimiento.
Principales objetivos de una metodología de desarrollo:
a) Asegurar la uniformidad y calidad tanto del desarrollo como del sistema en sí.
b) Satisfacer las necesidades de los usuarios del sistema
c) Conseguir un mayor nivel de rendimiento y eficiencia del personal asignado al
desarrollo
d) Ajustarse a los plazos y costes previstos en la planificación
e) Generar de forma adecuada la documentación asociada a los sistemas
f) Facilitar el mantenimiento posterior de los sistemas
Tomando como base la clase de notación empleada para especificar los productos
obtenidos en las etapas de análisis y diseño, las metodologías pueden clasificarse en dos
tipos: estructuradas y orientadas a objetos.
Por otra parte, considerando su filosofía de desarrollo, las metodologías con mayor énfasis
en la planificación y control del proyecto, en especificación precisa de requisitos y
modelado, se conocen como tradicionales (o peyorativamente pesadas o peso pesado).
Otras metodologías denominadas ágiles están más encauzadas a la generación de código
con ciclos muy cortos de desarrollo; se dirigen a equipos de desarrollo pequeños; hacen
especial hincapié en aspectos humanos asociados al trabajo en equipo e involucran
activamente al cliente en el proceso.
Revisa la información sobre las siguientes metodologías:
Metodologías estructuradas
Los métodos estructurados comenzaron a desarrollarse a fines de la década de 1970 con
la programación estructurada. Luego, a mediados de esa misma década, aparecieron
primero algunas técnicas para el diseño (por ejemplo, el diagrama de estructura), y
posteriormente para el análisis (como el diagrama de flujo de datos). Estas metodologías
son particularmente apropiadas en proyectos que utilizan para la implementación
lenguajes de tercera y cuarta generación.
Metodologías orientadas a objetos
Su historia va unida a la evolución de los lenguajes de programación orientada a objeto.
Entre los más representativos están Simula (fines de la década de 1960), Smalltalk-80
(fines de la década de 1970), la primera versión de C++ por Bjarne Stroustrup (1981), y
actualmente Java o C# de Microsoft. Al término de la década de 1980 comenzaron a
consolidarse algunos métodos orientados a objeto.
En 1995, Booch y Rumbaugh propusieron el método unificado, con la ambiciosa idea de
conseguir una unificación de sus métodos y notaciones, que posteriormente se reorientó
a un objetivo más modesto, para dar lugar al Unified Modeling Language (UML), la
notación OO más popular en la actualidad.
Algunos métodos OO con notaciones predecesoras de UML son OOAD (Booch), OOSE
(Jacobson), Coad & Yourdon, Shaler & Mellor y OMT (Rumbaugh).
Y algunas metodologías orientadas a objetos que utilizan la notación UML son Rational
Unified Process (RUP), Open y Métrica (que también soporta la notación estructurada).
Metodologías tradicionales (no ágiles)
Las metodologías no ágiles son aquéllas que están guiadas por una fuerte planificación
durante todo el proceso de desarrollo. Son llamadas también metodologías tradicionales o
clásicas, donde se realiza una intensa etapa de análisis y diseño antes de la construcción
del sistema.
TÉCNICA
Gran parte del éxito de un proyecto de desarrollo de software radica en la identificación
de las necesidades del negocio (definidas por la alta dirección), así como en la interacción
con los usuarios funcionales para la recolección, clasificación, identificación, priorización y
especificación de los requisitos del sistema.
Entre las técnicas utilizadas para la especificación de requisitos se encuentran las
siguientes:
Casos de uso
Los casos de uso se construyen a partir del conocimiento de los usuarios, en tanto son
similares a los problemas o situaciones cotidianas, lo que permite ir ajustando el sistema
de manera adecuada a la operación. Para garantizar la participación de los usuarios en
este proceso se emplea un lenguaje común y cotidiano, evitando el uso de tecnicismos.
En otras palabras, un caso de uso es una secuencia de interacciones que se desarrollarán
entre un sistema y sus actores en respuesta a un evento que inicia un actor principal sobre
el propio sistema.
Herramientas
Las herramientas de ayuda para el desarrollo de un sistema de información (SI) surgieron
para intentar solucionar los problemas inherentes a los proyectos de generación de
aplicaciones informáticas: plazos y presupuestos incumplidos, insatisfacción del usuario,
escasa productividad y baja calidad de los desarrollos.
Este proceso se ve infl uenciado por la creati vidad y decisiones de las personas
involucradas: es totalmente intelectual. Se puede comparar con cualquier
proyecto de ingeniería, aunque en el desarrollo de soft ware intervienen retos
adicionales relacionados con las característi cas y naturaleza del producto que
se obtendrá. Los rasgos parti culares que están vinculados y ti enen infl uencia
en el proceso se detallan a conti nuación.
Por pequeña que sea, la complejidad de un producto de soft ware es tal que
imposibilita conseguir su confi abilidad al 100 %. Una gran combinación de
factores hace muy difí cil verifi car de manera exhausti va todas las situaciones
posibles de ejecución que puedan presentarse (ingreso de datos, valores de
las variables, almacenamiento de datos, relación con otras aplicaciones y el
equipo en el que se trabaja, entre otros aspectos).
Defi nición
El ciclo de vida del desarrollo de los sistemas (SDLC, Systems Development Life
Cycle) es un enfoque por fases para el análisis y el diseño, cuya premisa
principal consiste en que los sistemas se desarrollan mejor uti lizando un ciclo
específi co de acti vidades del analista y el usuario.
Etapas/fases
Para cada una de las fases listadas en el punto anterior hay subetapas (o
tareas). El modelo de proceso o modelo de ciclo de vida uti lizado para el
desarrollo de sistemas defi ne el orden para las acti vidades involucradas y la
coordinación entre ellas, su enlace y realimentación. Entre los modelos más
conocidos están el de cascada o secuencial, en espiral e iterati vo incremental.
Modelo en cascada
El primer modelo de desarrollo de soft ware publicado se derivó de otros
procesos de ingeniería2, y tomó las acti vidades fundamentales del proceso de
especifi cación, desarrollo, validación y evolución, que representa como fases
separadas del proceso.
Una fase no comienza hasta que termine la fase anterior, y generalmente se
incluye la corrección de los problemas encontrados en fases previas.
El análisis y diseño del sistema comprende todo un proceso para examinar las
situaciones de la organización, con el fi n de mejorarlas con nuevos métodos y
procedimientos.
En los últi mos años las tecnologías han estado evolucionando día a día; por tal
moti vo es de suma importancia estar actualizado en el ámbito del desarrollo
de sistemas; debes conocer los conceptos básicos, la metodología y
herramientas de programación para poder desarrollar un soft ware y cubrir las
necesidades necesarias para el usuario o empresa. Por otro lado, es
importante saber el ciclo de vida de un sistema y sus requerimientos
necesarios o soft ware para que no caduque, se haga obsoleto o en otro caso
actualizarlo para tomar una buena decisión.
En esta acti vidad reforzarás los conocimientos adquiridos con el estudio del
tema, ya que te permiti rá identi fi car el proceso del desarrollo de sistemas.
Pressman, R. (1997). Ingeniería del soft ware: un enfoque prácti co. México:
McGraw-Hill.
Recuperado de
htt ps://programas.cuaed.unam.mx/repositorio/moodle/pluginfi le.php/1150/
mod_resource/content/1/contenido/index.html