Está en la página 1de 29

Escuela de ciencias bsicas,

tecnologa e ingeniera

Software
Introduccin a la Ingeniera de
sistemas
90013

SOFTWARE

Programas
Paradigmas de programacin
Lenguajes de programacin
Bases de datos
Ingeniera del software

SOFTWARE
Dos fases pueden ser identificadas
en el proceso de creacin de un
programa:
1 Fase de resolucin del problema

2 Fase de Implementacin

SOFTWARE

SOFTWARE
En la actualidad cotidianamente se utilizan sistemas de informacin que,
se basan en algoritmos, entendidos como una serie de pasos orientados a
un objetivo. Revisemos, los pasos para realizar un retiro son:

Inicio
1. Solicita la tarjeta
2. Solicita el tipo de cuenta
3. Solicita el valor a retirar
4. Solicita la clave
5. Procesa transaccin
6. Si los fondos son suficientes
7.
Entrega dinero
8.
Entrega saldo
9.
De lo contrario
10.
Presenta mensaje transaccin
invlida
Fin

Actividad 1:
Servitransfer, una empresa de giros, acaba de aprobar la compra
e implementacin del software para la gestin de remesas.
Describa a continuacin los pasos que debe seguir Siste+,
asumiendo que el software ya est elaborado. Involucre el proceso
de compra (contrato) y pago.
Inicio
1.
2.
3.
4.
5.
6.
.
.
Fin

Una vez diligencie la tabla publquela en el e-portafolio disponible


en el entorno de evaluacin y seguimiento

PARADIGMAS DE
PROGRAMACIN

PROGRAMACIN
ESTRUCTURADA
Orientado a mejorar la
claridad, calidad y tiempo
de
desarrollo
de
un
programa de computadora,
utilizando
nicamente
subrutinas
y
tres
estructuras:
secuencia,
seleccin e iteracin

Esta programacin utiliza:


Diseo descendente
Recursos abstractos
Estructuras bsicas

PROGRAMACION MODULAR
La programacin modular consiste
en resolver de forma independiente
los subproblemas resultantes de
una descomposicin.

PROG. ORIENTADA
A OBJETOS

POO - HERENCIA Y
POLIMORFISMO

POO - CLASE
La definicin de una clase es la declaracin de un tipo de dato
que involucra la especificacin de los atributos y los mtodos
de un objeto.

COMO SE USAN LOS OBJETOS


Los objetos slo pueden utilizarse envindoles mensajes para
que reaccionen con alguna accin que repercuta en el estado
de un programa. Puesto que los datos que contiene un objeto
slo pueden utilizarse a travs de los mtodos del mismo, los
mensajes en s son los nombres de los mtodos asociados.

POO - CLASE
Clase: CUENTA
CUENTA
CORRIENTE

CUENTA DE
AHORROS
ATRIBUTOS
Nombre de Cliente
Numero de Cuenta
Sucursal
Saldo Disponible

Mtodos
Alta
Deposito
Retiro
Muestra

Actividad 2:
Scratch es un software desarrollado por el Instituto tecnolgico de
Masacchussets para facilitar el proceso de aprendizaje de
fundamentos de programacin. Los programas que se pueden
hacer con scratch corresponden a programacin orientada a
objetos. En la siguiente tabla enuncie las caractersticas propias
de ste tipo de programacin que se encuentran al explorar el
entorno de scratch (www.scratch.mit.edu)
Item
Descripcin
Caractersticas propias del
tipo de programacin.

Una vez diligencie la tabla publquela en el e-portafolio disponible


en el entorno de evaluacin y seguimiento

LENGUAJES DE
PROGRAMACION
Lenguaje mquina
Lenguaje de bajo nivel (ensamblador)
Lenguaje de alto nivel
Los
lenguajes
mquina
proporcionan
instrucciones
especficas
para
un
determinado tipo de hardware y son
directamente intangibles por la mquina
El lenguaje ensamblador se caracteriza
porque sus instrucciones son mucho ms
sencillas de recordar, aunque dependen del
tipo de computadora y necesitan ser
traducidas a lenguaje mquina por un
programa al que tambin se le denomina
ensamblador.

LENGUAJES DE
PROGRAMACION
Los lenguajes de alto nivel
(lenguajes de tercera generacin)
Existen muchos lenguajes de alto nivel. Algunos de los
ms populares en la actualidad son los siguientes:
C: A veces se considera como el pura sangre de los
lenguajes de programacin, c produce programas en
cdigo ejecutable rpido y eficiente.
C++: Es la implementacin orientada a objetos de C.
Al igual que C, C++ es un lenguaje extremadamente
poderoso y eficiente.
Java: Es un entorno de programacin orientado a
objetos para crear programas que funcionen en
distintas plataformas.
ActiveX: Este cdigo crea funciones auto contenidas
que pueden ser accedidas y ejecutadas por cualquier
otro programa compatible con ActiveX en cualquier
sistema o red ActiveX.

LENGUAJES DE
PROGRAMACION
Lenguajes
generacin:

de

cuarta

Los
lenguajes
de
cuarta
generacin (4GL, por sus siglas en
ingls). Generalmente, un 4GL
utiliza un entorno de texto, muy
parecido al de 3GL o un entorno
visual.
La mayora de los 3GL y 4GL
permiten que se trabaje en un
entorno de desarrollo integrado, o
IDE (por sus siglas en ingls). Los
IDE proporcionan al programador
todas las herramientas necesarias
para desarrollar aplicaciones en
un
programa.
Incluyen
compiladores y soporte de tiempo
de
ejecucin
para
sus
aplicaciones.

.NET: Es un producto de Microsoft en el


campo de la programacin Combina varios
lenguajes de programacin en un IDE. Los
lenguajes incluidos son Visual Basic, C++,
C# y J#. .NET
Entornos de autora: Los entornos de
autora son herramientas de programacin
de propsitos especiales para crear
aplicaciones multimedia, programas de
capacitacin por computadora, pginas web
y otras aplicaciones.
Sun Studio One: es un editor visual para
los applets Java y Swing. Un applet es un

LENGUAJES DE
PROGRAMACION
Lenguajes de quinta generacin:
Los lenguajes de quinta generacin (5GL, por sus siglas en ingls) Son en
realidad un poco misteriosos. En principio un 5GL podra utilizar inteligencia
artificial para crear software basndose en la descripcin de lo que el software
debe realizar.
Lenguajes de desarrollo de la world Wide Web:
Las herramientas de desarrollo que se relacionan con la web han evolucionado
en poder y capacidades. Por tanto es imposible hablar en un contexto
contemporneo sobre programacin y desarrollo sin tomar en cuenta las
herramientas que hacen que sea posible el desarrollo de la web.

Lenguaje de marcacin de hipertexto HTML


Lenguaje de marcacin extensible XML
HTML extensible
Lenguaje de hojas de estilo extensible (XSL)
Lenguaje de marcacin extensible de perfil mvil (XHTML MP)
Dreamweaver
Flash

LENGUAJES DE
PROGRAMACION
TRADUCCIN DEL LENGUAJE

Actividad 3:
Siste+ cuenta con personal de soporte que se encarga de atender
a los clientes desde las instalaciones de Siste+ a travs de un call
center y en las propias instalaciones de los clientes. Siste+
requiere un software para que sus funcionarios, reporten su
actividades diarias a fin de controlar en tiempo real el avance de
sus proyectos o contratos. Colabrele a Siste+ haciendo un
anlisis de los diferentes lenguajes de programacin y seleccione
los que
sugerira para
el caso planteado:
Lenguaje de
Caracters
Usos
Ventajas
programacin

ticas

Lenguaje(s) de programacin sugeridos para el estudio de caso


(justificacin):

Una vez diligencie la tabla publquela en el e-portafolio disponible


en el entorno de evaluacin y seguimiento

BASES DE DATOS
Una base de datos contiene un conjunto de
elementos
o
hechos
relacionados
acomodados en una estructura especifica.
Es una coleccin de datos persistentes que
pueden compartirse e interrelacionarse.
CARACTERTISTICAS DE LAS BASES DE
DATOS
Persistentes: Significa que los datos
residen en un almacenamiento estable, tal
como un disco magntico.
Compartir: Significa que una base de
datos puede tener mltiples usos y usuarios.
Interrelacin: Significa que los datos
almacenados como unidades separadas se
pueden conectar para mostrar un cuadro

completo

BASES DE DATOS
Sistemas de administracin de bases de datos
es un conjunto de componentes que soportan la
creacin, el uso y el mantenimiento de las bases de
datos. Inicialmente, los DBMS proporcionan un
eficiente almacenamiento y recuperacin de datos.

Oracle: el sistema de base de datos Oracle se ha


convertido en el DBMS a nivel empresarial ms popular
en el mundo, dominando 40% de este mercado.
DB2: DB2 de IBM tiene versiones que se ejecutan en
Windows, Linux y distintas versiones de los sistemas
operativos UNIX, adems tiene el segundo lugar en
popularidad con 34% de DBMS instalado.
SQL Server: SQL Server de Microsoft es el DBMS
,cuenta con 11% del mercado de administracin de
bases de datos a nivel empresarial.
MYSQL: MySQL es el DBMS empresarial ms popular
entre la comunidad de (cdigo abierto).. Adems, una
razn importante por la que muchas empresas utilizan
MySQL Server es el costo.

BASES DE DATOS
El modelo de datos
Es una herramienta que se compone, por una
parte, de un formalismo que describa los datos y,
por otra, de un conjunto de operaciones que
permitan manipularlos. Adems, se puede
adicionar un tercer componente y es el referente al
conjunto de reglas que mantienen la integridad de
los datos, es decir, que permiten verificar cuales
datos son vlidos dentro de un sistema y cules
deben ser rechazados.
Modelos lgicos basados en objetos
Los modelos lgicos basados en objetos se utilizan
para describir los datos en los niveles conceptual y
de visin. Se caracterizan por el hecho de que
permiten una estructuracin bastante flexible y
hacen posible especificar claramente las
limitaciones de los datos. Algunos de los ms
conocidos son:
El modelo entidad relacin
El modelo binario
El modelo semntico de datos

BASES DE DATOS

Entidad

Asociacin

Clases de relaciones
En la mxima se encuentran las
siguientes relaciones:
a. Relacin uno a uno (1:1)
b. b. Relacin uno a muchos (1:N )
c. Relacin muchos a muchos (M:N

SOFTWARE
Bases de datos
Modelos lgicos basados
en registros
Los modelos lgicos basados
en registros se utilizan para
describir los datos en los
niveles conceptual y de
visin. estos modelos sirven
para especificar tanto la
estructura lgica general de
la base de datos como una
descripcin en un nivel ms
alto de una implantacin. Se
encuentran tres modelos de
datos que han tenido la ms
amplia aceptacin:
Modelo relacional: Los
datos y las relaciones entre
los datos se representan por
medio de una serie de tablas.
Modelo de red: Los datos
en el modelo de red se
representan por medio de
conjuntos de registros y las
relaciones entre los datos se
representan con ligas
Modelo Jerrquico: El
modelo jerrquico es similar

Actividad 4:
Siste+ tiene dos nuevos clientes para la implementacin de su
software de nmina. Ambos quieren buenas herramientas pero el
primero ha manifestado que est dispuesto a cubrir los costos a
que haya lugar, por su parte el segundo cliente solicita buscar las
alternativas ms econmicas por bajo presupuesto. Analice las
alternativas disponibles como Sistema Gestor de Base de Datos
SGBD,
y su
para cadaTipo
caso
Motor
de recomendacin
bases Caracters
Ventajas
de datos

ticas

Licenciamient
o

Justifique su respuesta
Motor de base de datos sugerido para el cliente 1
Motor de base de datos sugerido para el cliente 2

Una vez diligencie la tabla publquela en el e-portafolio disponible


en el entorno de evaluacin y seguimiento

INGENIERA DEL
SOFTWARE
Revisemos qu plantea el texto de Roger Pressman, Ingeniera de Software. Un enfoque
prctico, al respecto:
La Ingeniera del software es una disciplina o rea de la informtica o ciencias de la
computacin,
que ofrece mtodos y tcnicas para desarrollar y mantener software de
Cuando se desarrolla una
calidad
resuelven
aplicacinque
(sistema
de problemas de todo tipo.
informacin) para un
cliente que tiene unas
necesidades especficas,
que necesita el producto
en un momento concreto
y que va a pagar por su
desarrollo,
resultan
esenciales el coste, el
plazo de realizacin, y el
cumplimiento
de
los
requisitos.
Este
desarrollo es ms difcil
que el de un programa
individual, bsicamente
por
los
siguientes
motivos:

Volumen.
Evolucin
Complejidad.
Coordinacin.
Comunicacin.

INGENIERA DEL
SOFTWARE
El desarrollo de cualquier sistema de
informacin implica la realizacin de tres
pasos genricos: definicin, construccin
y mantenimiento.
Fase de definicin.
Fase de construccin..
Fase de mantenimiento.
Clasificacin
La ingeniera del software se ocupa de la
planificacin y estimacin de proyectos,
anlisis de requisitos, diseo de software,
codificacin, prueba y mantenimiento.
Ciclo de vida de un sistema de
informacin
Orden FASES DILIGENCIAS O TAREAS
1. Planeacin del sistema
2. Anlisis del sistema
3. Diseo del sistema
4. Mantenimiento y control del
sistema
5. Retiro u obsolescencia

GRACIAS POR SU
ATENCION