Requerimientos de Software

download Requerimientos de Software

If you can't read please download the document

description

Describe toda la etapa que contiene requerimientos de software en cualquier proyecto informatico.

Transcript of Requerimientos de Software

Diapositiva 1

1

Diseo de SoftwareEn sentidogeneral,disearesuna forma de

resolucindeproblemas.

Porello, al disearseutilizan nocionescomo

ObjetivosRestriccionesAlternativasRepresentacionesSoluciones3

Juega un papel claveeneldesarrollodesoftware

porquepermitea los ingenierosdesoftwareproducirdiversosmodelosque:Caracterizanla solucin aimplementar.

Puedenseranalizadosy evaluados con elfin dedeterminarsisesatisfacenlosrequisitos.

Facilitanel examen y evaluacin dealternativas.

Sirvenpara planificarlassiguientesactividadesdeldesarrollo.

4

Perspectivadel ProcesoDiseareselesfuerzopara definir laarquitectura,componentes,interfacesyotrascaractersticasdeun sistemao componente.

ElDiseodeSoftwareeslaactividaddel ciclode vidadelsoftwareenla cualseanalizanlosrequisitospara

producir unadescripcin de la estructura

internadel software que sirva de

base para

suconstruccin.

Lasalidaes un conjuntodemodelosyartefactosqueregistran las principales decisiones adoptadas.Perspectivadel ResultadoUn Diseoeselresultadodedicho esfuerzo.

UnDiseoSoftwaredescribe:

Laarquitecturadel software

(cmoest

descompuesto y organizadoen

componentes),Lainterfaces

entredichoscomponentes,y

Los componentes a un nivel de

detalleque

permitasu construccin.5

ElestndarISO12207 identifica dostiposdeDiseoSoftware:

Arquitectural [alto nivel]

Describe la estructura y organizacin dealtonivel, es

decir,lossubsistemaso componentesysusrelaciones

DetalladoDescribecadacomponente ysucomportamiento especfico, de forma quepuede procederse a su construccin

DiseoArquitectural

Es el primer paso eneldiseo de un sistema, previoaldiseo detallado.

Suresultadoseconocecomoarquitecturadelsoftware.

[sepresentadespus]

Representaelenlaceentrelaespecificacin de requisitos yeldiseo.

Puede llevarse a cabo en paralelo conactividadesdeespecificacinderequisitos.

Implica un esfuerzo creativo, de forma quelas actividadesa realizar pueden cambiar segn la naturaleza del sistemaadesarrollar.6

Duranteeldiseoarquitecturalesnecesarioadoptaralgunasdecisiones:

Existeuna arquitecturagenrica que pueda ser usada?

Cmo ser distribuido el sistema?

Qu estilosarquitectnicos son apropiados?

Qu aproximacin se utilizar para estructurar elsistema?

Cmo se descompondr el sistema en mdulos?

Qu estrategiade controlseutilizar?

Cmoseevaluar eldiseoarquitecturalresultante?

Cmosedocumentar laarquitectura?

PrincipiosVerdadesbsicasoleyesgenerales que se utilizan comobasederazonamientoocomo gua paraactuar.

LosPrincipios del DiseoSoftwaresonnociones claveconsideradasfundamentalesenmuchas aproximacionesyconceptosdediseodiferentes.7

AbstraccinOlvidarinformacin que diferenciaciertascosasyaspoder tratarlas como si fueran similares.EnSoftwarelos mecanismosbsicosdeabstraccin son:ParametrizacinEspecificacinAbstraccinProceduralAbstraccinde DatosAbstraccinde Control (iteracin)

Acoplamientoy Cohesin

Acoplamiento:Fortalezadelas relacionesentremdulosINTER

Cohesin:cmoestnrelacionadosloselementosdeun mismomdulo.INTRA8

DescomposicinDescomponerun softwareendiversasunidadesmspequeas,habitualmente conelfin desituar

diferentesfuncionalidadeso

responsabilidadesen diferentes componentes.Encapsulamiento[ocultamiento deinformacin]Consisteenagruparyempaquetarloselementosydetallesinternosdeunaabstraccinyhacerquedichos detallesseaninaccesiblesdesdefuera.SeparacindeInterfazeImplementacinDefinirun componenteespecificandouna interfaz

pblica,conocida por otros

componentesoclientes , separada

de los detalles de cmo dicho

componente est realizado

(implementado).Suficienciay CompletitudAsegurarqueuncomponentesoftwarecapturatodaslas caractersticasimportantesdeunaabstraccinyningunams.9

HaydostiposdeDescomposicinEstructuracin/Organizacin del sistema:

El sistemaensubsistemasDescomposicinmodular:

Subsistemas enmdulos.

SubsistemasvsMdulos

Nosiemprehayuna diferenciacinclara

Subsistema:Unsistemaens mismo,cuyo

funcionamiento esindependientede

los servicios provistos

por otros subsistemas.

Mdulo: Componentede un sistema que provee servicios

a otros componentes y que nose

considera un

sistema separado.AproximacionesparaDescomposicinModular: ObjetosEl (sub)-sistemasedescompone enobjetosque interactan.

Tubera o Flujo de Datos[orientado a funciones]

El (sub)-sistemasedescompone

enmdulos funcionales que

transformanentradas en

salidas.10

Al disearsoftwareesnecesarioenfrentarsea varios problemaso dificultadesimportantes.

Atributos deCalidadque deben satisfacerse.

Ej: Rendimiento.Cmo descomponer,organizar y empaquetar

componentes.

Aspectosdel comportamiento del softwarequenoson

deldominio del problemao aplicacin,

sino de dominios

laterales que afectan de manera

transversal a la funcionalidaddel

sistema.

Estosaspectosnosuelensuponer

unidadesdedescomposicin

funcional,sino queson propiedades

queafectana diversoscomponentes (ensu

rendimiento osemntica)de forma

sistemtica.En los ltimos aos se estabordando el problema del

DiseodeSistemas Software Genricos

medianteLneasdeProductoSoftwareSuobjetivoeseldiseodefamiliasde

programas,esdecir,coleccionesde

programasque

tienenmuchascosasencomn.

Ej: Gestin de Tiendas de Venta al Pblico

Haciendoreutilizacinalmximo,pero

permitiendo adaptacinyvariabilidaden

cadaproducto particular.11

LosprincipalesAspectosSoftwarea enfrentar son : Concurrencia.

Cmorepartirelsoftwareen

procesos, tareas o hilos deejecucin

yabordar los problemas deeficiencia,

atomicidad, sincronizaciny

Planificacin asociados.

ControlyManejodeEventos.Cmo organizardatos yflujo de control.Cmomanejar eventos reactivos y temporales mediantemecanismos como

invocacin implcita o llamadas hacia

atrs (callbacks).LosprincipalesAspectosSoftwarea enfrentarson(cont.):

Distribucindecomponentes.

Cmodistribuirel software en el hardware.Cmocomunicar los componentes.

Cmoutilizar el middlewarepara tratar con software heterogneo.

Manejo deErroresyExcepcionesyToleranciaaFallos.

Cmoprevenir ytolerar fallos y

tratar condiciones excepcionales

(no previstas).12

LosprincipalesAspectosSoftwarea enfrentarson(cont.):

InteraccinyPresentacin.

Cmoestructurar y organizar las

interacciones con el usuario yla

presentacinde informacin.

Ej.:separando la presentacin de

la lgica de negocio usando la

aproximacinMVC (Modelo-Vista-Controlador).

PersistenciadeDatos.Cmo se manejanlos datos quetienenunavida superior eindependiente a las ejecuciones del software.

Laarquitecturade un sistemaes la descripcin delos elementos que lo forman y delas interrelaciones entre ellos.

13

ArquitecturaEstructurainterna de algo

Formaenque algo es construido u organizadoArquitecturaSoftwareDescripcin delossubsistemasycomponentesdeun

sistema software ydelas

interrelacionesentreellosDisponerdelaArquitecturadeformaexplcita suponelas siguientesventajasComunicacin conlos interesados

Puede utilizarse para ladiscusinsobrecmoser el sistema.

AnlisisdelSistema

Permite el anlisisdel

cumplimiento de los

requisitosno funcionales.

Reutilizacin a gran escala

Puedeservir para ungrupo desistemas parecidos.

44

Diseo Basado en Componentes (CBD)

UnComponenteSoftwareesunaunidad

independienteconinterfacesydependenciasbien

definidas,quepueda ser

desarrollada y desplegadade

forma independiente.

Principio de CajaNegra.

CBD aborda problemas para proveer,

desarrollar e integrar componentes.

Su finalidad es mejorar lareutilizacin.Haga clic para cambiar el estilo de ttulo

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de subttulo del patrn

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

Haga clic para modificar el estilo de texto del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

6/4/2015

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

Haga clic para modificar el estilo de texto del patrn

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic en el icono para agregar una imagen

Haga clic para modificar el estilo de texto del patrn

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

6/4/2015

Haga clic para modificar el estilo de ttulo del patrn

Haga clic para modificar el estilo de texto del patrn

Segundo nivel

Tercer nivel

Cuarto nivel

Quinto nivel

6/4/2015