Melhoresndicesdeprodutividade
Produtosdemelhorqualidade,maisconfiveis,consistentesepadronizados
Reduodoscustosetempoenvolvidosnodesenvolvimentodesoftware
Maiorflexibilidadenaestruturadosoftwareproduzido,melhorando
manutenibilidadeeevoluo
Conformidadecompadres(i.eUsodeinterfacesfamiliares)
Menortempodedesenvolvimentoevalidao
02Quaisosobstculosparaimplantaodeumprogramadereusodesoftware
emumaorganizao?
Estruturasorganizacionaisinadequadas
Dificuldadedeencontrarsoftwarereusvel
Altoscustos
Faltadeapoiogerencial
Requisitosmuitoespecficos.
03Cite3fatoresdepossveisfalhasdeumprogramadereuso
Faltadeconhecimentosobreodomniodaaplicaoquesertrabalhado
Nomodificarprocessosexistentesquenoconsideravamreuso
Noalocaodeequipesespecializadaseindependentes.
04Cite3fatoresdesucessoemumprogramadereuso.
Usodemodelosdequalidade
Processodereutilizaosistemtica
Ogerenciamentodeconfiguraodosativosreutilizveis
Gerenciamento
Fatoreshumanos
Maturidadedoprocesso
05Quetiposdeartefatospodemserutilizados?
CdigoExecutvel
EspecificaodeRequisitos
Designs
DadosdeTeste
Documentao
Arquitetura
06Citeexemplos3exemplosdetcnicasdereusodesoftwareedefinaas.
LinhasdeProdutodeSoftware:
umatcnicadereusobaseadona
reutilizaosistemticadeumconjuntodesubsistemasdesoftwareeinterfaces,
atravsdaexploraodepontoscomunsenagestodevariabilidadeentreos
produtos,quesoestabelecidossobumaestruturacomumapartirdoqualum
conjuntodeprodutosderivadospodeserdesenvolvidoeproduzidodeforma
eficiente.LPSpossuemarquiteturacomumecomponentescompartilhados.
DesenvolvimentoBaseadoemComponentes:
umatcnicade
desenvolvimentovoltadoparaaconstruodecomponentes,pedaosdesoftware
encapsulados(entidadesexecutveiseindependentes)paraqueoutros
desenvolvedorespossamutilizlos,substitulosoumodificlos,comefeitos
colateraisreduzidos.
Desenvolvimentodesoftwareorientadoaaspectos:
Caracterizaseemuma
subreadaengenhariadesoftwarepreocupadaemdesenvolvermtodos,
tcnicaseferramentasqueauxiliememtodasasfasesdodesenvolvimentode
software,levandoemconsideraoanovageraodetecnologiasusadaspara
promovermelhorseparaodecaractersticas,taiscomoprogramaoorientadaa
aspectoseprogramaoorientadaaassuntos.
07Cite3caractersticasdeumcomponentedesoftware
Passveldecomposio
Implantvel
Independente
Padronizado
Documentado
08Cite3casosemquevocpodeutilizaroreusodesoftware.
Quandoasnecessidadesdoclientepodemseratendidasparcialmente,
masosistemaprecisaterumacertaflexibilidade.
Aequipepossuiconhecimentosehabilidadenastcnicasemetodologias
dereusoemumdomnioespecfico.
Domniodeaplicaoquepossuamprodutosgenricos
09DescrevaoprocessodeEngenhariadeSoftwareBaseadoemComponentes.
umaabordagemquepermitesimultaneamentereduzircustos,minimizarotempo
necessrioparadesenvolverumprojetoeaumentarsuaqualidade.
Comooutrosprocessosdefinidosparaodesenvolvimentodesoftware,processos
baseadosemcomponentessodivididosemfasesqueatendemsdisciplinascomuns
emoutrosprocessos(especificaoeanlisesderequisitos,modelagemdosistema,
dentreoutras),entretanto,nosprocessosbaseadosemcomponentes,essasdisciplinas
soadaptadasparamaximizaroreusodecomponentes,podendonecessitarde
atividadesvoltadasespecialmenteparaisso.
Aprimeiraatividadeolevantamentoderequisitos.Apsesta,deveseidentificar
oscomponentescandidatosparaainclusonosistema.Comoscomponentes
escolhidos,deveserevalidarosrequisitosnointuitodealterlosouadaptlosaos
componentesselecionados.Porfim,odesenvolvimentodosistemapodeserfeitoatravs
dautilizaodoscomponentesselecionadosesuaadaptaoparaasnecessidadesdo
sistema.
10Citeoselementosbsicosdeumcomponente,descrevaos.
Interfaces:
Componentessodefinidospelaespecificaodesuasinterfaces.Omodelode
componenteespecificacomoasinterfacesdevemserdefinidaseoselementos,taiscomo
nomesdeoperao,parmetroseexcees,quedevemserincludosnadefiniode
interface.
Informaesdeuso:
Paraqueoscomponentessejamdistribudoseacessadosremotamente,eles
precisamterumnomeexclusivoouidentificadorassociadoaeles.Osquaisprecisamser
globalmentenicos.
Implantaodeuso:
Omodelodecomponenteincluiumaespecificaodecomooscomponentes
devemserempacotadosparaimplantaocomoentidadesexecutveisindependentes.
11Porqueimportantequeoscomponentessebaseiememummodelode
componentepadro?
Essesmodelossoimportantesparaqueosdesenvolvedoresseasseguremde
queoscomponentespodemoperarentresi.Elessedestinamtambmaosfornecedores
deinfraestruturadeexecuodecomponentesquefornecemmiddlewaresparaapoiara
operaodecomponentes.
12FalesobreaimportnciadaadoodaArquiteturaOrientadaaServios(SOA)?
Essaarquiteturapermitequeasempresasaumentemsuaflexibilidadedosseus
processosdeformacontnuaparaqueseadequeasnecessidadesdomercadoereajam
rapidamentesmudanas.Outrospontoschaveparasuaadooso:reduodecustos
operacionais,agilizaronegcio,reduodecustoscomintegrao,aampliaode
reutilizaodeativosereduoderiscos.
13Quaisasdiferenasdeumaarquiteturatradicionaleumaorientadaaservio.
Aarquiteturatradicionalconsistenadefiniodoscomponentesdesoftware,suas
propriedadesexternas,eseusrelacionamentoscomoutrossoftwaresenquantoa
orientadaaservioumcaminhoparaodesenvolvimentodesistemasdistribudosnos
quaisoscomponentesdessessistemassoserviosdedicados.Outradiferena
importantequeaarquiteturaorientadaaservioindependentedatecnologia,seus
sistemasdevemserescalveis,elaprevoreusoeotratacomoumadesuasprincipais
caractersticaseseadaptamaisfacilmenteasmudanasdasnecessidadesdomercadoo
quenoocorreemumaarquiteturatradicional.
Contudoaarquiteturatradicionalmaisbarata,nonecessitadetreinamentoou
processosmuitoespecficosdependendodocontextodaaplicaoesuaaplicao
maisbarataemcontextosestticos.
14Quaisasprincipaisatividadesdaengenhariadedomnio?Descrevaas.
Oprocessodeengenhariadedomniocompostoporduasatividadesprincipais:
anlisedodomnioeoprojetododomnio.
Aanlisedodomniodefineoescopododomnioedefineumconjuntode
requisitos,configurveisreutilizveisparaossistemasnodomnio.
Aatividadedeprojetododomniodesenvolveumaarquiteturacomumpara
osistemanodomnioeelaboraumplanodeproduo.
15DefinaoqueumaLinhadeProdutodeSoftware
LinhasdeProdutodeSoftwareumatcnicadereusobaseadonareutilizao
sistemticadeumconjuntodesubsistemasdesoftwareeinterfaces,atravsda
exploraodepontoscomunsenagestodevariabilidadeentreosprodutos,queso
estabelecidossobumaestruturacomumapartirdoqualumconjuntodeprodutos
derivadospodeserdesenvolvidoeproduzidodeformaeficiente.
16QuaisasVantagensdeseutilizarumaLPS?
ReduodosCustosdeDesenvolvimento
AumentodaQualidade
Reduodotimetomarket
MaiorConfiabilidadenoproduto
17DescrevaociclodevidadeumaLPS.Descrevaasatividadesequaisos
artefatosquesogeradospelaLPS.
UmaLPSseparadaemdoisprocessos:
Engenhariadedomnio:Esteprocessoresponsvelporestabelecera
plataformareutilizvele,assim,definirospontoscomunsevariveisda
linhadeprodutos.
Engenhariadeaplicao:Esteprocessoresponsvelporderivar
aplicativosdelinhadeprodutosapartirdaplataformacriadanaengenharia
dedomnio.Elaexploraavariabilidadedalinhadeprodutoeasseguraa
ligaocorretadavariabilidadedeacordocomasnecessidades
especficasdosaplicativos.
Oprocessodeengenhariadedomniocompostoporquatro
subprocessoschave:anlisededomnio,arquiteturadedomnio,implementaode
domnio,etestededomnio.
Aanlisededomnioenglobatodasasatividadesparaelicitare
documentarosrequisitoscomunsevariveisdalinhadeprodutos.
Osubprocessodearquiteturadedomnioabrangetodasasatividades
paraadefiniodaarquiteturaderefernciadalinhadeprodutos.A
arquiteturaderefernciaforneceumaestruturadealtonvelcomumpara
todososaplicativosdelinhadeproduto.
Osubprocessodeimplementaodedomniolidacomoprojetodetalhado
edaimplementaodecomponentesdesoftwarereutilizveis.
Testededomnioresponsvelpelavalidaoeverificaode
componentesreutilizveis.TestesDomniotestaoscomponentescontraa
suaespecificao,ouseja,requisitos,arquiteturaeartefatosdedesign.
Almdisso,otestededomniodesenvolveartefatosdetestereutilizveis
parareduziroesforoparatestesdeaplicativos.
Artefatosdedomnio:Roteirodoproduto,modelodevariabilidadedodomnio,
requisitosdodomnio,arquiteturadodomnio,artefatosdeimplementaododomnioe
artefatosdetestedodomnio
Oprocessodeengenhariadeaplicaocompostapelaanlisedeproduto,
arquiteturadeproduto,implementaodeprodutoetestesdeproduto.
Aanlisedeprodutoenglobatodasasatividadesparadesenvolvera
especificaoderequisitosdeaplicao.Onmerodeartefatosdedomnio
reutilizaveisdependedosrequisitosdaaplicao.
Osubprocessodearquiteturadoprodutoabrangeasatividadesparaa
produodaarquiteturadoproduto.Arquiteturadoprodutousaa
arquiteturaderefernciaparainstanciaraarquiteturadoproduto.Ele
selecionaeconfiguraaspeasnecessriasdearquiteturaderefernciae
incorporaadaptaesespecficasdaaplicao.
Osubprocessodeimplementaodoprodutocriaoproduto.Asprincipais
preocupaessoaseleoeconfiguraodecomponentesdesoftware
reutilizveis,bemcomoarealizaodeativosespecficosdaaplicao.
Ativosespecficosreutilizveissomontadosparaformaroproduto.
Osubprocessodetestedeprodutocompreendeasatividadesnecessrias
paravalidareverificarumademandacontraasuaespecificao.
Artefatosdeproduto:Modelodevariabilidadedoproduto,requisitosdoproduto,
arquiteturadoproduto,artefatosdeimplementaodoproduto,artefatosdetestedo
produto.
18DefinavariabilidadeequaisoscomponentesdavariabilidadeemumaLPS.
Variabilidadeacapacidadedemudaroupersonalizarumsistemadeacordocom
suaspossibilidades.
ComponentesdavaribilidadeemumaLPS:
PontodeVariabilidade
Variantes
Resoluodeumavariante
19Oqueumafeature?
Umaunidadelgicadecomportamentoespecificadoporumconjuntoderequisitos
funcionaisenofuncionais
20Quaisostiposdefeaturesquecompeummodelodefeatures.Definaas.
Obrigatria:Afeaturetemdeestarpresenteemtodososmembrosdalinhade
produtos.
Opcional:Afeaturepodeounoestarpresenteemummembrodalinhade
produtos.
Alternativa:umafeaturequecompostadeumconjuntodefeaturesdasquais
seescolheumaoumais,devendoseindicarsenecessrioescolherapenasuma
ousesepodeescolhermaisqueuma.Nestasfeaturesnecessriofazera
distinodealternativasOR,quepermitemaisdoqueumafeature,eXOR,que
mostraaexclusomtua.
21Elaboreummodelodefeaturescomonomnimo10featuresparaodomniode
aplicativomveldecomunicao(exemplos:Messenger,whatsapp,hangout).O
modelodeveter:featuresobrigatrias,featuresopcionais,featureXORefeatures
OR.Omodelodeveconterpelomenosumarestriorequeridaeum
arestriodeexcluso.
22Apartirdomodelodefeaturesdefinidonaquestoanterior,selecioneo
conjuntodefeaturesdepelomenos5produtos.
Produto1:
SinglePerson,Public,Contacts,ConversationHistory,Number,Name,
Audio,Vibrate,Text
Produto2:Group,Public,Contacts,ConversationHistory,Name,Audio,Vibrate,
Text,Multimedia
Produto3:SinglePerson,Group,Icon,Public,Contacts,ConversationHistory,
Name,Number,Help,Audio,Vibrate,Light,Rightone,Calls,Text,Multimedia
Produto4:SinglePerson,Group,Private,Contacts,ConversationHistory,Help,
Audio,Vibrate,Text
Produto5:SinglePerson,Group,Private,Contacts,ConversationHistory,Audio,
Vibrate,Light,Multimedia
23QuaisostiposdeabordagensparaconstruodeumaLPS?Descrevaas.
Prativa
:Comestaabordagemosativosbasesodesenvolvidosprimeiropara
futuroprodutos.Aquisoconsideradostodososprodutosaseremgeradospreviamente
fazendoseumplanejamentoinicialcompleto.
Extrativa
:Nestaabordagemosativosbasejexistem,bemcomoumaversoda
linhadeprodutos,oqueaconteceaevoluodestalinharealizandoseincrementosna
mesmamedidaquenovosrequisitosaparecem.
Reativa
:Comestaabordagem,inicialmentesoanalisadosquaisosprodutosj
existentesecomoelessoestruturadosdemodoaextrairascomunalidadese
variabilidadesdestesparaentopodersederivarumaversoinicialdaLinhade
Produtos.
24Citeexemplode3medidasdereusodesoftwareeexpliqueas.
RelativeCostofReuse(RCR)
CustoRelativoaoReuso:
ReuseFrequency(RF)
FrequnciadeReuso
ReusePercent(RP)
PercentualdeReuso
25Oqueumalinhadeprocessodesoftware?
umafamliadeprocessosdesoftwarecomumconjuntogerenciadode
caractersticasquesatisfazemnecessidadesespecficasdeumaorganizaoequeso
desenvolvidosapartirdeumconjuntodeprocessosbsicoscomuns
26Compareosconceitosdelinhadeprodutodesoftwareelinhadeprocessosde
software.
AdaptaodatcnicajexistentedeLPSpoderiaseraplicadoaprocessos,assim
umalinhadeprocessodesoftwareumconjuntodeprocessosquecompartilhamum
conjuntodecaractersticascomunsevariveis,esodesenvolvidosapartirdeartefatos
quepodemsercombinadosentresiafimdeadaptaroprocesso.ALPSumconjuntode
aplicaescomumaarquiteturacomumecomponentesinterligadosondeos
componentespodemseradaptadosafimdegerarnovosprodutosespecializados.
27Qualamotivaodeumaempresautilizarumalinhadeprocessosdesoftware?
Demandacrescentepeladefinioemelhoriacontnuadeprocessospara
promoverodesenvolvimentoprodutivodesoftwaredequalidade
28Quaisascaractersticasdeumpadrodesoftware?
Deveserumasoluoparaumproblemaemumcontexto
Vocdevesercapazdedizeraosolucionadordoproblemaoquefazerecomo
resolveroproblema
Devesermaduro,umasoluoprovada
Asoluodeveserconstrudadentrodaticadosolucionadordoproblemaepode
serimplementadamilhesdevezessemserepetir
Devesercapazdesereproduzir
29Citeedescrevaoscomponentesessenciaisparadefiniodeumpadrode
software.
Nome:Nomesdepadresdevemsetornarpartedovocabulriododomnio
Contexto:Ajudaaterumavisoabrangentedeondeoproblemasurge
expressandooseuincio,asuaessnciaeoseucorpo
Problema:Problemaaserresolvidodescritoclaramente.Expressoporuma
simplesperguntaouporumaformulaoresumidadoproblema
Soluo:Devedescreverclaramenteoquenecessriopararesolveroproblema
Usosconhecidos:Exemplosdeaplicaesdopadroemsistemasreais
30Identifiqueedescrevaumpadrodealgumafasedociclodedesenvolvimento
desoftwarecomosseguintesitens:nomedopadro,contexto,problemae
soluo.
31Qualarelaoentreoreusoeosmodelosdequalidadedeprocessos?