INSTITUTO TECNOLÓGICO D
INSTITUTO TECNOLÓGICO D
INSTITUTO TECNOLÓGICO D
INSTITUTO TECNOLÓGICO DE
E
E
E AERONÁ
AERONÁ
AERONÁU
AERONÁ
U
U
UTICA
TICA
TICA
TICA
CE-235 - SISTEMAS EMBARCADO DE TEMPO REAL
LISTA DE EXÉRCICIO 02
Revisão 00
Valdir Guerra Aluno
Professor Dr. Adílson Marques Cunha
ITA
2
1. INTRODUÇÃO 1.1. Titulo
Relato Padronizado da disciplina CE235 – SAETR 2013- Projeto de Sistema Avionico Embarcado de Tempo Real – Listex2.
1.2. Motivação
Desenvolver habilidades no desenvolvimento de software aviônico embarcado de tempo real utilizando a ferramenta CASE SCADE, bem como desenvolver experiência em embarcar software de tempo real no RASPBERRY PI utilizando técnicas de desenvolvimento ágil com segurança , qualidade, confiabilidade e estabilidade possíveis de serem certificadas nas normas ARIC 661 e DO-178, a fim reduzir o desperdício de recursos nas futuras fases de integração do meu projeto de tese e nos projetos profissionais.
1.3. Objetivo
Esta ListEx 2 tem por objetivo propiciar, aos alunos das disciplinas CES-65 e CE- 235, uma oportunidade para reportarem, em suas Páginas de Índices Individuais (homepages), as suas participações nos desenvolvimentos dos Subsistemas sob a responsabilidade do seu Time de Desenvolvedores.
Esta ListEx 2 deverá conter um Relatório Individual de cada Aluno, reportando sua participação na Entrega de Valor do 1oSprint (1oSprint Delivery) do Proj. SAE-TR 2013. O Relatório desta ListEx 2 deverá conter a participação individual do aluno no seu Grupo de Subsistemas, envolvendo:
1. A entrega das User Stories desenvolvidas no SCADE e verificadas, pelos integrantes das CE-230 e CE-237, quanto a qualidade, confiabilidade, segurança e testabilidade; e
2. A publicação da geração, a partir do SCADE, dos programas-fonte e suas documentações no Repositório do Subversion localizado no menu lateral da página principal do Projeto SAE-TR 2013.
Sugere-se que as demonstrações de valores intermediários desenvolvidos para esta 1ª Sprint Review do Projeto SAE-TR 2013 envolvam: uma Apresentação em MS Powerpoint, por Grupo de Subsistemas, contendo slides com os nomes dos integrantes do Grupo e suas participações no 1oSprint; as User Stories implementadas; os Casos de Teste implementados; os Diagramas do SCADE; os Fragmentos significativos de códigos,
gerados a partir dos Diagramas do SCADE; uma Burndown Chart do 1o Sprint; e um Vídeo-demo.
2. DESENVOLVIMENTO
A User Storie desenvolvida para a 1ª Sprint do Projeto SAE-TR-2013 pelo autor desta listEx foi a de numero US-38 com Prioridade 6 pertencente ao grupo de “Controle Potência e Combustível” (Cont-Pote-Comb)
3
Eu devo monitorar o tipo de combustível utilizado na Aeronave, para ajustar os parâmetros de vôo.
Definição de Pronto para grupo CONT-POTE-COMB 1ª Sprint
Entregar devidamente compiladas e sem erros as aplicações desenvolvidas no SCADE para os Subsistemas de Potência e Combustível; 2. Demonstrar o funcionamento apropriado dos "widgets" desenvolvidos dos Subsistemas de Potência e Combustível; 3. Obter as aceitações dos integrantes da CE-237, quanto a aferição de testabilidade das User Stories desenvolvidas; e 4. Obter as aceitações dos integrantes da CE-230, quanto as aferições de qualidade, confiabilidade e segurança (safety) das User Stories desenvolvidas.
Meta para grupo CONT-POTE-COMB 1ª Sprint
Entregar as funcionalidades desenvolvidas no 1o Sprint que já se encontrarem
disponíveis, em termos de "widgets", visando propiciar o monitoramento e o controle futuro dos Subsistemas de Potência e Combustível.
Caso de Teste 1
Para o Subsistema de Potência, os WIDGETS deverão apresentar no CDS, as posições de mímima e de máxima potência. 2. Para o Subsistema de Combustível, os WIDGETS do(s) tanque(s) de combustível deverão apresentar no CDS as informações de CHEIO e VAZIO. Oraculo
Para o Subsistema de Potência, os WIDGETS deverão apresentar no CDS, as posições de mímima e de máxima potência. 2. Para o Subsistema de Combustível, os WIDGETS do(s) tanque(s) de combustível deverão apresentar no CDS as informações de CHEIO e VAZIO.
Caso de Teste 2
Aferição de Qualidade
As funções e responsabilidades foram adequadamente distribuídas entre membros do grupo? As entregas favoreceram o cumprimento dos cronogramas pelo grupo? (Processo, Gestão Adaptado da ISO 25001 - 6.2.1, 6.2.2). 2 - Funcionalidades: definidas em alto nível? Foram corretamente desdobradas para o modelo? (Adaptado ISO - 25010, DO 178C Objetivos A 2.1, A 2.4, A 4.1, A 5.1). 3 - Usabilidade: Widgets apropriadas foram utilizadas? As widgets demonstram corretamente o comportamento do sistema? Fácil de operar? de Aprender? (ARINC 661, ISO 25010). 4 - Existem casos de testes para todas as user stories? Os testes foram executados com sucesso? 5 - A implementação atende as definições de pronto (DoD)?
4
Aferição de Confiabilidade
Compilação sem erros ou warnings (DO-178C seção 6.3.5) 2. Seguir um padrão de mínimo codificação (ex: convenções de nomenclatura - DO-178C seção 11.7). 3. Automatizar testes. 4. Os algoritmos do modelo estão corretos? (DO 178C Objetivo A-4.7).
Aferição de Segurança (Safety)
Utilizar os quadrantes de teste ágil (Livro Agile Testing) como guia para identificação dos casos de teste. 2. Testes para verificação de pontos críticos (Mensagens: "Reverse Enabled", "Left tank: critical level" e "Right tank: critical level"). 3. O aplicativo foi instalado e testado no Hardware destino (DO-178C - seção 2.5.5). 4. Podem ser identificadas interpretações da interface que levem a eventos classificados como catastróficos ou criticos pela MIL STD 882E ou DO 178C Tabela 2-1?
1. USER STORIE 38 ENTREGA REALIZADAS –
EVIDÊNCIA DO CDS (COCKPIT DISPLAY SYSTEM)
Foi desenvolvido 2 dois controles, um para cada tanque de combustível para gerenciar o tipo de combustível que esta sendo utilizado na aeronave.
5
EVIDÊNCIA DOS DIAGRAMAS DO SCADE
EVIDÊNCIA DE PUBLICAÇÃO DA DOCUMENTAÇÃO DO SCADE ANEXO 1
EVIDÊNCIA DE PUBLICAÇÃO NO SVN
6
EVIDÊNCIA DO VIDEO DEMO
Segue o link https://www.youtube.com/watch?feature=player_embedded&v=jLJIEQxRfwM
Link do projeto completo
https://sites.google.com/site/saetr2013/home
2. PRINCIPAIS CONCLUSÕES
Com a execução da Listex 2 foi possível aprimorar o conhecimento das técnicas de implementação de CDS Cockpit Display System utilizando o SCADE utilizando
interdisciplinaridade utilizando métodos ágeis com ferramenta colaborativas de comunicação e desenvolvimento a distancia.
A implementação do desenvolvimento de MDD através do SCADE se mostrou mais eficiente do que a antiga ferramenta do Rational Rose Real Time, por permitir uma maior interação gráfica com o desenvolvimento logico do software, porem requer muito mais conhecimento. Com esse exercício foi possível concluir que mesmo com os recursos disponíveis no SCADE e sua total aderência as normas de certificação de segurança a correta abstração do modelo e sua implementação logica ainda são essenciais para garantir qualidade, segurança,
confiabilidade e redução do desperdício de tempo no desenvolvimento de novos aplicações.
3. ANEXOS
Anexos 1
SCADE REPORT
Table Of Contents
1.
General Project Description
2.
Software Architecture
2.1.
Project Architecture
2.2.
Call Graph
2.3.
SCADE Display Integration
3.
CONT_POTE_COMB Project
3.1.
Root Elements
3.1.1.
Types
3.1.2.
Constants
3.1.3.
ChangeLevel Operator
3.1.3.1. Interface 3.1.3.2. Operator Hierarchy3.1.3.3. Graphical and Textual Diagrams
3.1.4.
FuelManagement Operator
3.1.4.1. Interface3.1.4.2. Locals
3.1.4.3. Operator Hierarchy
3.1.4.4. Graphical and Textual Diagrams
3.1.5.
PowerManagement Operator
3.1.5.1. Interface3.1.5.2. Locals
3.1.5.3. Operator Hierarchy
3.1.5.4. Graphical and Textual Diagrams
3.1.6.
Reverse Operator
7
3.1.6.2. Operator Hierarchy
8
List Of Figures
Figure 1: View of diagram_ChangeLevel_1 (ChangeLevel)
Figure 2: View of diagram_FuelManagement_1 (FuelManagement)
Figure 3: View of diagram_PowerManagement_1
(PowerManagement)
9
List Of Tables
Table 1: Public Types of CONT_POTE_COMB
Table 2: Public Constants of CONT_POTE_COMB
Table 3: Inputs of ChangeLevel
Table 4: Outputs of ChangeLevel
Table 5: Inputs of FuelManagement
Table 6: Outputs of FuelManagement
Table 7: Locals of FuelManagement
Table 8: Inputs of PowerManagement
Table 9: Outputs of PowerManagement
Table 10: Locals of PowerManagement
Table 11: Inputs of Reverse
10
1. General Project Description
<description>
11
2. Software Architecture
2.1. Project Architecture
This section displays the package hierarchy of projects.
Project
CONT_POTE_COMB
2.2. Call Graph
This Call Graph displays the dependency tree of model operators.
1.
FuelManagement
1.1.
ChangeLevel
[2]
1.2.
PowerManagement
1.3.
Reverse
2.3. SCADE Display Integration
This section lists the SCADE Display specifications linked to the SCADE Suite
model, as well as the SCADE Suite operators connected with SCADE Display
graphics.
Linked SCADE Display specification(s):
•
CONT_POTE_COMB
Connected SCADE Suite operator(s):
12
3. CONT_POTE_COMB Project
3.1. Root Elements
3.1.1. Types
Table 1: Public Types of CONT_POTE_COMB
Name Definition Comments and
Information IntMsg {Transmit : bool, Value : int}
3.1.2. Constants
Table 2: Public Constants of CONT_POTE_COMB
Name Type Value Comments and
Information A661_FALSE int 0 A661_SELECTED int 1 A661_TRUE int 1 critical_level int 1948534016 delta_level int 177763924 disabled int 0 enabled int 1 fuel_empty int 2133167088 fuel_full int 0 fuel_type1 int 74 fuel_type2 int 21 fuel_type3 int 41
3.1.3. ChangeLevel Operator
Declared as public node
3.1.3.1. Interface
Table 3: Inputs of ChangeLevel
Name Type Comments and Information
PlusButton bool
MinusButton bool
Table 4: Outputs of ChangeLevel
Name Type Comments and Information
level int
criticalLevel bool
3.1.3.2. Operator Hierarchy
diagram :
diagram_ChangeLevel_1
3.1.3.3. Graphical and Textual Diagrams
3.1.3.3.1. View of diagram_ChangeLevel_1 (ChangeLevel)
Figure 1: View of diagram_ChangeLevel_1 (ChangeLevel)
3.1.4. FuelManagement Operator
13
Declared as public node
3.1.4.1. Interface
Table 5: Inputs of FuelManagement
Name Type Comments and Information
LeftPlus bool LeftMinus bool RightPlus bool RightMinus bool TankLeftState IntMsg TankRightState IntMsg RightPowerInput real LeftPowerInput real btnReverse int FuelTypeRightControl int FuelTypeLeftControl int
Table 6: Outputs of FuelManagement
Name Type Properties Comments and
Information
LeftLevel int default 1066583544
RightLevel int default 1066583544
Emit bool Layer1Visible bool Layer1Active bool RefuelLeftPlusEnable IntMsg RefuelLeftMinusEnable IntMsg RefuelRightPlusEnable IntMsg RefuelRightMinusEnable IntMsg criticalLevelLeft bool criticalLevelRight bool RightPowerOutput int LeftPowerOutput int toggleLabelReverse bool FuelTypeLeftLed int FuelTypeRightLed int
FuelTypeLeftControlEnabled int default 0 FuelTypeRightControlEnabled int default 0
3.1.4.2. Locals
Table 7: Locals of FuelManagement
Name Type Properties Comments and
Information
TankLeftLevel int default 0
TankRightLevel int default 0
3.1.4.3. Operator Hierarchy
diagram :
diagram_FuelManagement_1
3.1.4.4. Graphical and Textual Diagrams
14
Figure 2: View of diagram_FuelManagement_1 (FuelManagement)3.1.5. PowerManagement Operator
Declared as public node
3.1.5.1. Interface
Table 8: Inputs of PowerManagement
Name Type Comments and Information
RightPowerInput real LeftPowerInput real
Table 9: Outputs of PowerManagement
Name Type Comments and Information
RightPowerOutput int LeftPowerOutput int
3.1.5.2. Locals
Table 10: Locals of PowerManagement
Name Type Comments and Information
leftEngine int
rightEngine int
3.1.5.3. Operator Hierarchy
diagram :
diagram_PowerManagement_1
3.1.5.4. Graphical and Textual Diagrams
15
Figure 3: View of diagram_PowerManagement_1 (PowerManagement)3.1.6. Reverse Operator
Declared as public node
3.1.6.1. Interface
Table 11: Inputs of Reverse
Name Type Comments and Information
btnReverse int
Table 12: Outputs of Reverse
Name Type Comments and Information
toggleLabelReverse bool
3.1.6.2. Operator Hierarchy
diagram :
diagram_Reverse_1
3.1.6.3. Graphical and Textual Diagrams
3.1.6.3.1. View of diagram_Reverse_1 (Reverse)
Figure 4: View of diagram_Reverse_1 (Reverse) End of document.