Ingeniería de Software

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

Ingeniería de Software

Si llegaste hasta aquí es porque necesitas entender por qué merece la


pena aplicar la ingeniería de software para construir un producto
de software . En los siguientes párrafos te voy a explicar las ideas
principales que surgen de la ingeniería de software y seguro te
convenceré de que no hay otra manera de
construir software profesional sin que este adopte las metodologías y
herramientas que ofrece ingeniería de software.

El software ha cobrado un papel fundamental para el desarrollo de


nuestra vida diaria. Es imposible operar el mundo moderno sin
software. Las infraestructuras nacionales así como los entes públicos
se controlan mediante sistemas basados en computadoras. Nuestros
productos eléctricos así como la fabricación de los mismos necesitan
software. La forma en que nos entretenemos así como la industria de
la música, juegos, cine, televisión y la lista es prácticamente infinita.

Si bien es verdad que el Software puede ser desarrollado por un


aficionado es probable qu e el producto final sería mucho menos
eficiente y mucho menos seguro que un software desarrollado con
procedimientos adecuados y muy estudiados. Es aquí dónde
la ingeniería de software viene a dar apoyo para que se
desarrollen productos de software de calidad .

Definición de ingeniería de software


La ingeniería de software es una disciplina de la ingeniería formada
por un conjunto de métodos, herramientas y técnicas que se utilizan en
el desarrollo de los programas informáticos (Software). Se interesa
por todos los aspectos de la producción de software , desde las
primeras etapas de la especificación del sistema hasta el
mantenimiento del sistema después de que se pone en operación. Es
además un conjunto de métodos, la aplicación de un enfoque
sistemático, disciplinado y cuantificable al desarrollo, además
ofrece herramientas y técnicas que trascienden más allá de sólo la
codificación del software y que es sumamente importante para
construir o mantener un software de calidad .

Desmenucemos un poco la de finición...

 Disciplina de ingeniería. La ingeniería como tal es el arte y


técnica de aplicar los conocimientos científicos a la invención,
diseño, perfeccionamiento y manejo de nuevos procedimientos
en la industria y otros campos de aplicación científicos.
 Todos los aspectos de la producción del software . La
ingeniería de software no sólo se interesa por los procesos
técnicos del desarrollo de software, sino también incluye
actividades como la administración del proyecto de software y el
desarrollo de herramientas, así como métodos y teorías para
apoyar la producción de software.
 Enfoque sistemático. Me refiero a una secuencia de actividades
cuidadosamente estudiadas y validadas por la ciencia que
conducen a la elaboración de un producto de software. Estas
actividades están presentes en todas las etapas del proceso ,
comunmente se le suele llamar ciclo de vida del software . El
ciclo de vida del software comienz a desde los contactos iniciales
que tiene un cliente con la empresa que va a desarrollar hasta la
la etapa de mantenibilidad del software ( luego de que esté ya
está en producción ).

Actividades fundamentales de la ingeniería de software


Existen cuatro grupos de actividades fundamentales que son
comunes a todos los procesos de software , y éstas son:

 especificación del software , donde clientes e ingenieros


definen el software que se producirá y las restricciones en su
operación.
 Desarrollo del software, donde se diseña y programa el
software.
 Validación del software,donde se verifica el software para
asegurar que sea lo que el cliente requiere.
 Evolución del software,donde se modifica el software para
reflejar los requerimientos cambiantes del cliente y del mercado.

¿Existen métodos y técnicas universales de


ingeniería de software?
No existen métodos y técnicas universales de ingeniería de
software que sean adecuados para todos los sistemas y las
compañías. Lo más probable sea que el factor más significativo en la
determinación de qué métodos y técnicas de la ingeniería de software
son más importantes, es el tipo de aplicación que está siendo
desarrollada.

Ejemplo de algunos tipos de Software

 Página web de comercio electrónico


 Aplicaciones independientes : se trata de sistemas de
aplicación que corren en una computadora local, como una PC, e
incluye toda la funcionalidad necesaria (Photoshop - AutoCad -
Corel son algunos ejemplos)
 Sistemas de control embebido: se trata de sistemas de control de
software que regulan y gestionan dispositivos de hardware.
Numéricamente, quizás existen más sistemas embebidos que
cualquier otro tipo de sistema. Algunos ejemplos de sistemas
embebidos incluyen el software en un teléfono móvil (celular), el
software que controla los frenos antibloqueo de un automóvil y el
software en un horno de microondas para controlar el proceso de
cocinado.
 Sistemas de entretenimiento: son sistemas para uso sobre todo
personal, que tienen la intención de entretener al usuario. La
mayoría de estos sistemas son juegos de uno u otro tipo. La
calidad de interacción ofrecida al usuario es la característica
más importante de los sistemas de entretenimiento.

Para cada tipo de sistema se usan distintas técnicas de


ingeniería de software, porque el softwa re tiene características
muy diferentes.

Fundamentos de la ingeniería de software


No obstante, existen fundamentos de ingeniería de software que
se aplican a todos los tipos de sistema de software:

o Deben llevarse a cabo usando un proceso de desarrollo


administrado y comprendido.La organización que diseña el
software necesita planear el proceso de desarrollo, así
como tener ideas claras acerca de lo que producirá y el
tiempo en que estará completado. Desde luego, se usan
diferentes procesos para distintos ti pos de software.
o La confiabilidad y el desempeño son importantes para
todos los tipos de sistemas. El software tiene que
comportarse como se espera, sin fallas, y cuando se
requiera estar disponible. Debe ser seguro en su operación
y, tanto como sea posible, también contra ataques
externos. El sistema tiene que desempeñarse de manera
eficiente y no desperdiciar recursos.
o Es importante comprender y gestionar la especificación y
los requerimientos del software (lo que el software debe
hacer). Debe conocerse qué esperan de él los diferentes
clientes y usuarios del sistema, y gestionar sus
expectativas, para entregar un sistema útil dentro de la
fecha y presupuesto.
o Tiene que usar de manera tan efectiva como sea posible
los recursos existentes. Esto significa qu e, donde sea
adecuado, hay que reutilizar el software que se haya
desarrollado, en vez de diseñar uno nuevo.

Ciencia en Computación, Ingeniería en


Sistemas e Ingeniería de Software ¿Son lo
mismo?
La ingeniería de software se relaciona con las ciencias de l a
computación y la ingeniería de sistemas, pero no son lo mismo.

o Las ciencias de la computación se interesan por las teorías


y los métodos que subyacen en las computadoras y los
sistemas de software, en tanto que la ingeniería de
software se preocupa por l os asuntos prácticos de la
producción del software .
o La ingeniería de sistemas se interesa por todos los
aspectos del desarrollo y la evolución de complejos
sistemas, donde el software tiene un papel principal. Por
lo tanto, la ingeniería de sistemas se pre ocupa por el
desarrollo de hardware.

También podría gustarte