Sei sulla pagina 1di 19

INGENIERIA DEL SOFTWARE

Cap. 1

Visin General
Conceptos generales

Software: Programa para computadora de ndole intangible.


Sistema de Software: Diversidad de programas independientes y
relacionados a la vez para cumplir con un mismo objetivo, configurados para
una normal ejecucin, con una adecuada documentacin y con sitios web para
la descarga de productos recientes.
Productos de software: Programas desarrollados que se vende a los
clientes., ya sea para un cliente en particular o para un mercado en general, es
decir pueden ser productos personalizados, genricos o mixtos.
Ingeniera de Software: Disciplina de ingeniera que comprende todos los
aspectos de la produccin del software. La ciencia de la computacin
comprende la teora y la ingeniera comprende las formas prcticas para
desarrollar y entregar un software til.
Proceso de software: Un conjunto de actividades cuya meta es el desarrollo
o la evolucin del software.
2

Cap. 1

Visin General
EL SOFTWARE

Es intangible, desde el punto de vista de propiedad intelectual es el fruto del


intelecto de una o varias personas.
Caractersticas:
Es inmaterial e invisible.
El software se desarrolla, no se fabrica.
Es integrado, complejo y muy maleable.
Debe ser til y satisfacer las necesidades del comprador.
Visin de Servicio:
Crear un producto para comercializar (genrico)
Servicio personalizado
Servicio personalizado para comercializar (mixto).
Visin interna de una empresa:
Para soportar una necesidad especfica.
Para soportar una necesidad interna y comercializarlo.
3

Cap. 1

Visin General
EL SOFTWARE

Segn la utilizacin:
De gestin.
Produccin y control de procesos.
Robtica.
De Ingeniera y cientfico.
Ofimtico. (Oficinas)
De formacin y divulgacin.
Domtico. (Automatizacin y seguridad de hogares).
Ocio y Juegos
Segn su funcionalidad:
Software de sistemas (empresas y usuario)
Comunicaciones
Empotrado.
4

Cap. 1

Visin General
EL SOFTWARE

El alcance del software debe ser limitado y claro, basado en los


requerimientos y posibilidades de desarrollo.
El alcance del software describe: Funcin, Rendimiento, Restricciones,
Interfaces y Confiabilidad
Visin General:
Estimacin de Recursos:
Personal
Costo US$
Tiempo
Requiere:
Experiencia
Informacin histrica
Medidas cuantitativas de datos cualitativos
5

Cap. 1

Visin General
Conceptos generales

Modelo de Proceso de software: Una representacin simplificada y grfica


del proceso desde una perspectiva especfica (Modelamientos).
Costos de la Ingeniera de Software: El 60% del costo en recursos se va en
la fase de desarrollo. Un software personalizado proyectado a largo plazo (5
aos) y que est en uso, sus costos de evolucin exceden a los de costos de
desarrollo de 3 a 4 veces.
CASE (Computer Aided Software Engineering Ingeniera del Software
asistida por el ordenador): Sistemas de software que intentan proporcionar
ayuda automatizada a las actividades del proceso de software, especialmente
en la fase de diseo.
Atributos de un buen software: El software debe tener la funcionalidad y el
rendimiento requerido por el usuario, adems de ser mantenible, confiable y
fcil de usar.
Retos a enfrentar: Los clientes demandan a los ingenieros de sistemas, 2
retos fundamentales: que cumplan los tiempos de entrega y que el desarrollo
6
del software sea fiable para obtener un producto de calidad.

Cap. 1

Visin General
Conceptos generales

MISION DE LA INGENIERIA DE SOFTWARE:

LIDERAR EL
DESARROLLO DE PROYECTOS DE SOFTWARE CON EL FIN DE OBTENER
UN PRODUCTO DE CALIDAD QUE SATISFAGA LOS PROPOSITOS PARA LOS
CUALES FUE CREADO.
PERSPECTIVAS SOBRE LA CALIDAD

La visin trascendental, segn la cual la calidad es algo que se puede


reconocer pero no se puede definir, abstracto y subjetivo.
La visin del usuario, para la cual la calidad es adecuada a sus propsitos y
necesidades, cumple con los requerimientos planteados por el usuario.
La visin de manufactura, donde la calidad es conforme a las
especificaciones tcnicas de diseo y programacin.
La visin del producto, donde la calidad est vinculada a las caractersticas
funcionales, operativas y de eficiencia, inherentes en el producto.
La visin basada en valor, segn la cual la calidad depende nicamente de
la cantidad de dinero que el usuario est dispuesto a pagar por el producto.7

Cap. 1

Visin General
Atributos de un buen software.

Mantenibilidad: El software debe escribirse para que pueda evolucionar ante


las necesidades de cambio de los clientes. El cambio en un software es una
consecuencia inevitable por el cambio en el entorno del negocio.
Confiabilidad: Contempla las caractersticas de fiabilidad, proteccin y
seguridad. El software confiable no debe causar daos fsicos o econmicos
en el caso de una falla del sistema; los clculos deben estar correctos.
Eficiencia: El Software no debe hacer que se malgasten los recursos del
sistema como la memoria y los ciclos de procesamiento, para obtener as
aplicaciones con un adecuado tiempo de respuesta. Bsicamente la eficiencia
hace referencia en la mejor utilizacin de los recursos, en tanto que la eficacia
hace referencia en la capacidad para alcanzar un objetivo.
Usabilidad: El software debe ser fcil de utilizar, sin esfuerzo adicional, es
decir debe tener una interfaz adecuada y amigable para el usuario y con una
documentacin adecuada.
8

Cap. 1

Visin General
Responsabilidad profesional y tica

Confidencialidad: Se debe respetar la confidencialidad del empleador o del


cliente sobre sus datos, informacin, aplicaciones y negocio en general,
independientemente de que se haya firmado un acuerdo de confidencialidad.
Competencia: No se debe falsificar el nivel de competencia, ni aceptar
conscientemente trabajos que estn fuera de la capacidad tcnica.
Derechos de propiedad intelectual: Se debe estar consciente de las leyes
locales que gobiernan el uso de la propiedad intelectual como las patentes y el
copyright. Debe asegurarse de que la propiedad intelectual est protegida en
los equipos dentro de la empresa y en los clientes.
Uso inapropiado de las computadoras: No se debe emplear las habilidades
tcnicas para utilizar de forma inapropiada las computadoras de otras
personas. Estos usos inapropiados pueden ir desde utilizar juegos en una
computadora hasta la difusin de virus.
9

Cap. 1

Visin General
Principios de Cdigo de tica

Pblico: Los ingenieros de software debern actuar en consonancia con el


inters pblico, crear algo til.
Cliente y empleador: Los ingenieros deben responder al inters del cliente
como empresarios y al inters del empleador como empleados, siempre que
sean consecuentes al inters pblico.
Producto: Asegurar que los productos desarrollados y las modificaciones
asociadas cumplan con los ms altos estndares de calidad profesional.
Juicio: Mantener siempre la integridad e independencia en sus juicios
profesionales y no responder a manipulaciones.
Gestin: Suscribir y promocionar un enfoque tico en la gestin del
desarrollo y mantenimiento del software.
Profesin: Mantener la integridad y reputacin de la profesin.
Colegas: Ser imparciales y apoyar en lo posible a sus colegas.
Personal: Practicar su profesin con un enfoque tico, acompaado siempre
de honradez, sencillez y respeto.
10

Cap. 1

Sistemas Socio-Tcnicos
Conceptos Generales

Sistemas Socio-Tcnicos: Son sistemas que incluyen hardware, software,


polticas y personas (componentes) que se sitan dentro de una organizacin
y estn diseados para ayudar a la organizacin y a cumplir un algn objetivo
amplio a nivel empresarial.
Propiedades emergentes de un sistema: Son caractersticas adicionales de
los sistemas que emergen slo cuando sus componentes bsicos han sido
integrados, stas propiedades son el volumen, el rendimiento, la fiabilidad, la
usabilidad, la reparabilidad, la seguridad y la proteccin. El xito o fracaso
de un sistema depende a menudo de stas propiedades emergentes.
Ingeniera de Sistemas: Es la actividad profesional para especificar, disear,
implementar, validar, utilizar y mantener los sistemas socio-tcnicos.
Ingeniero de Sistemas: Profesional que no slo tratan con el software, sino
tambin con el hardware y las interacciones del sistema con los usuarios, el
negocio y su entorno. Maneja una actividad interdisciplinaria ya que agrupa
personas con diferentes bases de conocimientos.
11

Cap. 1

Sistemas Socio-Tcnicos
La Evolucin y su entorno

Evolucin de Sistemas: Los sistemas evolucionan de acuerdo a las nuevas


perspectivas tcnicas o de modelo de negocio. Por lo general son costosos ya
que son sistema que han permanecido por muchos aos funcionando y a
menudo no registran razones o documentacin del diseo original.
Sistemas Heredados: Son sistemas informticos socio-tcnicos antiguos que
fueron desarrollados en el pasado y que an se mantienen porque
proporcionan servicios esenciales del negocio. Es demasiado arriesgado
reemplazarlos ya que habra un serio riesgo de negocio en el caso que el
sistema de recambio no funcionara adecuadamente. Estos sistemas incluyen
procesos de negocio, software de aplicacin, software de apoyo y sistema de
hardware. Ej. Contabilizacin de las transacciones de clientes en los Bancos.
La Organizacin y las personas: Dentro de una organizacin existen
complejas relaciones entre los procesos de adquisicin, desarrollo y operacin
del sistema. Factores humanos y organizacionales como la estructura y las
polticas organizacionales influyen en los sistemas socio-tcnicos.
12

Cap. 1

Sistemas Socio-Tcnicos
Propiedades Emergentes

Volumen: El espacio total ocupado vara dependiendo de cmo estn


ordenados y conectados los montajes de los componentes de hardware,
software, polticas y personas.
Fiabilidad: Depende de la confianza que exista en la funcionalidad de los
componentes, interacciones inesperadas en los procesos pueden causar
nuevos tipos de fallos y afectar la fiabilidad.
Proteccin: Es la capacidad para resistir ataques, es una propiedad compleja
que no se puede medir fcilmente. Los ataques pueden ser ideados de forma
que no fueron previstos por los diseadores y as vencer las protecciones
incorporadas.
Reparabilidad: Poder arreglar un problema con el sistema una vez que haya
sido descubierto. Depende de la posibilidad de diagnosticar el problema,
acceder a los componentes defectuosos y modificarlos o reemplazarlos.
Usabilidad: Refleja cmo es de fcil usar el sistema, dependiendo de los
componentes tcnicos del sistema, sus operarios y su entorno.
13

Cap. 1

Sistemas Crticos
Conceptos Generales.

Sistemas Crticos: Son aquellos sistemas en donde un fallo de


funcionamiento puede provocar prdidas econmicas importantes, daos
fsicos o amenazas a la vida humana.
Clases de Sistemas Crticos:
A) Sistemas de seguridad crtico: Sistemas cuyo fallo de funcionamiento
puede provocar perjuicio, prdidas de vida, o daos al medio ambiente. Ej:
Planta de fabricacin de productos qumicos o armamento militar.
B) Sistemas de misin crticos: Sistemas cuyo fallo de funcionamiento puede
provocar errores en actividades dirigidas por objetivos. Ej: Sistema de
navegacin para los aviones o naves espaciales.
C) Sistemas de negocios crticos: Sistemas cuyo fallo de funcionamiento
puede provocar costos muy elevados para el negocio que los utiliza, ya sea
por errores en los clculos o manejo de dinero electrnico. Ej: Sistema de
manejo de cuentas bancarias de miles de clientes, facturacin de servicios
pblicos a miles de usuarios.
14

Cap. 1

Sistemas Crticos
Confiabilidad de Sistemas Crticos.

Confiabilidad: Propiedad que refleja el grado de confianza que el usuario


tiene sobre el sistema. Los atributos ms importante de la confiabilidad son la
disponibilidad, fiabilidad, seguridad y proteccin.
Ejemplos de confiabilidad:
Un servidor de internet proporcionado por un ISP con miles de clientes.
Quality of service (calidad de servicio).
Un escalpelo controlado por computadora usada para practicar incisiones en
operaciones quirrgicas.
Un sistema de control direccional usada en el lanzamiento de un vehculo
espacial.
Un sistema de gestin de finanzas personales, a travs de internet.

15

Cap. 1

Sistemas Crticos

Atributos de la Confiabilidad en los Sistemas Crticos.


Disponibilidad: Atributo que el sistema posee para poder entregar los
servicios a los usuarios cuando se le soliciten en cualquier momento. Ej: Los
sistemas que utilizan las entidades pblicas y privadas para el cobro de
facturas de acuerdo al horario. Los servicios de internet, cajeros automticos
y telefnicos con horarios 24x7.
Fiabilidad: Atributo del sistema para entregar los servicios de acuerdo a lo
especificado, de forma correcta, sin fallas o cadas. Si un sistema no es fiable
es difcil asegurar su seguridad o proteccin.
Seguridad: Atributo que refleja la capacidad del sistema para funcionar
normalmente, sin amenazar o provocar daos a las personas, al negocio o al
entorno del sistema, an si ste fallase.
Proteccin: Atributo que refleja la capacidad para protegerse o resistir
ataques externos que pueden ser accidentales, negligentes o provocados.
16

Cap. 1

Sistemas Crticos
Terminologa de la Fiabilidad.

Fallo del Sistema (System Failure) : Evento que tiene lugar en algn
instante cuando el sistema no funciona como esperan sus usuarios.
Generalmente provocados por problemas de hardware. Ej: Fallo en los
procesos de telecomunicaciones ya sea por el servidor web, router o switch.
Error del Sistema (System Error): Estado errneo del sistema que puede
dar lugar a un comportamiento inesperado y transitorio del sistema operativo.
Ej: Al tratar de realizar un retiro de un cajero automtico, el sistema se
reinicia sin ningn motivo.
Defecto del Sistema (System Fault): Accin provocada por programas del
sistema que puede dar lugar a un error por defecto del sistema, especialmente
en aquellas opciones que no muy utilizadas por los usuarios. Ej: Al iniciar de
forma incorrecta una variable y al ser utilizada sta provoque un error.
Error Humano o Equivocacin: Comportamiento humano que tiene como
consecuencia la introduccin de datos defectuosos en el sistema.
17

Cap. 1

Sistemas Crticos
Terminologa sobre Seguridad

Accidente o percance : Evento o secuencia de eventos no planificados que


pueden causar daos fsico o lesionar a su operador.
Contingencia: Condicin existente que posee el potencial de causar dao o
contribuir a un accidente, por lo tanto debe medirse la gravedad de las
contingencias y evitarse la existencia de las mismas Ej: Posible falla de un
sensor de obstculos o trabajadores que manejan maquinarias con cuchillas.
Probabilidad de la Contingencia: Probabilidad de la ocurrencia de eventos
que provocan una contingencia. Los valores de la probabilidad tienden a ser
arbitrarios, Ej: Se puede medir desde 1/100 hasta improbables.
Riesgo: Medida de la probabilidad que el sistema provoque un accidente. Se
mide de acuerdo a la probabilidad y a la gravedad de la contingencia, para
determinar si el sistema utilizado es riesgoso.
Dao: Medida de la prdida resultante de un percance. Vara de un menor a
un mayor dao. Ej: El dao puede ir desde personas lesionadas y daos a la
propiedad hasta personas muertas por un accidente.
18

Cap. 1

Sistemas Crticos
Terminologa sobre Proteccin

Exposicin: Posibles eventos de prdida o dao que nace de un sistema


informtico existente o en produccin y que provocara prdida o dao de
datos, prdida de tiempo y esfuerzo de recuperacin.
Vulnerabilidad: Debilidad de un sistema informtico que se puede
aprovechar para provocar prdidas o daos, Hay que evitar la vulnerabilidad
con permisos y claves adecuadas, ahora si un sistema no est conectado a la
red pblica obviamente no podr ser vulnerado por un ataque externo.
Amenazas:
Circunstancias generalmente ajenas o externas que
potencialmente pueden provocar prdidas o dao, es decir es una
vulnerabilidad expuesta a un ataque.
Ataque: Aprovechamiento de la vulnerabilidad de un sistema. Generalmente
se produce desde fuera de la empresa y con una intencin deliberada de
causar algn dao.
Control: Medida de proteccin que reduce la vulnerabilidad del sistema. La
encriptacin podra ser un ejemplo de control que reduce la vulnerabilidad19

Potrebbero piacerti anche