You are on page 1of 11

TRABAJO DE SIA

Nombre Yohanna Monsalvez


Carrera Ing. Ejec.
Comput.
1.0 Descripcion del Problema

A medida que el la tecnologia ha ido ganando sitio en nuestra sociedad, también lo hace la
necesidad de poder abaratar costos . El gran crecimiento de la industria de la telefoníay de internet
han desarrollado nuevos servicios como lo es VOIP Telefonia sobre Internet .

El problema que los precios de las llamadas en nuestro país ya sea ha celulares , larga
distancia nacional e internacional todavía no han disminuido . La incorporación de Voip ha
permitido precios mas accesibles al consumidor , el propósito de este desarrollo es poder ofrecer las
virtudes de esta tecnología a todos los usuarios que posean teléfonos móviles o fijos .

2.0 OBJETIVOS DE DISACALL

Actualmente la telefonía ip se muestra como una tecnología que ha permitido abaratar costos
comparados con la telefonía actual.

El desarrollo de DISACALL es un servicio que permitirá a los clientes llamar a números de


Larga distancia Nacional , Larga distancia internacional y móvil A través de el los usuarios
registrados podrán llamar a un teléfono gratuito ingresar su pin y efectuar llamadas a costos mas
bajo.

Para poder utilizar estos servicios el cliente deberá registrarse en una pagina web ,
introduciendo sus datos personales, cuenta paypal, el numero de los móviles a inscribir todo este
tipo de transacciones efectuadas mediante conexión segura. Tras el registro el usuario recibira un
mail con el pin para poder realizar las llamadas. Todos los cobros seran cargados a cuenta paypal
registrada por el usuario todo los fines de mes.

Una cuestión importante a tener en cuenta es la seguridad. Para evitar un supuesto en el


cual un usuario malintencionado robe el dispositivo móvil, o se intente suplantar la identidad de un
usuario del servicio, se hará uso de un PIN personal necesario para realizar la operación (creemos
que 4 dígitos es suficiente). En caso de un abuso de intentos de identificación fallidos la cuenta del
cliente se bloqueará. En caso de robo, el usuario deberá darse de baja en el servicio de forma
temporal.
Análisis de Requerimientos

El propósito de la aplicación es permitir escalar la solución de Asterisk especificamente el servicio


DISA , permitiendo que clientes puedan efectuar llamadas a mas bajo costo.

1. 1 Requerimientos Funcionales

1. Administración de los teléfonos que pueden tener acceso al sistema.


2. Administración de los usuarios que se inscriben al sistema.
3. Registrar y dar seguimiento a las llamadas que se han generado por los clientes.
4. Envío de mail con reportes semanales del registro de llamadas.
5. Generación de reportes CDR.
6. Administración de proveedores de Voip
7. Administracion de los precios de las rutas.
8. El sistema tendrá que ser accesible desde cualquier ubicación, garantizando el ingreso al
sistema 24/7.

1. 1 Requerimientos NO Funcionales

1. El acceso al sistema será vía Web.


2. El servidor de aplicaciones a utilizar será open source.
3. Se tendrá el servidor dentro de instalaciones que cuentan con redundancia en electricidad e
Internet.
4. La contraseña tendrá un mínimo de 8 caracteres
5. Después de 3 intentos fallidos de login la cuenta quedara deshabilitada.
6. La base de datos a utilizar sera Postgresql.
7. El lenguaje a utilizar sera PHP.
8. El sistema desplegara un listado máximo de 10 registros en pantalla.
9. Mediante el sistema se podrá dar de alta, modificar y deshabilitar usuarios.
4.0 Casos de Uso

Como lenguaje para el modelamiento de sistemas se utilizara UML. A continuación se


definen los casos de uso para el sistema DISACALL. En la siguiente sección se hará una
descripción detallada de cada uno de los casos de uso.

Figura 1 Diagrama Casos de Uso DISACALL

En el diagrama de casos de uso que se observa en la Figura se puede ver la relación entre los
actores y los casos de uso del sistema, representando la funcionalidad que muestra el sistema.

Definición de Actores

Se pueden definir dos actores :

El cliente Las operaciones primitivas del cliente serán las de “darse de alta”, “llamar”, “colgar” y
“consultar el saldo” las acciones de darse de alta se llevan a cabo mediante una interfaz web, y las
de llamar y colgar se realizarán a través del terminal móvil o fijo del usuario siguiendo una
respuesta interactiva de voz (IVR). Sin embargo todas las operaciones del actor administrador serán
llevadas a cabo mediante la misma interfaz.

El administrador Todas las operaciones serán realizadas a través de la aplicación web.


Caso de Uso Llamar
Nivel Usuario
Contexto de Uso El usuario realizará una operación de cursar llamada
Actor Cliente (iniciador)
Escenario
1. Un cliente marca el numero DISA activo.
2. El sistema comprueba que el móvil o teléfono origen es un número registrado.
3. El sistema comprueba que el cliente al que corresponde el móvil se encuentra activo.
4. El sistema pide al usuario su número personal identificativo.
5. El usuario introduce su número a través del teclado numérico.
6. El sistema comprueba la validez del código.
7. El sistema comprueba que el cliente tenga saldo para llamar .
8. El sistema le da función TONO.
9. El usuario marca numero a llamar.
10. El sistema inicia un ticket con la hora de inicio de la llamada y destino.
Excepciones
1-9 Un cliente puede detener el proceso colgando la llamada.
5 El sistema bloqueará al usuario si falla reiteradamente 3 intentos de identificación.
7 Si el cliente no tiene saldo el proceso provocará un error y se detendrá.
Caso de Uso Alta de Usuario
Nivel Usuario
Contexto de Uso El usuario se registrará en el sistema mediante una interfaz web.
Actor Cliente (iniciador)
Escenario
1. Un cliente introduce sus datos en el formulario de alta.
2. El sistema comprueba que los datos no estén ya registrados.
3. El sistema registra los datos (datos personales, teléfonos, mail ), marca el cliente como no
activo.
4. El administrador confirma que los datos son correctos y activa la cuenta del cliente.
5. El usuario puede utilizar los servicios del DISA.
Caso de Uso Alta de teléfonos.
Nivel Usuario
Contexto de Uso Se le asociarán números de teléfono a un cliente inscrito en el sistema.
Actor Cliente (iniciador)
Escenario
1. El cliente adjunta al sistema la lista de números de teléfono que desea inscribir a su nombre.
2. El sistema comprueba que los números de teléfono no están asignados a otros usuarios.
3. El sistema asocia los números de teléfono al cliente almacenándolos en la base de datos.
4. El cliente se encuentra en disposición de usar sus nuevos números de teléfono en el sistema,
siempre y cuando el cliente se encuentre activo en sistema.
Excepciones
2. El sistema informa que el numero ya esta asociado a otra cuenta
Prerrequisitos
1. Que el usuario este registrado en el sistema.
Caso de Uso Consultar Saldo.
Nivel Usuario
Contexto de Uso El usuario consultará las el saldo de su cuenta a través de IVR
Actor Cliente (iniciador)
Escenario
1. Un cliente marca el numero DISA activo.
2. El sistema comprueba que el móvil o teléfono origen es un número registrado.
3. El sistema comprueba que el cliente al que corresponde el móvil se encuentra activo.
4. El sistema pide al usuario su número personal identificativo.
5. El usuario introduce su número a través del teclado numérico.
6. El sistema comprueba la validez del código.
7. El sistema muestra opción consultar saldo
8. El cliente consulta saldo.

Caso de Uso Crear Tarifas


Nivel Usuario
Contexto de Uso El administrador podrá crear tarifas para cada destino a llamar en el
sistema.
Actor Administrador
Escenario
1. El administrador introduce su acreditaciones como tal.
2. El sistema comprueba los datos y lo acredita.
4. El sistema muestra las tarifas.
5. El administrador crea una nueva tarifa.
6. El sistema almacena el nombre del nueva tarifa perteneciente al destino dado.
Prerrequisitos
1. Que los datos de los destinos estén registrados.
Diagrama de clases

La clase Cliente es la entidad principal del sistema, contiene información que identifica al usuario
de forma unívoca: identificador, string, conjunto de teléfonos. A parte de contener una serie de
campos con propósitos claramente administrativos: cuenta paypal, etc.

Otros de sus atributos destacables son la inclusión de dos contraseñas: una para usar en el terminal
móvil (pin) y otra para usar en servicio web (passweb).

La clase Telefono esta clase modela el comportamiento de un telefono de un cliente dentro del
sistema. El campo numero identifica unívocamente a un telefono de otro. Así también cuenta con
unos campos de estado: activo (nos indica si actualmente se encuentra activado).

La clase Ticket contiene las operaciones para poder operar con facturas, y hacer los cobros de
llamadas.

Sus atributos principales son: fecha_hora_inicio y fecha_hora_fin del periodo temporal, costo del
servicio y numero del teléfono origen y destino . El campo id identifica a un ticket de manera
unívoca.

Los métodos a utilizar:

1. finalizar: Que dado una llamada y un numero de teléfono finaliza el servicio de este,
devolviendo un identificador de la factura de ese periodo.
2. iniciar: Al igual que el anterior este metodo inicia la llamada.
3. Costo: Serie de operaciones para calcular el costo de la llamada.

La clase Sistema cuenta con atributos que contienen información sobre su estado: actual (número
de usuarios que se encuentran llamando ), maximo (número máximo de clientes simultáneos que el
sistema tendrá como cabida), enTramite (los usuarios que tiene abierta una sesión en sistema
actualmente) .

Los métodos se describen:

1. acreditar: Dado un identificador de cliente y un número de identificación personal, se


procede a comprobar su veracidad. Si es correcto el usuario pasará al estado de identificado
y podrá realizar llamadas.
2. bloquearCli: dado un id de cliente, pone el estado de este a no activo. Esto es cuando hay
intentos fallidos de logueo en la aplicación
1

0..*

1..*

Figura 2 Diagrama de clases de la aplicación


5.0 Diagrama de actividades

A continuacion se diagraman las actividades del sistema

Iniciar

Telefono no
Registrado?

si

respondemos

no
Esta activo?

Mensaje error fin


colgar

no
Tiene saldo?

si no Ha supeado
3 intentos fallidos

Introducir pin

bloquear
no
Pin correcto?

Dar tono llamada Marcar num llamar

You might also like