Sunteți pe pagina 1din 45

Ian Sommerville, SOFTWARE ENGINEERING", 9th Ed., Pearson Addison Wesley Ed.,2010.

Capitulo 1-Introduccin

Lectura 1
Temas desarrollados

Desarrollo de software profesional


Qu es lo que se entiende por ingeniera de software.?

tica en la ingeniera de software


Una breve introduccin sobre los conflictos ticos que afectan a la
ingeniera de software.

Estudios de casos.

Capitulo 1 Introduccion 2
Ingenieria de software

La economa de todos los paises desarrollados


dependen del software.
Cada vez mas sistemas son controlados por software.
La ingeniera de software aplica teoras, mtodos y
herramientas para el desarrollo de software profesional.
El gasto en software representa una fraccin significativa
del PIB en todos los pases desarrollados.

Capitulo 1 Introduccion 3
Costos del software

Costos de software a menudo dominan los costes del


sistema informtico. El costo del software en una PC suele
ser mayores que el costo del hardware.
El mantenimiento del software cuesta mas que el costo
del desarrollo del mismo. Para sistemas que tienen una
larga vida, los costos de mantenimiento superan
ampliamente los costos de desarrollo.
La ingeniera de software tiene que ver con el desarrollo
de software rentable.

Capitulo 1 Introduccion 4
Productos de software

Productos genricos
Sistemas independientes que se comercializan y venden a
cualquier cliente que desee comprar.
Ejemplos - Software para PC tales como programas de grficos,
herramientas de gestin de proyectos; Software CAD; software
para mercados especficos, tales como los sistemas de citas para
los dentistas.
Productos personalizados
Software que est encargado por un cliente especfico para
satisfacer sus propias necesidades.
Ejemplos - incorporado sistemas de control, software de control
del trfico areo, sistemas de monitorizacin de trfico.

Capitulo 1 Introduccion 5
Especificaciones del producto

Productos Genricos
La especificacin de lo que el software debe hacer es propiedad
del desarrollador del software y las decisiones sobre los cambios
en el software son hechas por el desarrollador.
Productos personalizados
La especificacin de lo que el software debe hacer es propiedad
del cliente del software y el es el que toma decisiones sobre los
cambios de software necesarios.

Capitulo 1 Introduccion 6
Preguntas planteadas con frecuencia sobre
la ingeniera de software
Pregunta Respuesta
Que es software? Programas de cmputo y documentacin asociada.
Los productos de software se desarrollan para un cliente
en particular o para un mercado en general.

Cules son los atributos del buen El buen software debe entregar al usuario la funcionalidad y
software? el desempeo requeridos, y debe ser sustentable, confiable
y utilizable.
Qu es ingeniera de software? La ingeniera de software es una disciplina de la ingeniera
que se interesa por todos los aspectos de la produccin de
software.
Cules son las actividades fundamentales Especificacin, desarrollo, validacin y evolucin del
de la ingeniera de software? software.

Cul es la diferencia entre ingeniera de Las ciencias de la computacin se enfocan en teora y


software y ciencias de la computacin? fundamentos; mientras la ingeniera de software se enfoca
en el sentido prctico del desarrollo y en la distribucin de
software.
Cul es la diferencia entre ingeniera de La ingeniera de sistemas se interesa por todos los aspectos
software e ingeniera de sistemas? del desarrollo de sistemas basados en computadoras,
incluidos hardware, software e ingeniera de procesos. La
ingeniera de software es parte de este proceso ms
general.
Capitulo 1 Introduccion 7
Preguntas planteadas con frecuencia sobre
la ingeniera de software
Pregunta Respuesta
Cules son los principales retos que Se enfrentan con una diversidad creciente, demandas por
enfrenta la ingeniera de software? tiempos de distribucin limitados y desarrollo de software
confiable.

Cules son los costos de la ingeniera Aproximadamente 60% de los costos del software son de
de desarrollo, y 40% de prueba. Para el software elaborado
software? especficamente, los costos de evolucin superan con
frecuencia los costos de desarrollo.
Cules son los mejores mtodos y Aun cuando todos los proyectos de software deben
tcnicas gestionarse y desarrollarse de manera profesional,
de la ingeniera de software? existen diferentes tcnicas que son adecuadas para
distintos tipos de sistema. Por ejemplo, los juegos
siempre deben disearse usando una serie de prototipos,
mientras que los sistemas crticos de control de
seguridad requieren de una especificacin completa y
analizable para su desarrollo. Por lo tanto, no puede
decirse que un mtodo sea mejor que otro.
Qu diferencias ha marcado la Web a la La Web ha llevado a la disponibilidad de servicios de
ingeniera de software? 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 programacin y
Capitulo 1 Introduccion
reutilizacin de software. 8
Atributos esenciales de un buen software

Caracteristicas del Descripcion


producto

Mantenimiento El software debe escribirse de tal forma que pueda evolucionar


para satisfacer las necesidades cambiantes de los clientes. ste
es un atributo crtico porque el cambio del software es un
requerimiento inevitable de un entorno empresarial variable.
Confiabilidad y Software dependability includes a range of characteristics
seguridad including reliability, security and safety. Dependable software
should not cause physical or economic damage in the event of
system failure. Malicious users should not be able to access or
damage the system.
Eficiencia Software should not make wasteful use of system resources such
as memory and processor cycles. Efficiency therefore includes
responsiveness, processing time, memory utilisation, etc.
Aceptabilidad Software must be acceptable to the type of users for which it is
designed. This means that it must be understandable, usable and
compatible with other systems that they use.

Capitulo 1 Introduccion 9
Ingeniera de software

La ingeniera de software es una disciplina de la


ingeniera que se ocupa de todos los aspectos de la
produccin de software desde las etapas iniciales de la
especificacin del sistema a travs de mantener el sistema
despus de que haya entrado en uso.
Disciplina de Ingeniera
El uso de las teoras y los mtodos adecuados para resolver los
problemas teniendo en cuenta las limitaciones financieras y de
organizacin.
Todos los aspectos de la produccin de software
No slo el proceso tcnico de desarrollo. Tambin la gestin de
proyectos y el desarrollo de herramientas, mtodos, etc., para
apoyar la produccin de software.

Capitulo 1 Introduccion 10
Importancia de la ingeniera de software

Cada vez ms personas y la sociedad en general


dependen de sistemas de software avanzados. Tenemos
que ser capaces de producir sistemas fiables y de
confianza econmica y rpida.
Por lo general es ms barato, en el largo plazo, el uso de
mtodos de ingeniera de software y tcnicas para los
sistemas de software en lugar de escribir los programas
como si fuera un proyecto de programacin personal. Para
la mayora de tipos de sistema, la mayora de los costos
son los costos de cambiar el software despus de que ha
entrado en uso.

Capitulo 1 Introduccion 11
Actividades del proceso de software

Especificacin del software, donde clientes e ingenieros


definen el software que se producir y las restricciones en
su operacin.
Desarrollo del software, donde se disea y programa el
software.
Validacin del software, donde se verifica el software
para asegurar que sea lo que el cliente requiere.
Evolucin del software, donde se modifica el software
para reflejar los requerimientos cambiantes del cliente y del
mercado.

Capitulo 1 Introduccion 12
Detalles generales que afectan la mayoria del
software

Heterogeneidad
Cada vez con mayor frecuencia se requieren sistemas que operen
como sistemas distribuidos a travs de redes que incluyan
diferentes tipos de computadoras y dispositivos mviles.
Cambio empresarial y social
Los negocios y la sociedad cambian de manera rpida, conforme
se desarrollan las economas emergentes y nuevas tecnologas
estn a la disposicin. Ambos necesitan tener la posibilidad de
cambiar su software existente y desarrollar rpidamente uno
nuevo.
Seguridad y confianza
Dado que el software est vinculado con todos los aspectos de la
vida, es esencial confiar en dicho software

Capitulo 1 Introduccion 13
Diversidad de ingeniera de software

Hay muchos tipos diferentes de sistemas de software y


no existe un conjunto universal de las tcnicas de software
que es aplicable a todas ellas.
Los mtodos de ingeniera de software y las
herramientas que se utilizan dependen del tipo de
aplicacin que se est desarrollando, los requisitos del
cliente y los antecedentes del equipo de desarrollo.

Capitulo 1 Introduccion 14
Tipos de aplicaciones

Aplicaciones autnomas
Estos son los sistemas de aplicacin que se ejecutan en un
equipo local, como un PC. Incluyen toda la funcionalidad necesaria
y no es necesario estar conectado a una red.
Aplicaciones basadas en transacciones interactivas
Las aplicaciones que se ejecutan en un equipo remoto y se puede
acceder por los usuarios desde sus propios ordenadores o
terminales. Esto incluye aplicaciones web como aplicaciones de
comercio electrnico.
Sistemas de control incrustados
Se trata de sistemas de control de software que controlan y
gestionan los dispositivos de hardware. Numricamente, hay
probablemente ms sistemas integrados que cualquier otro tipo de
sistema.

Capitulo 1 Introduccion 15
Tipos de aplicaciones

Sistemas de procesamiento por lotes


Estos son sistemas de negocios que estn diseados para
procesar los datos en grandes lotes. Procesan un gran nmero de
entradas individuales para crear salidas correspondientes.
Sistemas de entretenimiento
Se trata de sistemas que son principalmente para su uso personal
y que estn destinados a entretener al usuario.
Sistemas para el modelado y simulacin
Se trata de sistemas que son desarrollados por los cientficos y
los ingenieros modelar procesos fsicos o situaciones, que incluyen
muchas, objetos que interactan distintas.

Capitulo 1 Introduccion 16
Tipos de aplicaciones

Sistemas de recopilacin de datos


Se trata de sistemas que recopilan datos de su entorno utilizando
un conjunto de sensores y envan los datos a otros sistemas para
el procesamiento.
Sistemas de sistemas
Estos son sistemas que estn compuestos de un nmero de otros
sistemas de software.

Capitulo 1 Introduccion 17
Fundamentos de la ingenieria de software

Algunos principios fundamentales se aplican a todos los


tipos de sistema de software, con independencia de las
tcnicas de desarrollo utilizados:
Los sistemas deben ser desarrollados mediante un proceso de
desarrollo dirigido y entendido. Por supuesto, diferentes procesos
se utilizan para diferentes tipos de software.
La fiabilidad y el rendimiento son importantes para todos los tipos
de sistema.
La comprensin y la gestin de la especificacin de requisitos de
software y (lo que el software debe hacer) son importantes.
En su caso, debe volver a utilizar el software que ya ha sido
desarrollado en lugar de escribir un nuevo software.

Capitulo 1 Introduccion 18
La ingeniera de software y la web

La Web es ahora una plataforma para ejecutar


aplicaciones y las organizaciones estn desarrollando cada
vez ms los sistemas basados en la web en lugar de los
sistemas locales.
Los servicios Web (que se examinan en el captulo 19)
permiten la funcionalidad de la aplicacin para acceder a
travs de Internet.
La computacin en nube es un enfoque para la
prestacin de servicios de informtica donde las
aplicaciones se ejecutan de forma remota en la "nube".
Los usuarios no compran software de pago de compra en
funcin del uso.

Capitulo 1 Introduccion 19
Ingenieria software web

Reutilizacin de software es el enfoque dominante para la construccin de


sistemas basados en la web.
Durante la construccin de estos sistemas, se piensa en como puede ser
construido a partir de componentes y sistemas de software pre-existentes.
Los sistemas basados en la Web deben ser desarrollados y entregados de forma
incremental.
En la actualidad se reconoce en general que no es prctico para especificar
todos los requisitos para este tipo de sistemas de anticipacin..
Las interfaces de usuario estn limitadas por las capacidades de los
navegadores web.
Las tecnologas como AJAX permiten interfaces enriquecidas que se crean
dentro de un navegador web, pero siguen siendo difciles de usar. Formularios
Web con scripts locales son ms comnmente utilizados.

Capitulo 1 Introduccion 20
Ingeniera de software basada en la Web

Los sistemas basados en la Web son sistemas


distribuidos complejos, pero los principios fundamentales
de la ingeniera de software previamente discutidos son tan
aplicables a ellos como lo son para cualquier otro tipo de
sistema.
Las ideas fundamentales de la ingeniera de software,
que se analizan en la seccin anterior, se aplican al
software basado en la web de la misma manera que se
aplican a otros tipos de sistemas de software.

Capitulo 1 Introduccion 21
Puntos clave

La ingeniera de software es una disciplina de ingeniera


que se interesa por todos los aspectos de la produccin de
software.
Los atributos esenciales de los productos de software
son mantenimiento, confiabilidad, seguridad, eficiencia y
aceptabilidad.
Las actividades de alto nivel de especificacin,
desarrollo, validacin y evolucin son parte de todos los
procesos de software.
Las nociones fundamentales de la ingeniera de software
son universalmente aplicables a todos los tipos de
desarrollo de sistema.

Capitulo 1 Introduccion 22
Puntos clave

Existen muchos tipos diferentes de sistemas y cada uno


requiere para su desarrollo de herramientas y tcnicas
adecuadas de ingeniera de software.
Las ideas fundamentales de la ingeniera de software
son aplicables a todos los tipos de sistemas de software.

Capitulo 1 Introduccion 23
Capitulo 1-Introduccion

Lectura 2
tica de la ingeniera del software

La ingeniera de software implica responsabilidades ms


amplias que simplemente la aplicacin de habilidades
tcnicas.
Los ingenieros de software deben comportarse de una
manera honesta y ticamente responsable para que
puedan ser respetados como profesionales.
El comportamiento tico es ms que simplemente
cumplir la ley, sino que implica seguir una serie de
principios que son moralmente correctas.

Capitulo 1 Introduccion 25
Los estandares de responsabilidad profesional

Confidencialidad
Por lo general los ingenieros, deben respetar la confidencialidad
de sus empleadores o clientes sin importar si se firm o no un
acuerdo formal sobre la misma.
Competencia
No debe desvirtuar su nivel de competencia. Es decir, no hay que
aceptar de manera intencional trabajo que est fuera de su
competencia

Capitulo 1 Introduccion 26
Los estandares de responsabilidad profesional

Derechos de propiedad intelectual


El ingeniero tiene que conocer las leyes locales que rigen el uso
de la propiedad intelectual, como las patentes y el copyright. Debe
ser cuidadoso para garantizar que se protege la propiedad
intelectual de empleadores y clientes.
Mal uso de computadoras
Los ingenieros de software no deberan usar sus habilidades
tcnicas a emplear mal los ordenadores de otras personas. El mal
uso del ordenador vara desde relativamente trivial (juego de juego
en la mquina de un empleador, por ejemplo) a extremadamente
grave (difusin de virus).

Capitulo 1 Introduccion 27
Codigo de etica ACM/IEEE

Las sociedades profesionales en los EE.UU. han


colaborado para producir un cdigo de prctica tica.
Los miembros de estas organizaciones se inscriben para
el cdigo de prcticas cuando se unen.
El Cdigo contiene ocho Principios relacionados con el
comportamiento de los y las decisiones tomadas por los
ingenieros de software profesionales, incluyendo mdicos,
educadores, administradores, supervisores y responsables
polticos, as como a los alumnos y estudiantes de la
profesin.

Capitulo 1 Introduccion 28
Justificacin del cdigo de tica

Las computadoras tienen una funcin central y creciente en el


comercio, la industria, el gobierno, la medicina, la educacin, el
entretenimiento y la sociedad en general. Los ingenieros de
software son quienes contribuyen, mediante la participacin directa
o con la enseanza, al anlisis, la especificacin, el diseo, el
desarrollo, la certificacin, el mantenimiento y la prueba de los
sistemas de software.
Debido a su funcin en el desarrollo de los sistemas de software,
los ingenieros de software tienen oportunidades significativas para
hacer lo correcto o causar dao, para permitir que otros hagan lo
correcto o causen dao, o para influir en otros para hacer lo
correcto o causar dao. Para garantizar, tanto como sea posible,
que sus esfuerzos sern usados correctamente, los ingenieros de
software deben comprometerse a hacer de la ingeniera de
software una profesin benfica y respetada..
Capitulo 1 Introduccion 29
El codigo de etica ACM/IEEE

Cdigo de tica y prctica profesional de la ingeniera de software


ACM/IEEE-CS Fuerza de trabajo conjunta acerca de tica y prcticas profesionales de la
ingeniera de software
PREMBULO
La versin corta del cdigo resume las aspiraciones a un alto nivel de abstraccin; las
clusulas que se incluyen en la versin completa dan ejemplos y detalles de cmo dichas
aspiraciones cambian la forma en que actuamos como profesionales de la ingeniera de
software. Sin las aspiraciones, los detalles pueden volverse legalistas y tediosos; mientras
que sin los detalles, las aspiraciones suelen volverse muy resonantes pero vacas; en
conjunto, aspiraciones y detalles forman un cdigo cohesivo.
Los ingenieros de software deben comprometerse a hacer del anlisis, la especificacin, el
diseo, el desarrollo, la prueba y el mantenimiento del software, una profesin benfica y
respetada. De acuerdo con su compromiso con la salud, la seguridad y el bienestar del
pblico, los ingenieros de software tienen que adherirse a los ocho principios siguientes:

Capitulo 1 Introduccion 30
Principios eticos

1. PBLICO: Los ingenieros de software deben actuar consecuentemente con el inters


del pblico.
2. CLIENTE Y EMPLEADOR: Los ingenieros de software tienen que comportarse de tal
forma que fomente el mejor inters para su cliente y empleador, en coherencia
con el inters pblico.
3. PRODUCTO: Los ingenieros de software deben garantizar que sus productos y
modificaciones relacionadas satisfagan los estndares profesionales ms altos
posibles.
4. JUICIO: Los ingenieros de software tienen que mantener integridad e
independencia en su juicio profesional.
5. GESTIN: Los administradores y lderes en la ingeniera de software deben
suscribir y promover un enfoque tico a la gestin del desarrollo y el
mantenimiento del software.
6. PROFESIN: Los ingenieros de software tienen que fomentar la integridad y la
reputacin de la profesin consecuente con el inters pblico.
7. COLEGAS: Los ingenieros de software deben ser justos con sus colegas y apoyarlos.
8. UNO MISMO: Los ingenieros de software tienen que intervenir en el aprendizaje para
toda la vida, en cuanto a la prctica de su profesin, y promover un enfoque tico.

Capitulo 1 Introduccion 31
Dilemas ticos

El desacuerdo, en principio, con las polticas de la alta


direccin.
Su empleador acta de una manera poco tica y lanza
un sistema de seguridad crtico sin terminar la prueba del
sistema.
Participacin en el desarrollo de sistemas de armas
militares o sistemas nucleares.

Capitulo 1 Introduccion 32
Estudios de caso
Estudios de caso

Una bomba de insulina personal


Un sistema embebido en una bomba de insulina que usan los
diabticos para mantener el control de la glucosa en sangre
Un sistema de gestin de casos de salud mental del
paciente
Un sistema utilizado para mantener un registro de las personas
que reciben la atencin de problemas de salud mental.
Una estacin meteorolgica en el desierto
Un sistema de recoleccin de datos que recoge informacin sobre
las condiciones climticas en las zonas remotas.

Capitulo 1 Introduccion 34
Sistema de control para una bomba de insulina

Recoge los datos de un sensor de azcar en la sangre y


calcula la cantidad de insulina requerida para ser
inyectado.
Clculo basado en la tasa de variacin de los niveles de
azcar en la sangre.
Envia seales a la micro-bomba para enviar la dsis
adecuada de insulina.
Sistema de seguridad crtico azcar en la sangre tan
bajos pueden provocar el mal funcionamiento cerebral,
coma y la muerte; los niveles de azcar alta en la sangre
tienen consecuencias a largo plazo, como lesiones
oculares y renales.

Capitulo 1 Introduccion 35
Requerimientos esenciales de alto nivel

El sistema tiene que estar disponible para entregar


insulina cuando se requiera.
El sistema requiere funcionar de manera confiable y
entregar la cantidad correcta de insulina, para contrarrestar
el nivel actual de azcar en la sangre.
Por consiguiente, el sistema debe disearse e
implementarse para garantizar que siempre satisfaga
dichos requerimientos.

Capitulo 1 Introduccion 36
Un sistema de informacin de pacientes para
apoyar la atencin a la salud mental

Un sistema de informacin de pacientes para apoyar la


atencin a la salud mental es un sistema de informacin
mdica, que administra la informacin de pacientes que
sufren problemas de salud mental y los tratamientos que
reciben.
La mayora de los pacientes con problemas de salud
mental no requieren tratamiento hospitalario dedicado,
pero s asistir regularmente a clnicas especializadas
donde se renen con un mdico que tiene conocimiento
detallado de sus problemas.
Para facilitar la asistencia de los pacientes,dichas
clnicas no slo funcionan en los hospitales sino tambin
en consultorios mdicos locales o centros comunitarios.
Capitulo 1 Introduccion 37
MHC-PMS

El MHC-PMS (sistema de administracin de pacientes-


atencin a la salud mental) es un sistema de informacin
destinado para usarse en clnicas.
Utiliza una base de datos centralizada con informacin
de los pacientes, aunque tambin se dise para operarse
desde una PC, de modo que se puede acceder a ella y
usarse desde sitios sin conectividad de red segura.
Cuando los sistemas locales tienen acceso seguro a red,
emplean la informacin de los pacientes en la base de
datos, pero adems son capaces de descargar y usar
copias locales de registros de pacientes cuando los
sistemas estn desconectados.

Capitulo 1 Introduccion 38
Las metas de MHC-PMS

Generar informacin de gestin que permita a los


administradores de servicios de salud valorar el
desempeo contra objetivos locales y de gobierno.
Proporcionar al personal mdico informacin oportuna
para apoyar el tratamiento de los pacientes.

Capitulo 1 Introduccion 39
Caractersticas clave MHC-PMS

Administracion de atencin individual


Los mdicos de atencin primaria crean registros para pacientes, editan la
informacin en el sistema, ven el historial del paciente, etc. El sistema
soporta resmenes de datos para que los mdicos se enteren rpidamente
de los problemas y tratamientos clave que se prescribieron.
Monitorizacin del paciente
El sistema monitoriza regularmente los registros de los pacientes que estn
involucrados en tratamiento y emite advertencias cuando se detectan
posibles dificultades.
Informes administrativos
El sistema genera mensualmente informes administrativos que muestran el
nmero de pacientes tratados en cada clnica, la cantidad de pacientes que
ingresaron y salieron del sistema de salud, el total de pacientes internados,
los medicamentos prescritos y sus costos, etctera.

Capitulo 1 Introduccion 40
Preocupaciones MHC-PMS

Privacidad
Es esencial que la informacin de los pacientes sea confidencial y
nunca se revele a nadie ms, aparte del personal mdico
autorizado y los mismos pacientes.
Seguridad
Algunas patologas mentales hacen que los pacientes se vuelvan
suicidas o un peligro para otros individuos. Siempre que sea
posible, el sistema debe advertir al personal mdico acerca de
pacientes potencialmente suicidas o peligrosos.
El sistema tiene que estar disponible cuando se necesite, de otro
modo la seguridad estara comprometida y sera imposible
prescribir a los pacientes el medicamento correcto.

Capitulo 1 Introduccion 41
Estacion metereologica en el desierto

El gobierno de un pas con grandes reas de campo


abierto decidi instalar varios cientos de estaciones
meteorolgicas en dichas reas..
Las estaciones meteorolgicas recopilan datos de un
conjunto de instrumentos que miden temperatura y
presin, luz solar, lluvia, y rapidez y direccin del viento.
Cada estacin meteorolgica incluye algunos instrumentos que
miden parmetros climatolgicos como rapidez y direccin del
viento, temperaturas del terreno y aire, presin baromtrica y lluvia
durante un periodo de 24 horas. Cada uno de dichos instrumentos
est controlado por un sistema de software que toma
peridicamente lecturas de parmetros y gestiona los datos
recolectados desde los instrumentos.

Capitulo 1 Introduccion 42
Sistema de informacion meteorologica

El sistema de estacin meteorolgica


Es responsable de recolectar datos meteorolgicos, realizar cierto
procesamiento de datos inicial y transmitirlo al sistema de gestin de
datos.
El sistema de gestin y archivado de datos
Recolecta los datos de todas las estaciones meteorolgicas a campo
abierto, realiza procesamiento y anlisis de datos.
El sistema de mantenimiento de estacin
Se comunica por satlite con todas las estaciones meteorolgicas a
campo abierto, para monitorizar el estado de dichos sistemas y dar
reportes sobre problemas.

Capitulo 1 Introduccion 43
Funcionalidad adicional del software

Monitorizar los instrumentos, la energa y el hardware de


comunicacin, y reportar las fallas al sistema de
administracin.
Administrar la energa del sistema, garantizar que las
bateras estn cargadas siempre que las condiciones
ambientales lo permitan; as como desconectar los
generadores ante condiciones meteorolgicas
potencialmente adversas, como viento fuerte.
Permitir la reconfiguracin dinmica donde partes del
software se sustituyan con nuevas versiones, y los
instrumentos de respaldo se enciendan en el sistema en
caso de falla de ste.

Capitulo 1 Introduccion 44
Puntos clave

Los ingenieros de software tienen responsabilidades con


la profesin de ingeniera y la sociedad. No deben
preocuparse nicamente por temas tcnicos.
Las sociedades profesionales publican cdigos de
conducta que establecen los estndares de
comportamiento esperados de sus miembros
Tres estudios de caso se utilizan en el libro:
Un sistema de control de la bomba de insulina incrustada
Un sistema para la gestin de la atencin de salud mental de los
pacientes
Una estacin meteorolgica en el desierto

Capitulo 1 Introduccion 45