Publicado el 13 de Diciembre del 2019
1.350 visualizaciones desde el 13 de Diciembre del 2019
1,2 MB
38 paginas
Creado hace 7a (02/07/2016)
Para ver una copia completa de la licencia, acudir a la dirección
http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.es
(3)
(2)
metodología de la
programación
esquema de la unidad
(2.2.1) introducción
(2.2.2) fases de las metodologías
(2.2.3) prototipos
(2.5.1) diagramas de flujo
(2.5.2) pseudocódigo
(2.1) esquema de la unidad ____________________________________________ 5
(2.2) metodologías ____________________________________________________ 6
6
6
7
(2.3) fase de análisis ___________________________________________________ 10
(2.4) diseño___________________________________________________________ 12
(2.5) notaciones para el diseño de algoritmos ___________________________ 13
13
15
(2.6) UML ___________________________________________________________ 32
32
33
34
36
(2.7) índice de ilustraciones ___________________________________________ 38
(2.6.1) introducción
(2.6.2) diagramas UML
(2.6.3) diagrama de casos de uso
(2.6.4) diagramas de actividad
(5)
fundamentos de programación
(unidad 2) metodología de la programación
(2.1) metodologías
(2.1.1) introducción
Como ya se comentó en el tema anterior, la aplicación pasa por una serie de
pasos relacionados con el ciclo de vida de la aplicación. En el tema anterior se
indicaron los siguientes pasos:
(1)
(2)
(3)
(4)
(5)
Análisis
Diseño
Codificación o implementación
Prueba
Mantenimiento
Esos pasos imponen un método de trabajo, lo que comúnmente se conoce como
metodología. Las metodologías definen los pasos y tareas que hay que realizar
para realizar un determinado proyecto. Aplicadas a la informática definen la
forma exacta de desarrollar el ciclo de vida de una aplicación.
Una metodología marca las forma de realizar todas las fases de creación de
un proyecto informático; en especial las relacionadas con el análisis y diseño.
Las metodologías marcan los siguientes elementos:
Pasos exactos a realizar en la creación de la aplicación. Se indica de
forma exacta qué fases y en qué momento se realiza cada una.
Protocolo. Normas y reglas a seguir escrupulosamente en la realización
de la documentación y comunicación en cada fase.
Recursos humanos. Personas encargadas de cada fase y responsables de
las mismas.
La metodología a elegir por parte de los desarrolladores es tan importante que
algunas metodologías son de pago, pertenecen a empresas que poseen sus
derechos. En muchos casos dichas empresas fabrican las herramientas (CASE)
que permiten gestionar de forma informática el seguimiento del proyecto
mediante la metodología empleada.
(2.1.2) fases en las metodologías
Todas las metodologías imponen una serie de pasos o fases a realizar en el
proceso de creación de aplicaciones; lo que ocurre es que estos pasos varían de
unas a otras. En general los pasos siguen el esquema inicial planteado en el
punto anterior, pero varían los pasos para recoger aspectos que se consideran
que mejoran el proceso. La mayoría de metodologías se diferencian
fundamentalmente en la parte del diseño. De hecho algunas se refieren sólo a
esa fase (como las famosas metodologías de Jackson o Warnier por ejemplo).
(6)
Por ejemplo la metodología OMT de Rumbaugh propone estas fases:
1er curso de administración de sistemas informáticos
autor: Jorge Sánchez – www.jorgesanchez.net
Análisis
Diseño del sistema
Diseño de objetos
Implementación
Naturalmente con esto no se completa el ciclo de vida, para el resto sería
necesario completar el ciclo con otro método.
En la metodología MERISE desarrollada para el gobierno francés (y muy
utilizada de forma docente en las universidades españolas), se realizan estas
fases:
Esquema Director
Estudio Previo
Estudio Detallado
Estudio Técnico
Realización
Mantenimiento
Otra propuesta de método indicada en varios libros:
Investigación Preliminar
Determinación de Requerimientos.
Diseño del Sistema
Desarrollo del Software
Prueba del Sistema
Implantación y Evaluación
En definitiva las fases son distintas pero a la vez muy similares ya que el proceso
de creación de aplicaciones siempre tiene pasos por los que todas las
metodologías han de pasar.
(2.1.3) prototipos
Independientemente de la metodología utilizada, siempre ha habido un
problema al utilizar metodologías. El problema consiste en que desde la fase de
análisis, el
la aplicación hasta que esté
terminada,
independientemente de si el fallo está en una fase temprana o no.
cliente
ve
(7)
fundamentos de programación
(unidad 2) metodología de la programación
Ilustración 2-1, Fases clásicas de desarrollo de una aplicación
Esta forma de trabajo tiene el problema de que al usuario le puede llegar una
aplicación distinta de la que deseaba de forma bastante habitual. El arreglo es
complicado porque no sabemos en qué fase está el problema.
De ahí que apareciera el concepto de prototipo. Un prototipo es una forma
de ver cómo va a quedar la aplicación antes de terminarla (como la maqueta de
un edificio). Se suelen realizar varios prototipos; cuánto más alta sea la fase en
la que se realiza, más parecido tendrá con la aplicación final.
Ilustración 2-2, Prototipos en las metodologías modernas
En esta otra forma de trabajar, el cliente participa en todas las fases.
(8)
1er curso de administración de sistemas informáticos
autor: Jorge Sánchez – www.jorgesanchez.net
(2.1.4) metodologías iterativas
Uno de los problemas del ciclo de vida clásico consiste en que los problemas a
veces se detectan en las fases finales del proyecto. De ser así hay que regresar a
las primeras fases y esto es problemático.
Por eso se idearon metodologías que no fueran lineales (las metodologías
lineales son las que cuando se acaba una fase, se da por concluida hasta la fase
de mantenimiento).
Un ejemplo de ellas es por ejemplo las metodologías en espiral:
Ilustración 2-3, Ejemplo de desarrollo en espiral
En este tipo de metodologías, cuando se completa el ciclo, se vuelve a empezar
tras analizar el cumplimiento de objetivos. Así se va refinando el sistema en
cada vuelta. Aunque nunca se conseguirá el sistema óptimo, cada vuelta
consigue un sistema mejor (él óptimo sería el centro de la espiral).
Otro modelo (utilizado en el proceso unificado del que hablaremos más
adelante) es el iterativo. Con este método se realizan varias iteraciones del ciclo
de vida (al estilo del modelo en espiral) de modo que las primeras iteraciones
dedican más tiempo a las primeras fases del ciclo de vida y las últimas más a las
últimas. Así cuando se entrega el sistema, ha sido depurado lo suficiente para
que el producto tenga calidad.
(9)
PlanificaciónDesarrollo y pruebasAnálisis de riesgosObjetivos fundamentos de programación
(unidad 2) metodología de la programación
Ejemplo:
Ilustración 2-4, Metodología iterativa
(2.1.5) recursos humanos que intervienen en el ciclo de vida
Como se ha comentado antes, las metodologías no sólo indican los pasos y
protocolos, sino también las personas que los realizan. Por tanto las
metodologías imponen una serie de profesionales de las sistemas informáticos
que intervienen en las distintas fases durante el desarrollo del software.
Evidentemente el personal depende de la empresa en sí. Las grandes
empresas productores de software, como Adobe, Google o Microsoft por
ejemplo, no tienen la misma estructura que los departamentos de informática
de empresas dedicadas a otro fin o a los pequeños productores de software.
En cualquier caso suele haber los siguientes profesionales:
Directivos. Desde al presidente de la empresa al gerente de informática,
todos ellos son encargados de la gestión de la empresa. No tienen por
qué tener conocimientos informáticos y sí de gestión empresarial. Su
labor es coordinar todos los recursos necesarios para que funcione el
proceso correctamente.
Analista de sistemas. Responsable del proyecto y director de las fases
de desarrollo. Tiene conocimientos avanzados de programación, análisis
y diseño y además habilidades comunicativas. Es el encargado de realizar
las entrevistas durante la fase de análisis
Analistas-programadores. Se tratan de los profesionales que realizan la
fase de diseño. Tienen conocimientos avanzados de programación, pero
fundamentalmente realizan las fases de análisis y diseño a las órdenes de
los anteriores.
Programadores. Se trata de los profesionales encargados de realizar la
fase de implementación a partir de los diseños de los analistas
(10)
1er curso de administración de sistemas informáticos
autor: Jorge Sánchez – www.jorgesanchez.net
Especialistas. Se trata de profesionales conocedores de software y
hardware importante en el proceso de desarrollo pero muy específico.
Entre ellos están:
Administradores de bases de datos. Encargados de gestionar el
sistema de base de datos que utilice la aplicación desarrollada
Administradores de red. Encargados de gestionar los recursos de red
local para un correcto funcionamiento
Programadores de sistemas. Encargados del mantenimiento del
software necesario para el correcto
Sistema Operativo y
funcionamiento de la aplicación.
Operadores. Al servicio de los especialistas o bien del mantenimiento de
la aplicación, especialmente en el apoyo al usuario.
(2.2) fase
Comentarios de: Unidad 2: Metodología de la programación (0)
No hay comentarios