1. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
UNIVERSIDAD NACIONAL DE LOJA
ÁREA DE LA EDUCACIÓN EL ARTE Y LA
COMUNICACIÓN
Módulo 4
Ejecución y Evaluación de los Procesos de Enseñanza
Aprendizaje en Informática Educativa.
TEMA:
INFORME FINAL
Análisis y Diseño de un Software Contable
AUTORES:
JENNY HURTADO
ANGEL CHALAN
DOCENTE. Ing.: Lena Ruiz
LOJA – ECUADOR
2012
1
2. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
INDICE
Página
1. Introducción ………………………………………………………………………………………… 4
2. Problemática …………………………………………………………………………………………. 4
3. Justificación …………………………………………………………………………………………. 4
4. Objetivos …………………………………………………………………………………………. 5
4.1. Objetivos general ………………………………………………………………………………… 5
4.2. Objetivos Específicos ………………………………………………………………………………… 5
5. Metodología …………………………………………………………………………………………. 5
6. Marco teórico ……………………………………………………………………………………... 7
6.1. Análisis y diseño de software …………………………………………………………………………… 8
6.2.Cuáles son sus principales características …………………………………………………. 10
6.3. Que es software contable ………………………………………………………………………… 11
6.4.Tipos de contabilidad …………………………………………………………………………………………….. 12
6.5.Beneficios que se obtienen a través del software contable ………………………. 13
6.6.Bases de datos ……………………………………………………………………………………… 14
6.7.Tipos de base de datos ……………………………………………………………………………. 15
6.8.bases de datos de texto completo ……………………………………………………………. 16
6.9.Modelos de bases de datos ………………………………………………………………………. 17
6.10. Bases de datos jerárquicas ……………………………………………………………………. 18
6.11.Base de datos de red ……………………………………………………………………………. 19
6.12.Bases de datos transaccionales ……………………………………………………………. 20
6.13.Bases de datos relacionales ………………………………………………………………. 21
2
3. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
6.14. MySQL………………………………………………………………………………………………… 22
6.15.Lenguajes de programación …………………………………………………………………. 23
6.16.Que es Enterprise architect…………………………………………………………………… 24
6.17.Velocidad, estabilidad y buen rendimiento ……………………………………………………... 25
6.18.Trazabilidad de extremo a extremo ……………………………………………………………………… 26
6.19.Construido sobre las bases de uml 2.1…………………………………………………………………… 27
6.20. Soporte para los 13 diagramas de UML 2. ……………………………………………… 28
6.21. Recomendaciones………………………………………………………………………………….. 29
6.22. Anexos ……………………………………………………………………………………………….. 30
3
4. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
INTRODUCCION
Hoy en día no podemos entender nuestra sociedad sin computadores o sin las redes de comunicación de
datos que las enlazan llegando a ser el centro y la base de información de nuestra sociedad.
La Computación e Informática es actualmente el área de mayor influencia cultural a tal grado que han
logrado cambiar nuestros modos de pensar y de ser como parte de la sociedad y como personas.
Todos sus cambios están configurando nuestros modos de pensar, a la vez degenerar nuevos problemas en
donde la Computación e Informática sin lugar a dudas toma nuevamente un papel principal
Los avances tecnológicos de hoy han tenido un impacto casi todas las carreras que se encuentra.
Contabilidad e impuestos, así como otras funciones se pueden ahora hacer uso de software de contabilidad.
Cuando se busca en este tipo de productos, hay muchas opciones que se pueden hacer con respecto a la
marca, funciones, capacidades y así sucesivamente
Una parte esencial del funcionamiento de un negocio es hacer el seguimiento del dinero y asegurarse de
que va a los lugares correctos. A pesar de que muchos gerentes se encargará de los libros por su cuenta, una
opción que no debe pasarse por alto es que la utilización de software contable. Puede parecer una forma
inusual de hacer el trabajo, pero es evidente que hay un montón de beneficios para hacer uso de él. Por un
lado, puede resolver muchos de los problemas asociados con problemas de la computadora y por otro se
puede hacer todo el proceso de negocio (o personal), que representan mucho más fácil para todos.
PROBLEMÁTICA
Realizadas las pertinentes investigaciones, observaciones estamos en el plena capacidad de poder dar a
conocer que la empresa TECNOEXTREM carece de un software contable que le ayude a la contabilidad de su
empresa y al manejo de los fondos.
En la misma situación esta los ingresos de clientes como los estados de cuenta de proveedores es por ello
que la implementación de un software contable ayudara a la organización de clientes, proveedores, los
ingresos y egresos así mismo un inventario actualizado que ayudara a dar un mejor servicio a la comunidad.
JUSTIFICACION
Hoy en día vivimos un mundo lleno de tecnología donde todas las áreas de estudio o de trabajo tienen
implicaciones directas con el desarrollo de software sea para su uso o producción. Motivo por el cual nos
hemos impulsado por este campo del análisis de software contable que lo realizamos primeramente
justificándolo en el área académica como proyecto de investigación que contara con la asignación de una
calificación y otra por que el desarrollo de este proyecto beneficiara a la empresa TECNOEXTREM y por qué
no decir a la comunidad que conlleva la misma. Impulsados por los beneficios que el mismo prestara al
desenvolvimiento financiero, administrativo en una forma clara, organizada y sistematizada ponemos el
mayor énfasis en su creación y adaptación a las necesidades de dicha empresa.
4
5. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
OBJETIVO GENERAL
Analizar y desarrollar un software contable para su implementación en la empresa TECNOEXTREM
OBJETIVOS ESPECIFICOS
Realizar un inventario organizado de los productos para brindar mayor facilidad al momento de su
distribución.
Organizar en detalle la lista de clientes para obtener una atención personalizada
Identificar los ingresos y egresos de la empresa para optimizar los recursos necesarios para su
desarrollo.
METODOLOGIA
La metodología utilizada para realizar un proyecto de investigación es una tarea muy importante para
poder controlar un proyecto y asegurar su éxito.
Comenzamos con una serie de actividades que en su conjunto se denominan planificación del proyecto.
Una de las primeras tareas de la planificación es la observación la cual proporciona valores aproximados de
costos, tiempos y esfuerzos que se necesitarán para su desarrollo; esa aproximación, implica un cierto grado
de riesgo e incertidumbre; sin embargo, contar con dicha información en etapas tempranas de desarrollo,
permite tomar decisiones importantes antes llevarlo a cabo.
TÉCNICAS UTILIZADAS
Observación
Entrevista
CICLO DE VIDA DEL SOFTWARE
HACE LO QUE SE LE PIDE
El desarrollo de software, desde la fase inicial hasta la fase final es definir las distintas fases intermedias que
se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los
requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los
métodos utilizados son apropiados.
El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los
desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos
asociados.
Es por esto que el software contable diseñado analizado para la empresa TECNOEXTREM cumple con los
requerimientos dados por su propietario
5
6. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
FIABILIDAD
LO HACE DE FORMA FIABLE TODO EL TIEMPO
Todo software desarrollado puede dar inconvenientes pero para ello se debe dar un tratamiento de prueba
para que tanto el diseñador como el usuario puedan tener la certeza de que su desenvolvimiento es el
óptimo.
El software contable desarrollado tiene las características fiables para que el usuario lo maneje de manera
simple y optima en los requerimientos que ha sido construido.
EFICIENCIA
QUÉ RECURSOS HARDWARE Y SOFTWARE NECESITO
Para desarrollar e implementar el software contable con la mayor eficiencia y rapidez
necesitamos los siguientes elementos:
Software
Windows XP
Windows 7
Hardware
CPU (Disco duro de 1TB, 4GB de memoria, monterboard Intel procesador core I7)
Monitor
Teclado
Mouse
Una impresora LX300
INTEGRIDAD
PUEDO CONTROLAR SU USO
El usuarioal momento de ser el software instalado en su computador podrá manejarlo con pequeñas
indicaciones estará en óptimas condiciones de usarlo y determinar las especificaciones antes detalladas.
FACILIDAD DE USO
ES FÁCIL Y CÓMODO DE MANEJAR
El software desde su diseño se ha creado de una manera sencilla, comprensible para el usuario, para que el
mismo lo administre y pueda cambiar nuevos requerimientos necesarios.
6
7. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
MARCO TEORICO
ANALISIS Y DISEÑO DE SOFTWARE
Es un conjunto o disposición de procedimientos o programas relacionados de manera que juntos forman
una sola unidad. Un conjunto de hechos, principios y reglas clasificadas y dispuestas de manera ordenada
mostrando un plan lógico en la unión de las partes. Un método, plan o procedimiento de clasificación para
hacer algo. También es un conjunto o arreglo de elementos para realizar un objetivo predefinido en el
procesamiento de la Información. Esto se lleva a cabo teniendo en cuenta ciertos principios:
Debe presentarse y entenderse el dominio de la información de un problema.
Defina las funciones que debe realizar el Software.
Represente el comportamiento del software a consecuencias de acontecimientos externos.
Divida en forma jerárquica los modelos que representan la información, funciones y
comportamiento.
El proceso debe partir desde la información esencial hasta el detalle de la Implementación.
La función del Análisis puede ser dar soporte a las actividades de un negocio, o desarrollar un producto que
pueda venderse para generar beneficios. Para conseguir este objetivo, un Sistema basado en computadoras
hace uso de seis (6) elementos fundamentales:
Software, que son Programas de computadora, con estructuras de datos y su documentación que
hacen efectiva la logística metodología o controles de requerimientos del Programa.
Hardware, dispositivos electrónicos y electromecánicos, que proporcionan capacidad de cálculos y
funciones rápidas, exactas y efectivas (Computadoras, Censores, maquinarias, bombas, lectores,
etc.), que proporcionan una función externa dentro de los Sistemas.
Personal, son los operadores o usuarios directos de las herramientas del Sistema.
Base de Datos, una gran colección de informaciones organizadas y enlazadas al Sistema a las que se
accede por medio del Software.
Documentación, Manuales, formularios, y otra información descriptiva que detalla o da
instrucciones sobre el empleo y operación del Programa.
Procedimientos, o pasos que definen el uso específico de cada uno de los elementos o
componentes del Sistema y las reglas de su manejo y mantenimiento.
Un Análisis de Sistema se lleva a cabo teniendo en cuenta los siguientes objetivos en mente:
Identifique las necesidades del Cliente.
Evalúe que conceptos tiene el cliente del sistema para establecer su viabilidad.
Realice un Análisis Técnico y económico.
Asigne funciones al Hardware, Software, personal, base de datos, y otros elementos del Sistema.
Establezca las restricciones de presupuestos y planificación temporal.
Cree una definición del sistema que forme el fundamento de todo el trabajo de Ingeniería.
Para lograr estos objetivos se requiere tener un gran conocimiento y dominio del Hardware y el Software,
así como de la Ingeniería humana (Manejo y Administración de personal), y administración de base de datos.
7
8. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
CUÁLES SON SUS PRINCIPALES CARACTERÍSTICAS
El análisis y diseño son una herramienta muy esencial a la hora de programar en cualquier tipo de lenguaje
y para cualquier tipo de sistema, software o aplicación que se requiera por el usuario o cliente por esto es
importante realizar un análisis muy completo con el fin de tomar un diseño acertado y por ende un
lenguaje que satisfaga resultados.
Las características de un objeto son el comportamiento por ende es necesario realizar muchas pruebas, para
obtener una respuesta satisfactoria.
Qué lenguajes de programación están orientados a esta metodología de desarrollo c++, objective, c
, java, smalltalk, eiffel, ruby, python, ocaml, object, pascal, clips, visual .net, actionscript, cobol, perl,
c#, visual basic.net, php, simula, delphi, powerbuilder.
QUE ES EL SOFTWARE CONTABLE
Se llama software contable a los programas de contabilidad o paquetes contables, destinados a sistematizar
y simplificar las tareas de contabilidad. El Software contable registra y procesa las transacciones históricas
que se generan en una empresa o actividad productiva: las funciones de compras, ventas, cuentas por
cobrar, cuentas por pagar, control de inventarios, balances, producción de artículos, nóminas, etc. Para ello
solo hay que ingresar la información requerida, como las pólizas contables, ingresos y egresos, y hacer que
el programa realice los cálculos necesarios.
Estas funciones pueden ser desarrolladas internamente por la compañía o la organización que lo está
utilizando o puede ser adquirido a un tercero, existiendo también una combinación de ambas alternativas,
es decir, un paquete de software desarrollado por un tercero con modificaciones locales.
Desde mediados de los años 1990, el mercado ha sobrellevado una consolidación considerable, muchos
proveedores dejaron de hacer tratos en grandes grupos, notablemente por Sage y Microsoft. Desde el 2000
ha tenido un notable incremento el uso de soluciones de código abierto.
TIPOS DE CONTABILIDAD
CONTABILIDAD FINANCIERA: sistema de información orientado a proporcionar información a terceras
personas relacionadas con la empresa, como accionistas, instituciones de crédito, inversionistas, etc. a fin de
facilitar sus decisiones.
CONTABILIDAD FISCAL: sistema de información orientado a dar cumplimiento a las obligaciones tributarias
de las organizaciones.
CONTABILIDAD ADMINISTRATIVA: servició de información a la facilitación de las necesidades de la
administración, destinada a facilitar las funciones de planeación, control y toma de decisiones.
8
9. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
USO PERSONAL O DOMÉSTICO Y DINÁMICO
Principalmente dedicado para los usuarios domésticos que por lo general utilizan el programa contable con
pólizas contables manuales, y a través de estas cuentas pueden controlar sus cuentas por pagar, en hojas de
cálculo sus presupuestos administrativos al igual que la conciliación de contabilidad simple incluye:
BENEFICIOS QUE SE OBTIENEN A TRAVÉS DEL SOFTWARE CONTABLE
Las ventajas o beneficios de poseer un software contable radica en el hecho de que son capaces de
manejar volúmenes de información contables y financiera grandes y llevar los cálculos
correspondientes, labor que una persona o gestor contable no podría ejecutar de forma eficiente
sino tuviese el apoyo de dichos programas.
Los programas contables son herramientas importantes para todos los factores que engloban el
desarrollo de una organización, la información que manejan es requerida para hacer auditorías,
evoluciones, análisis, para tomar decisiones.
Además, otras ventajas de tener un software contable son: que ayudan a mejorar la efectividad en
las operaciones de la empresa a través del uso eficiente del factor tiempo, se suprimen las barreras
de la distancia debido a que se puede trabajar con un mismo sistema en puntos distantes.
Las mejoras del equipo y el software contable, facilitan más que nunca la transición de una mezcla
de papel y herramientas basadas en hojas de cálculo a la implementación de un sistema
computarizado, o la modernización de un sistema existente. Los costos bajos de las computadoras y
del software también han logrado reducir el costo financiero que se requiere para realizar este
cambio.
BASE DE DATOS
Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d.) es un
conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior
uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por
documentos y textos impresos en papel e indexados para su consulta. Actualmente, y debido al desarrollo
tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en
formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.
Existen programas denominados sistemas gestores de bases de datos, abreviados SGBD, que permiten
almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos
SGBD, así como su utilización y administración, se estudian dentro del ámbito de la informática.
Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas. También son
ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental
Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran
protegidos por las leyes de varios países. Por ejemplo, en España los datos personales se encuentran
protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD).
9
10. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
Tipos de base de datos
Las bases de datos pueden clasificarse de varias maneras, de acuerdo al contexto que se esté manejando, la
utilidad de las mismas o las necesidades que satisfagan.
Según la variabilidad de los datos almacenados
BASES DE DATOS ESTÁTICAS
Son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que
posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del
tiempo, realizar proyecciones, tomar decisiones y realizar análisis de datos para inteligencia empresarial.
Bases de datos dinámicas
Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo
operaciones como actualización, borrado y adición de datos, además de las operaciones fundamentales de
consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de un
supermercado, una farmacia, un videoclub o una empresa.
SEGÚN EL CONTENIDO
Bases de datos bibliográficas
Sólo contienen un subrogante (representante) de la fuente primaria, que permite localizarla. Un registro
típico de una base de datos bibliográfica contiene información sobre el autor, fecha de publicación, editorial,
título, edición, de una determinada publicación, etc. Puede contener un resumen o extracto de la
publicación original, pero nunca el texto completo, porque si no, estaríamos en presencia de una base de
datos a texto completo (o de fuentes primarias —ver más abajo). Como su nombre lo indica, el contenido
son cifras o números. Por ejemplo, una colección de resultados de análisis de laboratorio, entre otras.
BASES DE DATOS DE TEXTO COMPLETO
Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las ediciones de una
colección de revistas científicas.
Directorios
Un ejemplo son las guías telefónicas en formato electrónico.
Bases de datos o "bibliotecas" de información química o biológica
Son bases de datos que almacenan diferentes tipos de información proveniente de la química, las ciencias
de la vida o médicas. Se pueden considerar en varios subtipos:
Las que almacenan secuencias de nucleótidos o proteínas.
Las bases de datos de rutas metabólicas.
10
11. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
Bases de datos de estructura, comprende los registros de datos experimentales sobre estructuras
3D de biomoléculas-
Bases de datos clínicas.
Bases de datos bibliográficas (biológicas, químicas, médicas y de otros campos): PubChem, Medline,
EBSCOhost.
MODELOS DE BASES DE DATOS
Además de la clasificación por la función de las bases de datos, éstas también se pueden clasificar de
acuerdo a su modelo de administración de datos.
Un modelo de datos es básicamente una "descripción" de algo conocido como contenedor de datos (algo en
donde se guarda la información), así como de los métodos para almacenar y recuperar información de esos
contenedores. Los modelos de datos no son cosas físicas: son abstracciones que permiten la
implementación de un sistema eficiente de base de datos; por lo general se refieren a algoritmos, y
conceptos matemáticos.
Algunos modelos con frecuencia utilizados en las bases de datos:
BASES DE DATOS JERÁRQUICAS
Base de datos jerárquica.
En este modelo los datos se organizan en una forma similar a un árbol (visto al revés), en donde un nodo
padre de información puede tener varios hijos. El nodo que no tiene padres es llamado raíz, y a los nodos
que no tienen hijos se los conoce como hojas.
Las bases de datos jerárquicas son especialmente útiles en el caso de aplicaciones que manejan un gran
volumen de información y datos muy compartidos permitiendo crear estructuras estables y de gran
rendimiento.
Una de las principales limitaciones de este modelo es su incapacidad de representar eficientemente la
redundancia de datos.
BASE DE DATOS DE RED
Artículo principal: Base de datos de red.
Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del
concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el
modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema
de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de
datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por
usuarios finales.
BASES DE DATOS TRANSACCIONALES
11
12. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son
muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e
industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad
posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás
bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a
bases de datos relacionales.
Un ejemplo habitual de transacción es el traspaso de una cantidad de dinero entre cuentas bancarias.
Normalmente se realiza mediante dos operaciones distintas, una en la que se decrementa el saldo de la
cuenta origen y otra en la que incrementamos el saldo de la cuenta destino. Para garantizar la atomicidad
del sistema (es decir, para que no aparezca o desaparezca dinero), las dos operaciones deben ser atómicas,
es decir, el sistema debe garantizar que, bajo cualquier circunstancia (incluso una caída del sistema), el
resultado final es que, o bien se han realizado las dos operaciones, o bien no se ha realizado ninguna.
BASES DE DATOS RELACIONALES
Modelo relacional
Éste es el modelo utilizado en la actualidad para modelar problemas reales y administrar datos
dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar Frank Codd, de los laboratorios
IBM en San José (California), no tardó en consolidarse como un nuevo paradigma en los modelos de base de
datos. Su idea fundamental es el uso de "relaciones". Estas relaciones podrían considerarse en forma lógica
como conjuntos de datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales
creadas por Codd, la mayoría de las veces se conceptualiza de una manera más fácil de imaginar. Esto es
pensando en cada relación como si fuese una tabla que está compuesta por registros (las filas de una tabla),
que representarían las tuplas, y campos (las columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen relevancia (a diferencia de otros
modelos como el jerárquico y el de red). Esto tiene la considerable ventaja de que es más fácil de entender y
de utilizar para un usuario esporádico de la base de datos. La información puede ser recuperada o
almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la
información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL,
StructuredQueryLanguage o Lenguaje Estructurado de Consultas, un estándar implementado por los
principales motores o sistemas de gestión de bases de datos relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como
normalización de una base de datos.
Durante los años 80 la aparición de dBASE produjo una revolución en los lenguajes de programación y
sistemas de administración de datos. Aunque nunca debe olvidarse que dBase no utilizaba SQL como
lenguaje base para su gestión.
Bases de datos multidimensionales
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP.
Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos
relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel
conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos
tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.
12
13. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
Bases de datos orientadas a objetos
Este modelo, bastante reciente, y propio de los modelos informáticos orientados a objetos, trata de
almacenar en la base de datos los objetos completos (estado y comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes
del paradigma de objetos:
Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo
así accesos incorrectos o conflictos.
Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una
jerarquía de clases.
Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de
objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte
de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz
(o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o
parámetros). La implementación (o método) de la operación se especifica separadamente y puede
modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los
datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que
se han implementado. Esto podría denominarse independencia entre programas y operaciones.
SQL:2003, es el estándar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la
compatibilidad con SQL92.
Bases de datos documentales
Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más potentes. Tesaurus
es un sistema de índices optimizado para este tipo de bases de datos.
Bases de datos deductivas
Un sistema de base de datos deductiva, es un sistema de base de datos pero con la diferencia de que
permite hacer deducciones a través de inferencias. Se basa principalmente en reglas y hechos que son
almacenados en la base de datos. Las bases de datos deductivas son también llamadas bases de datos
lógicas, a raíz de que se basa en lógica matemática. Este tipo de base de datos surge debido a las
limitaciones de la Base de Datos Relacional de responder a consultas recursivas y de deducir relaciones
indirectas de los datos almacenados en la base de datos.
MySQL
QUE ES MySQL
MySQL es un sistema de gestión de bases de datos relacional, multihilo y multiusuario con más de seis
1
millones de instalaciones. MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a
su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema
de licenciamiento dual.
13
14. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas
empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia
específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C.
Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los
derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa
privada, que posee el copyright de la mayor parte del código.
Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de la venta de
licencias privativas, la compañía ofrece soporte y servicios. Para sus operaciones contratan trabajadores
alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark, Allan Larsson y
Michael Widenius.
Lenguajes de programación
Existen varias interfaces de programación de aplicaciones que permiten, a aplicaciones escritas en diversos
lenguajes de programación, acceder a las bases de datosMySQL, incluyendo C, C++, C#, Pascal, Delphi
(viadbExpress), Eiffel, Smalltalk, Java (con una implementación nativa del driver de Java), Lisp, Perl, PHP,
Python, Ruby,Gambas, REAL Basic (Mac y Linux), (x)Harbour (Eagle1), FreeBASIC, y Tcl; cada uno de estos
utiliza una interfaz de programación de aplicaciones específica. También existe una interfaz ODBC, llamado
MyODBC que permite a cualquier lenguaje de programación que soporte ODBC comunicarse con las bases
de datos MySQL. También se puede acceder desde el sistema SAP, lenguaje ABAP.
MySQL es una base de datos muy rápida en la lectura cuando utiliza el motor no transaccional MyISAM,
pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificación. En
aplicaciones web hay baja concurrencia en la modificación de datos y en cambio el entorno es intensivo en
lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones. Sea cual sea el entorno en el que
va a utilizar MySQL, es importante monitorizar de antemano el rendimiento para detectar y corregir errores
3
tanto de SQL como de programación.
Plataformas
MySQL funciona sobre múltiples plataformas, incluyendo:
AIX
BSD
FreeBSD
HP-UX
Kurisu OS
GNU/Linux
Mac OS X
NetBSD
Novell Netware
OpenBSD
OS/2Warp
QNX
SGI IRIX
Solaris
14
15. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
SunOS
SCO OpenServer
SCO UnixWare
Tru64
eBD
Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7 y
Windows Server (2000, 2003 y 2008).
4
OpenVMS
QUE ES ENTERPRISE ARCHITECT
Enterprise Architect es una herramienta comprensible de diseño y análisis UML, cubriendo el desarrollo de
software desde el paso de los requerimientos a través de las etapas del análisis, modelos de diseño, pruebas
y mantenimiento. EA es una herramienta multi-usuario, basada en Windows, diseñada para ayudar a
construir software robusto y fácil de mantener. Ofrece salida de documentación flexible y de alta calidad. El
manual de usuario está disponible en línea.
VELOCIDAD, ESTABILIDAD Y BUEN RENDIMIENTO
El Lenguaje Unificado de Modelado provee beneficios significativos para ayudar a construir modelos de
sistemas de software rigurosos y donde es posible mantener la trazabilidad de manera consistente.
Enterprise Architect soporta este proceso en un ambiente fácil de usar, rápido y flexible. Para una mirada
rápida al modelado UML en Enterprise Architect vea nuestro tutorial UML y documentos.
TRAZABILIDAD DE EXTREMO A EXTREMO
Enterprise Architect provee trazabilidad completa desde el análisis de requerimientos hasta los artefactos de
análisis y diseño, a través de la implementación y el despliegue. Combinados con la ubicación de recursos y
tareas incorporados, los equipos de Administradores de Proyectos y Calidad están equipados con la
información que ellos necesitan para ayudarles a entregar proyectos en tiempo.
CONSTRUIDO SOBRE LAS BASES DE UML 2.1
Las bases de Enterprise Architect están construidas sobre la especificación de UML 2.0 - pero no se detiene
ahí! Usa Perfiles UML para extender el dominio de modelado, mientras que la Validación del Modelo
asegura integridad. Combina Procesos de Negocio, Información y Flujos de trabajo en un modelo usando
nuestras extensiones gratuitas para BPMN y el perfil Eriksson-Penker.
Soporte para los 13 diagramas de UML 2 .
Diagramas Estructurales: Diagramas de Comportamiento: Extendidos:
• Clase • Casos de Uso • Análisis (actividad simple)
• Objecto • Comunicación • Personalizado (para requisitos, cambios, UI)
• Compuesto • Secuencia
• Paquete • Descripción de la Interacción
• Componente • Actividad
15
16. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
• Despliegue • Estado
• Tiempo
EA le ayuda a administrar la complejidad con herramientas para rastrear las dependencias, soporte para
modelos muy grandes, control de versiones con proveedores CVS o SCC, Líneas Base por cada punto del
tiempo, la utilidad de comparar (diff) para seguir los cambios del modelo, interfaz intuitiva y de alto
rendimiento con vista de proyecto como un "explorador".
A provee una generación poderosa de documentos y herramientas de reporte con un editor de plantilla
completo WYSIWYG. Genera reportes detallados y complejos de EA con la información que usted necesita
en el formato que su compañía o cliente demanda.
EA soporta generación e ingeniería inversa de código fuente para muchos lenguajes populares, incluyendo
C++, C#, Java, Delphi, VB.Net, Visual Basic y PHP. También hay Add-ins gratis para CORBA y Python
disponibles. Con un editor de código fuente con "resaltador de sintaxis" incorporado, EA le permite navegar
y explorar su modelo de código fuente en el mismo ambiente. Para aquellos que trabajan en Eclipse o Visual
Studio.Net, SparxSystems también vende puentes livianos para estas IDE's, permitiéndole modelar en EA y
saltar directamente al código fuente en su editor preferido. Las plantillas de generación de código le
permiten personalizar el código fuente generado a las especificaciones de su compañía.
EA le ayuda a visualizar sus aplicaciones soportando ingeniería inversa de un amplio rango de lenguajes de
desarrollo de software y esquemas de repositorios de base de datos. Ingrese frameworks completos desde
código fuente o archivos Java .jar - o aún ensambladores binarios .Net! Importando frameworks y librerías
de código, Ud. puede maximizar la re-utilización y entendimiento de su inversión existente.
EA soporta transformaciones de Arquitectura avanzada dirigida por Modelos (MDA) usando plantillas de
transformaciones de desarrollo y fáciles de usar. Con transformaciones incorporadas para DDL, C#, Java, EJB
y XSD, Ud. puede rápidamente desarrollar soluciones complejas desde los simples "modelos independientes
de plataforma" (MIP) que son el objetivo en "modelos específicos de plataforma" (MEP). Un MIP se puede
usar para generar y sincronizar múltiples MIP's - proveyendo un aumento de productividad significativo.
MODELOS DE CASO DE USO
En el Lenguaje de Modelado Unificado, un diagrama de casos de uso es una especie de diagrama de
comportamiento. UML mejorado El Lenguaje de Modelado Unificado define una notación gráfica para
representar casos de uso llamada modelo de casos de uso. UML no define estándares para que el formato
escrito describa los casos de uso, y así mucha gente no entiende que esta notación gráfica define la
naturaleza de un caso de uso; sin embargo una notación gráfica puede solo dar una vista general simple de
un caso de uso o un conjunto de casos de uso. Los diagramas de casos de uso son a menudo confundidos
con los casos de uso. Mientras los dos conceptos están relacionados, los casos de uso son mucho más
detallados que los diagramas de casos de uso.
Diagrama de secuencia
El diagrama de secuencia es un tipo de diagrama usado para modelar interacción entre objetos en un
sistema según UML. En inglés se pueden encontrar como "sequencediagram", "event-trace diagrams",
"eventscenarios" o "timingdiagrams"
16
17. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
UTILIDAD
Un diagrama de secuencia muestra la interacción de un conjunto de objetos en una aplicación a través del
tiempo y se modela para cada caso de uso. Mientras que el diagrama de casos de uso permite el modelado
de una vista business del escenario, el diagrama de secuencia contiene detalles de implementación del
escenario, incluyendo los objetos y clases que se usan para implementar el escenario, y mensajes
intercambiados entre los objetos.
Típicamente se examina la descripción de un caso de uso para determinar qué objetos son necesarios para
la implementación del escenario. Si se dispone de la descripción de cada caso de uso como una secuencia de
varios pasos, entonces se puede "caminar sobre" esos pasos para descubrir qué objetos son necesarios para
que se puedan seguir los pasos. Un diagrama de secuencia muestra los objetos que intervienen en el
escenario con líneas discontinuas verticales, y los mensajes pasados entre los objetos como flechas
horizontales.
TIPOS DE MENSAJES
Existen dos tipos de mensajes: sincrónicos y asincrónicos. Los mensajes sincrónicos se corresponden con
llamadas a métodos del objeto que recibe el mensaje. El objeto que envía el mensaje queda bloqueado
hasta que termina la llamada. Este tipo de mensajes se representan con flechas con la cabeza llena. Los
mensajes asincrónicos terminan inmediatamente, y crean un nuevo hilo de ejecución dentro de la
secuencia. Se representan con flechas con la cabeza abierta.
También se representa la respuesta a un mensaje con una flecha discontinua.
PUEDEN SER USADOS EN DOS FORMAS:
De instancia: describe un escenario específico (un escenario es una instancia de la ejecución de un
caso de uso).
Genérico: describe la interacción para un caso de uso; Utiliza ramificaciones ("Branches"),
condiciones y bucles.
ESTRUCTURA
Los mensajes se dibujan cronológicamente desde la parte superior del diagrama a la parte inferior; la
distribución horizontal de los objetos es arbitraria. Durante el análisis inicial, el modelador típicamente
coloca el nombre 'business' de un mensaje en la línea del mensaje. Más tarde, durante el diseño, el nombre
'business' es reemplazado con el nombre del método que está siendo llamado por un objeto en el otro. El
método llamado, o invocado, pertenece a la definición de la clase instanciada por el objeto en la recepción
final del mensaje.
DISEÑO DEL SOFTWARE
MODELADO
17
19. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
DISEÑO EN GENERAL
CASOS DE USO
En este diseño podemos visualizar la competencia que tiene el cliente al solicitar un
producto al administrador de una forma sencilla pero clara, igualmente cuando solicita un
mantenimiento nos da la idea que el software ayudara de manera más rápida a ingresar a
su base de datos dando un servicio rápido y eficiente
19
20. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
DISEÑO EN DETALLE
DIAGRAMAS DE SECUENCIA
En este diseño la estructura se presenta más detallada y visualizamos el ingreso y salida de
productos como la brusquedad o eliminación de datos.
20
22. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
CONCLUSIONES
Nuestro grupo de investigación puede determinar que la empresa TECNOEXTREM no contaba con
un software especializado para su contabilidad.
Identificamos que la falta de un software contable produce el no tener la certeza de sus
ganancias o pérdidas.
Por último podemos determinar que no se lleva un ingreso detallado de sus clientes.
RECOMENDACIONES
Podemos recomendar que la empresa TECNOEXTREM debe utilizar este software para
una mejor contabilidad de sus ingresos e egresos
Recomendamos que se debe detallar a cada usuario de la empresa ya que asi se podrá dar
una mejor atención personalizada.
22
23. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
CRONOGRAMA DE TRABAJO
Actividades 21 22 23 24 25 26 27 28 29 31
Planificación X
Entrevistas a X
gerente
propietario
Desarrollo de X X X X
análisis de
software
Reporte de X
actividades
Entrega de X
reportes y
resultados
BIBLIOGRAFIA
http://www.buenastareas.com/ensayos/Qu%C3%A9-Es-El-An%C3%A1lisis-y-
Dise%C3%B1o/1904015.html
http://www.monografias.com/trabajos5/andi/andi.shtml
http://es.wikipedia.org/wiki/Software_contable
http://www.nchsoftware.com/accounting/es/index.htmldescarga
23
25. Universidad Nacional de Loja
Área de la Educación el Arte y la Comunicación
PROYECTO DE INVESTIGACIÓN
Referencias
EMPRESA: TECNOEXTREM
UBICACIÓN: Av. Manuel Agustín Aguirre entre Cuba y Malvinas
GERENTE-PROPIETARIO: Carlos Alberto Patiño Torres
ACTIVIDAD ECONOMICA: Venta, Reparación y Mantenimiento de computadoras
DESARROLLO DEL PROYECTO
INTRODUCCION
Realizada la entrevista al propietario de la empresa TECNOEXTREM señor Carlos Patiño nos
supo manifestar que no contaba con ningún programa especial para llevar la contabilidad de
su empresa, por ello la idea de que podamos realizar el análisis de un software que le pueda
facilitar su contabilidad le parece una excelente idea.
OBJETIVOS:
Desarrollar un proyecto de contabilidad actualizado, seguro y rápido para
el usuario.
Generar una adecuada distribución de los datos de sus clientes como de
sus productos
PROBLEMÁTICA
Realizar un software contable que lleve de una manera sistematizada, estructurada las
finanzas de su empresa
PUNTOS DE REFERENCIA PARA LA REALIZACION DE LAS TABLAS DE DATOS
Inventario
Pedidos
Compras y Ventas
Mantenimiento de Equipos
Pagos
25