Chapter 5 Study Tool by GJ3Au1

VIEWS: 1 PAGES: 36

									    Capítulo 5
Development Strategies

Prof. Nelliud D. Torres



                          1   1
               Introducción
• El capítulo 5 describe las últimas actividades
  importantes de la fase de análisis
• También describe la transición a systems
  design, prototyping, y guias de diseño de
  sistemas (systems design guidelines) los
  cuales se discutirán más adelante.



                                           2   2
 CICLO DE DESARROLLO DE SISTEMAS
                                                         Capítulos 3 - 5
               Capítulo 2

               PLANIFICACIÓN                     ANÁLISIS
                                   Aprobación
                                   del usuario
                  Vida útil
                               Especificaciones de            Capítulos 6 - 8
                                  Input, Output,
MANTENIMIENTO                  Processing y control               DISEÑO
 Capítulo 10                                              HCI – Human computer
                              Pruebas, conversión,        interface
                               adiestramientos y
                                documentación.


               IMPLANTACIÓN                 DESARROLLO
               Capítulo 9                             Capítulos 6 - 8 3    3
FASE DE ANÁLISIS


                 ANÁLISIS




                 DATA AND        DEVELOPMENT
REQUIREMENTS
                 PROCESS          STRATEGIES
  MODELING                         (Capítulo 5)
  (Capítulo 3)
                 MODELING
                  (Capítulo 4)

                                                  4   4
     Development Strategies
           Overview
• Es muy importante seleccionar la mejor
  opción de desarrollo del Sistema. Es una
  desición muy importante y las compañías
  deben considerar los siguientes tres
  tópicos:
  – El impacto del Internet
  – Opciones de Software outsourcing
  – Desarrollo del software In-house

                                       5     5
          El impacto del Internet
•   El Internet ha traido muchos cambios en la
    Industria y el Software es uno de ellos
•   Anteriormente una compañía solo tenía tres
    opciones para desarrollar su sistema.
    1. Desarrollar el software por si mismo (in-house)
    2. Comprar un package (casi siempre hay que
       modificarlo)
    3. Contratar consultores o recursos externos que
       hagan el trabajo.
Hoy en dia existen muchas más alternativas.
                                         6           6
        The Impact of the Internet
• Software como un Servicio
  – La industria llamada Software and Information Industry
    Association (SIIA) se enfoca en la economía digital.
  – La SIIA cree que el concepto de software como un servicio
    está redefiniendo la forma en la que las compañías
    desarrollan y utilizan sus Sistemas de Información.
  – Muchos observadores esperan que los packages de
    aplicaciones tradicionales sean reemplazados por servicios
    basados en Web que eliminan la responsabilidad (y costos)
    de la empresa de instalar, mantener y actualizar el software
    desarrollado in-house.
  – Comentar al respecto. Ventajas y desventajas.
                                                        7   7
The Impact of the Internet – Package
              Software
  Método Tradicional            Software as a Service
1. Los vendedores de            1. Las compañías rentarían
software desarrollan y          el software en lugar de
venden application              comprarlo.
packages a los clientes.        2. El uso sería a través del
2. Estos clientes típicamente   Internet (Web base
compran una licencia de uso     applications).
basado en ciertos términos.     3. Se espera que cambien el
3. Todavía es el método más     concepto de venta del
comun de parte de las           software en un futuro no
empresas.                       muy lejano.
                                                       8   8
    The Impact of the Internet
• The Impact of the Internet on Systems
  Development
  – Los desarrolladores se enfocaran en
    aplicaciones basadas en Web en donde el
    Internet viene a ser una parte integral de la
    aplicación en lugar de meramente un canal
    de comunicación. (OJO-Tesina y Proyecto).

  – Ejemplo de esto es:
                                               9    9
IBM’s WebSphere




                  10   10
Microsoft’s .NET




                   11   11
      The Impact of the Internet
• Medio Ambiente de Desarrollo Tradicional
  – El diseño del sistema es influenciado por problemas de
    compatibilidad (hardware, software, etc.)
  – Se diseña para correr en una red local o wide-area
    company networks.
  – Las capacidades del Web se ven como adiciones al
    sistema y no como el core central del diseño.
  – El scalability puede afectarse por limitaciones de
    telecomunicaciones y restricciones en la red local.
  – Muchas de estas aplicaciones piden muchos recursos al
    cliente.
  – Los problemas de seguridad son menos complejos que los
    sistemas basados en Web. (centralización y no uso del
    internet directamente)                              12 12
     The Impact of the Internet
• Medio Ambiente de Desarrollo Tipo Web
  – Los sistemas son desarrollados en plataformas
    Internet-based framework tales como .NET o
    WebSphere
  – Estos proyectos ven al Web como la plataforma
    principal, en lugar de un canal de comunicación
  – Web-based software usualmente requiere
    layers(capas) adicionales llamadas middleware



                                              13   13
                    Outsourcing
•    Definición: Es la transferencia de:
    1. Desarrollos de los Sistemas de Información
    2. Su operación
    3. Su mantenimiento
       A una firma externa que provee esos servicios a un costo
        fijo por un periodo de tiempo temporero o indefinido.
    Estos servicios pueden ser:
    1. Tareas mínimas de programación
    2. Renta de Software
    3. Transerencia de un basic business process (también
        llamado business process outsourcing, or BPO)
    4. El manejo completo del IT de una compañía.
                                                      14   14
THE OUTSOURCING CENTER
                  Se dedica a
                  proveer
                  información
                  sobre las
                  prácticas y
                  tendencias
                  de esta
                  modalidad.




                     15   15
                    Outsourcing
• The Growth of Outsourcing
  – Tradicionalmente las compañías utilizan este método como
    una forma de controlar costos y adaptarse a los rápidos
    cambios tecnológicos.
  – Outsourcing se ha convertido en parte de la estrategia de IT
    para muchas organizaciones. (afecta al programador, no al
    analista) y continua adquiriendo más demanda.
  – Una firma que ofrece servicios de outsourcing se llama un
    provedor de servicios(service provider).
  – Application service providers (ASP) – Renta paquetes de
    aplicaciones tales como databases, contabilidad, etc.
  – Internet business services (IBS) – Proveen apoyo web-
    based en Sistemas que generan muchas transacciones
    como lo son order processing, billing, etc.         16 16
                  Outsourcing
• Outsourcing Fees (Métodos de cobro)
  – Tarifa fija (fixed fee) - Se cobra basado en un nivel
    epecífico de servicio y de apoyo al usuario.
  – Subscripción (subscription model) - Se cobra
    dependiendo del número e usuarios de
    computdoras que tienen acesso a la aplicación.
  – Transacción (usage model or transaction model) –
    Se cobra de acuerdo al volumen de las
    transacciones o de las operaciones ejecutadas por
    la aplicación.


                                                  17   17
                    Outsourcing
• Outsourcing Issues and Concerns (Factores a
  considerar)
  – Los sistemas críticos podrían ser out-sourced solo si los
    costos son atractivos, que sea confiable y que la solución
    vaya de acuerdo con la visión de la compañía a largo plazo.
  – Outsourcing puede afectar las operaciones diarias de la
    compañía y levantar dudas sobre su efectividad.
  – Outsourcing puede ser atractivo para las compañías que
    tienen volumen de trabajo variable (que en ciertos
    momentos es alto) ya que se puede contratar estos
    servicios durante esos periodos eclusivamente sin la
    necesidad e conratar personal temporeramente.
                                                       18   18
               Outsourcing
• Offshore Outsourcing
  – Offshore outsourcing = global outsourcing
  – Muchas firmas están enviando actualmente
    trabajo de IT a otros paises a un ritmo
    ascendente.
  – Gartner, a leading IT research and consulting
    firm, predicts that by 2005 one in 10 IT jobs at
    U.S. IT companies and one in 20 at non-IT
    companies will move offshore

                                               19   19
         In-House Software
        Development Options
• Una compañía puede escoger entre
  desarrollar su propio sistema o comprar un
  package y posiblemente adaptarlo a sus
  necesidades (customize)
• Hay que considerar en todo esto,todos los
  posibles costos (total cost of ownership (TCO))
• Las compañías también desarrollan
  aplicaciones para los usuarios diseñadas en
  base a software packages comerciales

                                              20    20
    In-House Software Development
               Options




En lugar de outsourcing, una compañía puede escoger
entre desarrollar un sistema in-house o comprar un
package comercial.                              21 21
  In-House Software Development
             Options
• Make (build) or Buy Decision
  – Es la opción entre desarrollar y comprar software.
  – Las compañías que desarrollan software pra la venta se
    conocen como software vendors
  – Value-added reseller (VAR) – Es una firma que añade
    opciones a los programas comerciales y los adapta a alas
    necesidades de la empresa.
  – Horizontal application – Software que se puede utilizar en
    muchos tipos de organización. Ej. PeachTree
  – Vertical application – Software que se utiliza únicamente
    para ciertos tipoes de compañías. Por ejemplo un sistema
    de reservación de hotel, un sistema de matrícula de una
    universidad, etc.
                                                       22   22
  In-House Software Development
             Options
• Developing Software In-House
  – Satisface requerimientos unicos del negocio
  – Minimiza los cambios en procedimiento de negocios y
    politica empresarial.
  – Que cumpla con las condiciones de los sistemas existentes
    (interface)
  – Que cumpla con las condiciones y limitaciones de la
    tecnología existente en la empresa.
  – Desarrollar recursos internos y capacidades (capabilities)
  – Satisface requerimientos de segurida que sean particulares
    de esa compañía.
                                                      23   23
  In-House Software Development
             Options
• Purchasing a Software Package
  – Abarata los costos
  – Requiere de menos tiempo para implementar
  – Provee confiabilidad y rendimiento(performance)
  – Requiere de menos personal técnico o de
    desarrollo
  – Futuros upgrades son proveidos por el vendedor
    (vendor)
  – Se obtiene insumo (Input) de otras compañías.
    (usuarios que utilizen el mismo package)
                                               24   24
       FIGURA 5-11




Comparación entre ambas opciones
                                   25   25
    In-House Software Development
               Options
•   Customizing a Software Package – Si el package
    no satisface los requerimientos de la empresa, se
    puede:
    1. Comprar un basic package que los vendedores van a
       modificar para satisfacer sus necesidades
    2. Negociar directamente con el vendedor para hacerle
       mejoras que cumplan con los requerimientos de la
       empresa y pagar por esos cambios.
    3. Comprar elproducto y que lamisma empresa haga
       sus modificaciones. En lalicencia de uso debe
       quedar establecido que el source es parte de la
       venta. Obviamente esto aumento el costo de
                                                       26 26
       comprar ese package.
  In-House Software Development
             Options
• Creating User Applications
  – Un user application utiliza un standard business software
    como por ejemplo Word o Excel (pag. 14 los menciona)
  – Esto permite al end-user poder obtener datos de los cuales
    puede crear información útil. (antes esto era taboo, explicar)
  – Se debe crer un user interface para facilitarle al usuario
    utilizar esos programas de acuerdo a sus necesidades. (Ej.
    Se puede combinar Visual Basic con Office)
  – Help desk or information center (IC) - Se le debe dar al
    usuario una herramienta para ayudarlo en sus problemas
    con esas aplicaciones.
  – Screen generators                 Ejemplo: Access
  – Report generators
  – Read-only properties – Los datos debes estar protegidos.
    Por ejemplo un archivo debe ser read-only para evitar que el
    usuario lo modifique. Otros archivos deben estar 27 27
    escondidos (hide).
               Prototyping
• El prototyping produce una versión que trabaja
  de un sistema propuesto de una forma rápida
  y temprana llamada prototipo.




                                         28   28
        Métodos de Prototyping
• System prototyping – Provee un modelo
  funcional con todas las capacidades y
  requerimientos del sistema.

• Design prototyping (Throwaway prototyping) –
  Se utiliza para verificar los requerimientos del
  usuario y despues se descarta.


                                             29   29
                    Prototyping
• Prototyping Methods
  – Ofrece muchos beneficios
    • Evita malos entendidos entre los usuarios y los
      desarrolladores
    • Los gerente pueden evaluar un modelo funcional
      (working model) más efectivamente que unas
      especificaciones en papel
  – Problemas potenciales
    • Debido a lo rápido del desarrollo del prototipo, puede
      crear problemas de calidad en el sistema.
    • En sistemas que son extremadamente complejos, el
      prototipo no es conveniente. Es muy dificil de preparar y
      los beneficos posiblemente no superen los costos
      estimados.                                         30 30
                  Prototyping
• Prototyping Tools
  – Los analista pueden utilizar poderosas
    herramientas para desarrollar prototipos entre
    las que podemos mencionar:
    •   CASE tools
    •   Application generators - OJO
    •   Report generators
    •   Screen generators
    •   Fourth-generation language (4GL)
    •   Fourth-generation environment
                                             31   31
FIGURA 5-30




              32   32
                   Prototyping
• Limitaciones de los Prototipos
  – Es un sistema funcional, pero menos eficiente que
    un sistema completo.
  – Los desarrolladores pueden hacer un upgrade al
    prototipo e incluirle las capacidades que le falten o
    mejorarle las deficiencias que pueda tener.
  – De lo contrario, el prototipo se descarta.



                                                  33   33
         Otros Modeling Tools

• Systems flowchart – Es un modelo que
  utiliza varios símbolos para identificar
  operaciones de Input y Output.
  Actualmente se utilizan más para
  documentación o cotejo de un proceso

• Utlizan una serie de simbolos ya definidos
  por la American National Standards
  Institute (ANSI)
                                             34   34
SIMBÓLOS




           35   35
EJEMPLO DE
UN SYSTEM
FLOWCHART




             36   36

								
To top