+ All Categories
Home > Documents > Software

Software

Date post: 15-Nov-2015
Category:
Upload: hugo-chaves
View: 2 times
Download: 0 times
Share this document with a friend
Description:
Sobre Software
Popular Tags:
55
O Papel do Software Especialização em Comércio Eletrônico e Economia Digital
Transcript
  • O Papel do SoftwareEspecializao em Comrcio Eletrnico e Economia Digital

  • ObjetivosDescrever os principais tipos de softwareExaminar software de sistemas e sistemas operacionaisExplicar a evoluo do softwareAnalisar as principais linguagens de programaoDescrever as abordagens ao desenvolvimento de softwareIdentificar temas relacionados com software

  • Desafios da Gerncia de TIO que software?Software de sistemaSoftware de aplicaoNovas ferramentas de software e abordagensGesto do patrimnio de software

  • SoftwareInstrues detalhadas que controlam a operao de um computadorPrograma: conjuntos de instrues ao computadorConceito de programa armazenadoSoftware de sistema: gerencia os recursos de um computadorSoftware de aplicao: aplicativo especfico para um domnio especfico

  • O Computador

  • SOFTWARE HARDWARESYSTEM SOFTWAREAPPLICATION SOFTWARE

  • Multiprogramao

  • MultitarefaMultiprogramao em um sistema mono-usurio com um microcomputador

  • Memria VirtualMecanismo de tratamento de vrios programas na memria principalUm programa dividido em:Pores de comprimento fixo (pginas) ouDe comprimento varivel (segmentos)As pores em execuo residem na memria principalAs pginas so trocadas (swapped) conforme a necessidade

  • Time SharingMany users sharing a powerful CPUO tempo da CPU dividido em fatias (slices; de 2 microsegundos, por exemplo)Por conta da rapidez da CPU, ela pode executar muitas instrues durante uma fatia de tempoOs jobs dos usurios so trocados no final de cada fatia

  • Multiprocessamento2 ou mais processadores paralelos em um sistemaUm programa pode ser dividido para ser executado por mltiplas CPUsPode processar grandes programas de forma mais eficiente

  • Traduo de LinguagensCdigo-fonte: instrues em linguagem de alto nvel (entrada de um processador de linguagem)Compilador: traduz cdigo de alto nvel em linguagem de mquinaCdigo-objeto: instrues traduzidas e prontas para execuo pelo computador

  • Processo de Compilao

  • Graphical User Interface (GUI)O sistema operacional e os programas usam:cones grficos (Icons, Buttons, Bars, Boxes)mousePara disparar comandos e fazer selees

  • Sistemas OperacionaisMS Windows 95/9832-bit operating system; GUI; Multitasking. NetworkingMS Windows NT/Me/200032-bit operating system not limited to Intel chips. Multitasking; Multiprocessing; NetworkingMS Windows CEPaired-down for handheld computers, wireless communication devices

  • Sistemas OperacionaisOS/232-bit. Developed for IBM PS/2. Multitasking; NetworkingUNIXFor powerful Microcomputers, Workstations, Minicomputers. Multitasking; Multi-user Processing; Networking. Portable to various Computer PlatformsLinuxGratuito, uma alternativa confivel para UNIX e Windows. Roda em muitas plataformas.

  • Sistemas OperacionaisApple MacOSFor Macintosh computers. Multitasking. Powerful Graphics; MultimediaMicrosoft DOSFor IBM (PC-DOS) and PC (MS-DOS). Program Memory: 640KPalm PalmOSPara compudores de mo (palmtops)

  • Linguagens de Programao

  • Paradigmas de Linguagens de ProgramaoImperativoC, Cobol, Fortran, PascalFuncionalHaskell, Standard ML, MirandaLgicoPrologOrientado a ObjetosJava, Eiffel, SimulaOrientado a AgentesAgent-0

  • Geraes de Linguagens de ProgramaoPrimeira :: Desde a dcada de 40: Linguagem de mquina; cdigo binrioSegunda :: Desde os primeiros anos da dcada de 50: Linguagem Assembly; mnemnicos para cdigo numricoTerceira :: Desde meados da dcada de 50: Linguagens de alto nvel (Fortran, Cobol, etc)Quarta :: Desde o final da dcada de 70: Pacotes de aplicaes modernos

  • Linguagens de Alto NvelFORTRAN (FORmula TRANslator): Scientific, Engineering applicationsCOBOL (COmmon Business Oriented Language): Predominant for transaction processingBASIC (Beginners All-purpose Symbolic Instruction Code): General purpose PC language

  • Linguagens de Alto Nvel (cont.)PASCAL: Used to teach structured programming practices. Weak in file handling, input / outputC and C++: Powerful PC Language for developing applications. Efficient execution; cross platform. C++ is object oriented

  • Linguagens de Quarta Gerao (4GL)CAN BE EMPLOYED BY END USERSNONPROCEDURALCAN DEVELOP APPLICATIONS QUICKLYNATURAL LANGUAGES6 categorias

  • Linguagens de Quarta Gerao (4GL)1 Linguagens de Consulta:Recuperam dados eficientementeInterativas/on-linePodem usar linguagem natural (!)Suportam solicitaes especiais de dados de bancos de dados relacionais

  • Linguagens de Quarta Gerao (4GL)2 Geradores de relatrios:Cria relatrios personalizadosGrande nmero de formatos possveis3 Linguagens grficas:Pode manipular desenhos, grficos, fotos, vdeosGerenciadores de apresentao

  • Linguagens de Quarta Gerao (4GL)4 Geradores de Aplicao:O usurio especifica as necessidades do sistemaO gerador cria lgica e cdigo para a aplicaoReduz drasticamente o tempo de desenvolvimento

  • Linguagens de Quarta Gerao (4GL)5 Linguagens de Programao de Altssimo Nvel:Ferramenta de produtividade para o programador profissionalUsa menos comandosReduz o tempo de desenvolvimento

  • Linguagens de Quarta Gerao (4GL)7 Pacotes de software: conjunto de programasProcessadores de textoPlanilhas eletrnicasGerenciadores de bancos de dadosSoftware de apresentaoFacilitam o uso e a aprendizagemMS Office 2000, Sun StarOffice

  • Ferramentas de SoftwareProcessadores de textoPlanilhas eletrnicasGerenciamento de dadosProgramas para apresentaoSuites de software integradasE-mailWeb browsersGroupware

  • Programao Orientada a ObjetosCombina procedimento e dado num nico objetoUm programa envia mensagem a um objeto para executar determinado procedimento encapsulado (mtodo)O dado do objeto encapsulado e isolado do resto do sistemaPossibilita a reutilizao de cdigoReduz o tempo e custo para construo de software

  • Programao Orientada a ObjetosVISUAL PROGRAMMING: SELECT AND ARRANGE OBJECTS RATHER THAN WRITE CODECLASS: ALL OBJECTS OF A CLASS HAVE ALL FEATURES OF THAT CLASSINHERITANCE: SPECIFIC CLASS RECEIVES FEATURES OF A MORE GENERAL CLASSOVERRIDE: SUBCLASS MAY OVEERRIDE INHERITED METHOD (e.g.: Printout of an HOURLY worker Pay Check may differ from that of a WEEKLY worker

  • Programao Orientada a ObjetosJAVA: Sun Microsystems OBJECT-ORIENTED PROGRAMMING LANGUAGEAPPLET: TINY PROGRAM TO EXECUTE SMALL FUNCTIONAPPLETS DOWNLOADED FROM NETWORKRUN ON ANY COMPUTER & OPERATING SYSTEMRESULT SAVED ON NETWORK, NOT ON PCONLY NETWORK VERSION OF SOFTWARE NEEDS UPGRADE

  • Programao Orientada a ObjetosActiveX: Controls for Windows software environment to enable OBJECTS: e.g.,CHARTSTABLESANIMATIONSto be EMBEDDED IN A WEB PAGE

  • O Processo de Construo de Software

  • Alguns pontos iniciais importantes:O que uma metodologia?E uma metodologia de desenvolvimento de software?Qual a importncia de uma metodologia para a sua empresa?

  • O que a Engenharia de Software?Estudo ou aplicao de abordagens sistemticas, econmicas e quantificveis para o desenvolvimento, operao e manuteno de software de qualidade.

  • Objetivos da Engenharia de SoftwareQualidade de softwareProdutividade no desenvolvimento, operao e manuteno de softwareQualidade versus ProdutividadePermitir que profissionais tenham controle sobre o desenvolvimento de software dentro de custos, prazos e nveis de qualidade desejados

  • Qualidade de Software(para o Varejo)CorretoA loja no pode deixar de cobrar por produtos comprados pelo consumidorRobusto e altamente disponvelA loja no pode parar de venderEficienteO consumidor no pode esperarA empresa quer investir pouco em recursos computacionais (CPU, memria, rede)

  • Qualidade de Software(para o Varejo)Amigvel e fcil de usar A empresa quer investir pouco em treinamentoAltamente extensvel e adaptvelA empresa tem sempre novos requisitos (para ontem!)A empresa quer o software customizado do seu jeito (interface, teclado, idioma, moeda, etc.) ReusvelVrias empresas precisam usar partes de um mesmo sistema

  • Qualidade de Software(para o Varejo)Aberto, compatvel, de fcil integrao com outros sistemasA empresa precisa de controle de estoque, fidelizao, etc. Portvel e independente de plataforma (hardware e software)A empresa pode optar por uma determinada plataformaBaixo custo de instalao e atualizaoA empresa tem um grande nmero de PDVs

  • ProdutividadeCusto de desenvolvimento reduzidoA empresa consumidora quer investir pouco em softwareA empresa produtora tem que oferecer software barato Tempo de desenvolvimento reduzido Suporte rpido s necessidades do mercado

  • Software Barato Nem tanto resultado de baixos custos de desenvolvimento, mas principalmente da distribuio dos custos entre vrios clientes.Reuso, extensibilidade e adaptabilidade so essenciais para viabilizar tal distribuio.

  • Elementos e Atividades da Engenharia de SoftwareElementosModelos do ciclo de vida do software LinguagensFerramentasMtodosProcessosAtividadesPlanejamento e GerenciamentoGerncia de Configurao e MudanasModelagem do negcioElicitao de requisitosAnlise e ProjetoImplementaoTestesImplantao

  • Modelos do Ciclo de Vida de SoftwareFora bruta, gambiarra, hacking, marretaCascataEspiralIterativo (do RUP)Prototipagem evolucionria

  • Fora bruta, gambiarra, hacking, marreta

  • Modelo Cascata

  • Modelo Cascata na Prtica

  • Modelo Espiral

  • Iterativo (do RUP)

  • LinguagemNotao com sintaxe e semntica bem definidascom representao grfica ou textual Usada para descrever os artefatos gerados durante o desenvolvimento de software Exemplos: UML, Java, C++, Delphi

  • MtodoDescrio sistemtica de como deve-se realizar uma determinada atividade ou tarefaA descrio normalmente feita atravs de padres e guiasMetodologiaconjunto de mtodos (+ processo)Exemplos: Booch, BON, Pim

  • FerramentaProv suporte computacional a um determinado mtodoAmbiente de desenvolvimento: conjunto de ferramentas integradas (CASE)Exemplos:Rational RoseIBM VisualAge for JavaInprise JbuilderMicrosoft SourceSafe

  • ProcessoConjunto de atividades bem definidas com responsveiscom artefatos de entrada e sadacom dependncias entre as mesmas e ordem de execuocom modelo de ciclo de vida

  • Seleo de SoftwareAdequabilidadeEficinciaCompatibilidadeSuporte

  • Fontes de Recursos na Internethttp://www.microsoft.comhttp://www.bds.orghttp://www.javasoft.comhttp://www.gamelan.comhttp://www.eiffel.comhttp://www.perl.comhttp://www.perl.orghttp://www.python.orghttp://www.neosoft.com/tclhttp://www.caldera.comhttp://www.redhat.comnews: comp.langnews: comp.lang.cnews: comp.lang.smalltalk


Recommended