Anda di halaman 1dari 26

Plantilla Diseño del Sistema

1. Introducción

El Diseño de Sistemas se define el proceso de aplicar ciertas técnicas y principios con el


propósito de definir un dispositivo, un proceso o un Sistema, con suficientes detalles como
para permitir su interpretación y realización física.
La etapa del Diseño del Sistema encierra cuatro etapas:
El diseño de los datos
Trasforma el modelo de dominio de la información, creado durante el análisis, en las
estructuras de datos necesarios para implementar el Software.
El Diseño Arquitectónico
Define la relación entre cada uno de los elementos estructurales del programa.
El Diseño de la Interfaz.
Describe como se comunica el Software consigo mismo, con los sistemas que operan
junto con él y con los operadores y usuarios que lo emplean.
El Diseño de procedimientos
Transforma elementos estructurales de la arquitectura del programa.
La importancia del Diseño del Software se puede definir en una sola palabra Calidad,
dentro del diseño es donde se fomenta la calidad del Proyecto. El Diseño es la única
manera de materializar con precisión los requerimientos del cliente.
1.1. Propósito del sistema.
El sistema será un producto diseñado para trabajar en un entorno INTRANET, lo que
permitirá su utilización de forma centralizada, además trabajará de manera independiente
por lo tanto no interactuará con otros sistemas. En esencia es una herramienta software
que ayuda en la gestión de los servicios de mantenimiento. Básicamente es una base de
datos que contiene información sobre la empresa y las operaciones de mantenimiento a
los clientes. Esta información sirve para que todas las tareas de mantenimiento se
realicen de forma más segura y eficaz. También se emplea como herramienta de gestión
para la toma de decisiones.
La plataforma de gestión del mantenimiento puede ser utilizada ya que necesita gestionar
el mantenimiento de los equipos en mantenimiento, repuestos y la siguiente tabla:
Los Requerimientos funcionales del sistema están referenciados en la siguiente tabla
1.2 Objetivos de diseño
El diseño del sistema, se ocupa de desarrollar las directrices propuestas durante el
análisis en términos de aquella configuración que tenga más posibilidades de satisfacer
los objetivos planteados tanto desde el punto de vista funcional como del no funcional.

Generales Específicos

• Efectuar en forma correcta los


procedimientos apropiados
• Presentar en forma apropiada y adecuada
Satisfacer los la información
requerimientos del
usuario
• Proporcionar resultados exactos
• Utilizar métodos de interacción apropiados
• Proporcionar confiabilidad

Especificar los Describir las características de un sistema de


elementos de información: entrada, salida, procedimientos, archivos,
bases de datos.
diseño lógico del
sistema

Ajustarse a El diseño y su especificación debe estar en


estándares de concordancia con estándares de desarrollo así como con
diseño las reglas establecidas por la organización.

Las buenas prácticas de diseño ergonómico


Fácil de usar
deben contribuir a la efectividad y eficiencia del usuario.
1.2. Definiciones, acrónimos y abreviaturas

ADMINISTRADOR DE RED: Persona a cargo del funcionamiento de la red.


APLICACIÓN: Un programa diseñado para asistir en la realización de una tarea
específica. Tales como procesadores de texto, hoja de cálculo, etc.
BACKUP: Es una copia de los datos que se encuentran en nuestro disco duro, y que se
preservan en otro medio de almacenamiento (discos duros / CD's / DVD's / cintas
magnéticas, etc) con el fin de conservarlos y/o protegerlos en caso de posible daño y/o
destrucción de la fuente original.
Dependiendo de su importancia, será decisión del usuario generar copias parciales («mis
documentos», por ejemplo) o totales (particiones o discos duros completos). Para ello
existe un sinnúmero de programas que permiten realizar esta labor de manera sencilla e
intuitiva.
BASE DE DATOS: Es un archivo compuesto por registros. Cada registro contiene uno o
varios campos de datos significativos a los mismos. Con una base de datos se pueden
realizar operaciones de búsquedas, ordenamientos, reordenamientos y otras funciones.
Por ejemplo, un colegio tendrá una base de datos de sus alumnos. Cada registro
representará a un estudiante y en cada campo se indicará información sobre éste
(Apellidos, nombres, sexo, fecha de nacimiento, domicilio, etc.).
BETA: Versión nueva de un programa que está disponible para que los usuarios puedan
ir probándolo en situaciones reales. Se caracteriza por traer la mayoría de las funciones
que tendrá la versión final. Al ser una versión previa a la final, puede presentar
inestabilidades por lo que solo se recomienda su utilización en entornos controlados,
cuando no sea importante si se produce un error o por usuarios experimentados.
BIBLIOTECA: Colección de descripciones.
BIOS: Acrónimo de Basic Input Output System / Sistema de Entrada y Salida. Es un
programa incorporado en un chip (memoria ROM) de la placa base que al prender la
computadora se encarga de realizar las funciones básicas de manejo y configuración del
computador.
BIT: Unidad mínima de información manejada por la PC. La presencia de una señal
magnética que se representa para nosotros como 1 y la ausencia de la señal magnética
como 0. BUFFER: Memoria dedicada a almacenar temporalmente la información que
debe procesar un dispositivo de hardware (disco duro o cd) para que lo pueda mantener
el rendimiento de la transferencia. Un buffer de tamaño inadecuado da origen a la falla en
grabar CDs.
BUS: Es el canal por el que circula información electrónica en forma de bits. El ancho de
bus es el número de bits transmitidos simultáneamente por el bus. BYTE: Unidad de
información, compuesta de 8 bits consecutivos. Cada byte puede representar, por
ejemplo, una letra.
CACHÉ: Subsistema de memoria especial en la que los valores de datos, frecuentemente
utilizados se almacenan en disco para un rápido acceso a ellos.
CIFRADO: Proceso de codificar datos para prevenir un acceso no autorizado durante su
transmisión. También se le conoce como encriptación.
CLIENTE: Nodo que genera consultas
CÓDIGO FUENTE: Conjunto de líneas de código que conforman un bloque de texto que
normalmente genera otro código mediante un compilador o intérprete para ser ejecutado
por una computadora.
COMANDO: Una instrucción de computadora que, cuando es utilizada por el usuario,
hace que se lleve a cabo una acción en el sistema.
CONCENTRADOR: En una red, es un dispositivo que une las líneas de comunicación en
un punto central, proporcionando conexión común a todos los dispositivos de red
(estaciones y servidores).
CONSULTA: Petición de un subconjunto de descripciones expresada en un lenguaje
normalizado. COOKIE: Es un pequeño archivo de datos que se almacena en tu
computadora cada vez que accedes a un sitio en la red. La utilidad más común de la
cookie es que la próxima vez que el usuario ingrese al servidor pueda ser identificado.
Las cookies guardan información del usuario, su cuenta, modo de la visualización de la
web y otros datos.
CONTROLADOR: Forma en español de denominar a los drivers. Software elaborado por
el fabricante de un componente de hardware que permite ejecutar las rutinas necesarias
para su funcionamiento y compatibilidad con el sistema.
COPROCESADOR: Cualquier microchip que realice una operación especializada,
ayudando o liberando al microprocesador principal de realizarla.
DATA BASE MANAGEMENT SYSTEMS – GESTORES DE BASES DE DATOS
Aplicaciones dedicadas a servir de interfaz entre las bases de datos, el usuario y las
aplicaciones clientes que las utilizan. Se compone de un lenguaje de definición de datos,
de un lenguaje de manipulación de datos y un lenguaje de consulta. El propósito de estas
aplicaciones es de manejar de manera clara, sencilla y ordenada un conjunto de datos.
DEMO: Versión parcial o limitada de un programa, distribuido libremente para efectos de
publicidad del mismo.
DESCARGA: En inglés Download. Transferir una copia de un archivo desde una
computadora remota hasta la computadora solicitante, por medio de un módem u otro tipo
de conexión a la red.
DESCOMPRIMIR: Restaurar el contenido de un archivo comprimido a su formato original
con un programa compresor (Ej: Winzip, Winrar, 7zip).
DESCRIPCIÓN: Instancia de un esquema que identifica mediante metadatos, de manera
inequívoca a un recurso.
DESFRAGMENTAR: Volver a ordenar los datos en dispositivos de disco, de tal forma que
todas las partes de cada archivo se almacenen en sectores contiguos y que las cabezas
lectoras no tengan que desplazarse tanto para acceder a la información.
DESINSTALAR: Proceso por el cual se quita completamente un programa de una
computadora, incluyendo eliminación de archivos y componentes que residen en
ubicaciones del sistema.
DIRECCION IP: Número binario de 32 bits (4 bytes) que identifica de manera única a
cada computadora conectada al Internet (denominada HOST).
EJECUTAR: Realizar una instrucción de sistema.
EMULACIÓN: Proceso realizado por una computadora, mediante el cual imita la función
de un hardware distinto.
ESQUEMA: Describe la sintaxis de una descripción.
EXTENSIÓN: Es un conjunto de 3 caracteres añadido a un nombre de archivo y que
tiene por finalidad: a) precisar su significado, b) identificarlo como miembro de una
categoría. Ejemplo: La extensión .DOC identifica a los documentos de Word y la extensión
.XLS a los libros de Excel.
ETHERNET: Estándar para redes de PC muy utilizado por su rapidez y bajo coste. Admite
distintas velocidades según el tipo de hardware utilizado, siendo las más comunes 10 y
100 Mbits/s (comúnmente denominadas Ethernet y Fast Ethernet y de recientemente
aparición las de 1000 Mbits/s. FORMATEAR: Proceso por el cual se asigna áreas de
almacenamiento de datos (sectores y pistas) a las unidades de almacenamiento para su
posterior uso. Ver Mitos del Formateo.
FRAGMENTACIÓN: El sistema operativo almacena los datos de un fichero o archivo
concreto en muchas partes del disco, dejando grandes espacios entre los registros. Al
fragmentar se “colocan” todos esos espacios al principio del disco y de forma ordenada.
GABINETE: Caja donde se encuentran ubicados los principales componentes de una
computadora (disco duro, placa madre, discos duros, disquetera, lectoras, grabadoras,
memorias, tarjetas, fuente de poder, etc). También denominado case, carcasa, etc.
GB: Gigabyte, múltiplo del byte equivalente a 1024 megabytes. Coloquialmente, giga.
GPL: Acrónimo de GNU Public License. Acuerdo legal bajo el cual se distribuye el
Software de la Free Software Foundation y de todos aquellos programadores que se
acojan a ella. Su baza principal es la de permitir la distribución y modificación del código
de las aplicaciones.
HARDWARE: Parte física del computador, conformada por sus componentes (placa,
micro, tarjetas, monitor, etc.).
HERRAMIENTAS CASE: Aplicaciones informáticas que nos permiten ayudar en todos los
aspectos de ciclo de vida del software, en tareas como el proceso de realizar el diseño del
proyecto, cálculo de costes, documentación, etc. Permite aumentar nuestra productividad
en el desarrollo del mismo y reducir el coste en términos de tiempo y dinero. Patrones de
Arquitectura:
Es el esquema de organización de un sistema software. Proveen un conjunto de
subsistemas predefinidos, especificando sus responsabilidades e incluyen reglas y guías
para organizar las relaciones entre ellos.
HOST: Es la computadora principal de un sistema de computadoras conectadas a través
de enlaces de comunicaciones. Proporciona el acceso a otras dentro de una LAN, MAN,
WAN o Internet.
HOSTING: Servicio que otorga la infraestructura tecnológica necesaria para alojar
websites (páginas web, correo electrónico) a terceros.
INTERNET: Conjunto de redes y puertas de enlace a nivel mundial que usan la colección
de protocolos TCP/IP para comunicarse entre ellas.
INTERNET2: Red computarizada presentado en 1996 por un grupo de colaboradores de
120 universidades bajo el auspicio de la UCAID. El objetivo de Internet2, cuya estructura
de fibra óptica de alta velocidad se probó en línea a principios de 1999, es el desarrollo de
tecnologías avanzadas de Internet y aplicaciones para su uso en investigación y
educación a nivel universitario. Aunque no es de uso público, Internet2, y las tecnologías y
aplicaciones desarrolladas por sus miembros, están dirigidas para beneficiar también,
eventualmente, a los usuarios de la Internet comercial.
INTRANET: Red diseñada para el procesamiento de información dentro de una
compañía u organización. Entre sus usos se incluyen servicios tales como distribución de
documentos, distribución de software, acceso a base de datos y aprendizaje.
LAN INALAMBRICA: Una red LAN que envía y recibe datos mediante señales de radio,
infrarrojos o alguna otra tecnología que no requieren una conexión física entre sus nodos
individuales y el núcleo.
LATENCIA: Tiempo de espera en respuesta a un determinado pedido. En sistemas
computacionales, existe la latencia en servicios web, transacciones en bases de datos,
aplicaciones de propósito general, etc.
LEY DE MOORE: Predicción del cofundador de Intel Gordon Moore quien predijo que el
número de transistores que pueden incluirse en un chip se doblaría cada año, y lo hizo.
Diez años después predijo que la capacidad del chip se doblaría cada dos años, y la
capacidad se dobla cada 18 meses. Popularmente se le denomina “ley” a esta afirmación
hecha por Moore.
LOCALHOST: Nombre usado para representar la propia computadora donde se ha
originado un mensaje TCP/IP. Un paquete IP enviado al localhost tiene la dirección
127.0.0.1 y en realidad no sale del Internet.
JAVA: lenguaje de programación orientado a objetos desarrollado por Sun Microsystems.
Aunque es similar a C++, Java es más pequeño, portable y de muy fácil uso, puesto que
es más robusto y gestiona la memoria por sí mismo. Diseñado para ser seguro y neutro a
las diferentes plataformas, dado que su código (bytecodes) se asemeja al código de
máquina. Utiliza para ello un pequeño aplicativo denominado máquina virtual de Java.
MICROPROCESADOR: Unidad central de proceso (CPU) chip único. Actúa como
corazón de todas las computadoras personales. Un microprocesador moderno puede
tener más de cien millones de transistores en un paquete de circuitos integrados de
aproximadamente 2.5 cm cuadrados.
MODO A PRUEBA DE FALLOS: Tipo de inicio de la computadora que permite iniciar
cargando los controladores y subprogramas netamente necesarios para su
funcionamiento.
NODO: En redes de área local, un dispositivo que se conecta a la red capaz de
comunicarse con otros dispositivos de la misma.
PATRONES DE DISEÑO: Modelo o solución a un problema de diseño no trivial que es
efectiva (ya resolvió el problema en ocasiones anteriores) y re-usable (se puede aplicar a
diferentes problemas de diseño en distintas circunstancias).
REQUERIMIENTO FUNCIONAL: Define el comportamiento interno del software: cálculos,
detalles técnicos, manipulación de datos Y otras funcionalidades que definen como los
casos de uso serán satisfechos
REQUERIMIENTO NO FUNCIONAL: Un requerimiento que especifica criterios que
pueden usarse para juzgar la operación de un sistema en lugar de sus comportamientos
específicos.
PERFIL DE HARDWARE: Un conjunto de datos que describe la configuración y
características de una pieza determinada de la computadora. Esos datos se suelen utilizar
para configurar computadoras de tal manera que funcionen con los dispositivos
periféricos.
PERFIL DE USUARIO: Es un registro que contiene información de un usuario autorizado
en un sistema de computadoras multiusuario. Un perfil es necesario por seguridad ya que
permite, por ejemplo, contener información de restricción de accesos, ubicación del correo
electrónico, tipo de terminal, etc.
PERIFÉRICO: Es un dispositivo que se conecta a la computadora y que es controlado por
drivers instalados en el computador. Ejemplo: webcams, parlantes, impresoras,
escáneres, etc.
PROCESOM: Conjunto de actividades que se realizan con el fin de producir un software.
PROXY: Programa que permite a varios ordenadores acceder a Internet a través de una
única conexión física. De acuerdo a su configuración permite: acceder a páginas Web,
FTP, correo electrónico, etc.
RECURSO: Cualquier pieza de un sistema informático o una red (como una unidad de
disco o impresora) que puede ser asignado a un programa o a un proceso durante su
ejecución.
RECURSO COMPARTIDO: En una red local cualquier recurso que se pone a disposición
de los usuarios de red, tales como directorios, archivos y/o impresoras.
RED: Un grupo de computadoras y dispositivos asociados que son conectados para tener
facilidades de comunicación.
SERVIDOR: Nodo que atiende consultas
SERVIDOS DE APLICACIONES JEE: Entorno de ejecución de aplicaciones JEE,
proporciona el contenedor web y/o el contenedor de EJBs.
SOFTWARE PROPIETARIO: Programa cuyos derechos de copia están en propiedad de
un individuo o una empresa y sólo podrá ser utilizado por terceras personas mediante
adquisición o permiso expreso del propietario.
TABLA: Bloque de texto formateado en filas y columnas (procesadores de texto, hojas de
cálculo, y documentos HTML).
VIRUS: Programa agresivo que infecta los archivos informáticos insertando en ellos
copias de sí mismo. Las copias se ejecutarán cuando se cargue en memoria del archivo
que lo contiene permitiendo que el virus infecte otros archivos que se encuentren
cargados en memoria y así sucesivamente. Entre las consecuencias de una infección
podemos encontrar: daños a los archivos, al disco duro, saturar la memoria del equipo
para evitar la ejecución de programas, y un largo, etc.
WINDOWS: Sistema operativo introducido por Microsoft Corporation y de difundido uso en
el mundo. Proporciona una interfase gráfica basado en menús desplegables, regiones de
ventanas en la pantalla, un dispositivo para señalar usando un ratón, tecnología plug &
play para el fácil reconocimiento y funcionamiento de nuevos componentes y dispositivos
y sencilla integración a redes. Además, tiene protocolos específicos que los
programadores utilizan para ahorrarse trabajo y lograr efectos muy llamativos.
1.3.2. Acrónimos
ACPI: Acrónimo de Advanced Configuration and Power Interface. Es un sistema en PCs
modernas, que administra el consumo eléctrico a través de software.
ADSL: Acrónimo de Asymmetric Digital Subscriber Line. Tecnología y equipamiento que
permite realizar comunicaciones digitales a alta velocidad, la máxima velocidad del ADSL
es de 6 Mbit/s, actualmente en muchos países se utilizan versiones mejoradas de este
sistema, por ejemplo el ADSL 2 o ADSL 2+, permitiendo hasta 24 Mbit/s de descarga de
datos y hasta 3,5 Mbit/s de subida o salida de datos.
AGP: Acrónimo de Advanced Graphics Port o Puerto Avanzado para Gráficos. Es un tipo
de ranura exclusiva para las tarjetas gráficas. Sus prestaciones son superiores a las
conexiones PCI. Las versiones que existen son: AGP 1x / 2x / 4x / 8x.
ASCII: Esquema de codificación usando 7 u 8 bits, que asigna valores numéricos de hasta
256 caracteres, incluyendo números, letras y signos.
CPU: Central Processing Unit o Unidad Central de Proceso. El "cerebro" de un
computador; en general, sinónimo de microprocesador. En ocasiones se usa para
referirse al toda la caja que contiene la placa base, el micro y las tarjetas de expansión.
CRT: Cathodic Ray Tube, tubo de rayos catódicos. La tecnología empleada en los
televisores y en los monitores clásicos.
DHCP: Acrónimo de Dynamic Host Configuration Protocol. Es un protocolo TCP/IP que
permite, en una red interna o externa, asignar automáticamente direcciones IP temporales
a sus diferentes estaciones.
DLL: Acrónimo de Dynamic Link Library. Son archivos que permiten almacenar
separadamente rutinas ejecutables que pueden ser utilizadas sólo cuando un programa
los necesita. Esta tecnología propia de los sistemas Windows y OS/2. Se les reconoce
porque tienen extensión .DLL u .OVL
DNS: Acrónimo de Domain Name Server. Es el sistema por el cual los hosts de Internet
tienen nombres de dominio como direcciones, además de dirección IP. Por ejemplo ¿te
sería sencillo recordar esta IP 64.4.33.7? de seguro es más fácil digitar en tu navegador
esta dirección a la que pertenece www.hotmail.com.
DOS: Término genérico utilizado que describe a cualquier sistema operativo que se carga
desde disco cuando el sistema es iniciado o reiniciado. También, sistema operativo para
PC monousuario y monotarea, del que derivan los Windows 95, 98 y ME. Existen
versiones del DOS de Microsoft, IBM y Digital Research, entre otros.
ERS: Documento de Especificación de Requisitos Software.
GFDL: Licencia para Documentación Libre de GNU.
GPL: Licencia para Software Libre de GNU.
HDD:Hard Disk Device, forma inglesa de denominar al disco duro.
JDNI: Java Naming and Directory Interface. Servicio est ándar de nombrado y directorio
en Java.
JPEG: Acrónimo de Joint Photographic Experts Groups. Es un estándar ISO/ITU para el
almacenamiento de imágenes de forma comprimida. JPEG obtiene la compresión de una
imagen a costa de la pérdida de parte de la información de la misma.
JSF: Java Servlets Faces es una tecnología de Java par a construir interfaces de usuario
del lado del servidor
LAN: Acrónimo de Local Area Network. Es un grupo de nodos (computadoras) y otros
dispositivos que están reunidos físicamente en un área relativamente pequeña, los cuales
están conectados por un enlace de comunicación que permite la interacción entre ellos.
LPT: Line printer terminal. Una forma de denominar a los puertos paralelos (LPT1 / LPT2 /
LPT3). Nombre de dispositivo lógico para una impresora en línea, reservado por el
sistema operativo MS-DOS para un máximo de tres puertos paralelos de impresora. El
primer puerto, LPT1, suele coincidir con el dispositivo de salida PRN para copias
impresas.
RAM: Random Access Memory, o Memoria de Acceso aleatorio. La memoria principal en
la que se almacenan los datos durante el funcionamiento de un ordenador, la cual se
“borra” al apagarlo. Existen diversos tipos (Fast Page, EDO, SRAM...) y conectores
(SIMM, DIMM, RIMM).
RDF: Resource Description Framework, estándar del consorcio de World Wide Web
(W3C) para la codificación y manejo de metadatos usando el lenguaje de marcas XML.
SDD: Software Design Document (Documento de Diseño de Software) “Documento que
describe el modelo de diseño del sistema”
1.4. References
• El World Wide Web Consortium (W3Chttp://www.w3c.es/)
• Code Complete: A Practical Handbook of Software Construction Paperback –
Unabridged, 19 Jun 2004
• Video2Brain: Primeros pasos con Java [2015]
• El proceso unificado de desarrollo de software – Ivar Jacobson, Grady Booch,
James Rumbaugh
• Análisis y diseño de sistemas, 6ta Edición – Kenneth E. Kendall y Julie E. Kendall
• Ingeniería del software: Un enfoque práctico, 7ma Edición – Roger S. Pressman
• Curso php http://edutin.com/curso-de-PHP-y-MySQL-1498
• Curso POO Programación orientada a objetos
https://courses.edx.org/courses/course-v1:MexicoX+UPEVIPN02x+T2015/info

2. Representación de la arquitectura.
La meta principal de la arquitectura del sistema es mostrar los aspectos principales que
influirán en la etapa de desarrollo. Se tomarán en cuenta las siguientes metas y
restricciones para el diseño de la arquitectura del sistema:
2.1 Metas y restricciones de la Arquitectura
De acuerdo con el proyecto y tomando como referencia el Informe de Análisis del Sistema
realizado en la segunda fase del proyecto; se construyeron los Diagramas de Clases y los
de componentes, además se estructuró los paquetes que los organizarían.

Clasificación Descripción Requerimientos


Usabilidad Se enfoca a las La identificación del usuario
características de debe permitir el ingreso al
estética y sistema de forma más fácil e
consistencia en las intuitiva posible.
interfaces gráficas
La resolución mínima para una
buena visualización del

Clasificación Descripción Requerimientos


Sistema será de 800x600
píxeles.

El sistema debe permitir ser


usado intuitivamente por
cualquier usuario

En caso de error del usuario


el sistema informará
claramente el mensaje del
error y una solución
entendible.
Confiabilidad El sistema estará disponible
ininterrumpidamente entre las
6.00 am y las 10.00 pm de
días lunes a Domingo durante
todo el año
Rendimiento Se enfoca con las El sistema debe demorarse no
características como más de 1 segundo en realizar
tiempo de respuesta, la operación realizada.
tiempo de iniciación y
término.
Soporte Se concentra en las El sistema mostrará su interfaz
características como en los idiomas español e inglés.
pruebas,
adaptabilidad, El sistema debe trabajar sobre
mantenimiento, sistemas operativos
configuración, Windows 7 o superior
Instalación,
escalabilidad, y
localización

2. Reutilización de Diseños
* No volver a inventar arquitecturas p.ej. patrones de diseño P.ej. patrones
arquitectónicos (C/S, OO, etc.)
3. Reutilización de Especificaciones
4. Reutilización de las abstracciones del dominio
5. Debe estar asociada a la generación (semi)automática de los elementos de diseño
e implementación.
Aspectos para la reutilización de software existente
1. Si los componentes ya desarrollados cumplen los requisitos del proyecto, se adquirirán.
El coste de la adquisición y de la integración de los componentes ya desarrollados serán
casi siempre menores que el coste para desarrollar el software equivalente. Además, el
riesgo es relativamente bajo.
2. Si se dispone de componentes ya experimentados, los riesgos asociados a la
modificación y a la integración generalmente se aceptan. El plan del proyecto debería
reflejar la utilización de estos componentes.
Ventajas
• Reducir el tiempo de desarrollo.
• Reducir los costos.
• Incrementar la productividad.
• No tener que reinventar las soluciones.
• Facilitar la compartición de productos del ciclo de vida.
• Mayor fiabilidad
• Mayor eficiencia (Aunque al principio pueda parecer que no)
• Consistencia y la familiaridad, los patrones dentro del software serán más
consistentes, tendiendo a facilitar el mantenimiento del producto.

3. Vista lógica
Para este punto representa los sucesivos refinamientos que definen las diferentes
unidades lógicas que componen la arquitectura del software.
El primer refinamiento realizado consiste en la descomposición en subsistemas. Los
subsistemas representan cortes verticales al diseño del sistema. Cada subsistema
consiste en el agrupamiento de diferentes funcionalidades relacionadas entre sí y posee
la capacidad de funcionar como un sistema en sí mismo.
Posteriormente se explora la composición de cada uno de los subsistemas.
Finalmente se incluye la realización de los casos de uso descriptos en la sección anterior
mediante los componentes arquitectónicos definidos.
3.1Diagrama de Clases del diseño
Presentar las clases significativas de la arquitectura y describir sus responsabilidades, así
como las relaciones importantes basadas en la arquitectura, operaciones y atributos.
Especificar los patrones de diseño que pueden estar incluidos.

3.3 Diagrama de Clases del diseño


4. Vista del proceso
Dentro de nuestra vista lógica referenciamos los casos de uso del sistema

4.1Diagramas de secuencia
Se debe representar la información solicitada utilizando diagramas de secuencia
específicos del proyecto (diagramas de interacción de objetos), preferiblemente utilizando
la notación UML. Donde sea posible, los diagramas explican el proceso de interacción
requerido por los casos de uso principales.
5. Vista de datos
Describe el modelo de datos del sistema que se va a desarrollar. Se realiza la
identificación a través de diagramas relacionales que presenten el modelo de base de
datos a implementar y su descripción usando el diccionario de datos.
5.2 Diccionario de datos
Se puede construir el formato específico que detalle para cada una de las tablas los
campos, tipos de datos y restricciones o elementos de integridad a ser incorporados.
También se pueden utilizar los generados por herramientas CASE.
6. Vista de Interacción
Se deben presentar las distintas interacciones con las que contará la aplicación, para lo
cual se presenta las interfaces de usuario.
6.1Interfaces de Usuario.
7. Vista de seguridad
Roles, Permisos y Privilegios
Definimos la Autorización como el proceso por el cual se determina qué, cómo y cuándo,
un usuario autenticado puede utilizar el sistema de la organización. El mecanismo o el
grado de autorización pueden variar dependiendo de qué sea lo que se está protegiendo.
No toda la información de M igual de crítica. Los recursos en general y los datos en
particular, se organizan en niveles y cada nivel debe tener una autorización. Dependiendo
del recurso la autorización puede hacerse por medio de la firma en un formulario o
mediante una contraseña, pero siempre es necesario que dicha autorización quede
registrada para ser controlada posteriormente. En el caso de los datos, la autorización
debe asegurar la confidencialidad e integridad, ya sea dando o denegando el acceso en
lectura, modificación, creación o borrado de los datos. Por otra parte, solo se debe dar
autorización a acceder a un recurso a aquellos usuarios que lo necesiten para hacer su
trabajo, y si no se le negará.
El sistema de roles y usuarios de podríamos definirlo como la clasificación de privilegios
de operación en nuestro sistema, para entenderlo un poco mejor tendríamos que
enumerar y explicar lo siguiente;

Usuarios: son los que interactúan con nuestro sistema a los cuales debemos controlar
para validar que pueden o no hacer.

Perfiles: son los roles que se le asignaran o negaran a un usuario para conceder
privilegios en el sistema.

Recursos: son las zonas en las que dividiremos la aplicación por ejemplo: crear usuario,
Modificar cliente, eliminar pedido, etc...

DIRECTIVOS

Tiene un nivel de permisos elevados ya que corresponde al personal gerencial y de


confianza y puede acceder a cualquiera de los aspectos del sistema, ya que es
responsabilidad de la gerencia. Este usuario tiene control total sobre el Sistema Mak, por
lo que puede realizar cualquier operación de configuración o mantenimiento sobre este.
El directivo de es el encargado de otorgar los permisos y privilegios a los usuarios del
sistema, así como la inclusión de usuarios en el mismo, también lleva a su cargo la
utilización del software a nivel productivo, así como la planificación y respuesta a
interrupciones del servicio y otros problemas junto al administrador del software.

El Directivo del sistema es responsable de lo siguiente:

Ingresar los usuarios y clientes del sistema


Dar los privilegios al usuario
Operar el sistema
Generar reportes
Crear la política de copias de seguridad y recuperación junto al administrador
Aplicar las políticas para el uso del sistema informático y de red junto al administrador.

TECNICO

Tiene un nivel de permisos básicos ya que corresponde al personal de soporte técnico y


sus funciones frente al programa. El técnico es el encargado de consultar el sistema para
lograr controles satisfactorios en el manejo de mantenimiento de sistemas de cómputo, El
Directivo del sistema es responsable de lo siguiente:

Solicitar los repuestos


Indicar los estados de mantenimientos
Dar entrada y salida de equipos
Configuración de las políticas de seguridad para los usuarios. Un administrador de
sistemas debe contar con una sólida comprensión de la seguridad informática (por
ejemplo, cortafuegos y sistemas de detección de intrusos)

Sistema de autenticación
Define la Autenticación como la verificación de la identidad del usuario, generalmente
cuando entra en el sistema o la red, o accede a una base de datos. Normalmente para
entrar en el sistema se utiliza un nombre de usuario y una contraseña. Este método será
mejor o peor dependiendo de las características de la contraseña. En la medida que la
contraseña sea más grande y compleja para ser adivinada, más difícil será burlar esta
técnica. Además, la contraseña debe ser confidencial. No puede ser conocida por nadie
más que el usuario. Muchas veces sucede que los usuarios se prestan las contraseñas o
las anotan en un papel pegado en el escritorio y que puede ser leído por cualquier otro
usuario, comprometiendo a la empresa y al empleado, ya que la acción/es que se hagan
con esa contraseña es/son responsabilidad del empleado/s. Para que la contraseña sea
difícil de adivinar debe tener un conjunto de caracteres amplio y variado (con minúsculas,
mayúsculas y números). El problema es que los usuarios difícilmente recuerdan
contraseñas tan elaboradas y utilizan (utilizamos) palabras previsibles (el nombre, el
apellido, el nombre de usuario, el grupo musical preferido,...), que facilitan la tarea a
quién quiere entrar en el sistema sin autorización.

8. Vista de Implementación

8.1 Herramientas de Desarrollo e implementación

Aplicaremos el término herramienta a un producto CASE que da soporte a una tarea


concreta dentro de las actividades de desarrollo de software. Dicho soporte consistirá en
una serie de servicios, cada uno de los cuales automatiza una operación individual.
Podemos clasificar las herramientas según los servicios que ofrece y/o la tarea a la que
da soporte. A continuación se describen algunas clases de herramientas o grupos de
funciones que podremos encontrar en nuestro entorno de programación.

• Edición y examen del código (editor / browser / navigator)


• Codificación
• Verificación y validación
• Gestión de configuración
• Métricas
• Otras herramientas

Otras herramientas de desarrollo no incluidas en la relación anterior se salen del marco


de lo que hemos denominado entorno de programación, y dan soporte a otras fases del
ciclo de vida de desarrollo. Por ejemplo:

• Gestión del proyecto


• Análisis y diseño (metodología concreta - "herramienta" CASE)

• virtuales
Comprobación de corrección
Métricas

Las herramientas de obtención de métricas son en realidad un caso particular de las


de verificación y validación, aunque tienen entidad propia.

• Métricas de código (análisis


estático) o Complejidad, calidad
• Capacidad de proceso (análisis
dinámico) o Performance,
benchmarks
• Otras o Estimación/medida de
costo, productividad
Otras herramientas

• Hoja de cálculo o Acumulación de datos,


estadísticas, resúmenes
• Preparación de documentación o Procesadores
de texto o Visualización de datos o Generación de
diagramas o Extracción de documentación de
código
• Sistemas de hipertexto o Documentación tipo
hipertexto o Generación de ayuda en línea o
Ayuda sensible al contexto
Técnicas de integración de datos

• Transferencia directa
• Transferencia mediante ficheros
• Transferencia mediante comunicación
• Repositorio común
• Conversión de formatos o Lenguaje AWK (o PERL). Técnicas XML

Integración de control
• Concepto o Invocar
servicios o herramientas
desde otras o Requiere
integración de datos
• Técnicas o Procesos,
mensajes, llamadas
o Uso del "Shell"
o Envoltorios
(wrappers)

Integración de presentación

Se aplica a las herramientas interactivas


Se debe disponer de una interfaz amigable y uniforme o Limitar
las formas diferentes de interacción o Formas adecuadas al
modelo mental del usuario o Tiempos de respuesta adecuados o
Mantener información disponible
Editores configurables

Ofrecen las siguientes facilidades:

Pueden servir como frontal (front-end) general de interacción con el usuario o Facilita la
integración de presentación Ofrecen como funciones principales:
o Edición de código, datos, etc.
o Modos dependientes del tipo de fichero
Facilitan la integración de control o Invocación de órdenes externas o Captura y análisis
de resultados

Algunos ejemplos de editores configurables son:

• Emacs
o Personalizable con e-lisp o Sirve como herramienta universal
• Vim o Personalizable con macros y descripción de sintaxis (analizador
léxico)
• MED
o Personalizable con expresiones regulares y tablas de
propiedades
• Eclipse o Personalizable mediante plug-ins

Describe las herramientas tecnológicas que se deben utilizar para el desarrollo del
sistema, incluye: IDE, Lenguaje de Programación, base de datos, framework, etc.
Además el software que se requiere para su ejecución y puesta en marcha: servidor de
aplicaciones/web, Sistema de base de datos, Librerías, plugins, etc.
8.2 Paquetes/Componentes

Anda mungkin juga menyukai