1 / 21

Desenvolvimento de sistemas embarcados Metodologia OMEGA

Desenvolvimento de sistemas embarcados Metodologia OMEGA. Gregório Baggio Tramontina (RA 014864) Ricardo Ribeiro dos Santos (RA 030060). MO409. 1. IC - UNICAMP. Roteiro. Contexto de desenvolvimento de software embarcado Metodologia Omega Motivação Características Fases Modelos

tuyet
Download Presentation

Desenvolvimento de sistemas embarcados Metodologia OMEGA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Desenvolvimento de sistemas embarcados Metodologia OMEGA Gregório Baggio Tramontina (RA 014864) Ricardo Ribeiro dos Santos (RA 030060) MO409 1 IC - UNICAMP

  2. Roteiro • Contexto de desenvolvimento de software embarcado • Metodologia Omega • Motivação • Características • Fases • Modelos • Ferramentas • Parceiros • Prós e contras • Conclusões MO409 2 IC - UNICAMP

  3. Metodologias para desenvolvimento de software embarcado • Software Embarcado: realiza uma tarefa muito específica relacionada com o ambiente ao qual está inserido • Exemplos: controle de aparelhos domésticos, sistemas de processamento de sinais, entre outros • Software embarcado possui particularidades • divisão de tarefas com HW • forte integração com plataforma de baixo nível • requisitos de tempo • Contexto do trabalho: Software que atua em um dispositivo móvel e possibilita que um usuário possa realizar algumas operações relacionadas ao sistema de hotel MO409 3 IC - UNICAMP

  4. OMEGA • Resultado do projeto Omega (http://www-omega.imag.fr) iniciado em 2002 • Motivação: Suporte formal (notações e ferramentas) em todas as fases de desenvolvimento • Foco: Sistemas Embarcados de tempo real • Seleção e extensão de um subconjunto de notações UML • Ênfase na modelagem dos aspectos comportamentais e estáticos do sistema • Processo de desenvolvimento inspirado em abordagens utilizadas pela indústria: • Requisitos, arquitetura, análise e projeto e implementação Requisitos Definição da arquitetura MO409 4 IC - UNICAMP Análise e Projeto Refinar Produzir versão do sistema

  5. Requisitos • Requisitos são expressos por meio de diagramas de casos de uso • Segue a especificação UML • Nesta fase, substitui-se o diagrama de seqüência pelo Live Sequence Chart (LSC) para representar as interações entre elementos de um cenário • LSC com recursos de temporização • Algumas características dos LSCs: • distinguem entre cenários que podem (existencial) dos que devem (universal) acontecer no sistema • inclusão de condições que podem ser verdadeiras (condições “frias”) e condições que devem ser verdadeiras (condições “quentes”) • permite atribuições explicitamente MO409 5 IC - UNICAMP

  6. Verificar Disponibilidade Verificar Despesas Realizar Pré-reserva Realizar Cadastro Emitir relatórios MO409 6 IC - UNICAMP Exemplo - Requisitos • Estudo de caso: sistema de hotel cliente gerentes empresários

  7. Condição quente Cliente Dispositivo Controle de Cadastro chart Pre-chart Estado=ocioso * loop Requisita lista hotéis T1: Time Time<T1+30 Condição fria * Seleciona hotel, período da reserva Atribuição T2: Time Time<T2+30 MO409 IC - UNICAMP 7 Exemplo - Requisitos • Caso de uso: Verificar disponibilidade • Modelagem usando LSC Consulta sist. disponibilidade Informações dos hotéis Informações dos hotéis Verifica disponibilidade no período Lista quartos livres Lista quartos livres

  8. Arquitetura do software é descrita por componentes que interagem através de interfaces • Componente: parte modular do sistema que encapsula conteúdo e expõe um conjunto de interfaces • Componentes são representados pelo diagrama de componentes • A definição e modelagem da arquitetura segue o documento UML 2.0 Proposal v. 0.671 (draft) MO409 8 IC - UNICAMP Arquitetura

  9. Hotel Sist Disponibilidade Hospede Reserva MO409 9 IC - UNICAMP Exemplo - Arquitetura • Definição e relacionamento entre componentes do sistema de disponibilidade inf_hotel hotel «component» «component» inf_reserva reserva «component» hóspede «component»

  10. MO409 Análise e Design • Análise inicial do domínio da aplicação • Iteração das etapas: • Análise e design de uma parte do sistema (incremental) • Gradualmente adicionam-se detalhes até que se esteja próximode uma implementação concreta (refino) • Inicialmente protótipos rápidos, depois produção de sucessivasreleases com funcionalidade crescente • Use-case driven: a cada iteração, um use-case é desenvolvido • Notação básica: diagrama de classes • Object Constraint Language (OCL) • diagrama de estados (classes reativas) 10 IC - UNICAMP

  11. MO409 Exemplo - Análise e Design • Diagrama de classes 11 IC - UNICAMP

  12. MO409 Exemplo - Análise e Design • Statechart 12 IC - UNICAMP

  13. MO409 Implementação • Mapeamento do design detalhado em uma arquiteturafísica particular e codificação • Enriquecimento dos diagramas UML com • limites de tempos de execução • mapeamento de processos para processadores • políticas de escalonamento • prioridades • etc. • Principal notação: Deployment diagram • visão estática da distribuição dos componentes no sistema • especifica a distribuição de “artefatos” (componentes,softwares de terceiros, etc.) para os “nós” (recursoscomputacionais) 13 IC - UNICAMP

  14. MO409 Exemplo - Implementação • Deployment diagram <<device>> :ServAplicação {SO=LinuxRT} <<Wireless>> <<TCP/IP>> <<artifact>> VerificaDisp {componente=Sist. Disponibilidade Local=/app/bin/} <<device>> :DispositivoMóvel {SO=PalmOS} <<device>> :ServBD {SO=Linux} <<artifact>> Navegador Web {fornecedor=Palm} <<artifact>> CadHoteis.so {componente=Hotel Local=/app/bin/} BD do Hotel <<database>> {fornecedor=Oracle Versão=9i} <<artifact>> Reservas.so {componente=Reserva Local=/app/bin/} 14 IC - UNICAMP

  15. MO409 Apoio ferramental • Desenvolvimento pela própria equipe do projeto e por terceiros Fonte: http://www-omega.imag.fr 15 IC - UNICAMP

  16. MO409 Parceiros Fonte: http://www-omega.imag.fr 16 IC - UNICAMP

  17. MO409 Prós e Contras • Não contempla a fasede testes e manutenção • Processo de desenvolvimentoproposto pela metodologiasegue um workflow simples • As ferramentas ainda não estãocompletas • Integração hardware-softwareprecisa de mais atenção • Ainda está em desenvolvimento • Busca ser completa e rigorosa • Usa UML, que já é conhecida • Traz os requisitos de temporeal do domínio não funcionalpara o funcional • Projeto desenvolve ferramentaspara suporte à metodologia • Possui parceiros acadêmicos eindustriais que ajudam na avaliaçãoda metodologia 17 IC - UNICAMP

  18. MO409 Conclusões • No estágio atual, OMEGA é voltada para características de tempo real • Espera-se que, quando mais desenvolvida, contemple a integração hardware-software mais fortemente • Não serve apenas para softwares embarcados • No geral, metodologias ainda não estão bem definidas • Geralmente específicas para cada domínio • Literatura apresenta vários processos, ferramentas, linguagens de especificação, mas há lacunas quanto a metodologias completas 18 IC - UNICAMP

  19. Referências • Hooman, J., Towards Formal Support for UML-based Development of Embedded Systems. Proc. of the 3d PROGRESS Workshop on Embedded Systems, Technology Foundation STW, p. 71-76, 2002. • Graf, S., Hooman, J., Correct Development of Embedded Systems. Proc. of the First European Workshop on Software Architecture (EWSA 2004), LNCS 3047, Springer-Verlag, pp. 241-249, 2004. • Damm, W., Harel, D.,LSCs: Breathing Life into Message Sequence Charts. Formal Methods in System Design, v. 19, p. 45-80, 2001, Kluwer Academic Publishers. Netherlands. • Harel, D., Marelly, R., Playing with Time: On the Specification and Execution of Time-Enriched LSCs.In Proc. 10th IEEE/ACM Int. Symp. on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, Fort Worth, Texas 2002. • Agrawal, S., Bhatt, P., Real-time Embedded Software Systems – An Introduction. Technology Review #2001-04, Tata Consultancy Services, August, 2001, Disponível em http://www.tcs.com/0_whitepapers/htdocs, Visitado em 08/11/2004. MO409 19 IC - UNICAMP

  20. Referências • Gurd, A., Using UML 2.0 to Solve Systems Engineering Problems. Telelogic White Paper, 2003, disponível em http://www.telelogic.com/download/paper, Visitado em 08/11/2004. • OMG, UML 2.0 Proposal v. 0.671 (draft), disponível em http://www.omg.org/cgi-bin/doc?ad/02-01-12, visitado em 23/11/2004. • Site oficial OMEGA, http://www-omega.imag.fr, visitado em 25/11/2004. • OMG, OMG Unified Modeling Language Specification, versão 1.5, Março/2003,disponível em http://www.omg.org/cgi-bin/apps/doc?formal/03-03-01.pdf,visitado em 25/11/2004. • Site oficial PVS Specification and Verification System, http://pvs.csl.sri.com/, visitado em 25/11/2004. MO409 20 IC - UNICAMP

  21. MO409 Fases, UML e Ferramentas 21 IC - UNICAMP

More Related