Está en la página 1de 14

Universidad Catlica los ngeles de Chimbote

Piura

Ao de la Diversificacin Productiva y del Fortalecimiento De la


Educacin

DATOS PERSONALES

INTEGRANTES

1.- Castillo Huancas Jess Salatiel


2.- Cunaique Aguirre Juan

Alexander
3.- Herrera Cuniarache Marvin
4.- Urbina Solano Brayan
5.- Ponce Gutirrez Armando

CURSO

DOCENTE

CICLO

Ingeniera de Sistemas

Ingeniera de Software I

Ing. Vctor Ancajima Mian

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

DEDICATORIA:

Este trabajo se lo queremos dedicar a Dios, al creador de todas las cosas, quien
nos da fuerzas para seguir adelante en nuestra carrera profesional.

A mi profesor, quien dedica sus conocimientos para obtener un buen


aprendizaje y nos orienta para que se lleve a cabo este presente trabajo.

AGRADECIMIENTOS:

A nuestros padres que gracias a su esfuerzo, hemos podido aprender muchas


cosas nuevas, que nos ayudaran a ser mejores buenos profesionales.

A la Universidad catlica Los ngeles de Chimbote, que nos brinda la


oportunidad de estudiar en sus aulas adquiriendo nuevos conocimientos de
bien para el futuro.

Un agradecimiento especial al ing. Vctor Ancajima Mian, por la colaboracin,


paciencia, apoyo y sobre todo por esa gran enseanza que nos brinda da a da.

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

SUMARIO:
Dedicatoria...

Agradecimiento.
.............................................
Captulo
I..
MARCO
DE
REFERNCIA....
1.1
Introduccin:

.
1.2
Formulacin
del
problema
.
1.3 Objetivo
1.3.1Objetivos
general....
...
1.3.2Objetivos
especficos...
.
1.4
Marco
terico...
..
1.6
Qu
es
un
software
de
calidad?.................................................................................................................
.........
Captulo
II..PROCESO
DEL
DESARROLLO
DEL
SOFTWAWE.
2.2
Etapas
del
proceso
de
desarrollo
de
software
2.2.1
Anlisis
de
requisitos...
..
2.2.2
Principios
de
especificacin.....
.
2.2.3
Diseo
y
arquitectura.
...
2.2.4
Programacin:
..
....

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

2.2.5 Prueba: ..
....
2.2.6
Documentacin
.....
2.2.7
Mantenimiento:
..
..
Captulo
III
...
3.3
Modelos
del
ciclo
de
vida:
...
3.3.1
Modelo
en
Cascada..
.
3.3.2
Modelo
de
desarrollo
Evolutivo.
..
3.3.3
Modelo
de
Prototipado
de
Requerimientos.
.......
3.3.4
Modelo
de
desarrollo
basado
en
reutilizacin:
.
3.3.5
Modelo
de
desarrollo
en
espiral:
...
3.3.6 Modelo de desarrollo incremental.

Conclusiones
.....................................
Bibliografas
.

La Metodologa de Desarrollo del Software


CAPITULO I:
1.1- Introduccin:

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

CAPITULO I
MARCO DE REFERENCIA
1.
Introduccin:
La presente exposicin se refiere al tema Etapas del Proceso de Desarrollo de Software el cual
puede ser definido como un proceso de ingeniera de software,para producir software de calidad,
que cumpla con las normas a nivel mundial y que ofrezca flexibilidad en plazos y presupuestos.
Gracias a la incorporacin de las mejores prcticas de la ingeniera de software, como: Analisis de
requisitos,tambin tenemos Principios de especificacion,Diseo y Arquitectura,Programacion,
Prueba,Documentacion,Mantenimiento.
Convierte al PDS en una de las metodologas estndares ms utilizadas para el Analisis de
requisitos,tambin tenemos Principios de especificacion,Diseo y Arquitectura,Programacion,
Prueba,Documentacion,Mantenimiento.
La importancia de la investigacin de esta metodologa radica, en los altos niveles de calidad de
software exigidos por las grandes empresas. Ya que puede ser utilizada sin importar el tamao y
rubro de la organizacin, sin embargo es ms utilizada en las grandes empresas, debido a la
complejidad y tamao de los sistemas

1.2- Formulacin del problema:


Cul es la utilidad de la medida del software?
Actualmente en El Salvador no se cuenta con suficie
nte informacin acerca de la
metodologa de desarrollo de software RUP, muchos p
rofesionales y estudiantes
del rea de informtica, desconocen el trmino RUP.
Debido al auge que este tiene en el desarrollo de
aplicaciones empresariales a
nivel internacional, y tomando en cuenta que alguna
s empresas orientadas
exclusivamente a tecnologas de informacin en nues
tro pas estn comenzando a
adoptar esta metodologa, se vuelve muy importan
te que todo Informtico est al
tanto de las ltimas tecnologas tanto de desarrol
lo de software como de
programas de aplicacin.

1.3- Objetivos:
3.1. Objetivo general:
En la construccin y desarrollo de proyectos se aplican mtodos y tcnicas
para resolver los problemas, la informtica aporta herramientas y
procedimientos sobre los que se apoya la ingeniera de software.
Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

3.2. Objetivos especficos:


* Disear aplicaciones informticas que se ajusten a las necesidades de las
organizaciones.
* Mejorar la calidad de los productos de software.
* Aumentar la productividad y trabajo de los ingenieros del software.
* Facilitar el control del proceso de desarrollo de software.
* Suministrar a los desarrolladores las bases para construir software de
alta calidad en una forma eficiente.
* Definir una disciplina que garantice la produccin y el mantenimiento de
los productos software desarrollados en el plazo fijado y dentro del costo
estimado.
* Organizar la realizacin de pruebas que verifiquen el correcto
funcionamiento de los programas y que se ajustan a los requisitos de
anlisis y diseo.
* Organizar y supervisar el trabajo de su equipo de los tcnicos de
mantenimiento y los ingenieros de sistemas y redes.
* Que sea accesible a travs de Internet.

1.4- Marco Terico:


La ingeniera de Software es una de las ramas de las ciencias de la
computacin, la cual nos brinda conocimientos, tcnicas y metodologas
para desarrollar software de calidad brindndonos un enfoque sistemtico,
disciplinado y cuantificable.
El proceso de desarrollo de software por lo tanto es el conjunto de
actividades necesarias para transformar los requisitos del cliente en un
sistema de software
1.5- Qu es software de calidad?:
Los requisitos del software constituyen la calidad del mismo. Debemos
estar claros que el software no se certifica con calidad, no se puede medir
la calidad del software de forma correcta debido a su naturaleza lo que se
certifica son los procesos de desarrollo, la correcta consecucin de los
mismos.
El usuario final mide la calidad del software segn los resultados que este
le. de quien la juzgue. Existen tambin formas ms objetivas de evaluar el
software, estas son: mtricas, estadsticas, etc.
Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

CAPITULO II:
PROCESO DEL DESARROLLO DEL SOFTWARE.
2.1 Etapas del proceso de desarrollo de software:
Estas etapas son un reflejo del proceso que se sigue a la hora de resolver cualquier tipo de problema.
Ya en 1945, mucho antes de que existiese la Ingeniera del Software, el matemtico George Polya
describi este proceso en su libro How to solve it (el primero que describe la utilizacin de tcnicas
heursticas en la resolucin de problemas). Bsicamente, resolver un problema requiere:
- Comprender el problema (anlisis)
- Plantear una posible solucin, considerando soluciones alternativas (diseo)
- Llevar a cabo la solucin planteada (implementacin)
- Comprobar que el resultado obtenido es correcto (pruebas)

2.1.1 Anlisis de requisitos:


El anlisis global de los requisitos de una aplicacin es un proceso de conceptualizacin y
formulacin de los conceptos que involucra de forma concreta. Es una parte fundamental del
proceso de desarrollo de una aplicacin, la mayor parte de los defectos encontrados en el software
entregado se originan en la fase de anlisis de requisitos, y adems son los mas caros de reparar.
Siempre se ha discutido quin es el dueo de los requisitos: el cliente o el desarrollador. Para
gestionar esto, es habitual presentar el anlisis de requisitos en dos secciones:
Requisitos de cliente: documentan los deseos y necesidades de los clientes y se expresan en
lenguaje claro para l.
.Requisitos detallados: Determina los requisitos de manera especfica y estructurada y estn
destinadas especficamente hacia los desarrolladores.
Los objetivos de este tema son:
Distinguir entre requisitos de clientes y requisitos detallados.
Disponer de recursos para formular de forma clara y sistemtica los requisitos del cliente

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

En ingeniera de sistemas existen dos tipos de requisitos.

Un requisito funcional:
Puede ser una descripcin de lo que un sistema debe hacer. Este tipo de requisito especifica algo
que el sistema entregado debe ser capaz de realizar.

Un requisito no funcional:
De rendimiento, de calidad, etc; especifica algo sobre el propio sistema, y cmo debe realizar
sus funciones. Algunos ejemplos de aspectos solicitables son la disponibilidad, el testeo, el
mantenimiento, la facilidad de uso, etc.

2.1.2 Principios de especificacin:


Es la tarea de describir detalladamente el software a ser escrito, de una forma rigurosa. Se describe
el comportamiento esperado del software y su interaccin con los usuarios y/o otros sistemas.
La especificacin, independientemente del modo en que se realice, puede ser vista como un proceso
de representacin. Los requerimientos se representan de forma que conduzcan finalmente a una
correcta implementacin del software.

Una buena especificacin debe procurar:


- Separar funcionalidad de implementacin. Una especificacin es una descripcin de lo que se
desea, en vez de cmo se realiza. Esto en la prctica puede llegar a no suceder del todo, sin embargo
es un buen lineamiento a seguir.
- Una especificacin debe abarcar el entorno en el que el sistema opera. Similarmente, el entorno en
el que opera el sistema y con el que interacta debe ser especificado.
- Debe ser modificable. Ninguna especificacin puede ser siempre totalmente completa. El entorno
en el que existe es demasiado complejo para ello. Una especificacin es un modelo, una abstraccin,
de alguna situacin real (o imaginada). Por tanto, ser incompleta. Adems, al ser formulada
existirn muchos niveles de detalle.
2.1.3 Diseo y arquitectura
Esta etapa Consiste en el diseo de los componentes del sistema que dan respuesta a las
funcionalidades tambin conocidas como las entidades de negocio. Generalmente se realiza en base
a diagramas que permitan describir las interacciones entre las entidades y su secuenciado.
Mientras que los modelos utilizados en la etapa de anlisis representan los requisitos del usuario
desde distintos puntos de vista (el qu), los modelos que se utilizan en la fase de diseo representan
Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

las caractersticas del sistema que nos permitirn implementarlo de forma efectiva (el cmo). Un
software bien diseado debe exhibir determinadas caractersticas. Su diseo debera ser modular en
vez de monoltico.
En la fase de diseo se han de estudiar posibles alternativas de implementacin para el sistema de
informacin que hemos de construir y se ha de decidir la estructura general que tendr el sistema (su
diseo arquitectnico).
El diseo de un sistema es complejo y el proceso de diseo ha de realizarse de forma iterativa. La
solucin inicial que propongamos probablemente no resulte la ms adecuada para nuestro sistema de
informacin, por lo que deberemos refinarla. Afortunadamente, tampoco es necesario que
empecemos desde cero. Existen autnticos catlogos de patrones de diseo que nos pueden servir
para aprender de los errores que otros han cometido sin que nosotros tengamos que repetirlos.
El diseo de un sistema de informacin tambin presenta distintas facetas:
- Por un lado, es necesario abordar el diseo de la base de datos, un tema que trataremos
detalladamente ms adelante.
- Por otro lado, tambin hay que disear las aplicaciones que permitirn al usuario utilizar el sistema
de informacin. Tendremos que disear la interfaz de usuario del sistema y los distintos
componentes en que se descomponen las aplicaciones. De esto ltimo hablaremos en las dos
secciones siguientes.

2.1.4 Programacin:
Es la implementacin de un lenguaje de programacin para crear las funciones definidas durante la
etapa de diseo.Se traduce el diseo a cdigo. Es la parte ms obvia del trabajo de ingeniera de
software y la primera en que se obtienen resultados tangibles. No necesariamente es la etapa ms
larga ni la ms compleja aunque una especificacin o diseo incompletos/ambiguos pueden exigir
que, tareas propias de las etapas anteriores se tengan que realizarse en esta.
En esta etapa, a cada uno de los procesos definidos en la etapa de revisin de diseo lgico y diseo
fsico, se le realiza su codificacin en trminos del Cliente y Servidor.Para esta etapa se consideran
los siguientes hitos que corresponden a los pasos a seguir, pero no definen un proceso
necesariamente secuencial, ya que algunas de ellas deben ser construidas en forma paralela para
lograr el objetivo de comunicacin deseado entre el programa Cliente, y el programa Servidor.
Se debe considerar:
Programacin de la Base de Datos
Debemos mencionar la programacin de la base de datos como uno de los hitos ms
importantes del desarrollo, es en el servidor, y en particular en la programacin de la
base de datos donde se concentra la inteligencia del sistema a desarrollar.
En resumen esta etapa incluye:

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

La especificacin de tipos, campos, tablas, mdulos, valores por defecto, reglas de


validacin y otros en el repositorio de la herramienta de desarrollo propuesta para el
desarrollo.

La generacin de procedimientos que permiten cargar las tablas, triggers, y


procedimientos de apoyo a la Base de Datos generada.

- La programacin de los servicios a construir y la prueba de cada uno de ellos en forma individual.
Programacin de las Aplicaciones Cliente.
En esta fase, nuevamente la herramienta de productividad juega un papel
fundamental en mejorar los tiempos y la productividad de los desarrolladores, ya que
al tener las especificaciones claramente definidas en el repositorio de la herramienta,
es posible generar parte del cdigo del Form necesario para la interfaz cliente,
dejando al programador el complemento de esta programacin, y la preocupacin de
entregar una interfaz amigable al usuario.
Adems, esta etapa contempla el enlace con los servicios ya programados en el
servidor de datos, y la generacin de su correcto llamado utilizando los parmetros de
entrada y salida necesarios.

Fases de la Programacin

Los programas que se escriben con instrucciones, a este proceso se pueden dividir en pasos:
1. Comprender el problema
2. Plantear la lgica
3. Codificar el programa
4. Traducir el programa a lenguaje mquina
5. Prueba del programa
6. Ejecucin del programa

2.1.5 Prueba:
Consiste en comprobar que el software responda/realice correctamente las tareas indicadas en la
especificacin. Es una buena praxis realizar pruebas a distintos niveles (por ejemplo primero a nivel
unitario y despus de forma integrada de cada componente) y por equipos diferenciados del de
Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

desarrollo (pruebas cruzadas entre los programadores o realizadas por un rea de test
independiente).
En esta etapa el errar es humano y la etapa de pruebas tiene como objetivo detectar los errores que
se hayan podido cometer en las etapas anteriores del proyecto (y, eventualmente, corregirlos). Lo
suyo, adems, es hacerlo antes de que el usuario final del sistema los tenga que sufrir. De hecho, una
prueba es un xito cuando se detecta un error (y no al revs, como nos gustara pensar).
La bsqueda de errores que se realiza en la etapa de pruebas puede adaptar distintas formas, en
funcin del contexto y de la fase del proyecto en la que nos encontremos:
- Las pruebas de unidad sirven para comprobar el correcto funcionamiento de un componente
concreto de nuestro sistema.
- Las pruebas de integracin son las que se realizan cuando vamos juntando los componentes que
conforman nuestro sistema.
- Sirven para detectar errores en sus interfaces. En algunas empresas, como Microsoft, se hace una
compilacin diaria utilizando los componentes del sistema tal como estn en ese momento (daily
build) y se somete al sistema a una serie de pruebas bsicas (la prueba de humo, smoke test) que
garanticen que el proyecto podr seguir avanzando al da.

2.1.6 Documentacin:
Realizacin del manual de usuario, y posiblemente un manual tcnico con el propsito de
mantenimiento futuro y ampliaciones al sistema. Las tareas de esta etapa se inician ya en el primera
fase pero slo finalizan una vez terminadas las pruebas.
En general se habla mucho de la documentacin, pero no se la hace, no se le asigna presupuesto, no
se la mantiene y casi nunca est al da en los proyectos de desarrollo de software. Lo importante es
la disponibilidad de la documentacin que se necesita en el momento en que se la necesita.
Muchas veces se hace porque hay que hacerla y se escribe, con pocas ganas, largos textos, a la vez
que se est convencido de estar haciendo un trabajo intil. A veces se peca por exceso y otras por
defecto. Ocurre mucho en la Web y con productos RAD. En ocasiones se olvida que el
mantenimiento tambin debe llegar a la documentacin.
La documentacin se suele clasificar en funcin de las personas o grupos a los cuales est dirigida:
Documentacin para los desarrolladores
Documentacin para los usuarios
Documentacin para los administradores o soporte tcnico.
Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

La documentacin para desarrolladores es aqulla que se utiliza para el propio desarrollo del
producto y, sobre todo, para su mantenimiento futuro. Se documenta para comunicar estructura y
comportamiento del sistema o de sus partes, para visualizar y controlar la arquitectura del sistema,
para comprender mejor el mismo y para controlar el riesgo, entre otras cosas. Obviamente, cuanto
ms complejo es el sistema, ms importante es la documentacin. En este sentido, todas las fases de
un desarrollo deben documentarse: requerimientos, anlisis, diseo, programacin, pruebas, etc..
Una herramienta muy til en este sentido es una notacin estndar de modelado, de modo que
mediante ciertos diagramas se puedan comunicar ideas entre grupos de trabajo.
2.1.7Mantenimiento:
Mantenimiento del Software es la modificacin de un producto software despus de haber sido
entregado [a los usuarios o clientes] con el fin de corregir defectos, mejorar el rendimiento u
otros atributos, o adaptarlo a un cambio en el entorno.
En esta etapa se realizan un mantenimiento correctivo (resolver errores) y un mantenimiento
evolutivo (mejorar la funcionalidades y/o dar respuesta a nuevos requisitos).
Tambiem tenemos al Mantenimiento Adaptativo, Mantenimiento Perfectivo, Mantenimiento
Preventivo.
Mantenimiento Correctivo:
El mantenimiento correctivo tiene por objetivo localizar y eliminar los posibles defectos de los
programas. Un defecto en un sistema es una caracterstica del sistema con el potencial de
causar un fallo. Un fallo ocurre cuando el comportamiento de un sistema es diferente del
establecido en la especificacin.
Entre otros, los fallos en el software pueden ser de:
Procesamiento, por ejemplo, salidas incorrectas de un programa.
Rendimiento, por ejemplo, tiempo de respuesta demasiado alto en una bsqueda de
informacin.
Programacin, por ejemplo, inconsistencias en el diseo de un programa.
Documentacin, por ejemplo, inconsistencias entre la funcionalidad de un programa y
el manual de usuario.
Mantenimiento Adaptativo:
Este tipo de mantenimiento consiste en la modificacin de un programa debido a
cambios en el entorno (hardware o software) en el cual se ejecuta.

Estos cambios pueden afectar al sistema operativo (cambio a uno ms moderno), a la


arquitectura fsica del sistema informtico (paso de una arquitectura de red de rea
local a Internet/Intranet) o al entorno de desarrollo del software (incorporacin de
nuevos elementos o herramientas como ODBC).

El tipo de cambio necesario puede ser muy diferente: desde un pequeo retoque en la

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

estructura de un mdulo hasta tener que re escribir prcticamente todo el programa


para su ejecucin en un ambiente distribuido en una red.
Mantenimiento Perfectivo:

Cambios en la especificacin, normalmente debidos a cambios en los requisitos de un


producto software, implican un nuevo tipo de mantenimiento llamado perfectivo.

Desde algo tan simple como cambiar el formato de impresin de un informe, hasta la
incorporacin de un nuevo mdulo aplicativo. Podemos definir el mantenimiento perfectivo
como el conjunto de actividades para mejorar o aadir nuevas funcionalidades requeridas por
el usuario.

Mantenimiento Preventivo:

Este ltimo tipo de mantenimiento consiste en la modificacin del software para mejorar sus
propiedades (por ejemplo, aumentando su calidad y/o su mantenimiento) sin alterar sus
especificaciones funcionales. Por ejemplo, se pueden incluir sentencias que comprueben la
validez de los datos de entrada, re estructurar los programas para mejorar su legibilidad, o
incluir nuevos comentarios que faciliten la posterior comprensin del programa.

En algunos casos se ha planteado el Mantenimiento para la Reutilizacin, consistente en


modificar el software (buscando y modificando componentes para incluirlos en bibliotecas)
para que sea ms fcilmente reutilizable. En realidad este tipo de mantenimiento es
preventivo, especializado en mejorar la propiedad de reusabilidad del software.

Conclusiones

Leer ms:
http://www.monografias.com/trabajos39/desarrollo-del-software/desarrollo-delsoftware2.shtml#concl#ixzz3ZmWBDFc1
Bibliografas
1.- http : / / books . google . com . pe / book sid = MY0zo XYFVd8C & printsec = front
cover&d q= software & hl = es &s a= X & e i = 6PUdVLP g N
YH9ygOuzoGQBA&ved=0CCMQ6AEwAA#v=onepage&q=software&f=false.

Ingeniera de Sistemas

Ingeniera de Software I

Universidad Catlica los ngeles de Chimbote

Piura

2.- http : / / www . monogafias . com / trabajos 3 9 / desarrollo - del - software / desarrollo - del
- software . shtml # i xzz3 Dt4 x EfXv

Ingeniera de Sistemas

Ingeniera de Software I