jueves, 30 de abril de 2015

LA NATURALEZA DEL SOFTWARE

INTRODUCCIÓN
Actualmente el software se ha convertido en una herramienta muy importante para las empresas y la comunidad en general, ya que en sí, es un producto, y a la vez se lo utiliza como medio para optimizar muchos recursos en diversas actividades, ya sean comerciales, educativas, de salud, etc., que genera satisfacción en cuanto a sus beneficios, ya que en las grandes empresas es indispensable el uso de estas herramientas informáticas.
Existen muchos beneficios como los mencionados anteriormente que nos ofrece el software, pero en si es importante conocer la forma más adecuada de generar un buen producto, que le guste al cliente y que sea confiable, el proceso que se debe llevar se detalla a continuación en el contexto de esta clase.       
MARCO TEÓRICO
El software para que pueda ser utilizado plenamente, debe pasar por un cuidadoso proceso de desarrollo, en el cual él o los encargados deben analizar los mejores métodos para garantizar su calidad, dependiendo del producto y requerimientos del mismo este puede llegar a afectar directamente en el costo, ya que un software robusto, confiable y de jerarquía es mucho más costoso que uno que tenga la misma funcionalidad pero que si no garantiza seguridad e integridad de información.
Si el software se desarrolló con un correcto proceso, teóricamente las probabilidades de falla deberían ser muy bajas, sin embargo con el paso del tiempo el hardware en el que el software está alojado, se ve afectado por diversos factores, lo que es común en un componente de físico, conllevando a que el software funcione de una forma no tan deseada, pero teóricamente no se desgasta, si ya las funcionalidades no cumplen con todo los requerimientos necesarios del usuario lo que se debe hacer es aplicarle una mejora adecuada a las necesidades.
En la actualidad existen diversos tipos de software, según la necesidad que deseas suplir:

PROCESO DEL SOFTWARE
El software debe llevar un cauteloso proceso, como se mencionaba anteriormente pero, ¿cuál es el proceso que debe llevar?: A continuación se detalla:
Comunicación: Antes de que comience cualquier trabajo técnico, tiene importancia crítica comunicarse y colaborar con el cliente (y con otros participantes). Se busca entender los objetivos de los participantes respecto del proyecto, y reunir los requerimientos que ayuden a definir las características y funciones del software.
Planeación: Cualquier viaje complicado se simplifica si existe un mapa. Un proyecto de software es un viaje difícil, y la actividad de planeación crea un “mapa” que guía al equipo mientras viaja. El mapa —llamado plan del proyecto de software— define el trabajo de ingeniería de software al describir las tareas técnicas por realizar, los riesgos probables, los recursos que se requieren, los productos del trabajo que se obtendrán y una programación de las actividades.
Modelado: Ya sea usted diseñador de paisaje, constructor de puentes, ingeniero aeronáutico, carpintero o arquitecto, a diario trabaja con modelos. Crea un “bosquejo” del objeto por hacer a fin de entender el panorama general —cómo se verá arquitectónicamente, cómo ajustan entre sí las partes constituyentes y muchas características más—. Si se requiere, refina el bosquejo con más y más detalles en un esfuerzo por comprender mejor el problema y cómo resolverlo. Un ingeniero de software hace lo mismo al crear modelos a fin de entender mejor los requerimientos del software y el diseño que los satisfará.
Construcción: Esta actividad combina la generación de código (ya sea manual o automatizada) y las pruebas que se requieren para descubrir errores en éste.
Despliegue. El software (como entidad completa o como un incremento parcialmente terminado) se entrega al consumidor que lo evalúa y que le da retroalimentación, misma que se basa en dicha evaluación. (Russell, S. y Norvig, P. 2004)
CONCLUSIÓN.
El adecuado control de los procesos del software que se deben tener en cuenta, generan que el porcentaje de fallas del software disminuya considerablemente, como consecuencia una mayor satisfacción por ambas partes, además de las diferentes definiciones que se registraron en este tema, nos detallaba algo que algunos desconocían, como lo es que el software no se desgasta a diferencia del hardware, lo que genera que el funcionamiento del software no sea el óptimo, para lo cual se pueden realizar diversas correcciones por decir de cierta forma, se le puede reemplazar el componente físico en el caso de que ya no tuviese arreglo alguno, en el caso de que el software ya no cumpla de manera adecuada porque las necesidades aumentaron significativamente, lo ideal sería realizar mejoras en el, o actualizaciones, lo que ocasiona que no se pague por un nuevo programa, disminuyendo el costo para la persona que así lo requiera.
BIBLIOGRAFÍA.
Pressman, R. Ingeniería de software: Un enfoque práctico. 7 ed. México. Mc Graw Hill. p 805.
Gutiérrez, D. 2011. Métodos de Desarrollo de Software. (En línea). VE. Consultado, 30 de abril de 2015. Formato PDF. Disponible en: http://www.codecompiling.net/files/slides/IS_clase_13_metodos_y_procesos.pdf  

INGENIERIA DE SOFTWARE

INTRODUCCIÓN
¿Qué es Ingeniería de Software?
Es la disciplina que establece el uso de principios de ingeniería robustos, orientados a obtener software, que sea confiable y funcione de manera eficiente.
La tecnología ha evolucionado de manera considerable últimamente, con lo que las personas han visto la necesidad de adaptarse a nuevas experiencias, tales como manejar grandes sistemas de información a través de herramientas electrónicas que son controladas por medio de un sistema base, estos son conocidos como sistemas operativos, que en si constituyen o forman parte de los denominados software, pero para que en la actualidad se pueda contar con una amplia variedad en este mundo, se debe al esfuerzo arduo de mucho tiempo de trabajo a personas que pensaron en innovar la forma de vida del resto de la gente.
En si el software es el complemento de un conjunto de componentes electrónicos, con el cual es posible interactuar de cierto modo con las funciones y características del hardware para obtener un resultado.
Cuando se popularizo la era tecnológica por decir de cierta forma, los requerimientos para un software comenzaron a exigir aún más a los desarrolladores, todo con el fin de suplir las necesidades de la colectividad.
En esta introducción se detalla que el software en si es un programa, pero se debe tener muy en cuenta lo siguiente: ¿qué es un sistema operativo?, este el sistema o programa en el cual se basa el funcionamiento global de la computadora, en si el alma de la misma, no hay que confundir este aspecto con programas de otras funcionalidades con respecto a sistemas de computadores.
OBJETIVO
El fin de este curso, es de enseñar el objetivo de la ingeniería de software, que es un software y cuáles son los pasos y herramientas que los desarrolladores deben tener en cuenta al momento de realizar los mismos, con el fin de obtener un producto de calidad y confiable para el usuario, además de que sea sencillo de interactuar.

CONCLUSIÓN
Podemos decir que, al menos una vez hemos interactuado con un software, ya que en la actualidad la computación se ha desarrollado de manera significativa, por lo que se hace necesario en muchos casos el uso de computadoras o herramientas informáticas, las cuales cuentan con un software que le permite interactuar a los usuarios con el hardware, es por eso que es importante conocer los funcionalidades que un software nos permite, y saber que lo que se requiere para realizar de manera adecuada el mismo. Los usuarios finales no están muy conscientes de los procesos que se deben tomar para realizar un buen software, pero ellos en si no necesariamente deben saber mucho, a menos que este desee profundizarse en el tema, lo que sí es de relevancia en el tema, es que muchos de ellos confunden algunos temas, apartándose de la realidad y generando incapacidad de comprender el uso de la tecnología y como repararlo si es el caso, he ahí la importancia de esta clase que ayuda a desarrolladores a mejorar su comunicación con el cliente y en si mejorar su producto, además de dar a conocer ciertas personas los diversos conceptos que genera controversia en muchas de ellas.
BIBLIOGRAFÍA.
Pressman, R. Ingeniería de software: Un enfoque práctico. 7 ed. México. Mc Graw Hill. p 805.
Gutiérrez, D. 2011. Métodos de Desarrollo de Software. (En línea). VE. Consultado, 30 de abril de 2015. Formato PDF. Disponible en: http://www.codecompiling.net/files/slides/IS_clase_13_metodos_y_procesos.pdf.

SILABO

ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANAMANUEL FÉLIX PEZ



CARRERA DE INFORMÁTICA

LABO DEL CURSO INGENIERIA DE SOFTWARE
PERIÓDO SEMESTRAL: ABRIL / AGOSTO 2015
1. CÓDIGO Y NÚMERO DE CDITOS: CÓDIGO: 0704

CDITOS: 3 (2 TEÓRICOS, 1 PRÁCTICO) SEMESTRE: SEPTIMO                  PARALELO: A

2. DESCRIPCIÓN DEL CURSO:
Este  curso  permite  al  estudiante  desarrollar  los  conocimientos  necesarios  para  gestionar proyectos de software, se exponen conceptos de análisis y diseño estructurado y la gestión de aspectos relativos a calidad y riesgos aplicables a un producto de software.


3. PRE-REQUISITOS Y CO-REQUISITOS: Pre-requisitos: 0604 Gestión Informática Co-requisitos:
4. TEXTO Y REFERENCIAS REQUERIDAS PARA EL DICTADO DEL CURSO: TEXTO GUÍA:

Roger S. Pressman (2010), Ingeniería del Software un enfoque Práctico, 7ma. ed. México: Mc Graw

Hill.



BIBLIOGRAFIA COMPLEMENTARIA

Pavón, Juan. Gestión de Software. 3era. Edición. Editorial Complutense, 2008, Madrid.


5. OBJETIVOS GENERALES DEL CURSO (RESULTADOS O LOGROS DE APRENDIZAJE DEL CURSO):
a)   (C1) Conocer el ciclo de vida del software, acomo metodologías, modelos y patrones de diseño.
b)      (C4 ) Organizar un equipo de trabajo de desarrollo de software, en base a un concepto metodológico.
c)    (C5 ) Desarrollar un producto software empleando una metodología de desarrollo de software.
d (A4) Integrar equipos de desarrollo de software.

e)   (P4) Administrar equipos de desarrollo de software.


6.  TOPICOS O TEMAS CUBIERTOS:



TEMÁTICA

CONTENIDO
HORAS
TEÓRICAS
HORAS
PRÁCTICA
TRABAJO
AUTÓNOMO
LOGRO DE
APRENDIZAJE
TEMA 1. Metodologías de Desarrollo de Software
1.1 Ciclos de Vida del Software.

1.2 Metodologías Tradicionales.

1.3 Metodologías Agiles.
8
4
12
a, b, c


TEMA 2. Lenguaje Unificado de Modelado UML
2.1 Diagramas de Comportamiento:
casos de uso, actividad, interacción, estado, secuencia, comunicación, tiempo.

2.2 Diagramas de Estructura: clases, estructuras compuestas, componentes, despliegue, objeto, paquetes.
16
8
24
a, c


TEMA 3. Gestn de Proyectos de Software
3.1 Gestión de Requerimientos,
Presupuesto y Tiempo.

3.2 Gestión de Riesgo.

3.3 Gestión de Calidad.

3.4 Gestión de Cambio.
8
4
12
b, d, e
TOTAL
32
16
48
a, b, c ,d, e



7. HORARIO DE CLASE:
16 Semanas por el semestre, más una semana cultural, 3 horas de  clases por semana de 60 minutos cada una.

Martes: Dos horas en el aula de clases 304. (20h15 a 22h15) Miércoles: Una hora en el aula de clases 202. (18h00 a 19h00)


8. CONTRIBUCIÓN DEL CURSO EN LA FORMACIÓN DEL INGENIERO EN INFORMÁTICA:

SIGLAS
OBJETIVOS EDUCACIONALES DE LA CARRERA
CONTRIBUCIÓN
DESCRIPCIÓN

1
Manejar las herramientas de software de última tecnología en el ámbito de su profesión que se encuentren en el mercado.






El contenido de esta asignatura contribuye directamente con el formación del futuro Ingeniero Informático, pues le permite al estudiante desarrollar los conocimientos necesarios para gestionar proyectos de software, empleando para ello la metodología más adecuada, de tal forma que los se cumplan los requerimientos, presupuesto y tiempo designado para la implementación de la solución software.

2
Implementar redes y sistemas de comunicación con su
respectivo soporte


3
Brindar mantenimiento preventivo y correctivo a
diferentes equipos y sistemas computacionales en instituciones y empresas públicas y privadas.


4
Desarrollar sistemas informáticos de hardware o
software para la solución eficiente y eficaz de problemas de procesamiento automático de datos y de información.

Alto

5
Cursar programas de  posgrado  o  de formación continua  en áreas afines.


6
Participar en proyectos de investigación, desarrollo y automatización tecnológica



9. RELACIÓN DEL CURSO CON EL CRITERIO RESULTADOS DE APRENDIZAJE:

Resultados de Aprendizaje
Contribucn
El estudiante debe:
a) Aplica fundamentos mateticos y físicos en el diseño, implementación y mantenimiento de sistemas informáticos; ya sea a nivel de hardware, software, o como una combinación de ambos.


**********



b) Participa en proyectos de investigación, innovación, o desarrollo, mediante la experimentación y el análisis e interpretación de datos y resultados, en el área de informática.



Media
Aplicar sus conocimientos en la
definición de un modelo de ingeniería de software, identificando las características de cada una de ellos y los resultados correspondientes.


c) Identifica las necesidades de sistemas informáticos que permitan automatizar procesos y tareas, para personas naturales o jurídicas.



Alta
Reconocer los requerimientos de ingeniería de software que permita diseñar un sistema basado en necesidades personales o institucionales.
d) Desarrolla sistemas de procesamiento y transmisión de información y de automatización, seleccionando el método de ingeniería y las herramientas más adecuadas de acuerdo a cada caso.


Baja

Organizar los datos e información relacionados a un proyecto de software seleccionado.
e) Manejar adecuadamente las herramientas informáticas de última generación, para el almacenamiento, procesamiento, y transmisión de datos e información.


Media
Emplear acertadamente software pertinente para presentar informes y emitir resultados.

f) Integra grupos de trabajo profesional y multidisciplinario en la solución de problemas relacionados a su competencia.


Media
Conformar grupos para elaborar trabajos y desarrollar proyectos de ingeniería informática.




g) Demostrar comportamiento ético en su trabajo, así como conocimientos de la legislación relacionada al campo de profesión.


Media
Identificar las normas que rigen en una institución y en el desarrollo de un proyecto de ingeniería de software.
h) Comunicar efectivamente, de forma oral, escrita o digital, información sobre su trabajo, en idioma español o en un idioma extranjero.


Media

Representar acertadamente resultados de los proyectos desarrollados.
i) Participa en actividades de capacitación, así como cursos de formación continua que le sirvan de actualización profesional.

**********

***************************

j) Identificar los aspectos actuales de su entorno, no solo de su profesión sino también en los campos social, cultural, y económico.


Baja
Reconocer los recursos del medio circundante para  aplicarlos en su futura profesión.
k) Transmite los conocimientos y experiencias profesionales, mediante la enseñanza en capacitación, cursos de formación, y en todo el proceso educativo.


*********


***************************



10. FORMA DE EVALUACIÓN DEL CURSO:

PARÁMETROS DE EVALUACIÓN
TEMÁTICA
NÚMERO DE INSTRUMENTOS DE EVALUACIÓN
Exposiciones u otros.
1, 2 ,3
3
Trabajos en Grupo
1, 2
2
Trabajo de Investigación
2, 3
1
Lecciones Escritas
1, 2
2
Examen Final
1, 2, 3
1



11.     RESPONSABLE DE LA ELABORACIÓN DEL SÍLABO Y FECHA DE PRESENTACIÓN Y REVISIÓN:

Docente:

Ing. Hiraida Santana.
Coordinador de Año:

Lic. Guillermo Intriago
Auditor/a (PaAcadémico):
Fecha:

Abril del 2015.
Fecha:

Abril del 2015.
Fecha:
Firma:
Firma:
Firma: