domingo, 5 de septiembre de 2010

Tipos de Software

Hace un año para una materia leí el libro de: Pressman, Roger S. titulado: Ingeniería del software : un enfoque práctico.


Es un libro muy teórico pero sirve mucho en cuanto a la aplicación de términos así como una vista general del ciclo de vida de un proyecto, las entregas que se deben de realizar así como los pasos "a seguir". Y digo a seguir entre "" porque la poca experiencia que he tenido desarrollando software no se apega mucho a dicha teoría.

Si nos definimos como desarrolladores de Software, debemos de tener muy claro los tipos de software que existen. Pressman (2005) los cataloga de la siguiente manera :

1. Software de Sistemas: Colección de programas escritos para servir a otros programas. Algunos programas de sistemas (compiladores, editores y utilerías para la administración de archivos) procesan estructuras de información complejas pero determinadas. Otras (SO, controladores, software de red, procesadores de telecomunicaciones) procesan datos indeterminados.
2. Software de Aplicación: Programas independientes que resuelven una necesidad de negocio específica. Procesan datos empresariales o técnicos de forma que facilitan las operaciones de negocios o la toma de decisiones técnicas o de gestión.
3. Software científico y de ingeniería: Se caracterizaba por algoritmos “devoradores de números”. Sin embargo, las aplicaciones modernas han empezado a tomar características de software en tiempo real e incluso de software de sistemas.
4. Software emportado(mala traducción en el libro debería de ser como incrustado): Reside dentro de la memoria de sólo lectura del sistema y con él se implementan y controlan características y funciones para el usuario final y el sistema mismo. Ejemplo: teclado de un microondas o funciones digitales del carro.
5. Software de línea de productos: Diseñado para proporcionar una capacidad específica y la utilización de muchos clientes diferentes. Se puede enfocar en un nicho de mercado limitado (control de inventarios) o dirigirse hacia los mercados masivos (aplicaciones de hojas de cálculo, de BD)
6. Aplicaciones basadas en Web: Son apenas un poco más que un conjunto de archivos de hipertexto ligados que presenta información mediante texto y algunas gráficas. Sin embargo, las WebApps evolucionan hacia ambientes computacionales sofisticados que integran BD corporativas y aplicaciones de negocio.
7. Software de Inteligencia Artificial: Utiliza algoritmos no numéricos en la resolución de problemas complejos que es imposible abordar por medio de un análisis directo (robótica, SE, reconocimiento de patrones, redes neuronales, comprobación de teoremas y juegos en computadora).

Así es que, ¿qué tipo de software desarrollas?. Todos son con diferentes objetivos, con diferentes tecnologías y diferentes complejidades al momento de programar pero hay que tener claro lo que estamos desarrollando y así saber a dónde queremos ir y que beneficios queremos.

No hay comentarios:

Publicar un comentario