Sunteți pe pagina 1din 25

Resumen de Ingeniera de Software I

Tema 1: Sistemas de Informacin


Teora de los Sistemas: Grupo interdependiente que interactan entre s formando un todo.
Tipos:

Naturales
Hecho por el Hombre

Caractersticas de los Sistemas

Abstractos: Estn compuestos por conceptos.


Concretos: Cuyo elementos son conceptos, tienen un medio ambiente que son un
conjunto de elementos que interactan con el sistema pero no forma parte del
mismo.
Abiertos: tienen medio ambiente.
Cerrados: no tienen medio ambiente.
Dinmicos: cambian con el transcurso del Tiempo.
Estticos: no cambian con el tiempo.
Homeosttico: Sistema cuyo estado no cambia en el tiempo pero tiene elementos
que cambian con el tiempo.

Teora General de Sistemas (TGS)


Todo sistema es un Sub-Sistema de un sistema mayor y todo elemento de un sistema es
potencialmente un sistema.
Defectos comunes en el Anlisis y Diseo de Sistemas

La distribucin de los recursos y actividades es casi siempre desequilibrada.


Costo, tiempo y recursos se subestiman.
Los Sub-Sistemas y sus metas no se define con claridad.
No se asignan directivas adecuadas a los Sub-Sistemas.
Documentacin Insatisfactoria.

Cualidades del Profesional de Sistemas

Inteligencia
Afabilidad
Ingenio
Conocimiento

Los Sistemas de Informtica ayudan a las Empresas a:

Extender su alcance a lugares lejanos.


Ofrecer nuevos productos y servicios.
Modificar los puestos de flujo de trabajo.

Alterar la forma en la que se hace los negocios.

Los Sistemas de informtica sos sistemas socio tcnicos: aunque se componen de maquinas,
dispositivos y tecnologa dura requiere sustanciales inversiones sociales, de organizaciones e
intelectuales para funcionar adecuadamente.
Enfoques

Tcnico: Hace incapie en modelos normativos con bases matemticas para estudiar
estos sistemas, as como en su tecnologa fsica y sus capacidades formales. Las
disciplinas que construye a este enfoque son:
1. Ciencias de la Computacin: establece teora de la
computabilidad, mtodos de cmputo y modelos para almacenar y
acceder a los datos de manera eficiente.
2. Ciencia de la Administracin: Desarrollo de modelos para tomar
decisiones y practicas gerenciales.
3. Investigacin de Operaciones: Se concentra en tcnicas
matemticas para optimizar parmetros selectos de la
organizacin.
Comportamiento: Se ocupa de cuestiones de conducta que surgen durante el
desarrollo y mantenimiento a largo plazo de los sistemas informticos. El centro de
este enfoque generalmente no son soluciones tcnicas si no que se concentran en
los cambios de actitud, las polticas de administracin, organizacin y la conducta.
Socio tcnico: Se debe poner atencin en los componentes tanto tcnicos como de
comportamiento, esto implica que la tecnologa se debe modificar y disear de
forma tal que encaje en las necesidades de la organizacin y los individuos, es una
perspectiva Socio-Tcnica el desempeo de un sistema se optimiza cuando la
tecnologa y la organizacin se ajusta recprocamente hasta encajar de forma
satisfactoria.

Caractersticas de los Sistemas Socio-Tcnicos

Tiene propiedades Emergentes: Con esto queremos decir que tomemos al sistema
como un todo ms que asociadas como partes individuales del sistema. Las
propiedades emergentes dependen tanto de los componentes del sistema como de
las relaciones entre ellos, como esto es tan complejo estas propiedades solamente
pueden evaluarse una vez que el sistema fue montado.
Son a menudo no Determinista: Esto significa que cuando se produce una entrada
especfica no siempre produce la misma salida. Esto se da porque el sistema esta
manejado por personas y no todas las personas piensan de la misma manera.
El grado en que el sistema apoya a los objetivos organizacionales no solo depende
del sistema en s mismo, tambin depende de la estabilidad estos objetivos, de las
relaciones y conflictos entre los objetivos organizacionales y de cmo las personas
en la organizacin intrprete estos objetivos.

Ingeniera de Sistemas: Es la actividad de especificar, disear, implementar, validar, utilizar y


mantener los sistemas socio-tcnicos. Los ingenieros no solo tratan con el software, sino
tambin con el hardware y las interacciones del sistema con los usuarios y su entorno.
Requerimientos del Sistema: Especifica que es lo que el sistema debe hacer (sus funciones) y
sus propiedades esenciales y deseables.

Tipo de requerimientos:
1. Funcionales Abstractos: Funciones bsicas que el sistema debe
proporcionar, se define en 1 nivel abstracto.
2. Propiedades del Sistema: Propiedades emergentes no funcionales.
3. Caracterstica que no debe mostrar el sistema, algunas veces es tan
importante especificar la que el sistema debe hacer, como lo que no debe
hacer.

Integracin de Sistemas: Consiste en integrar todos las partes o Sub-Sistemas del sistema y
existen 2 tipos:

Big Bang Integrar todas las partes al mismo tiempo, el problema es que frente a la
presencia de errores no se sabe dnde o en cual parte del sistema est el
problema.
Integrar uno a uno se integran los sistemas uno a uno y es ms sencillo para
detectar errores y para integrar el sistema ya que las personas piensan de forma
secuencial.

Evolucin de los Sistemas: tienen que analizarse cuidadosamente desde perspectivas tcnicas
y de negocios. Los cambios tienen que contribuir a los objetivos del sistema. Debido a que los
sub-sistemas nunca son completamente independientes, los cambios en uno pueden afectar
en forma adversa a otro subsistema, por lo tanto hay que estudiar bien los cambios a
desarrollar.
Desmantelamiento de Sistemas: Significa poner fuera de servicio a dicho sistema. Para el
hardware esto implica el desmontaje del sistema ya que hay muchas piezas o partes que son
toxicas.
Factores humanos que afectan al Diseo de Sistemas

Cambio en el Proceso: El sistema requiere cambiar los procesos en el entorno? Si


es as, se necesitara informacin. Si los cambios son significativos o implican que la
gente pierde su trabajo, existe la posibilidad de que las personas se resista al
cambio.
Cambio en el Trabajo: El sistema inhabilita a los usuarios en su entorno o hace
que cambie su forma de trabajar? Si es as, si el diseo implica un cambio en la
forma de trabajar de los directivos, se resistirn a la introduccin del sistema ya
que sienten que su jerarqua es disminuida por el sistema.
Cambios en la Organizacin El sistema cambia la estructura de poder de una
organizacin? Si una organizacin depende de 1 sistema complejo aquellos que
sepan manipular el sistema tendrn ms poder poltico.

Sistemas Heredados: Son sistemas socio-tcnicos que han sido desarrollados en el pasado, a
menudo usando tecnologa antigua y obsoleta. Estos sistemas no solamente incluyen
hardware y software si no tambin procesos y procedimientos heredados. Antiguas formas de
hacer cosas que son difciles de cambiar porque dependen de software heredado, cambios en
una parte de los sistemas implican cambios muchas veces en otros componentes.
Tipos de Sistemas

Sistemas en el nivel Operativo: Monitorean las actividades y las transacciones


elementales de la organizacin. El propsito principal de los sistemas en este nivel es
contestar a preguntas de rutina y rastrear el flujo de transacciones a travs de la
organizacin.
Sistemas en el nivel del conocimiento: Apoyan a los trabajadores de conocimientos y
datos de una organizacin. El Propsito de los sistemas en el nivel de conocimiento es
ayudar a la organizacin a controlar el flujo de documentos.
Sistemas en el nivel de Administracin: Apoyan las actividades de seguimiento,
control, toma de decisiones y administracin de los administradores de nivel medio.
Sistemas en el Nivel Estratgico: Apoyan las actividades de planificacin a largo plazo
de los administradores del nivel superior.

Tipos Principales de Sistemas

Sistemas de procesamiento de transacciones.


Sistema de trabajo de conocimiento.
Sistema de automatizacin de oficinas.
Sistemas de informacin gerencial.
Sistema de apoyo a decisiones.
Sistema de apoyo a ejecutivos.
Tema 2

Qu es una organizacin?
Es una estructura social formal, toma recursos y los procesa para producir salidas.

Est compuesto por individuos y grupos de trabajo.


Buscan la relacin de objetivos compartidos.
Diferencian a travs de la divisin del trabajo.
Opera continuamente a travs del tiempo.

Administracin Es la conduccin de la empresa por medio del planeamiento, organizacin,


coordinacin y control de sus recursos humanos y materiales, para alcanzar un objetivo
determinado.
Modelo de Kast: Las Organizaciones son sistemas socio-tcnicos abiertos compuestos de un
cierto nmero de sub-sistemas, dicho sistema recibe insumos de energa, informacin y
materiales del medio, los transforma y los regresa en forma de productos.

Modelo de Regulacin: El propsito del sistema de administracin y en consecuencia el del


sistema de informacin, es regular y adaptar el comportamiento de la organizacin bajo las
perturbaciones generadas por un medio ambiente cambiante y no controlable.
Funciones Administrativas:

Procesamiento Bsico: Es la recoleccin, almacenamiento y transformacin de los


datos acera del estado y salidas de los procesos.
Procesamiento de datos analticos: Es un procesamiento de datos ms complejo para
modelar el comportamiento de la organizacin a travs de los datos.

Reingeniera: Es la revisin fundamental y el rediseo radical de procesos para alcanzar


mejores espectaculares en medidas criticas y contemporneas de rendimiento, tales como el
costo, calidad, servicio y rapidez.

Consecuencias
1. Tratar de corregir un proceso en lugar de copiarlo.
2. No hacer caso de los valores y creencias de los empleados.
3. Conformarse con resultados de poca importancia.
4. Dar marcha atrs cuando se encuentra resistencia.
5. Dejar que las culturas y las actitudes corporativas existentes impidan que
empiece la reingeniera.

Control de Gestin: Es un proceso que sirve para guiar la gestin hacia los objetivos de la
organizacin y un instrumento para evaluarla.

Caracterstica:
1. Despliega la estrategia en toda la organizacin.
2. Desarrolla actividades de planificacin, control y diagnostico.
3. Es un medio para gestionar el cambio.
4. Evala el desempeo de la organizacin.

Sistemas Informticos:

Procesamiento de datos.
Administracin (MIS).
Apoyo para la toma de decisiones (DSS).
Inteligencia Artificial.

Sistemas Automatizados:

En lnea
De tiempo real.

La organizacin como sistema: Estn diseados para el cumplimiento de metas y objetivos


especficos mediante el empleo de numerosos recursos, incluyendo el factor humano. Las
organizaciones se integran como pequeos sistemas interrelacionados, los cuales realizan
funciones especficas.

Para adaptarse a la organizacin tienen la necesidad de recurrir a gente, materias primas e


informan a travs de sus lmites y de intercambiar sus productos terminados, servicios e
informacin hacia el mundo exterior.
Niveles de Administracin:

Operaciones.
Medio.
Estratgica.

Anlisis de Decisiones: Con el fin de precisar los requisitos de informacin necesarios para el
anlisis de decisiones, el analista debe identificar los objetivos de la organizacin mediante un
enfoque descendente, deber conocer la base de la organizacin y tener conocimientos de
tcnicas de recopilacin de datos, debe ir de lo general a los particular y analizar todos los
niveles administrativos (Operaciones, medio, estratgica).
Toma de decisiones: Se llevan a cabo mediante tres tipos de condiciones:

Certeza: Significa que al hacer una eleccin se conoce todo de antemano.


Incertidumbre: No se conoce nada de antemano.
Riesgo: Consideran cierto conocimiento de nuestras alternativas (variables
controlables), de lo que no podemos controlar y solo estiman (variables ambientales) y
de lo que sern las consecuencias (Variables dependientes).

Existen varias formas de tomar decisiones:

Decisiones Estructuradas: son de rutina y requieren poca evaluacin humana.


Decisiones no estructuradas: Son aquellas que se resisten hasta el da de la fecha a la
computarizacin y bsicamente dependen de la intuicin.
Decisiones semiestructurada: Son aquellas que pueden programarse de manera
parcial, pero todava requieren de la participacin del criterio humano.
Decisiones de criterio mltiple: Permiten la toma de decisiones estable. Sus
prioridades, y en la mayora de los casos permiten al tomador de decisiones realizar un
anlisis de sensibilidad.

Tipos de Usuarios de Sistemas

Clasificacin por categoria de trabajo.


Clasificacin por nivel de experiencia.

Cualidades del Analista de Sistemas

Solucionador de problemas.
Buen interlocutor.
Experiencia en computacin.
Auto disciplinado y auto motivado.
Administrar y coordinar.

Impacto tico y Social de los Sistemas de Informacin


En lo tico se debe tener presente los siguientes retos gerenciales:

Entender los riesgos morales de la nueva tecnologa. La proteccin de la privacidad


individual se ha convertido en un problema tico grave debido a la rapidez de los
cambios tecnolgicos, es importante que la gerencia realice un anlisis del impacto
tico y social de las nuevas tecnologas.
Establecer polticas de tica corporativa que incluyan cuestiones de sistemas de
informacin. Es evidente que las corporaciones deben contar con una poltica de tica
en el rea de sistemas de informacin que contenga aspectos como privacidad,
propiedad, responsabilidad formal, calidad de sistemas y calidad de vida.

Cinco dimensiones morales de la era de la informacin

Derechos y obligaciones de informacin: Qu derechos de informacin tienen los


individuos y las organizaciones respecto a la informacin acerca de s mismos? Qu
pueden proteger? Qu obligaciones tienen los individuos y las organizaciones en lo
concerniente a esta informacin?
Derechos de propiedad: Cmo se protegern los derechos tradicionales de
propiedad intelectual en una sociedad digital en la que es difcil rastrear y justificar la
propiedad, y es muy fcil hacer caso omiso de tales derechos?
Responsabilidad formal y control: Quienes puede rendir cuentas y hacerse
responsable por los daos a los derechos de informacin y propiedad individuales y
colectivas?
Calidad del Sistema: Qu estndares de calidad de datos y sistemas se deben
exigir para proteger los derechos individuales y la seguridad de la sociedad?
Calidad de Vida: Qu valores deben preservarse en una sociedad basada en la
informacin y los conocimientos? Qu instituciones deben ser protegidas contra
violaciones? Qu valores y prcticas culturales apoya la nueva tecnologa de
informacin?

Tipos de Responsabilidades:

Personal.
Formal.
Legal.
Debido proceso.

Anlisis tico

Identificar y describir claramente los hechos.


Definir el conflicto o dilema e identificar los valores de orden ms alto en cuestin.
Identificar los grupos de inters.
Identificar las opciones razonables que se pueden tomar.
Identificar las posibles consecuencias de las opciones.

Las dimensiones morales de los sistemas de informacin

Derechos de Informacin
1. Peligros para la privacidad relacionados con Internet Spamming.
2. Cuestiones ticas.
3. Cuestiones sociales.
4. Cuestiones polticas.
Derechos de Propiedad
1. Secreto industrial.
2. Derecho de Autor.
3. Patente.

Retos que enfrentan los derechos de propiedad intelectual

Cuestiones ticas.
Cuestiones Sociales.
Cuestiones Polticas.

Las dimensiones morales de los sistemas de informacin

Calidad de Sistemas.
Cuestiones ticas.
Cuestiones sociales.
Cuestiones polticas.
Calidad de Vida.
Delito por computadora.
Abuso de computadoras.

Enfermedades relacionadas por Computadoras

Lesin por tensin repetitiva (RSI).


Sndrome de Tnel del carpo (CTS).
Sndrome de visin de computadora (CVS).
Tecno estrs.

Acciones Gerenciales un cdigo de tica corporativo; consiste en desarrollar un conjunto de


normas ticas especficas para sistemas de informacin en cada una de las 5 dimensiones
morales:

Derechos y obligaciones de informacin (privacidad del correo electrnico y monitoreo


del lugar de trabajo).
Derechos y obligaciones de propiedad.
Responsabilidad formal y control.
Calidad del sistema.
Calidad de vida.

Tema 3
Crisis del Software

1.

Mucho hardware.
Mucha demanda y poco desarrollo.
Falta de metodologas y tcnicas.
Uso inadecuados de recursos.
Sntomas La productividad de los desarrolladores es baja en relacin a la demanda, en
cuanto a la expectativa los sistemas no cumplan las expectativas de los usuarios, los
costos eran muy elevados y el mantenimiento era costoso y complejo.
2. Consecuencias Baja productividad y escases de desarrollo.
3. Solucin Aplicar la ingeniera de software a la construccin de sistemas informticos.
Definicin de Ingeniera de Software El establecimiento y uso de principios de ingeniera
robustos orientados a obtener econmicamente software que sea fiable y funciones
eficientemente sobre maquinas y redes.
Diferencias entre Ingenieras

Ingeniera: Construyen instrumentos que imitan, aumentan, ayudan, facilitan o


sustituye capacidades fsicas del ser humano.
Ingeniera del Software: Construyen instrumentos que imitan, aumentan, ayudan,
facilitan o sustituyen capacidades psquicas del ser humano.

Mtodos Definen como construir el software desde el punto de vista tcnico (planificacin y
estimacin del proyecto, anlisis de requisitos, diseo, codificacin, pruebas, mantenimiento).
Herramientas Proporcionan 1 enfoque automtico o semiautomtico para los mtodos (CASE,
CAD, etc.).
Procedimientos Es el punto de unin entre mtodos y herramientas, definen la secuencia en la
que se aplican los mtodos, como usar las herramientas, las entregas que se requieren,
controles de seguimiento y calidad.
Perfil de Directivos

Alto nivel en la direccin de las organizaciones.


Conocimiento de los objetivos estratgicos y de negocio.
Autoridad para validar y aportar cada uno de los procesos.

Perfil de Jefe de Proyecto

Ejercen labores de coordinacin y direccin de equipos humanos especializados en


actividades propias.
Estima el esfuerzo necesario para llevar a cabo el proyecto.
Selecciona la estrategia de desarrollo.
Realiza labores de seguimiento y control de proyecto.

Perfil Consultor Asesora en cuestiones a informacin que tiene conocimiento especializado.


Perfil del Analista Son los encargados de elaborar un catalogo detallado de requisitos que
describen de forma precisa el sistema. Este catalogo se obtiene mediante entrevistas y
reuniones de trabajo con los responsables de la organizacin y usuarios.
Mtrica Se refiere a un amplio conjunto de mediciones para el software de computadoras. Las
mediciones se pueden aplicar a un proceso del software con el intento de mejorarlo sobre una
base continua, es decir, se puede utilizar en el proyecto del software para ayudar en la
estimacin, el control de calidad, la evolucin de la productividad y el control del proyecto.
Tipos de Mtricas

Mtrica Orientada a Objeto permiten a una organizacin de ingeniera del software


tener una visin profunda de la eficacia de un proceso ya existente.
Mtrica del Proyecto So tcnicas que utilizan para minimizar la planificacin de
desarrollo haciendo los ajustes necesarios que eviten retrasos y reduzcan problemas y
riesgos potenciales, tambin se utilizan para evaluar la calidad de os productos.
Mtricas Orientadas al Tamao Se componen los cdigos en relacin al tamao de los
diferentes proyectos.
Funcionalidad Orientada a las salidas que da el sistema de acuerdo a las entradas que
recibe.
Orientada a la calidad.
Temas 4

Mtodos

Indican como construir tcnicamente el software. Los mtodos abarcan una gran
gama de tareas que incluyen anlisis de requisitos, diseo, construccin de programas,
pruebas y mantenimiento.

Herramientas

Proporcionan un enfoque automtico o semiautomtico para el proceso y para los


mtodos. Cuando se integran herramientas para que la informacin creada por una
herramienta lo puedan utilizar otra.

Fases del Software

Definicin Se centra sobre el que, es decir, durante la definicin el que desarrolla el


software intenta identificar que informacin ha de ser procesada, que funcin y
rediseo, etc.
Desarrollo se centra en el Como, es decir, durante el desarrollo un ingeniero del
software intenta definir cmo han de disearse las estructuras de datos, como ha de
implementarse la funcin dentro de una arquitectura de software, etc.
Mantenimiento Se centra en el Cambio que va asociado a la correccin de errores.
1. Correctivo cambia el software para corregir los defectos.

2. Adaptativo produce modificaciones en el software para acoplarlo a los


cambios de su entorno externo.
3. Mejora lleva el Software ms all de sus requerimientos funcionales originales.
4. Prevencin hace cambios en programas de computadoras a fin de que se
puedan corregir, adaptar y mejorar fcilmente.
Fases que componen los mtodos

Planificacin.
Anlisis.
Diseo.
Codificacin.
Prueba.
Mantenimiento.

Herramientas CASE Son Ayudas automatizadas para el desarrollo del software, se clasifican en
2 categoras:

Alto Nivel: Automatizan la fase de anlisis y diseo lgico, algunos de estos productos
comerciales son Rational, Designer 2000, Visible Analyst, entre otros.
Bajo Nivel: Automatizacin de la codificacin y posterior mantenimiento, ejemplos:
RAD, DELPHI, VISUAL BASIC, etc.

Paradigmas Es la estrategia que comprende los mtodos, herramientas y procesos, los


diferentes paradigmas intentan ordenar las actividades en el desarrollo del software, de
manera que no sean llevados a cabo de manera catica.

Tipos:
1.
2.
3.
4.

5.
6.
7.
8.

Ciclo de vida clsico- Modelo Secuencial- Modelo en Cascada.


Prototipado.
Modelo RAD.
Modelo Evolutivo
1. Incremental.
2. Espiral.
3. Espiral WinWin.
4. Desarrollo Concurrente.
Modelo Basado en Componentes.
Modelos basados en mtodos formales.
Tcnicas de evaluacin genrica.
Modelos agiles programacin extrema.

Modelos Clsico Secuencial

Definicin del Problema


1. Anlisis de Sistema.
2. Anlisis de Requisitos.
Desarrollo

1. Diseo.
2. Programacin.
3. Prueba.
Mantenimiento

Cascada

Anlisis.
Diseo.
Codificacin.
Pruebas e Integracin.
Mantenimiento.

Prototipado Consiste en desarrollar un prototipo del sistema y mostrarlo al cliente el problema


es que el cliente cree que es el sistema terminado y lo quiere, en consecuencia surgen
mdulos ineficientes se transforma en parte del sistema.
Rad Consiste en un desarrollo rpido de aplicaciones basadas en el modelo lineal secuencial,
pero donde se enfatiza un ciclo de desarrollo extremadamente corto.
Equipo 1

Equipo 2

Equipo 3

Modelo de
Gestin
Modelo de
Clases
dem

Modelo de
Procesos

dem

Modelo de
Aplicacin

Prueba y
Entrega

Problemas con RAD

Para proyectos grandes se necesita muchos recursos para desarrollar los equipos.
Compromiso de los clientes con los desarrolladores.

Modelo Evolutivo Los modelos anteriores eran estticos, como sabemos las empresas
evolucionan con el tiempo, es por ello que surgen los modelos evolutivos, es decir software
que crean nuevas versiones con el pasar del tiempo.
Modelo Incremental Combina modelos secuencial lineal con la filosofa del Prototipado donde
se van desarrollando el software y se van realizando diferentes entregas de avances.
Anlisis

Diseo

Cdigo

Prueba

Entrega

Modelo en Espiral Propuesto originalmente por Boehm, este modelo combina el modelo de
Prototipado con el modelo secuencial lineal, va realizando versiones incrementales del sistema
de manera rpida.
Modelo Espiral WinWin Es igual al modelo espiral pero donde existe ms comunicacin con el
cliente, es decir en cada una de las etapas existe una negociacin con el cliente que ayudan al
desarrollo del software.
Desarrollo Concurrente Define una suerte de acontecimiento que disparan transiciones de
estado para cada una de las actividades de la IS, a menudo se lo utiliza en paradigmas de
cliente-servidor.
Basado en Componentes Incorpora mucho de las caractersticas del modelo en espiral, es
evolutivo por naturaleza y exige un enfoque iterativo para la creacin de software, tambin
conduce a la reutilizacin de software proporcionando beneficios para el Ing. De Software.
Segn estudios reduce el ciclo de vida en 70% y reduce el costo en 84% aumentando la
productividad.
Mtodos Formales Comprenden un conjunto de actividades que conducen a la especificacin
matemtica del software, permite a los ingenieros que especifiquen, desarrolle y verifique un
sistema basado en computadora aplicando una rotacin rigurosa y matemtica.
Mtodos Agiles Comienza con cuatro valores (comunicacin, retroalimentacin, simplicidad y
coraje), en donde agrupa todas las tcnicas y pone su enfoque en realizar pruebas, es decir
que es un desarrollo evolutivo en donde cada iteracin se consigue un producto final.
Objetivo: transmitir a los participantes las formas del proceso. Scrum con la que los equipos de
desarrollo podrn gestionar proyectos donde la innovacin y la inestabilidad de los
requerimientos demandan una estrategia de gestin distinta a las tradicionales.
Metodologa DUM Es una metodologa evolutiva incremental de desarrollo de software, esta
metodologa realiza una especificacin exhaustiva de todas las actividades y tareas que se
realizan en las diferentes fases, prestando especial atencin por alcanzar un nivel superior de
madurez. Las fases son:

Preliminar.
Inicio.
Elaboracin.
Construccin.

Transicin.
Mantenimiento.

Mtrica Es un instrumento para la sistematizacin de las actividades que dan soporte al ciclo
de vida del software, facilita los procesos de apoyo y organizacin a travs de las interfaces, la
automatizacin de sus actividades es posible ya que existe una amplia variedad de
herramientas que ayuda al desarrollo.
Tema 5
Requerimientos Es simplemente una declaracin abstracta de alto nivel de un servicio que
debe proporcionar el sistema o restricciones del mismo, pero por otro lado es una definicin
detallada y formal de una funcin del sistema.
Requerimiento de Usuarios Son declaraciones en lenguaje natural y en diagramas de los que
espera el usuario que el sistema proporcione y de las restricciones bajo la cual debe funcionar.
Requerimientos del Sistema Establecen con detalle las funciones, servicios y restricciones
operativas del sistema. El documento de requerimientos del sistema debe ser preciso. Debe
definir exactamente qu es lo que se va a implementar, puede ser parte del contrato entre el
comprador del sistema y los desarrolladores del software.
Requerimientos Funcionales Son declaraciones de los servicios que debe proporcionar el
sistema, de la manera en que este reacciona a entradas particulares y de cmo se debe
comportar en situaciones particulares.
Requerimientos no Funcionales Son aquellos que no se refieren directamente a las funciones
especificas que proporciona el sistema, si no a las propiedades emergentes de este como la
fiabilidad, el tiempo de respuesta y la capacidad de almacenamiento, es decir pueden definir el
rendimiento, la proteccin , la disponibilidad y otras propiedades. Estos requerimientos no
surgen de las necesidades del usuario, si no debido a las restricciones del presupuesto, a las
polticas de la organizacin, la necesidad de interoperabilidad con otro software u otro
hardware, etc.
Educcin de Requisitos Sacar algo de algo. El proceso de educir requisitos puede
descomponerse en las actividades de: hallazgo, de hecho, reunin e integracin de la
informacin.
Procedimiento para obtener la informacin consta de los siguientes pasos:

Identificacin de las fuentes relevantes de los requisitos.


Preguntar cuestiones apropiadas para obtener y comprender sus
Necesidades.
Analizar la informacin reunida buscando implicaciones, inconsistencias o aspectos no
resueltos.
Confirmar la comprensin de los requisitos con los usuarios.
Sintetizar las especificaciones adecuadas para los requisitos.

Tcnicas de Educcin

Definiendo procesos detallados


Proponiendo preguntas o categoras de preguntas
Estableciendo formatos estructurados para las reuniones
Estableciendo formatos estructurados para las reuniones
Describiendo comportamiento ideales, individuales o de grupo.
Construyendo patrones para organizar y registrar la informacin.
El resultado tangible de educir requisitos es un conjunto de requisitos que puede ser
utilizado por el quipo de desarrollo de software.
Problemas de la Educcin

Alcance para realizar la educcin de requisitos debemos de tener en claro y diferenciar


1. La organizacin A que se dedica la empresa, sus objetivos, etc.
2. El entorno cules son sus clientes, proveedores, el mbito donde se manejan,
etc.
3. Proyecto que es lo que se va a acordar.
Comprensin no se comprende que es lo que necesita el usuario y se elabora un mal
producto o ineficiente, esto se puede dar por una mala comunicacin entre el usuario
y analista.
Volatilidad Los requerimientos del usuario pueden cambiar o evolucionar con el
entorno, si estos no se cumplen los requerimientos originales son incompletos e
inconsistentes.

Entrevistas

Preguntas Abiertas son las opciones que tiene el entrevistado para responder.
1. Ventajas: simplifican las cosas para el entrevistado; permiten al entrevistador,
seleccionar el vocabulario del entrevistado.
2. Desventajas: preguntas que generan informacin irrelevante; la posible
prdida del control de la entrevista.
Preguntas Cerradas Las posibles respuestas se hallan limitadas. Un tipo especial de
pregunta cerrada es la bipolar. Es muy limitada al tener solo dos respuestas
alternativas.
1. Ventajas: ahorran tiempo; facilitan la comparacin entre entrevistas; llegan al
punto de inters; mantienen el control de la entrevistas; llegan al punto de
inters; mantienen el control de la entrevista.
2. Desventajas: aburren al entrevistado; pierden la riqueza del detalle; se pueden
perder ideas centrales por el punto anterior y no favorecen un clima de
armona entre el entrevistado y el entrevistador.
Preguntas de Sondeo El propsito del sondeo es ir ms all de la respuesta inicial para
obtener un mayor significado, y aclarar o ampliar los puntos del entrevistado. El
sondeo se puede realizar mediante preguntas cerradas o abiertas.
Si se hace de una manera sistemtica y determinada, le servir para mostrar a su
interlocutor que escucha lo que dice, pensando al respecto y respondiendo
adecuadamente.
Las preguntas tendenciosas tienden a dirigir al entrevistado hacia la respuesta que Ud.
quisiera escuchar. Las preguntas dobles son aquellas que en una sola contienen, de
hecho, dos preguntas diferentes. Normalmente no deben utilizarse por que se corre el
peligro que el entrevistado solo conteste una de ellas.

Orden de las preguntas en una secuencia lgica.


Inductivo (piramidal)
Deductivo (embudo)
Combinacin de ambas (diamante)
Cuestionarios Recopila informacin que permite a los analistas recoger opiniones, posturas,
conductas y caractersticas de las diversas personas de una organizacin.
No podemos profundizar una pregunta y/o analizar trminos difciles, esto
implica para el analista que las preguntas deben ser completamente
transparente; el flujo del cuestionario convincente; se debe anticipar a las
respuestas de las preguntas, y que el manejo del cuestionario sea planificado
con todo detalle.
Se cuentan con preguntas abiertas y cerradas.
1. Abiertas: Se usan en circunstancias en que se desea conocer la
opinin; explorar situaciones).
2. Cerradas: Se usan cuando somos capaces de enumerar de antemano
las respuestas posibles.
3. Necesita de una redaccin adecuada.
4. En la eleccin del vocabulario utilice uno acorde con el utilizado en la
organizacin.
5. Mantenga una redaccin sencilla.
6. Utilice preguntas corta.
Uso de arreglos Q A partir de las entrevistas, las observaciones y el muestreo de datos de
archivos, el analista crea una serie de tarjetas con postulados o conceptos para que los que
responden las ordenen.
Cada tarjeta contiene por separado un postulado; en teora, al agrupar las tarjetas, se tiene
todo el dominio posible de actitudes sobre el tpico en cuestin. 4
Se instruye a quien responde para tomar un paquete de tarjetas y separarlas en varias pilas.
Para facilitar lo anterior, el analista prepara entre ocho y diez tableros de arreglo-Q, de tal
forma que la seleccin de varios individuos puede procesarse simultneamente.
El nmero de pilas que se van a ordenar depende del nmero de postulados; cuanto mayor
sea el nmero de postulados, ms pilas debe haber.
Se le pide a quien responde que coloque un nmero especifico de tarjetas en cada pila.
El nmero de tarjetas requerido en cada pila tiene que corresponder a un perfil discreto de
distribucin normal.
Brainstorming
Es una tcnica de grupo sencilla para la generacin de ideas.
Una sesin de Brainstorming funciona bien con 4 a 10 personas.
Una persona es el lder, pero el papel del lder se reduce a, prcticamente, abrir la
reunin ms que a restringirla o controlarla.
Es til en:
La generacin de mltiples puntos de vistas del problema.
La formulacin del problema en forma diferente.
Ayuda en:
Estimula la imaginacin contribuyendo a que los usuarios sean consientes de sus
necesidades.
Ayuda a construir una ms completa figura de las necesidades de usuario.
Evita la tendencia de centrarse en reas estrechas demasiado pronto.
Es una tcnica fcil de aprender.
Fases de un Sesin
Fase de preparacin.
Fase de Generacin.

Fase de consolidacin.
JAD Promueve la cooperacin, comprensin, y equipo de trabajo entre compradores, usuarios
y desarrolladores. Proporciona un proceso que facilita la creacin de una visin compartida de
lo que el sistema debera ser.
Fase de JAD
a. Definicin del Proyecto.
b. Investigacin.
c. Preparacin.
d. La sesin JAD.
e. El documento final.
Prototipos Consiste en capturar un conjunto de necesidades e implementarlas rpidamente
con la intencin declarada de expandirlas y refinarlas iterativamente al ir aumentando la
comprensin que del sistema tienen el usuarios y quien lo desarrolla.
Desarrollo de Prototipos
1. Trabajar con mdulos manipulables.
2. Construir el prototipo con rapidez.
3. Modificaciones en el prototipo.
4. Enfatizar la interfaz con el usuario.
Escenarios Cada escenario abarca una o ms posibles interacciones. Se han desarrollado
varias formas de escenarios, cada una de las cuales proporciona diferentes tipos de
informacin en diferentes niveles de detalle sobre el sistema. Utilizar escenarios para describir
requerimientos es una parte fundamental de los mtodos giles, como la programacin
extrema.
Casos de Uso Los casos de uso son una tcnica que se basa en escenarios para la obtencin de
requerimientos que se introdujeron por primera vez en el mtodo Objeto y (Jacobsen et al.
1993).
Actualmente se han convertido en una caracterstica fundamental de la notacin de UML, que
se utiliza para describir modelos de sistemas orientados a objetos.
En su forma ms simple, un caso de uso identifica el tipo de interaccin y los actores
involucrados.
Etnografa La etnografa es una tcnica de observacin que se puede utilizar para entender los
requerimientos sociales y organizacionales.
Un analista se sumerge por s solo en el entorno laboral donde se utilizar el sistema.
Observa el trabajo diario y anota las tareas reales en las que los participantes estn
involucrados. Observa el trabajo diario y anota las tareas reales en las que los participantes
estn involucrados.
Ayuda a los analistas a descubrir los requerimientos implcitos que reflejan los procesos reales
ms que los formales en los que la gente est involucrada.
La etnografa se puede combinar con la construccin de prototipos.
Gestin de Requerimientos
Los requerimientos para sistemas software grandes son siempre cambiantes.
Debido a que el problema no puede definirse completamente, es muy probable que los
requerimientos del software sean incompletos.0
Durante el proceso del software, la comprensin del problema por parte de los stakeholders
est cambiando constantemente. Stakeholders est cambiando constantemente.
Estos requerimientos deben entonces evolucionar para reflejar esta perspectiva cambiante del
problema.2
Adems, una vez que un sistema se ha instalado, inevitablemente surgen nuevos
requerimientos.

Requerimientos Duraderos y Voltiles


Requerimientos Duraderos: Son requerimientos relativamente estables que se
derivan de la actividad principal de la organizacin y que estn relacionados
directamente con el dominio del sistema.
Requerimientos Voltiles: Son requerimientos que probablemente cambian durante
el proceso de desarrollo del sistema o despus de que ste se haya puesto en
funcionamiento. (Ej. Requerimientos resultantes de las polticas gubernamentales
sobre sanidad).
Tema 6
Modelo de Anlisis Considera que los datos y procesos que transforman los datos son
entidades separadas. Los objetos de datos se modelan en una forma que define sus atributos y
relaciones. Los procesos que manipulan los objetos de los datos se modelan de tal manera que
muestran como transforman los datos mientras los objetos de datos fluyen por el sistema.
Un Segundo enfoque del modelado de anlisis, llamado anlisis orientado a objetos se centra
en la definicin de clases y en la manera en que estas colaboran entre ellas para efectuar los
requisitos del cliente. El UML y el proceso unificado estn orientados a objetos en forma
predominante.
Modelos de Contexto El contexto es cualquier informacin que se pueda usar para
caracterizar una entidad. Una entidad es una persona, lugar u objeto que se considere
relevante para la interaccin entre el usuario y la aplicacin, incluyendo al usuario y a la
aplicacin en s.
Modelo de Comportamiento Indica la forma en que el software responder a los eventos o
estmulos externos. Es la creacin del modelo el analista debe realizar los siguientes pasos:
1. Evaluar todos los casos de uso para entender por completo la secuencia de interaccin
dentro del sistema.
2. Identificar los eventos que conducen la secuencia de interaccin y entender la forma
en que estos eventos se relacionan con las clases especificas.
3. Crear una secuencia para cada caso de uso.
4. Construir un diagrama de estado para el sistema.
5. Revisar el modelo de comportamiento para verificar su exactitud y consistencia.
Modelo de Datos El Ingeniero o analista de software define todos los objetos de datos que se
procesan dentro del sistema y las relaciones entre los objetos de datos, adems de otra
informacin pertinente para las relaciones.
Modelo de Objeto Un objeto de datos define un elemento compuesto de los datos; esto es,
incorpora una coleccin de elementos de datos individuales (atributos) y da un nombre a la
coleccin de elementos (el nombre del objeto de datos).
Modelado Basado en Escenarios Aunque el xito de un sistema o producto basado en
computadora se mide en muchas formas, la satisfaccin del usuario encabeza la lista. Si los
ingenieros de software entienden la manera en que los usuarios finales (y otros actores)
quieren interactuar con el sistema, el equipo de software ser ms capaz de caracterizar en
forma apropiada los requisitos y construir y construir modelos significativos de anlisis y
diseo. Por lo tanto, el modelado del anlisis con UML comienza con la creacin de escenarios
en la forma de casos de uso, diagramas de actividad y diagramas de carril.
1. Escritura de Casos de Uso Una caso de uso captura las interacciones que ocurren
entre los productos y consumidores de informacin y del sistema en s mismo.
2. Diagramas de Actividad El diagrama de actividad en UML complementa el caso de
uso al proporcionar una representacin grafica del flujo de interaccin dentro de un
escenario especfico.
3. Diagrama de Carril Es una variacin til del diagrama de actividad, ya que permite al
modelador la representacin del flujo de actividades descritas por el caso de uso y,
al mismo tiempo, indicar que actor o clase de anlisis tiene la responsabilidad de la
accin descrita mediante un rectngulo de actividad. Las responsabilidades se

representan como segmentos paralelos que dividen el diagrama en forma vertical,


como los carriles de una alberca.
Modelo Basado en Casos de Uso Los casos de uso son una tcnica para especificar el
comportamiento de un sistema:
Un caso de uso es una secuencia de interacciones entre un sistema y alguien o algo que usa
alguno de sus servicios.
Todo sistema de software ofrece a su entorno aquellos que lo usan una serie de servicios.
Un caso de uso es una forma de expresar cmo alguien o algo externo a un sistema lo usa.
Cuando decimos alguien o algo hacemos referencia a que los sistemas son usados no slo
por personas, sino tambin por otros sistemas de hardware y software.
Por ejemplo, un sistema de ventas, si pretende tener xito, debe ofrecer un servicio para
ingresar un nuevo pedido de un cliente. Cuando un usuario accede a este servicio, podemos
decir que est ejecutando el caso de uso ingresando pedido.
Modelado Basado en Clases Las clases se manifiestan en una de las siguientes formas:
Entidades externas: producen o consumen informacin que se usara en un sistema
basado en computadora.
Cosas: son parte del dominio de informacin para el problema.
Sucesos o eventos: ocurren dentro del contexto de la operacin del sistema...
Unidades organizacionales: divisin, grupo relevantes para alguna aplicacin.
Sitios: que establecen el contexto del problema y la funcin global del sistema.
Estructuras: definen una clase de objetos relacionados.
Coad y Yourdan sugieren seis caractersticas de seleccin que se debe usar cuando un analista
considera cada clase potencial para incluirlas en un modelo de anlisis y son:
Informacin referida.
Servicios de requisitos.
Atributos mltiples.
Atributos comunes.
Operaciones comunes.
Requisitos esenciales.
Modelo Orientado al Flujo Es una de las notaciones de anlisis utilizadas con mayor amplitud
en la actualidad. Aunque el diagrama de flujo de datos (DFD) y los diagramas y la informacin
relacionados no es una parte formal de UML, pueden utilizarse para completar los diagramas
en UML, y proporcionar un conocimiento adicional de los requisitos y el flujo del sistema.
El DFD tiene una visin del sistema del tipo entrada-salida.
Lenguaje Unificado de Modelado(UML) UML es ante todo un lenguaje. Un lenguaje
proporciona un vocabulario y unas reglas para permitir una comunicacin. En este caso, este
lenguaje se centra en la representacin grfica de un sistema.
Este lenguaje nos indica cmo crear y leer los modelos, pero no dice cmo crearlos. Esto
ltimo es el objetivo de las metodologas de desarrollo.
Los objetivos de UML son muchos, pero se pueden sintetizar sus funciones:
Visualizar: UML permite expresar de una forma grfica un sistema de forma que otro
lo puede entender.
Especificar: UML permite especificar cules son las caractersticas de un sistema antes
de su construccin.
Construir: A partir de los modelos especificados se pueden construir los sistemas
diseados.
Documentar: Los propios elementos grficos sirven como documentacin del sistema
desarrollado que pueden servir para su futura revisin.
Un modelo UML est compuesto por tres clases de bloques de construccin:
Elementos: Los elementos son abstracciones de cosas reales o ficticias (objetos,
acciones, etc.)

Relaciones: relacionan los elementos entre s.


Diagramas: Son colecciones de elementos con sus relaciones.
Diagramas UML
Un diagrama es la representacin grfica de un conjunto de elementos con sus relaciones, un
diagrama ofrece una vista del sistema a modelar.
Para poder representar correctamente UML ofrece una amplia variedad de diagramas para
visualizar el sistema desde varias perspectivas. UML incluye los siguientes diagramas:
Diagrama de casos de uso.
Diagrama de clases.
Diagrama de objetos.
Diagrama de secuencia.
Diagrama de colaboracin.
Diagrama de estados.
Diagrama de actividades.
Diagrama de componentes.
Diagrama de despliegue.
Temas 7
El anlisis del problema es la actividad que engloba:
Aprendizaje sobre el problema a resolver.
Comprensin de las necesidades del usuario.
Comprensin de todas las restricciones que la solucin debe cumplir.
Primitivas del Anlisis del Problema
El proceso actual, manual o actualizado, es inadecuado y necesita, de alguna es
inadecuado y necesita, de alguna forma, ser actualizado.
Una funcin particular no se realiza actualmente, sino que necesita ser llevada a cabo.
Elementos que se utilizan en el anlisis del Problema
Particin.
Abstraccin.
Proyeccin.
El problema puede ser modelado teniendo tres perspectivas
Esttica: identificando la estructura esttica de los objetos y sus relaciones se obtiene
una especie de fotografa que proporciona una imagen esttica del dominio del
problema.
Dinmica: Se describen aspectos del sistema que combinan con el tiempo, y que,
caracterizan los distintos estados que pueden presentar un problema, as como las
condiciones y eventos que permiten transmitir de un estado a otro.
Funcional: Se describe como se transforman los datos en el contexto del problema.
Herramientas
Diagrama de Flujo de Datos (DFD): Ilustra las funciones que el sistema debe realizar,
transforma entradas en salidas.
Diagrama Entidad Relacin (DER): Permite conocer en detalle que informacin hay en
cada almacn, hace nfasis en las relaciones entre datos.
Diagrama de Transicin de Estados (DTE): Se enfoca en el comportamiento
dependiente del tiempo del sistema, es decir la secuencia con la que se har el acceso
a los datos y se ejecutaran las funciones.
Especificacin de Proceso (EP): Describe que es lo que sucede en las burbujas de ms
bajo nivel de DFD y tiene que cubrir 3 requerimientos:
1. La especificacin de procesos debe expresarse de manera que puedan
verificar tanto el usuario, como el analista.

2. El proceso debe especificarse en un forma que pueden ser comunicada


efectivamente al pblico que est involucrado en el proyecto.
3. No debe imponerse decisiones de diseo de implementacin arbitraria.
Modelo Clsico
Sistema
Fsico
Actual

Lgico
Actual
Lgico
Nuevo
Fsico
Nuevo

Modelo Esencial Describe que es lo que el sistema debe hacer para satisfacer los
requerimientos del usuario, diciendo lo mnimo posible de como se har la implementacin.
Modelo Ambiental Frontera del sistema y el resto del mundo que lo rodea.
Herramienta: Declaracin del propsito, diagrama de contexto y lista de
acontecimientos.
Modelo de Comportamiento Describe el comportamiento para que interactu de manera
exitosa en el ambiente (DFD, DER, DD, DTE, EP).
Tema 8
Modelo Abstraccin de algo, con el propsito comprenderlo antes de construirlo.
OMT Comprende tres vistas del sistema
Modelo de Objeto: Aspectos estticos, estructuras y datos del sistema (Diagrama
Clases y Objeto).
Modelo Dinmico: Aspectos temporales, de comportamiento y de control del sistema
(Diagrama de Estado). Control del Sistema.
Modelo Funcional: Aspectos de transformacin (Funcin) del sistema (DFD). Completa
lo que hace el sistema sin importarle el cmo ni l cuando.
Modelo de Objeto = Modelo de objetos + Diccionario de Datos.
Modelo Dinmico = Diagrama de Estados + Diagrama de Flujo de Datos.
Modelo Funcional = Diagrama de Flujo de Datos + Restricciones.
Relacin entre Modelos
Cada modelo describe un aspecto del sistema manteniendo referencias al resto de los
modelos.

El Modelo de Objetos define las estructuras de datos sobre las que actuarn el Modelo

Dinmico y el Modelo Funcional.


Los sucesos sern las operaciones de los objetos definidas Funcional en el Modelo de
Objetos.
Puede existir una eventual ambigedad acerca de qu modelo debe contener ciertos
elementos de informacin.
Puede ocurrir que ciertas propiedades del sistema no queden bien expresadas por
ningn modelo, en cuyo caso el lenguaje natural ser la mejor alternativa el lenguaje
natural ser la mejor alterna.

Relacin entre el Modelo de Objeto y el Modelo Dinmico


El Diagrama de Estados describe toda o una parte del comportamiento de un objeto de
una clase.
Los Estados son los equivalentes a los valores de los atributos y enlaces de las clases.
Los Sucesos se pueden representar como operaciones en el Modelo de Objetos.
Los Sucesos se pueden representar como operaciones en La estructura del Modelo
Dinmico est relacionada y restringida por la del Modelo de Objetos (generalizacin
por restriccin).
Tema 9
Qu es un Mtodo Formal?
Mtodo formal es cualquier tcnica que trate la construccin y/o el anlisis de modelos
matemticos que contribuyen a la automatizacin del desarrollo de Sistema Informticos.
Deficiencias en los enfoques menos formales
La especificacin de un sistema puede contener:
Contradicciones (conjuntos de sentencias que difieren tren si).
Ambigedades (sentencias que se pueden interpretar de varias maneras).
Vaguedades (documentacin voluminosa pero de informacin sin utilidad).
Sentencias incompletas (mala especificacin del sistema).
Niveles mezclados de abstraccin (imposibilita la visin global).
El Papel de los Mtodos Formales en la Ingeniera del Software

La formalizacin matemtica del SW es el enfoque ms apropiado para conseguir


mejorar su calidad, va adquiriendo cada vez ms fuerza.

Ventajas de los Mtodos Formales


Se comprende mejor el sistema.
La comunicacin con el cliente mejora ya que se dispone de una descripcin clara y no
ambigua de los requisitos del usuario.
El sistema se describe de manera ms precisa.
El sistema se asegura matemticamente que es correcto segn las especificaciones.
Mayor calidad software respecto al cumplimiento de las especificaciones.
Mayor productividad.
Clasificacin de los Mtodos Formales
Especificaciones basadas en lgica de primer orden y teora de conjuntos.
1. Los datos y relaciones/funciones se describen en detalle y sus propiedades se
expresan en lgica de primer orden.
2. La semntica de los lenguajes est basada en la teora de conjuntos.
3. Los mtodos de este tipo ms conocidos son: Z, VDM y B.
Especificaciones algebraicas: proponen una descripcin de estructuras de datos
estableciendo tipos y operaciones sobre esos tipos.
Preliminares Matemticos
Un conjunto es una coleccin de objetos o elementos.
No existe elementos repetidos.
Los conjuntos de elementos se marcan entre llaves separado por comas los elementos.
El nmero de elementos se denomina cardinalidad y se marca con #.
Operadores Matemticos
.xEX
.x E X
A cB
Conjuntos Vacio

U A = A;
UA=

Operadores Lgicos
V; V; -;
Sucesiones Estructura matemtica que modela el hecho consistente que sus elementos estn
ordenados, los operadores que pueden aplicarse a las sucesiones son: cabeza, cola, frente,
ltimo.
Lenguajes Formales de Especificacin Suele estar compuesto de 3 componentes primarios:
Una sintaxis que define la notacin especfica con la cual se representa la
especificacin.
Una semntica que ayuda a definir un universo de objetos que se utilizar para
describir el sistema.
Un conjunto de relaciones que definen las reglas que indican cules son los objetos
que satisfacen correctamente la especificacin.
Reglas para aplicar Mtodos Formales
Seleccionar la notacin adecuada.
Formalizar pero dems.
Estimar los costes.
No Abandonar tus mtodos formales en desarrollo.
Documentar suficientemente.
No comprometer los estndares de calidad.
Reutilizar cuando sea posible.
Enfoque de Sala Limpia Se trata de una forma rentable y eficiente, en trminos de tiempo de
establecer un enfoque de fabricacin que impida la introduccin de defectos de produccin.
En lugar de fabricar un producto y dedicarse despus a eliminar defectos, el enfoque de sala
limpia demanda la disciplina necesaria para eliminar errores en las especificaciones y en el
diseo, fabricando entonces el producto en forma limpia.
Estrategia de Sala Limpia Hace uso de una versin especificada del modelo incremental del
software, se van desarrollando los elementos en partes de equipos de IS pequeo e
independientes, a medida que se van certificando los incrementos se agrega el todo, en
consecuencia la funcionalidad del sistema crece en el tiempo.
Tareas
1. Planificacin de incrementos.
2. Educcin de requisitos.
3. Diseo formal.
4. Verificacin y Correccin.
5. Planificacin de la comprobacin estadstica.
6. Comprobacin estadstica de utilizacin.
7. Certificacin.
Que hace diferente Sala Limpia La sala limpia representa el primer intento prctico de poner
el proceso de desarrollo del software bajo un control estadstico de calidad con una estrategia
bien definida para la mejora continua del proceso.
Para alcanzar esta meta, se defini un ciclo nico de vida de sala limpia, que haca hincapi en
una ingeniera del software basada en las matemticas para obtener diseos de software
correctos y que se basaba e software basado en estadstica para la certificacin de fiabilidad
de ese software.
Conceptos de las Cajas
Caja negra. Esta caja especifica el comportamiento del sistema, o de parte de un
sistema. El sistema (o parte de l) responde a estmulos especficos (sucesos) mediante
la aplicacin de un conjunto de reglas de transicin que hacen corresponder el
estmulo con la respuesta.
Caja de estado. Esta caja encapsula los datos de estados y de servicios (operaciones)
de forma anloga a los objetos. En esta vista de especificacin, se representan las

entradas de la caja de estados (los estmulos) y sus salidas (las respuestas). La caja de
estados tambin representa la historia de estmulos de la caja negra, es decir, los
datos encapsulados en la caja de estado que deben ser mantenidos entre las
transiciones implicadas.
Caja limpia. Las funciones de transicin que estn implicadas en la caja de estado se
definen en la caja limpia. Dicho literalmente, la caja limpia contiene el diseo
procedimental correspondiente a la caja de estados.

Tema 10
Diseo de Datos Transforma el modelo del dominio de informacin que se crea durante el
anlisis en las estructuras de datos que se necesitan para implementar el software.
Diseo Arquitectnico Define la relacin entre los elementos estructurales principales del
software, los patrones de diseo que se pueden utilizar para lograr los requisitos que han
definido para el sistema, y las restricciones que afectan a la manera en que se pueden aplicar
los patrones de diseo arquitectnico.
Diseo de la Interfaz Describe la manera de comunicarse con el software dentro de s mismo,
con sistemas que inter-operan dentro del mismo y con las personas que lo utilizan.
Diseo de Componentes Transforma los elementos estructurales de la arquitectura de
software en una descripcin procedimental de los componentes del software.
Diseo y Calidad del Software
Deber implementarse todos los requisitos explcitos del modelo de anlisis y debern
ejecutarse a todos los requisitos implcitos que desea el cliente.
Deber ser una gua legible y comprensible para aquellos que generan cdigo y para
aquellos que comprueban y consecuentemente dan soporte al software.
Deber proporcionar una imagen completa del software, enfrentados a los dominios
de comportamiento, funcionalidades y de datos desde una perspectiva de
implementacin.
Conceptos de Diseo
Abstraccin: Se define en varios niveles para software que estn definidos en modelos
desde un nivel ms alto que define el contexto del problema hasta el ms bajo que
define como se va a implementar.
Refinamiento: Se descompone de una o en varias instrucciones de programa dado en
una instruccin ms detallada.
Modularidad: El Software se divide en componentes nombrados y abordados por
separado llamados frecuentemente mdulos que se integran para satisfacer los
requerimientos del problema.
Arquitectura del Software: Es la estructura jerrquica de los componentes del
programa (mdulos), la manera en que los componentes interactan y la estructura de
datos que van a utilizar los componentes.
Jerarqua de Control: Representa la organizacin de los mdulos e implica una
jerarqua de control, tambin representa dos caractersticas sutiles diferentes de la
arquitectura del software que es la visibilidad (Conjuntos de componentes de
programa que un componente dado puede invocar o utilizar como dato) y
conectividad (conjunto de componentes dado invoca o utiliza directamente como
dato).
Diseo Estructural Se puede dividir vertical u horizontal.
Horizontal Define las entradas, la transformacin de los datos y las salidas.
Vertical Sugiere que el control y trabajo se realizan de manera descendente, es decir
los mdulos superiores serian de control y los inferiores los de trabajo.

Estructura de Datos Representa la relacin lgica entre los elementos individuales de datos, es
tan importante como la estructura de programa para la representacin de la arquitectura del
software.
Procesamiento de Software Debe proporcionar una especificacin precisa de procesamiento
incluyendo la secuencia de sucesos y los puntos de decisin exactos.
Diseo Modular Reduce la complejidad, facilita los cambios y da como resultado una
implementacin ms fcil al fomentar el desarrollo paralelo de los diferentes partes del
sistema.
Independencia Funcional Es la suma de modularidad, abstraccin y ocultamiento de la
informacin. Trae consigo dos criterios importantes
Cohesin Un modulo organiza informacin o datos que se encuentran relacionados
entre s.
Acoplamiento Es la forma de como se interconectan o relacionan los mdulos dentro
de una estructura de software.
Documentacin de Diseo
Arquitectura del Software Es la estructura del sistema que comprende los
componentes del software, las propiedades de esas componentes visibles
externamente y la relacin entre ellos.
Importancia Facilita la comunicacin entre todas las partes interesadas en el
desarrollo de un sistema basado en computadora.
La estructura y estilo de una aplicacin puede depender de los requerimientos no funcionales
de un sistema.
Rendimientos.
Proteccin.
Seguridad.
Disponibilidad.
Mantenibilidad.
Modelos de Sistemas
Modelo Reposito Cada sub-sistema mantiene su propia base de datos, los datos se
intercambian entre los sub-sistemas mediante el paso de mensaje entre ellos.
Modelo Cliente Servidor Un conjunto de servidores que ofrecen servicios a otros
subsistemas. Ejemplos de servidores son servidores de impresoras que ofrecen
servicios de impresin, servidores de ficheros que ofrecen servicios de gestin de
ficheros y servidores de compilacin, que ofrecen servicios de compilacin de
lenguajes de programacin.
Modelo de Capas Cada capa puede pensarse como una maquina abstracta cuyo
lenguaje se define para los servicios proporcionados por la capa.

S-ar putea să vă placă și