CIS-425: Análisis y diseño de sistemas Semana 1
description
Transcript of CIS-425: Análisis y diseño de sistemas Semana 1
scis.regis.edu ● [email protected]
CIS-425: Análisis y diseño de sistemasSemana 1
Dr. Jesús BorregoLead Faculty, COSRegis University
1
Agenda•Instructor•Introducción al curso•Programa de estudios•Capítulo 1 – Contexto de métodos de
análisis y diseño•Capítulo 2 – Bloques de construcción de
informática•Capítulo 3 – Desarrollo de sistemas de
informática•Proyecto•Siguientes clases2
InstructorDr. Jesús BorregoEducación
◦PhD MIS; MS CS; BS CS; BS EE
Ubicado:◦Colorado Springs
Casado, 5 hijosMaestro desde 1989,
a nivel de Asociado, Licenciado y Maestría
En Regis U. desde 1995
3
Introducción•Prerequisitos
▫CS 362 – Estructuras de datos•Materiales del curso
▫Libro de texto▫Acceso a computadora personal▫MS Project y Visio – copias de evaluación
disponibles por Microsoft
4
Programa de estudios•Página Web del instructor:
http://academic.regis.edu/jborrego •Página del curso:
http://academic.regis.edu/jborrego/CIS_425.htm•Estudia el análisis y diseño de sistemas
informáticos basados en el computador. Considera procesos de transformación y diseño integral. Incluye la tecnología avanzada, enfatizando sistemas expertos y basados en el conocimiento. Considera recursos humanos, comunicaciones y computadoras en un marco sistémico.
5
Libro de textoWhitten, Jeffrey L., and Bentley, Lonnie D. (2007)Systems Analysis and Design. (7th edition). Boston: Irwin/McGraw-Hill. ISBN 13: 978-0-07-305233-5 (REQUERIDO)NOTA: 6a o 8a edición no debe usarse
7
Método de evaluación
8
ASIGNACION VALOR Tarea 25%Participación 10%Presentaciones 25%Proyecto final 40%
----------TOTAL 100 %
Horario tentativo de clases
9
•Página Web
Vocabulario clave•Federation•Methodology•Systems
Development LifeCycle
•Federación•Metodología•Ciclo vitalicio del
desarrollo de sistemas
10
Cap. 1 – Contexto de los métodos de análisis y diseño• Supongan que son programadores y su Supongan que son programadores y su
cliente les pregunta que le hagan un cliente les pregunta que le hagan un programa.programa.
• ¿Por donde empiezan?¿Por donde empiezan?• ¿Como se aseguran que el cliente reciba lo ¿Como se aseguran que el cliente reciba lo
que necesita?que necesita?• ¿Como previenen desacuerdos entre lo ¿Como previenen desacuerdos entre lo
que el cliente quería y lo que se le que el cliente quería y lo que se le entregó?entregó?
11
Interesados•Dueños del sistema•Usuarios del sistema
▫Internos y externos•Diseñadores•Constructores•Analistas•Proveedores externos de servicios•Gerente del proyecto
12
13
Fig 1-1
Organización Típica– Fig. 1-2
14
1 – Dueños del sistema2 – Diseñadores/ Constructores3 – Analiistas4 – Diseñadores5 – Analistas
Analistas de sistemas•Interfaz entre clientes y diseñadores•Traducen requisitos del negocio y requisitos
técnicos▫Se comunica con los clientes en su propio
lenguaje▫Se comunica con los programadores en su
propio lenguaje▫El lenguaje es diferente
¿Que es un usuario?•Típicamente proviene del mundo de negocios
15
Analista de sistemas– Fig. 1-3
16
Analista de sistemas - Habilidades•Habilidades técnicas•Habilidades de comunicación•Habilidades de solución de problemas•Habilidades interpersonales•Flexibilidad•Adaptabilidad•Paciencia
17
Agentes de cambio– Fig. 1-5
18
Evolución de los negocios que impactan a los sistemas•Economía global•Internet •eCommerce•Seguridad y privacidad•Leyes y Reglamentos•Tecnología
▫Dispositivos móviles▫Dispositivos inteligentes
•Aplicationes empresariales
19
Applicaciones de negocios - Fig 1-9
20
Cadena de suministro – Fig 1-10
21
Integrando aplicaciones de negocios– Fig 1-11
22
23
Desarrollo de sistemas y solucionando problemas
Simple proceso•Identificar el problema•Analizar y entender el problema•Buscar soluciones y definir las
expectativas•Encontrar alternativas y decidir en el
curso de acción•Diseñar la solución elegida•Implementar la solución•Evaluar los resultados
24
25
Actividad 1•Análisis de sistemas (12:59):
http://www.youtube.com/watch?v=36EnmQk1uxM
26
Cap. 2 – Bloques de construcción•Sistemas de negocios
▫Oficina delantera Mercadotecnia Ventas Gestión de clientes
▫Oficina trasera Recursos humanos Finanzas Fábrica Inventario
27
Federación de sistemas de Información
28
Aplicaciones de sistemas de información – Fig. 2-2
29
30
1. Responds to inputs (orders)2. Produces outputs (invoices)3. Produces Reports4. Produces operational management info5. Relies on multiple databases6. Populates data warehouse 7. Provides read only access to warehouse8. Captures business intelligence9. Monitors problem spots10. Includes personal automation systems11. Provides access to office automation
Aplicaciones de sistemas de información – Fig. 2-2
Bloques de construcción de los sistemas de información – Fig. 2-3
31
Bloques de construcción de los sistemas de información – Fig. 2-4
32
Bases de datos
Bloques de construcción de los sistemas de información – Fig. 2-5
33
Software
34
Interfaces
Bloques de construcción de los sistemas de información – Fig. 2-6
Tecnología de redes electrónicas – Fig. 2-7
35
Todo junto
36
Actividad 2•Buscar métodos para entrevistar al
cliente•Preparen una lista de preguntas para el
cliente
37
Cap. 3 – Desarrollo de sistemas•Proceso de desarrollo de sistemas•Ciclo vital•Metodología•Fases FAST•Alternativas•RAD•Automatización•CASE•ADE
38
Ciclo de vida•Idea nace•Especificación es preparada•Solución es diseñada•Solución es desarrollada•Solución es revisada•Solución es implementada•Solución se pone en servicio•Solución se mantiene•Solución es retirada
39
Metodología•Un proceso estándar para construír y
mantener un sistema•Contiene la receta para seguir cuando se
desarrollan los sistemas•Metodología FAST (Framework for
Application of Systems Thinking)
40
Metodologias•SDLC•Cascada•Prototipos•Incremental•Desarrollo espiral•Prototipo rápido•Desarrollo de aplicaciones rápidas (Rapid
Application Development)•Otras
41
Ciclo vital
42
Características de la metodología•Participación de usuarios•Enfoque de resolución de problemas•Fases y actividades de establecimiento (plan)•Documentar a través del proyecto•Gestión del proceso y proyecto•Informática como inversión capital•Cancelar o revisar el alcance•Dividir y conquistar•Diseño para crecimiento y cambios
43
MarcoPIECES– Fig 3-4
44
45
Vista del proceso de desarrollo de
sistemas
Bloques de construcción del desarrollo de sistemas– Fig 3.6
46
Documentación, repositorio y presentación – Fig. 3-7
47
Metodología de cascada
48
DOD-STD-2167A•Defense System Software Development
▫Usado por el Departamento de Defensa para definir el proceso de desarrollo de software
▫Revisiones formales entre las fases•Componente de software se llama Computer
Software Configuration Item (CSCI)•Cada CSCI consiste de módulos llamados
Computer Software Components (CSC)•Componente de equipo se llama Hardware
Configuration Items (HWCI)
49
Prototipo•Un modelo del software se construye cuando los
requisitos son definidos▫Util cuando los requisitos no son firmes o bien
entendidos▫Retroalimentación de los clientes permiten mejorar el
prototipo•Dos tipos:
▫Fin cerrado: se desperdicia cuando se termina▫Fin abierto: evolucionario, se entrega al final
•Modelos son construídos, se muestran al cliente para evaluar, retroalimentación se recibe y el prototipo se actualiza
50
Prototipo
51
Escuchar al cliente
Soluciones de intercambio de
ideas
Crear Model
Evaluación del cliente
Incremental
52
• Parecido al prototipo evolucionario• La entrega inicial es creada con funcionalidad
mínima para demonstrar ‘look and feel’• La versión es probada y se enseña al cliente• Retroalimentación es recibida y funciones
nuevas son definidas• La nueva versión es probada y se enseña al
cliente• El ciclo se repite hasta que el modelo final se
termina• Cada ciclo es una mini-cascada
Espiral•Originalmente propuesto por Barry Boehm en
1988•Incluye los conceptos de prototipos con
conceptos controlados de cascada•Consiste de mini ciclos de cascada rápidos sobre
varias iteraciones▫Iteraciones iniciales pueden ser modelos de papel▫Iteraciones posteriores pueden ser modelos útiles de
funcionalidad limitada▫Iteraciones finales son mas estables
•Requiere interacción del usuario en cada fase
53
Espiral
54
Mitigació
n de riesgos
Alternativas
EvaluarPreparar siguiente
Prototipo Rápido•Parecido al prototipo•Análisis de requerimientos y definición de
objetivos inicia el proceso y define características de la aplicación
•El desarrollo del prototipo construye un simple prototipo basado en requerimientos y objetivos
•Iteraciones posteriores refinan el prototipo•Cuando el prototipo cumple con los requisitos,
la aplicación pasa a producción y mantenimiento
55
Prototipo Rápido
56
Análisis Objectivos
Instalación y Mantenimiento
Investigación de PrototipoDesarrollo de Prototipo
RAD•Hace hincapié en el rápido desarrollo de
software similar a la metodología incremental•Usa ciclos de metodología de cascada
corriendo en paralelo•Cada equipo construye un componente que se
integra a ciertos puntos en el plan de trabajo•El desarrollo rápido se debe a la
implementación en paralelo•Requiere comunicación y planeamiento
adecuado para tener éxito
57
RAD
58
Test & Cutover
BusinessModeling
DataModeling
ProcessModeling
ApplicationGeneration
Short Project Schedule
Team #1 Team #2 Team #3
59
RAD – Fig 3-11
Agil
60
• Kent Beck inventó el concepto Extreme Programming (XP) en el año 2000
• En el año 2001, Beck y otros formaron la Alianza Agil (Agile Alliance)
• El grupo publicó el manifiesto para el desarrollo de software
• La idea fué para formar la filosofía de software que se concentra en satisfacción del cliente, equipos pequeños y motivados, métodos informales, desarrollo simple y productos de software funcionales
Desarrollo Agil•Una alternativa de procesos de desarrollo
de software convencionales•Hace hincapié en el tiempo de
comercialización y la calidad•Hace hincapié en comunicación del
equipo y colaboración, incluyendo clientes•Usa principios de SDLC, prototipos y
desarrollo evolucionario•Metodologías múltiples
61
Agil
62
Design
Codi
ng
Test
Plan
ning Refactoring
• User Stories•Values• Acceptance Test Criteria• Iteration Plan
• Simple Design• CRC Cards• Spike Solutions• Prototypes
• Refactoring• Pair Programming• Continuous Integration• Collective Ownership• Coding Standards
Enfoque iterativo
63
64
Incremental
Otros• Cleanroom
▫ Trata de incluír exactitud en el proceso• OOA/OOD/OOP
▫ Metodologías diferentes con enfoque a objetos• CMM – Capability Maturity Model
▫ CMU/SEI, 5 niveles de madurez• CMMI – CMM Integration
▫ La mejora de procesos y procedimientos eficaces• RUP: basado en el proceso unificado (Unified
Process -UP)▫ Ivar Jacobson, Grady Booch, y James Rumbaugh
65
Actividades de desarrollo de sistemas
66
67
Mantenimiento de sistemas
CASE Tools
68
Arquitectura de herramientas CASE
69
¿Preguntas?
70
Proyecto•Escenario del proyecto final•Caso de estudio•Asignaciones del proyecto para el resto
del curso•Nuestro cliente
71
Escenario del proyecto final• Ustedes son miembros del equipo de desarrollo y trabajan
para mi empresa• Son expertos en redes, bases de datos, diseño Web,
comercio electrónico, desarrollo de software y gestión de proyectos
• Van a tener una entrevista con el cliente para documentar sus requerimientos
• Trabajarán como equipo pero su grado será basado en su participación. Van a dividir su trabajo cada semana.
• Documenten su trabajo cada semana.
72
Proyecto• Clase 1: Conocen al cliente
▫ Antes de la siguiente semana, preparen su ‘Problem Statement’ en inglés
• Clase 2:▫ Preparen una lista de preguntas para captar los requerimientos – antes
de la clase▫ Van a entrevistar al cliente basado en el proyecto
• Clase 3:▫ Preparen un reporte documentando los requisitos en español▫ Presentarán el documento al cliente, en clase▫ Obtandrán aprobación verbal y prepararán el documento de la
especificación• Clase 4:
▫ Preparen documento de viabilidad y especificaciones – antes de la clase▫ Presentarán al cliente▫ Obtandrán firma del cliente
73
Proyecto - II• Clase 5:
▫ Preparen diseño de alto nivel y presentar al cliente Incluír red, base de datos, pantallas, reportes, costo, etc.
▫ Presenten al cliente en clase Obtengan apruebo del cliente
• Clase 6:▫ Preparen diseño detallado y presentar al cliente▫ Obtengan apruebo del cliente
• Clase 7:▫ Entragan el proyecto final
Se presentará en la última clase• Clase 8:
▫ Presentación final al cliente
74
Proyecto Final•Contenido – en inglés:
▫Management Summary▫Existing System▫Proposed System▫Impact of proposed system▫Analysis of proposed system▫Implementation Schedule▫Project Presentation
•Vean el ejemplo en la página Web
75