Site hosted by Angelfire.com: Build your free website today!


Análisis y Diseño de Sistemas (S-102)

Maestría en Sistemas de Información
  Fundación Arturo Rosenblueth


Instructor:  J. Jesús María Zavala Ruiz

Introducción

A falta de una materia en Ingeniería de Software se le da un poco más el énfasis en esto. 

He de comentar que esta materia es una materia donde no se necesitan prerrequisitos, más allá de la habilidad para leer, escribir y reflexionar sobre el proceso mismo de Análisis y Diseño de Sistemas de Información. Un poco de conocimientos o experiencia sobre administración de proyectos es muy útil, sobretodo para definir el alcance del proyecto, su programación y finalmente su control.

Es de fundamental importancia que el alumno se esfuerce por leer los documentos que se sugieren como lecturas con el fin de que cuente con los elementos necesarios para la discusión previos a la clase y que realice las tareas para reforzar la comprensión de los temas tratados. 

Esta es una materia donde más que computadora, se requiere imaginación y sentido común, sobretodo para realizar los proceso de abstracción.

Se recomienda ampliamente la lectura de la obra de Frederick P. Brooks Jr. (1995) The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition) Addison-Wesley, que a pesar de haberse escrito varios lustros antes, muchos de sus principios siguen vigentes. Es un libro que todo desarrollador de sistemas debe tener en su biblioteca personal. Según Ed. Yourdon, es el libro que él elegiría si se quedara en una isla desierta...

Mucho del material para el curso se encuentra en la Biblioteca Digital de la ACM disponible en http://portal.acm.org, que considero uno de los mejores recursos de consulta en Ciencias de la Computación, y que gracias a un gran descuento, por solo $43.00 dólares al año como miembro de la ACM residente en un país en desarrollo (http://www.acm.org/membership/L2-3), podrá acceder a los últimos 50 años de la literatura en computación (revistas, proceedings, conferencias, etc.), más 750,000 referencias, mús de 450 cursos gratuitos cerca de 400 libros para su consulta en línea.

Los proceedings de la conferencia sobre el Futuro de la Ingeniería de Software del 2000 de la Conferencia Internacional en Ingeniería de Software (ICSE) (International Conference on Software Engineering,  Proceedings of the conference on The future of Software engineering 2000).

Estimado Alumno: ¡espero que lo disfrutes y bienvenido (a)! ¡Te invito a nos divirtamos todos juntos!

Registro

Antes de iniciar el curso te pido que te registres aquí con el fin de obtener sus datos generales y de contacto y que te suscribas al grupo de discusión del curso en Yahoo Groups. Por favor revisa los datos capturados para  evitar errores, principalmente tu correo electrónico.

Lugares y Fechas

Duración

42 horas

Objetivos

Al concluir el  curso el alumno:

Programa

Clase Tema Lecturas Recomendadas (opcionales) Tarea para entregar
(individual y obligatoria)
Primera Parte

Presentación del Curso

Integración de grupo y equipos de trabajo

Introducción

  • La Crisis del Software 
  • La Ingeniería de Software (SE y Fábula)
  1. * Buhrer, Koni (2000)"From Craft to Science: Searching for First Principles of Software Development" The Rational Edge Dec.
  2. * Frederick P. Brooks (1995) The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition) Addison-Wesley.
  3. Finkelstein, A. y Kramer, J. (2000) Software Engineering: A Roadmap. ICSE 2000, ACM.  pp. 3-22 Descárgalo aquí.
  4. Zavala Ruiz, J. (2003) "Fábula de Esopo 'La Tortuga y La Libre'", apuntes.
Investigar: Caso de una falla de software en México en prensa o en línea.

Leer: 

2 Conceptos generales
  • Conceptos de sistemas
  • Conceptos sobre Análisis y Diseño de Sistemas
  • Técnicas de análisis de sistemas
  • Analista de sistemas
  • Modelo de equipo
  • The Mythical Man-Month
  • No-Silver Bullet
  • SDLC 
  • La guerra del software (Fundamentos)
  1. * Kruchten, Philippe (2000) From Waterfall to Iterative Lifecycle - A tough transition for project manager, Rational Software.
  2. * Kruchten, Phillippe (2001) What Is the Rational Unified Process? The Rational Edge. Jan. 
  3. Jacobson, Ivar (2000) The Roadmap to the Unified Software Development Process. Cambridge University Press-SIGS Books, USA, 358 pág
  4. Fuggetta, A. (2000) Software Process: A Roadmap. ICSE 2000, ACM. pp. 25-34. Descárgalo aquí.
  5. * Phillips, Dwayne (2001). The Software Project Manager´s Handbook; Principles That Work At Work Computer Society. Chap. 5, 6 y 7.

Investigar: Vacantes en software (analista, desarrollador, arquitecto, ingeniero de software, ingeniero de requerimientos, lider de proyecto) 

Leer:  

(8 pág.) 

3

 

Metodologías Orientadas a Objetos

  • Análisis estructurado de Yourdon
  • Análisis OO de Yourdon
  • Análisis y Diseño OO de Martin/Odell
  • AOO de Wirfs-Brooks
  • OMT de Rumbaugh
  • ADOO de Booch
  • OOSE y Objectory de Jacobson
  1. Engels, G. y Groenewegen, L. (2000) Object- Oriented Modeling: A Roadmap. ICSE 2000 ACM. pp. 103-116. Descárgalo aquí.
  2. Jacobson, Ivar (2000) The Roadmap to the Unified Software Development Process. Cambridge University Press-SIGS Books, USA, 358 pág.

Elaborar tabla comparativa de métodos de análisis y diseño de sistemas  

Investigar sobre la metodología a exponer individual: Introducción, Biografía del autor, Metodología, Notación, Ejemplo, Ventajas y Desventajas, Bibliografía. (Buscar los libros y artículos del autor).

Leer:  

(53 + 28 pág.)

4 Conceptos OO
  • Objetos y Clases
  • Encapsulamiento
  • Mensajes
  • Métodos
  • Jerarquía
  • Herencia y polimorfismo (02)
Ver película sugerida por el profesor y aplicar los conceptos de la teoría de objetos. Investigar: Teoría de la orientación a objetos 

Leer: 

(23 pág.)

5 Modelado de Negocio (por qué)
  • Dominio del problema
  • WBS
  • Divide y vencerás
  • Plan del proyecto
  • Factibilidad
  • Tecnología
  • Organización (seminario)
  1. Ray J. Paul, Alan Serrano (2003)
    "Business process modeling/reengineering: The process of process reengineering: simulation for business processes and information systems design", Proceedings of the 35th conference on Winter simulation: driving innovation, ACM, December.

  2. Anderson, Philip (1999) "Complexity Theory and Organization Science", Organization Science, Vol. 10, No. 3, Special Issue: Application of Complexity Theory to Organization Science. (May - Jun., 1999), pp. 216-232.

  3. Astley, W. Graham  y Van de Ven, Andrew H. (1983) "Central Perspectives and Debates in Organization Theory",
    Administrative Science Quarterly, Vol. 28, No. 2. (Jun.), pp. 245-273.

Proyecto: Problema, alcance, justificación, estudio de factibilidad, modelado del negocio, modelo del dominio del problema y glosario, narrativa de las especificaciones del proyecto.

Leer: 

Segunda parte
6 Ingeniería de Requerimientos 
  • Ingeniería de requerimientos
  • Técnicas (06)
  1. Phillips, Dwayne (2001) "Requirements" en Phillips, Dwayne The Software Project Manager´s Handbook; Principles That Work At Work Computer Society. Chapter 5. 
  2. Conallen, Jim (2000) Modeling Web Application with UML, Addison-Wesley.

Proyecto: Justificar las técnicas de ingeniería de requerimientos a utilizar en su proyecto (2 cuartillas)

Elaborar una breve descripción de cómo se realiza la especificación de requerimientos en su empresa y documento muestra. (2 cuartillas)

Leer: Nuseibeh, B. y Easterbrook, S. (2000) Requirements Engineering: A Roadmap. ICSE 2000 ACM. pp. 35-46. Descárgalo aquí.

McEwen, Scott (2004), "Requirements: An Introduction" Developers Works, IBM, 2 Apr 2004.

(11 pág.)

7 Modelado de sistemas (quién, con qué)
  • Introducción a UML
  • Proceso Unificado (RUP)
  • Arquitecturas de sistemas
  • Consideraciones de implementación
  • Paquetes
  • Modelo de Implementación
  • Requerimientos no funcionales (03-05, 13)
  1. Poster UML
  2. Booch, et.al. The Unified Modeling Language User Guide Sección 6.
  3. Conallen. Modeling Web Application Architectures with UML™, Rational Software, 2000.
  4. Zavala Ruiz, J. (2000) "La Ingeniería de Software", Ensayo
Proyecto: Arquitectura del sistema, modelo de paquetes y especificación de requerimientos no funcionales

Leer: Heumann (2001). What Does "No Time for Requirements" Mean? The Rational Edge. Nov.

8 Modelado Estructural (qué)
  • Diagramas de clases
  • Diagramas de objetos
  • Modelo de base de datos
  • Esquema de la base de datos
  • Ingeniería en reversa de base de datos
  • Reportes (10, modelado de datos)

Booch, et.al. (1998) "Structural Modeling" The Unified Modeling Language User Guide Addison-Wesley 1998. Sección 1 a 4

 

Investigar y localizar un proyecto open source y traer  impreso el código del archivo que crea la base de datos y sus instrucciones SQL.

Proyecto: Requerimientos usando la técnica s-v-c, tabla clase-clase, modelo relacional de la base de datos, modelo de datos o modelo físico de la base de datos actual, diagrama de clases.

Traer: Los formatos y reportes necesarios de su proyecto (aplicar técnica s-v-c).

Leer: Booch, Grady (1992) Object-Oriented Analysis and Design with Applications (2nd Edition) Addison-Wesley, pp. 81-168 y resolver cuestionario...

(87)

9 Modelado de Comportamiento (cómo)
  • Procesos
  • Diagrama de actividades
  • Diagrama de estados (09, práctico 88)
Booch, et.al. The Unified Modeling Language User Guide Sección 4.
Proyecto: Diagrama de actividades de sus procesos, diagramas de estados.

Leer: Lieberman (2001) UML Activity Diagrams: Versatile Roadmaps for Understanding System. The RationalEdge, Apr.

Lieberman (2001) Using UML Activity Diagrams for the Process View The RationalEdge, May.

10 Especificación de  requerimientos
  • Requerimientos funcionales
  • Casos de Uso 
  • Diagramas de Secuencia
  • Diagramas de Interacción
  • Human Computer Interaction (HCI)
  • Documento de diseño
  • Pruebas
  • (07, práctico 1, 15)
 

Bittner, et.al. Use Case Modeling Addison-Wesley. 1st. ed. 2002 (referencia opcional)

Lieberman (2001) UML Activity Diagrams: Detailing User Interface Navigation. The RationalEdge, Oct. 2001

Cockburn, Writing Effective Use Cases Addison-Wesley 2000 (referencia opcional) 

Crítica a Harrold, M. J. Testing: A Roadmap. ICSE 2000 ACM. pp. 61-72 Descárgalo aquí

Proyecto: Requerimientos según el Std. IEEE-830 (elegir criterios y preparar justificación, y desarrollar un par de requerimientos de acuerdo al estándar)

Diagramas de casos de uso, diagramas de secuencia, Propuesta de interfase de usuario.

Leer: 

Tercera Parte
11 Exposición de proyecto Proyecto: Exposición de avances y crítica grupal
12 Calidad del Software y otros factores
  • Calidad del Software
  • Seguridad
  • Obsolescencia
  • Proceso (16)
Software Enginnering Institute. CMMISM for Systems Engineering/Software Engineering/Integrated Product and Process Technical Report CMU/SEI-2002-TR-011 (Referencia)

Fenton, N. E. y Neil, M. Software Metrics: A Roadmap. ICSE 2000 ACM. pp. 357-370

Devanbu, P. T. y Stubblebine, S. Software Engineering for Security: A Roadmap. ICSE 2000 ACM. pp. 227-239 Descárgalo aquí

Boehm B. y Sullivan, K. Software Economics: A Roadmap ICSE 2000 ACM. pp. 319-343 Descárgalo aquí

Proyecto: Exposición de avances y crítica grupal
14 Nuevos paradigmas de desarrollo de software
  • Modelo bazar
  • Open source, software libre (FLOSS)
  • Licenciamiento
  1. Stallman, Richard (1999) “The GNU Operating System and the Free Software Movement”, Tolvards, Linus (1999) "The Linux Edge", Brian Behlendorf Open Source as a Business Strategy  y The Tanenbaum-Torvalds Debate en DiBona, Ockman y Stone (comp.) Open Sources: Voices from the Open Source Revolution. O’Reilly, 280 pág.
  2. Raymond, E. S. The Cathedral and the Bazaar; Musings on Linux and Open Source by an Accidental Revolutionary. O´Reilly 1999.
  3. Hissam, S. et. al. Perspectives on Open Source Software Technical Report CMU/SEI-2001-TR-019

Investigar las biografías de Richard Stallman, Erick S. Raymond, Miguel de Icaza y Linus Tolvalds

Traer una copia de una licencia de software propietaria y su equivalente FLOSS

Comparar las licencias de software: elija sus parámetros y comparar propietarias y Open Source Initiative (OSI) y argumentar. Sea objetivo y crítico y demuestre. Sálgase de la esfera política. Retome la lectura de Covey sobre paradigmas.

Leer: Wheeler, D. A. (2003) "Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers!", ensayo.

Escribir un ensayo: "Propuesta de un Proyecto Open Source en (la organización donde trabaja Ud.)" que retome la ingeniería de software, la crisis del software, la situación actual de la organización, las ventajas y desventajas y la estrategia para iniciar un proyecto open source. Si ya usa FLOSS, relate qué obstáculos se tuvo o se tiene y qué beneficios ha dado. Sea creativo y original. Cree un documento que le sirva a su organización y a Ud.

14

Reflexiones finales

Proyecto: Exposición de avances y crítica grupal

Temas y subtemas

  1. Fundamentos del desarrollo de sistemas
  1. Ciclo de vida del desarrollo de sistemas 
  1. Introducción al Paradigma de Orientación a Objetos 
  1. Análisis y diseño de sistemas

Evaluación

Bibliografía, herramientas y sitios de interés

Tareas extraclase

Requisitos

Proyecto final

El proyecto final tiene la finalidad de sintetizar el conocimiento y expresar de una manera práctica lo aprendido. Para lo cual entregará un documento en papel tamaño carta engargolado, con un CD anexo al documento que contenga las versiones electrónicas de los documentos y prototipos desarrollados. Asegurarse de que el CD es leible. 

La entrega final tiene fecha límite la primera clase del siguiente ciclo escolar o curso. La fecha es NO PRORROGABLE y la entrega es en las oficinas de la Fundación en la Ciudad de México, donde deberán recabar acuse de recibido. El trabajo será escrito en formato RTF (No en Word), opcionalmente con una copia en PDF. Las imágenes serán en formato jpg, gif o png. Deberá anexar los modelos creados.

El reporte del proyecto final comprenderá lo siguiente:

Reglas

Otros artículos de interés

Los participantes que ya tomaron el curso comentan... lo que les gustó y disgustó?...

Comentarios, recomendaciones y sugerencias al y del instructor...

Desde el 19 de mayo del 2003, 14:09 hr CST, tu eres el visitante

Fecha de última actualización: 27 de mayo del 2005, 07:35 hr CST

Email: jzavalar@yahoo.com

Regresar