Sei sulla pagina 1di 13

Investigacion Documental y de campo.

Informe Final

Tema de Investigación:
Problemáticas actuales para el desarrollo de
Software

Edith Michel Ramirez Diaz


Lic. Martha Patricia Ramírez Cortes
Monitor Académico
Grupo: PROPE_1902-DCEIT-007
Pagina de blog: https://kaleftblog.blogspot.com/
27/05/2019
Contenido
INTRODUCCIÓN ...................................................................................................................................................... 2
Antecedentes Históricos..................................................................................................................................... 3
METODOLOGIA ........................................................................................................................................................ 4
RESULTADOS ............................................................................................................................................................. 5
CONCLUSIONES....................................................................................................................................................... 7
Referencias ......................................................................................................................................................................... 7
ANEXOS..................................................................................................................................................................... 9
Anexo 1, cuadro de bibliografía. ......................................................................................................... 9
Anexo 2, entrevista ....................................................................................................................................... 9
Anexo 3, Encuesta. ...................................................................................................................................... 10

1
INTRODUCCIÓN
La Ingeniería del Desarrollo de software es la aplicación práctica del conocimiento científico al
diseño y construcción de programas de computadora y su documentación asociada, requerida para
desarrollar, operar y mantenerlos. También se le conoce como desarrollo de software o producción
de software.

El desarrollo de software es una de las áreas de especialización con mayor auge en las últimas
décadas. Cada día la tecnología evoluciona, y al mismo tiempo, los campos de aplicación de los sistemas
informáticos se van ampliando, pasando desde la realización de un portal de compras, hasta software
para la automatización robótica para operaciones quirúrgicas, proyectos de explotación de millones de
registros de información y automatización de procesos de todo tipo; dicho crecimiento se da tanto en
la iniciativa privada como en el sector educativo y gubernamental.

Qué pasa cuando el proyecto de un software nuevo a su término no es funcional, cuáles son las
Problemáticas que actualmente tienen los desarrolladores de Software y por lo que están pasando.

El desarrollo de software tiene como particularidades en su desarrollo que este no se fabrica en


el sentido clásico de la palabra. Ambas actividades se dirigen a la construcción de un "producto", pero
los métodos son diferentes otras de las problemáticas más común son los costes que se encuentran en
la ingeniería implicada en los proyectos, no se pueden gestionar como si lo fueran de fabricación. En la
ingeniería del software ya que es diferente a otras ingenierías, se construye a medida, en vez de ensamblar
componentes previamente creados. Aunque ya se están dando importantes pasos en esta dirección, que
facilitaría en gran medida el desarrollo de aplicaciones informáticas.

En el software, el recurso principal son las personas. No es siempre posible acelerar la


construcción de software añadiendo personas porque la construcción de software requiere un esfuerzo
en equipo. El equipo tiene que trabajar de forma coordinada y compartir un objetivo de proyecto común.
Se necesita comunicación efectiva dentro del equipo.

Ya se conocen algunas problemáticas sobre el desarrollo de Software, ahora toca estudiar por
las que el propio desarrollador pasa. Se busca conocer por cuantas problemáticas tiene los Ingenieros en
Desarrollo de Software, en la creación de un proyecto, así también cuales son las problemáticas externas
que se enfrenta los Ingenieros desarrolladores de Software.

Así delimitando el tipo de proyecto que se tiene y su impacto en la sociedad cibernética.

Como objetivo general se va a analizar las problemáticas existentes que tienen los Ing. Desarrolladores
de Software en el campo laboral.

Y para llegar a eso buscaremos:

• Identificar los problemas más comunes que se enfrentan en los proyectos.

• Analizar el origen de estas problemáticas en los proyectos.

• Determinar un plan de acción el cual les pueda hacer frente a dichas problemáticas.

2
Antecedentes Históricos

El primer bug conocido fue un bug físico. Literalmente. Una polilla entre los relés del Mark II
causó errores en su funcionamiento allá por el 1947.

LA EXPLOSIÓN DEL ARIANE 5. MIL MILLONES DE DOLARES PERDIDOS

Este error causo un retraso en muchas de las investigaciones que debían llevarse a cabo en el
cohete. ¿Cuál fue el problema?, en gran parte, la reutilización del código. Técnicamente hablando el
causante del error fue que en una parte del código se intentaba copiar una variable de 64 bits en una de
16 con el consiguiente error de overflow. Un error carísimo, la típica excusa “en mi ordenador funciona”.

Estos son algunos otros errores de Desarrollo de Software, exceso de radiación en el therac-25 mató a
cinco pacientes, otro error Mars Climate Orbiter. El error de conversión que dejó sin fotos del marte.
El sistema de control de la nave en la Tierra usaba el sistema métrico anglosajón mientras que el sistema
de navegación de la nave esperaba valores en el sistema métrico decimal.

Estos son algunos errores cometidos por los desarrolladores de Software, pero ¿Por qué es que pasan
estos errores?, ¿Qué es lo que descuidan en su proceso?, ¿Cuáles son las Problemáticas más comunes y
cómo podríamos evítalos?

Uno los primeros conceptos en la Ingeniería de Software es la ecuación básica (Modelos +


Transformaciones = Software) que, obviamente, referencia a la muy conocida ecuación de Niklaus Wirth:
Algoritmos + Estructuras de datos = Programas. (Cabot, 2017)

Pero qué pasa cuando este concepto tan esencial es olvidado por los desarrolladores, pasa que empiezan
a omitir reglas, procesos, palabras, las cuales pueden modificar el sistema o función diferente al objetivo,
no correr la función o generar más conflictos en el ordenador o sistema. Y de qué forma podemos
solucionarlo, por mencionar algunos ejemplos:

Liberando memoria RAM cerrando otros programas abiertos.

Reiniciando el software.

Apague y reinicie la computadora.

Deshacer cualquier cambio reciente de hardware o software.

Desinstalar el software y vuelva a instalarlo.

Crear parches para el software.

Entre otros…

Todo Desarrollador debería conocer los paradigmas de la programación más habituales


(estructurado, orientado a objetos, funcional y sus variantes y combinaciones), los puntos fuertes y
débiles de cada uno, los lenguajes más representativos de cada grupo, qué razones motivaron su creación.
Teniendo en cuenta lo rápido que evoluciona el campo de los lenguajes de programación (con nuevos

3
frameworks y lenguajes naciendo y muriendo casi a diario) si el Desarrollador no tiene un cierto marco
mental que le permita situar todos estos movimientos, irá completamente perdido.

Y aún peor, puede incluso llegar a pensar que lo que aprendió en la carrera ya no sirve para nada por
qué práctico con un lenguaje X y ahora está de moda el lenguaje Y sin llegar a interiorizar que una cosa
son los conceptos de programación fundamentales que aprendió y otra como esos conceptos se plasmas
en una sintaxis determinada para un lenguaje concreto.

Por eso “quién no conoce la historia está condenado a repetirla” y he aquí este trabajo, conocer las
problemáticas de los desarrolladores de Software hasta el 2018, localizando una metodología adecuada
para no caer en ellos.

METODOLOGIA
El tema de investigación es “Problemáticas actuales para el desarrollo de Software” se busca encontrar
si hay forma de realizar un Software sin errores o con los menos errores posibles.

El seguimiento de este trabajo se pudo realizar con una adecuada planeación, por lo que se realizo esta
bitácora.

Primera mente comenzamos una investigación documental sobre problemáticas de Software ya


diseñados, cuales eran las fallas mas comunes y errores frecuentes. La información encontrada en diversas
paginas de internet como; revistas de cibernética, revistas para desarrolladores, trabajos realizados por
especialistas, entre otros (se elaboró un cuadro con la bibliografía que se uso primeramente para la
investigación de este proyecto, la cual se puede observar en el Anexo 1 de este documento).

Se hizo una investigación de campo en un centro comercial, por medio de la observación


buscamos personas que tuvieran problemas con sus teléfonos al igual se hizo un sondeo de personas que
trabajaban en establecimientos de la misma plaza para saber como funcionaban sus aplicaciones de tienda
y que problemas presenta. Ya de tener a nuestras personas de muestra y de haberles hecho una entrevista

4
sobre la función de su aplicación, procedimos a estructurar 10 preguntas de encuesta y así poder recabar
más datos para nuestra investigación. Este procedimiento nos ayudo a recabar datos cuantitativos y
cualitativos que servirán de base fundamental para el trabajo. (se deja en el anexo2 y 3 se muestra la
entrevista y la encuesta que se realizaron).

RESULTADOS
En base a las preguntas hechas en la encuesta, pudimos observar que el mayor porcentaje de las personas
respondieron que han presentado problemas con sus Software y que estos creen que es por falta de
mantenimiento, a la vez no creen que exista un programa o aplicación sin errores. También nos reflejo
los errores mas recurrentes que estos Software han tenido entre ellos; que se cierre la aplicación, trabe
la pantalla o que no cargue completamente la página.

(se deja en el anexo las graficas de las preguntas que se hicieron en la encuesta adjuntadas su resultado
y su interpretación).

RESULTADOS

70%
100%

80%

100%
60%

80% 70%

Dificultades c/ Software Aplicaciones sin errores Falta de mantenimiento


Presenta errores en el uso Errores en redes sociales Buscan funcionalidad
descargan en Play store

En esta grafica se puede apreciar una síntesis de los resultados recabados en la encuesta realizada
en la cuál nos dice que el 100% de las personas buscan funcionalidad en una aplicación y que esta es
descargada en Play store, Google Play Store es la tienda de aplicaciones móviles para dispositivos con
sistema operativo Android. Todo programa que se desarrolle con el fin de ser utilizado en smartphones
o Tablets que cuenten con el S.O. de Google ha de aparecer listado en el catálogo de esta tienda para
garantizar su seguridad y la aprobación por parte de la compañía. (NeoAttak, 2019). El 80% de las
personas han tenido errores en las redes sociales, pero también creen que existen software sin errores,
el 70% tienen dificultades con la mayoría de software que usan y el 60% creen que esos errores son por
falta de mantenimiento de los programas.

Ya se conocen algunas problemáticas sobre el desarrollo de Software, ahora toca estudiar por
las que el propio desarrollador pasa. Se busca conocer por cuantas problemáticas tiene los Ingenieros en

5
Desarrollo de Software, en la creación de un proyecto, así también cuales son las problemáticas externas
que se enfrenta los Ingenieros desarrolladores.

Ya identificamos por parte del usuario de los Software cuales son las problemáticas mas comunes en
el uso de la aplicación o programa.

Uno de los problemas en lo que se enfrenta un desarrollador es en el avance tecnológico, conforme


van creando nuevos dispositivos celulares y máquinas de escritorio, (en este caso la creación de nuevos
microprocesadores, que es una parte importante de una computadora para su función). Esto que quiere
decir, que los softwares están diseñados para que funciones en un sistema operativo en especifico o con
cualidades que en la mayoría de dispositivos puedan tener, al surgir nuevos se tendría que Actualizar
dicho Software para que se pueda acoplar el funcionamiento de dicho dispositivo, si esto no se logra el
Software (aplicación/ programa) va a tener errores.

Otro de nuestros objetivos era analizar el origen de estas problemáticas en los proyectos, tal cual un
origen no lo encontré ya que al desarrollar un software se basa en la percepción de la tecnología que
está en auge o en base a las necesidades del comprador por lo que el error surge en el surgimiento a
estas nuevas tecnologías y el trabajo de un diseñador seria reformular el software para el soporte de
estas tecnologías.

Determinar un plan de acción el cual les pueda hacer frente a dichas problemáticas tal cual no existen,
desarrollar parches o actualizaciones puede calmar el porcentaje de que aparezca un error sin en cambio
lo adecuado seria desarrollar nuevamente el software para estos avances tecnológicos.

La información que se uso en este trabajo fue basado a experiencias de desarrolladores, la


opinión de usuarios, artículos que hablan del tema e incluso de paginas empresariales que se dedican al
desarrollo de software para brindar un servicio a la comunidad.

En mi punto de vista en realizar un software sin errores es Si observamos el proceso de


construcción del software, podemos entender cómo se generan los fallos. Simplificando, podemos
considerar dos fases, la primera de las cuales es la fase de especificación o modelado. En ella se define,
entre otras cosas, qué es lo que ha de hacer un sistema, qué situaciones ha de ser capaz de resolver o
cómo ha de interactuar con su entorno. Si, como a menudo ocurre, no se presta suficiente atención a
esta fase, el software tendrá fallos relacionados con situaciones no previstas o con cálculos mal definidos.
La segunda fase del proceso de construcción del software es la de programación, que es cuando los
programas realmente se crean. En esta fase se cometerá un buen número de errores, típicamente debidos
a una comprensión inadecuada de lo que se quiere implementar. Para detectarlos y corregirlos, es
necesario estudiar el software en detalle. La técnica usada habitualmente en la industria es la prueba
(testing), consistente en la ejecución del programa con diversos juegos de prueba que intentan simular
todas las posibles situaciones por las que ha de pasar ese software. Lamentablemente, como dijo E.W.
Dijkstra (premio Turing en 1972), "la prueba puede demostrar la presencia de errores en un programa,
pero no su ausencia". El problema es que siempre puede haber situaciones no cubiertas por los juegos
de pruebas utilizados. La alternativa es la verificación de programas, es decir la demostración lógica de
que un programa hace lo que dice su especificación. Normalmente, la verificación se realiza utilizando
herramientas software que pueden automatizar buena parte del proceso de demostración. Sin en cambio

6
aun con todo este proceso un software puede quedar obsoleto por las tecnologías que ya no lo puedan
correr. (Turing, 2012)

CONCLUSIONES
En estos momentos, después de toda la investigación realizada, se puede decir que es posible desarrollar
software tan fiable como cualquier otro producto de ingeniería.

La mayoría de las tecnologías de desarrollo de software están lo suficientemente desarrolladas para tener
un conjunto de buenas prácticas probadas en proyectos. Muchas tecnologías aparecen y desaparecen en
pocos años por lo que en contraposición a otros procesos de desarrollo o fabricación del mundo del
software quedan obsoletos, por lo que no existen guías de buenas prácticas ni usos a esas nuevas
tecnologías.

En el desarrollo de software se utilizan muchas tecnologías, normalmente estas cambian en cada


proyecto, y se utilizan varias a la vez, por lo que la complejidad aumenta y los programadores no llegan
a tener nunca una experiencia amplia en un juego de tecnologías concreto. Cómo factor agravante, cada
año aparecen nuevas tecnologías en el mercado que, aunque pueden tener funcionalidades interesantes,
requieren aprendizaje.

Las tecnologías de desarrollo de software se quedan obsoletas en muy poco tiempo, apareciendo
nuevas tecnologías. Esto implica que parte de los conocimientos y la experiencia adquirida con una
tecnología particular pierda valor, y que los desarrolladores estén aprendiendo nuevas tecnologías a la
vez que está desarrollando con ellas.

Por lo que si un desarrollador tarda en desarrollar un proyecto adjuntando las diversas


problemáticas a las que se enfrenta, cuando sea posible usarlo corre el riesgo de que su funcionalidad
sea obsoleta o mermada por el avance tecnológico. Para evitar eso estamos haciendo este estudio y
poder disminuir esa probabilidad.

Las técnicas que garantizan la ausencia de fallos no se utilizan en el software normal, sino sólo en sistemas
de software crítico, de los que puede depender la vida de personas. Los motivos que alegan las empresas
de software son, básicamente, que hacer un software sin fallos es caro.

Referencias
admin. (17 de Marzo de 2019). Diagramas UML. Obtenido de https://diagramasuml.com/5-libros-
esenciales-para-el-desarrollo-de-software/

Cabot, J. (agosto de 2017). Ingenieria de Software. Obtenido de HAY QUE EMPEZAR A ENSEÑAR
HISTORIA DE LA PROGRAMACIÓN: https://ingenieriadesoftware.es/historia-de-la-
programacion/

Cabot, J. (24 de Agosto de 2018). Ingenieria de Software. Obtenido de LOS GRANDES ERRORES DE
LA HISTORIA DEL SOFTWARE INFORMÁTICO – DEL PRIMER BUG A HOY:
https://ingenieriadesoftware.es/grandes-errores-historia-software-informatico/

7
EMPRESAS, D. D. (s.f.). PROBLEMÁTICA DE LOS PROYECTOS SOFTWARE . Obtenido de
http://bibing.us.es/proyectos/abreproy/70193/fichero/5.+PROBLEM%C3%81TICA+DE+LOS+P
ROYECTOS+SOFTWARE.pdf

Lozada, I. (s.f.). SG #54. Obtenido de Tips para Enfrentar la Problemática Actual en el Desarrollo de
Software: https://sg.com.mx/revista/54/tips-para-enfrentar-la-problem-tica-actual-el-desarrollo-
software

NeoAttak. (28 de 05 de 2019). NeoAttak. Obtenido de https://neoattack.com/neowiki/google-play-


store/

NOVOSELTSEVA, E. (07 de 05 de 2019). Apiumhub . Obtenido de ESTUDIO SOBRE LA SITUACIÓN


ACTUAL DEL SOFTWARE: https://apiumhub.com/es/tech-blog-barcelona/situacion-actual-del-
software/

OCCMundial.com. (2019). Occmundial. Obtenido de Estudiar por imternet en facil o dificil.:


https://www.occ.com.mx/blog/financiamiento-educativo-conviene-o-no/

Román., I. J. (s.f.). Fábrica de Software USMP. Obtenido de FIADATA . Universidad de San Martín de
Porres, Lima-Perú:
http://www.usmp.edu.pe/publicaciones/boletin/fia/info86/articulos/problemasDesarrolloSoftwar
e.html

Softgrade. (s.f.). Softgrade. Obtenido de 5 Causas que Afectan la Calidad de Software:


https://softgrade.mx/5-causas-afectan-la-calidad-software/

Turing, A. (26 de julio de 2012). El pais. Obtenido de https://blogs.elpais.com/turing/2012/07/es-posible-


construir-software-que-no-falle.html

8
ANEXOS
Anexo 1, cuadro de bibliografía.

Anexo 2, entrevista
Buenas tardes
Me permites hacerte una entrevista. R= si
¿Me das permiso de grabarte en un archivo de audio? R= si
¿Ha que te dedicas?
Estudiante, Producción musical.
¿Qué tipos de dispositivos electrónicos has usado?
Tablets, teléfono, computadora, controladores midi, Smart TV, consola de videojuegos XBOX One.
¿Qué tipo de aplicaciones y/o programas usas?
After effecs, FL estudio, programas de computadoras básicos y aplicaciones en redes sociales.
¿has tenido problemas con esas aplicaciones y/o programas?
Si.
¿Me puedes mencionar alguno?
Se congela la pantalla, se pasma el programa, se reinicia el equipo, los drivers de mi equipo no son
compatibles, entre otros.
¿alguna te ha funcionado sin tener errores?
No, todos tienen error cuando los uso.
¿Te cuesta trabajo encontrar alguna aplicación y/o programa que cumpla con tus necesidades para tu
trabajo o escuela?
Si.
¿Qué mejorarías en los programas que has manejado?
La optimización de la plataforma y que no tengan tantos errores. ¡Eso mejoraría!

9
Se deja el link del audio de la entrevista.
https://www.youtube.com/watch?v=nyYEgk6Rtzk&list=UUbfJ6t4nFl4hFtVXoieJwJQ&index=2

Anexo 3, Encuesta.

10
11
Gracias por su atención.

12

Potrebbero piacerti anche