Download Base de datos - analisis de sistema i

Document related concepts
no text concepts found
Transcript
LICENCIATURA EN INFORMATICA
CON ESPECIALIZACION EN COMPUTACION GERENCIAL
Estudiante:
Lineth Quintero
Cedula:
8-884-1642
Materia:
Análisis de Sistema I
Profesor:
Héctor Arcia
Fecha:
6 de Febrero de 2015
1
INDICE
Introducción………………………………………………………………………………..3
Base de datos……………………………………………………………………………..4
Access……………………………………………………………………………………..4
SQL………………………………………………….……………………………………..5
MYSQL………………………………………..……………………………………………6
Oracle………………………………………………………………………………………6
Sybase……………………………………..………………………………………………7
Postgree……………………………………………………………………………………7
Project Manager………………………………………………………………….……….7
Análisis De Sistema………………………………………………………………………8
Tester………………………………………………………………………………………9
Documentador………………………………………………………………………….…9
Desarrollador……………………………………………………………………….……..9
Jefe De Tester……………………………………………………………………………10
Arquitecto De Software…………………………………………………….……………10
Jefe De Desarrollador……………………………………………………………………11
Jefe De Arquitectos………………………………………………………………………11
Software………………………………………………………………..…………………11
Visual Studio……………………………………………………...………………………11
C#…………………………………..……………………………...………………………12
Java………………………………………………………………………..………………12
Netscape………………………………………………………….………………………13
Eclipse…………………………………………………………….………………………13
Mono Developers………………………………………...………………………………13
Conclusión………………………………………………………………………………..14
Bibliografía………………………………………………………………………………..15
2
Introducción
En el siguiente trabajo le presentaremos definiciones de concepto referente al área
de informática como base de datos, programación, lenguajes de programas, etc.
3
Base de datos: o banco de datos 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, siendo este un componente electrónico, y por ende se ha desarrollado y
se ofrece un amplio rango de soluciones al problema del almacenamiento de
datos.
Modelos de bases 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 de red
Bases de datos transaccionales
Bases de datos relacionales
Bases de datos multidimensionales
Bases de datos orientadas a objetos
Bases de datos documentales
Bases de datos deductivas
Access: es un sistema de gestión de bases de datos incluido en el paquete de
programas de Microsoft Office. Es igualmente un gestor de datos que recopila
información relativa a un asunto o propósito particular, como el seguimiento de
pedidos de clientes o el mantenimiento de una colección de música.
Archivos de base de datos de Access
Por medio de Microsoft Access, puede administrar toda la información desde un
único archivo de base de datos. Dentro del archivo, puede utilizar:
Tablas para almacenar los datos.
Consultas para buscar y recuperar únicamente los datos que necesita.
Formularios para ver, agregar y actualizar los datos de las tablas.
Informes para analizar o imprimir los datos con un diseño específico.
4
Páginas de acceso a datos para ver, actualizar o analizar los datos de la base
de datos desde Internet o desde una intranet.
Almacenar los datos una vez en una tabla y verlos desde
varios lugares.
Cuando se actualizan los datos, se actualizan en todos
los lugares donde aparecen.
Mostrar los datos en una consulta
Mostrar los datos en un formulario
Mostrar los datos en un informe
Mostrar los datos en una página de acceso a datos
SQL: lenguaje de consulta estructurado (por sus siglas en inglés Structured
Query Language) es un lenguaje declarativo de acceso a bases de datos
relacionales que permite especificar diversos tipos de operaciones en ellas. Una
de sus características es el manejo del álgebra y el cálculo relacional que
permiten
efectuar consultas con
el fin
de
recuperar de forma
sencilla información de interés de bases de datos, así como hacer cambios en
ellas.
El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y
potencia de los sistemas relacionales y permite así gran variedad de
operaciones.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias a
su fuerte base teórica y su orientación al manejo de conjuntos de registros —y
no a registros individuales— permite una alta productividad en codificación y la
orientación a objetos. De esta forma, una sola sentencia puede equivaler a uno
o más programas que se utilizarían en un lenguaje de bajo nivel orientado a
registros. SQL también tiene las siguientes características:
Integridad: El LDD de SQL incluye comandos para especificar las restricciones
de integridad que deben cumplir los datos almacenados en la base de datos.
Definición de vistas: El LDD incluye comandos para definir las vistas.
Control de transacciones: SQL tiene comandos para especificar el comienzo
y el final de una transacción.
5
Tipos de Datos
Algunos de los tipos de datos básicos de SQL son:
Date: una fecha de calendario que contiene el año (de cuatro cifras), el mes y el
día.
Time: La hora del día en horas minutos segundos (el valor predeterminado es
0).
Timestamp: la combinación de Date y Time.
MySQL: es
un sistema
de
gestión
de
bases
de
datos relacional, multihilo y multiusuario con más de seis millones de
instalaciones.
MySQL
es
muy
utilizado
en aplicaciones
web,
como Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQLPHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla.
Su popularidad como aplicación web está muy ligada a PHP, que a menudo
aparece en combinación con MySQL.
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 tanto de SQL como de
programación.
Oracle: es un sistema de gestión de base de
datos objeto-relacional
Se considera a Oracle Database como uno de los
sistemas de bases de datos más completos,
destacando:
Soporte de transacciones.
Estabilidad.
Escalabilidad.
Soporte multiplataforma.
Su dominio en el mercado de servidores empresariales ha sido casi total hasta
hace poco; recientemente sufre la competencia del Microsoft SQL
Server de Microsofty
de
la
oferta
de
otros RDBMS con
licencia libre como PostgreSQL, MySQL o Firebird. Las últimas versiones de
Oracle han sido certificadas para poder trabajar bajoGNU/Linux.
6
Sybase: fue una compañía dedicada al desarrollo de tecnología de la
información.
Sybase
IQ,
una base
de
datos para Inteligencia
Empresarial y Almacenes de Datos
Gestores de bases de datos
Adaptive Server Enterprise, un motor de base de datos empresarial de alto
rendimiento y escalabilidad
Adaptive Server Anywhere, una base de datos para computación móvil y
departamental
Sybase IQ, una base de datos para Inteligencia Empresarial y Almacenes de
Datos
PostgreSQL: es un Sistema de gestión de bases de datos relacional orientado
a objetos y libre, publicado bajo la licencia BSD.
El uso de caracteres en mayúscula en el nombre PostgreSQL puede confundir
a algunas personas a primera vista. Las distintas pronunciaciones de "SQL"
pueden llevar a confusión. Los desarrolladores de PostgreSQL lo pronuncian
/poːst ɡɹɛs kjuː ɛl/;. Es también común oír abreviadamente como simplemente
"Postgres", el que fue su nombre original. Debido a su soporte del estándar SQL
entre la mayor parte de bases de datos relacionales, la comunidad consideró
cambiar el nombre al anterior Postgres. Sin embargo, el PostgreSQL Core Team
anunció en 2007 que el producto seguiría llamándose PostgreSQL. El nombre
hace referencia a los orígenes del proyecto como la base de datos "post-Ingres",
y los autores originales también desarrollaron la base de datos Ingres.
Funciones
Bloques de código que se ejecutan en el servidor. Pueden ser escritos en varios
lenguajes, con la potencia que cada uno de ellos da, desde las operaciones
básicas de programación, tales como bifurcaciones y bucles, hasta las
complejidades de la programación orientada a objetos o la programación
funcional.
Los disparadores (triggers en inglés) son funciones enlazadas a operaciones
sobre los datos.
Proyect Manager: Un gestor de proyecto, también conocido bajo el
término gerente
de
proyecto, director
de
proyecto, líder
de
7
proyecto o encargado de proyecto, es la persona que tiene la responsabilidad
total del planeamiento y la ejecución acertados de cualquier proyecto. Este título
se utiliza en la industria de la construcción, la arquitectura, el desarrollo de
software y diversas ocupaciones que se basan en la generación o manutención
de un producto.
La gestión de proyectos es una disciplina que aplica en múltiples sectores,
siendo muy diferentes las habilidades y conocimientos que puede poseer un
profesional con el mismo título. No obstante algunas de las habilidades y
conocimientos que destacan son:
Gestión de proyectos
Gestión de proyectos de ingeniería
Dirección de equipos
Dirección de obras
Gestión de proyectos de construcción
Control de costes
Planificación de proyectos
Control de proyectos
No obstante, estas habilidades y conocimientos pueden ir evolucionando para
adaptarse a los cambios tecnológicos y culturales de cada momento.
Analista de sistemas: es un grado técnico del área de la informática,
encargado del desarrollo de aplicaciones en lo que respecta a su diseño y
obtención de los algoritmos, así como de analizar las posibles utilidades y
modificaciones necesarias de los sistemas operativos para una mayor eficacia
de un sistema informático. Otra misión de estas personas es dar apoyo técnico
a los usuarios de las aplicaciones existentes.
En sus inicios, la industria del software adoptó un enfoque
organizativo tayloriano, al igual que la mayoría de las industrias del momento.
Este enfoque propugna la especialización de funciones como método
organizativo. Bajo tal enfoque, el proceso de construcción de software se
concibe como un conjunto de tareas altamente especializadas donde está
claramente definido el papel de cada categoría profesional:
El analista tiene como cometido analizar un problema y describirlo con el
propósito de ser solucionado mediante un sistema informático.
El diseñador realiza, con base en el análisis, el diseño de la solución
8
El analista tiene que delimitar el análisis para ver lo que se quiere hacer
inicialmente y después darle al usuario nuevas opciones de uso.
Tester: Los probadores de software (también conocidos como testers, su
denominación en inglés) planifican y llevan a cabo pruebas de software de los
ordenadores para comprobar si funcionan correctamente. Identifican el riesgo de
sufrir errores de un software, detectan errores y los comunican. Evalúan el
funcionamiento general del software y sugieren formas de mejorarlo.
Documentador: una de sus funciones principales es el hecho de que su papel
es el de un divulgador del proceso de análisis, desarrollo, construcción e
implementación de un sistema de información, así que debe escribir pensando
en sus lectores por lo que deberá "traducir" (aunque suene exagerado) lo que
muchas veces entregan los programadores expertos en Java o en otro lenguaje.
El trabajo del documentador no es fácil pues presupone que debe comprender
de manera autónoma lo que otros hacen para dejar constancia de este trabajo
para su posterior consulta.
Desarrollador: es un programador que se dedica a uno o más aspectos del
proceso de desarrollo de software. Se trata de un ámbito más amplio de la
programación. El desarrollador puede contribuir a la visión general del proyecto
más a nivel de aplicación que a nivel de componentes o en las tareas de
programación individuales. Conforme pasa el tiempo, las diferencias entre el
diseño de "sistemas informáticos", el desarrollo de software y la programación
se van haciendo más claras. Ya en el nicho de mercado actual puede
encontrarse una separación entre programadores y desarrolladores, siendo
estos últimos los que diseñan la estructura o jerarquía de clases. Incluso esos
desarrolladores se convierten en arquitectos de sistemas informáticos, aquellos
que diseñan la arquitectura a varios niveles o las interacciones entre
componentes de un proyecto de software grande.
El concepto de desarrollo de software incluye:
un trabajo en equipo: los proyectos son en general una colaboración entre varios
desarrolladores, que tratan cada uno una parte del programa, y también de otros
colaboradores como los comerciales, que definen con el cliente la finalidad del
producto, diseñadores gráficos que definen el aspecto y la ergonomía...
9
La concepción (diseño): a partir de un pliego de condiciones (user requirement
specifications), definir las especificaciones técnicas (estructura de los datos,
comunicación entre los módulos...)
Las pruebas, que sirven para detectar las no conformidades y los errores
el mantenimiento: la corrección de los errores después de la salida del programa
informático, y la mejora para hacer evolucionar el producto.
Jefe de Tester: El jefe de pruebas es la
persona responsable de la gestión de
proyecto de las actividades y recursos de
pruebas, y de la evaluación de un objeto de
prueba. Individuo que dirige, controla,
administra, planifica y regula la evaluación
de un objeto de prueba.
Arquitecto de Software: En los inicios de la informática, la programación se
consideraba un arte y se desarrollaba como tal, debido a la dificultad que
entrañaba para la mayoría de las personas, pero con el tiempo se han ido
descubriendo y desarrollando formas y guías generales, con base a las cuales
se puedan resolver los problemas. A estas, se les ha denominado Arquitectura
de Software, porque, a semejanza de los planos de un edificio o construcción,
estas indican la estructura, funcionamiento e interacción entre las partes del
software.
es la persona responsable de:
Servir de interfaz con los usuarios y patrocinadores, así como cualquier otro que
está involucrado en determinar sus necesidades.
Generar los niveles más altos de requisitos del sistema, basados en
las necesidades del usuario, así como, algunas otras limitantes tales
como costos y tiempos.
Asegurarse
de
que
este
alto
conjunto
de
requisitos
sea consistente, completo, correcto, y operacional.
Llevar a cabo análisis costo-beneficio para determinar que costos se cumplen
mejor ya sea manualmente, por software o con hardware; maximizando así
los componentes ya desarrollados o los comerciales.
Desarrollar algoritmos de particionado (y otros procesos) para economizar los
requisitos en particiones discretas de manera que se necesite un mínimo
de comunicación entre las particiones y los usuarios con el sistema.
10
Particionar grandes sistemas en (capas sucesivas de) subsistemas y
componentes
los
cuales
puedan
ser
manipulados
por
un
solo ingeniero, equipo de ingenieros o arquitectos subordinados.
Asegurar que se alcance el máximo de robustez de arquitectura.
Generar una serie de requisitos de pruebas de aceptación, las cuales junto con
los diseñadores, ingenieros de pruebas, y el usuario determinen si se han
cumplido los requisitos, especialmente para lasinterfaces de usuario.
Generar bosquejos, modelos, guías de usuario y prototipos que mantengan en
acuerdo y al corriente a los ingenieros con los usuarios.
Jefe de Desarrollador: Un desarrollador líder, que tiene las mismas
responsabilidades que los otros desarrolladores, pero también tiene añadidas
algunas más. Un desarrollador líder debe entrenar a los otros desarrolladores, y
ayudarles a resolver los problemas que puedan enfrentar. Este desarrollador,
que suele ser el miembro del equipo más experimentado, también será capaz
de asegurarse de que la ejecución sigue de cerca al diseño planteado, y no se
dé lugar a lo que se denomina “invasión de características” durante el desarrollo.
El desarrollador líder tiene una gran influencia en la calidad del código.
Jefe de los Arquitectos: Un arquitecto de sistemas es la persona responsable
de Servir de interfaz con los usuarios y patrocinadores, así como cualquier otro
que está involucrado en determinar sus necesidades. Generar los niveles más
altos de requisitos del sistema, basados en las necesidades del usuario, así
como, algunas otras limitantes tales como costos y tiempos.
Software: es el equipamiento lógico o soporte lógico de un sistema informático,
que comprende el conjunto de los componentes lógicos necesarios que hacen
posible la realización de tareas específicas, en contraposición a los
componentes físicos que son llamados hardware.
Visual Studio: es un entorno de desarrollo integrado para sistemas
operativos Windows. Soporta múltiples lenguajes de programación tales
como C++, C#, Visual Basic .NET, F#, Java, Python, Ruby, PHP.
A partir de la versión 2005 Microsoft ofrece gratuitamente las Ediciones Express,
que son versiones básicas separadas por lenguajes de programación o
plataforma enfocadas; para estudiantes y programación amateur. Estas
ediciones son iguales al entorno de desarrollo comercial, pero sin características
avanzadas de integración. Dichas ediciones son:
Visual Basic Express Edition
Visual C# Express Edition
Visual C++ Express Edition
Visual J# Express Edition (Desapareció en Visual Studio 2008)
11
Visual Web Developer Express Edition (para programar en ASP.NET)
Visual F# (Apareció en Visual Studio 2010, es parecido al J#)*
Windows Phone 8 SDK
Windows Azure SDK
C# : (pronunciado si sharp en inglés) es un lenguaje de programación orientado
a objetos desarrollado y estandarizado por Microsoft como parte de su
plataforma.NET, C# es uno de los lenguajes de programación diseñados para la
infraestructura de lenguaje común. Su sintaxis básica deriva de C/C++ y utiliza
el modelo de objetos de la plataforma .NET, similar al de Java, aunque incluye
mejoras derivadas de otros lenguajes.
Durante el desarrollo de la plataforma .NET, las bibliotecas de clases fueron
escritas originalmente usando un sistema de código gestionado llamado Simple
Managed C (SMC). En enero de 1999, Anders Hejlsbergformó un equipo con la
misión de desarrollar un nuevo lenguaje de programación llamado Cool
(Lenguaje C orientado a objetos). Este nombre tuvo que ser cambiado debido a
problemas de marca, pasando a llamarse C#. 3 La biblioteca de clases de la
plataforma .NET fue migrada entonces al nuevo lenguaje. Hejlsberg lideró el
proyecto de desarrollo de C#. Anteriormente, ya había participado en el
desarrollo de otros lenguajes como Turbo Pascal, Delphi y J++.
Java: es
un lenguaje
de
programación de propósito
general, concurrente, orientado a objetos que fue diseñado específicamente
para tener tan pocas dependencias de implementación como fuera posible.
El lenguaje de programación Java fue originalmente desarrollado por James
Gosling de Sun
Microsystems (la
cual
fue
adquirida
por
la
compañía Oracle) y publicado en
1995
como
un
componente
fundamental
de
la plataforma
Java de
Sun
Microsystems.
Su sintaxis deriva en gran medida
de C y C++, pero tiene menos
utilidades
de bajo
nivel que
cualquiera
de
ellos.
Las
aplicaciones
de
Java
son
generalmente compiladas a bytecode (clase Java) que puede ejecutarse en
12
cualquier máquina virtual Java (JVM) sin importar la arquitectura de la
computadora subyacente.
NetBeans es un entorno de desarrollo integrado libre, hecho principalmente
para el lenguaje de programación Java. Existe además un número importante
de módulos para extenderlo. NetBeans IDE es un producto libre y gratuito sin
restricciones de uso. es un proyecto de código abierto de gran éxito con una
gran base de usuarios, una comunidad en constante crecimiento.
Eclipse: es un programa informático compuesto por un conjunto de
herramientas de programación de código abierto multiplataforma para
desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido",
opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores. Esta
plataforma, típicamente ha sido usada para desarrollar entornos de desarrollo
integrados (del inglés IDE), como el IDE de Java llamado Java Development
Toolkit (JDT) y el compilador (ECJ) que se entrega como parte de Eclipse (y que
son usados también para desarrollar el mismo Eclipse).
Mono Developers: es el nombre de un proyecto de código abierto iniciado
por Ximian y actualmente impulsado por Novell (tras la adquisición de Ximian)
para crear un grupo de herramientas libres, basadas en GNU/Linux y
compatibles con .NET según lo especificado por el ECMA.
Mono posee importantes componentes útiles para desarrollar software:
Una máquina virtual de infraestructura de lenguaje común (CLI) que contiene un
cargador de clases, un compilador en tiempo de ejecución (JIT), y unas rutinas
de recolección de memoria.
Una biblioteca de clases que puede funcionar en cualquier lenguaje que funcione
en el CLR (Common Language Runtime).
Un compilador para el lenguaje C#, MonoBasic (la versión para mono de Visual
Basic), Java y Python.
El CLR y el Sistema de tipos común (CTS) permite que la aplicación y las
bibliotecas sean escritas en una amplia variedad de lenguajes diferentes que
compilen para byte code
Esto significa que si, por ejemplo, se define una clase que realice una
manipulación algebraica en C#, ésta pueda ser reutilizada en cualquier lenguaje
13
compatible con CLI. Puede crear una clase en C#, una subclase en C++ e
instanciar esa clase en un programa en Eiffel.
Conclusión:
Con esta terminación de este trabajo podemos concluir que hemos aprendido
defunciones nuevas y poder mejorar mucho más las definiciones de conceptos
que ya conocíamos.
14
BIBLIOGRAFIA:
http://es.wikipedia.org/wiki/Base_de_datos
http://es.wikipedia.org/wiki/Microsoft_Access
http://www.monografias.com/trabajos34/microsoft-access/microsoft-access.shtml
http://es.wikipedia.org/wiki/Proyecto_Mono
http://es.wikipedia.org/wiki/MySQL
http://es.wikipedia.org/wiki/SQL
http://es.wikipedia.org/wiki/Oracle_Database
http://es.wikipedia.org/wiki/Sybase
http://es.wikipedia.org/wiki/PostgreSQL
http://es.wikipedia.org/wiki/Gestor_de_proyecto
http://es.wikipedia.org/wiki/Analista_de_sistemas
http://es.wikipedia.org/wiki/Desarrollador_de_software
http://es.wikipedia.org/wiki/Arquitecto_de_sistemas
http://es.wikipedia.org/wiki/Microsoft_Visual_Studio
http://es.wikipedia.org/wiki/Java_%28lenguaje_de_programaci%C3%B3n%29
15