AdSense_BarHorizontal

jueves, 19 de mayo de 2016

10 Preguntas Claves que debe saber un ingeniero de software

Para esta publicación dare por sentado que conoces algo de programación por ende quiero iniciar esta entrada trayendo como recuerdo el día en el que por primera vez observaste el  algoritmo para mostrar "HOLA MUNDO", quiero mencionar que a nivel personal visualice un mundo de posibilidades y me motive aun mas para conocer el mundo de la ingeniería de software.

Son muchas las habilidades que debe tener un Ingeniero de software, un pequeño listado de estas habilidades es el sgte
– Dirige y coordina proyectos de desarrollo y mantenimiento de software.
– Supervisa las etapas de la vida de un proyecto de desarrollo de software.
– Dirige equipos de trabajo compuestos por analistas, diseñadores y programadores.
– Analiza y selecciona nuevas técnicas y herramientas existentes en el mercado tecnológico y del software.
– Analiza y diseña aplicaciones de software.
– Realiza pruebas de verificación, integración y rendimiento de las aplicaciones de software.
– Integra sistemas existentes susceptibles de interrelacionarse.
– Brinda asesoría a usuarios en la resolución de problemas relacionados con los sistemas de software.
– Realiza consultoría individual o en colaboración con otros profesionistas.
– Administra sistemas de bases de datos.
– Participa en formular políticas de seguridad y técnicas criptográficas en empresas e instituciones donde se desempeñe.
– Verifica que el software desarrollado cumpla con la legislación en vigor.

y ni que decir de su campo laboral, sin embargo

Ahora bien a continuación les comparto 10 preguntas claves que todo ingeniero de software
debe saber responder.

¿Qué es software? 

Programas de cómputo y documentación asociada.
Los productos de software se desarrollan para un cliente en particular o para un mercado en general.

¿Cuáles son los atributos del buen software? 

El buen software debe entregar al usuario la funcionalidad y el desempeño requeridos, y debe ser sustentable, confiable y utilizable.

¿Qué es ingeniería de software? 

La ingeniería de software es una disciplina de la ingeniería que se interesa por todos los aspectos de la producción de software.

¿Cuáles son las actividades fundamentales de la ingeniería de software?

Especificación, desarrollo, validación y evolución del software.

¿Cuál es la diferencia entre ingeniería de software y ciencias de la computación?

Las ciencias de la computación se enfocan en teoría y fundamentos; mientras la ingeniería de software se enfoca en el sentido práctico del desarrollo y en la distribución de software.

¿Cuál es la diferencia entre ingeniería de software e ingeniería de sistemas?

La ingeniería de sistemas se interesa por todos los aspectos del desarrollo de sistemas basados en computadoras, incluidos hardware, software e ingeniería de procesos. La ingeniería de software es parte de este proceso más general.

¿Cuáles son los principales retos que enfrenta la ingeniería de software?

Se enfrentan con una diversidad creciente, demandas por tiempos de distribución limitados y desarrollo de software confiable.


¿Cuáles son los costos de la ingeniería de software?

Aproximadamente 60% de los costos del software son de desarrollo, y 40% de prueba. Para el software elaborado específicamente, los costos de evolución superan con frecuencia los costos de desarrollo.

¿Cuáles son los mejores métodos y técnicas de la ingeniería de software?

Aun cuando todos los proyectos de software deben gestionarse y desarrollarse de manera profesional, existen diferentes técnicas que son adecuadas para distintos tipos de sistema. Por ejemplo, los juegos siempre deben diseñarse usando una serie de prototipos, mientras que los sistemas críticos de control de seguridad requieren de una especificación completa y analizable para su desarrollo. Por lo tanto, no puede decirse que un método sea mejor que otro.

¿Qué diferencias ha marcado la Web a la ingeniería de software?

La Web ha llevado a la disponibilidad de servicios de software y a la posibilidad de desarrollar sistemas basados en servicios distribuidos ampliamente. El desarrollo de sistemas basados en Web ha conducido a importantes avances en lenguajes de programación y reutilización de software.





Bibliografia:
Ingenieria de software, 9na edicion - Ian Sommerville.