5. Lab 4– Master and Tank Containers
5.3 Part 2 – Replicação
• Criando a Passive Class Constant, como mostra a Figura 43 • Criando o Atributo MAXUNITS, como mostra a Figura 44 • Definindo a Cardinalidade das portas, como mostra a Figura 45 • Definindo a Cardinalidade da Cápsula Tank, como mostra a Figura 46 • Definindo a Cardinalidade da Cápsula Master, como mostra a Figura 47 • Na Figura 48, mostramos o processo de tingimento com um controller apenas. • Alterando o valor do atributo MAXUNITS para três, como mostra a Figura 49
• Inserindo as Probes nas portas OperatorDialog dos Tanques, como mostra a Figura 50 • Na Figura 51, mostramos a execução do processo de tingimento com 3 controllers.
Figura 44 - Criando o Atributo MAXUNITS
Figura 45 - Definindo as Características do Atributo
Figura 46 - Inserindo a Cardinalidade da Cápsula Tank
Figura 48 - Execução do Processo de Tingimento com um Controller
Figura 50 - Inserindo o Probe nas portas OperatorDialog dos Tanques
6. Lab 5– Start High-Temperature System .
Esse laboratório acompanha Modulo 10 “Inheritance Hierarchies”.Nesse lab você aprenderá como gerenciar um modelo complexo usando herança hierárquica , você cria um sistema de alta-temperatura do sistema de tingimento por uma superclasse e subclasse existente através de cápsulas, protocolos e classes passivas no DyeingSystem.
6.1 Objetivos
Quando completar esse laboratório com sucesso você estará apto a:
• Criar um sistema completamente novo construindo hierarquias de herança.
• Aplicar o sistema de bottom-up no sistema de hierarquia de classe (generalizando as classes existentes).
• Aplica o designer top-down de hierarquia de classes (especializando em classes existentes). • Compile, execute e debug um modelo que contem herança de classes.
6.2 Instruções: Part1 – Crie a Hierarquia de classes.
• Iniciou abrindo o modelo DyeingSystem que foirealizado no lab 4; • Mudar a Constant::MAXUNITS para 1• Criar uma cápsula chamada Device;
• Criar um class diagram chamada Inheritance;
• Arrastar as cápsulas Device e Valve para o class diagram Inheritance;
• Utilizando a conexão Generalization fazer a conexão da cápsula Valve para cápsula Device; • Abrir o diagrama de estrutura da cápsula Valve;
• Selecionar todos os elementos da cápsula Valve e dar click com o botão direito no diagrama e selecionar Parts->Promote;
• Abrir o diagrama de estado da cápsula Valve;
• Selecionar todos os elementos do estado Valve e dar click com o botão direito no diagrama e selecionar Parts->Promote;
• Abrir a especificação da cápsula Valve;
• Selecionar cada atributo cápsula Valve e dar click com o botão direito e selecionar Promote; • Criar uma cápsula com chamada Heater;
• Arrastá-la a cápsula Heater para o class diagram Inheritance;
• Utilizando a conexão Generalization fazer a conexão da cápsula Heater para cápsula Device; • O class diagram ficará como mostra a Figura 52;
• O Diagrama de Estrutura da cápsula Device ficará como mostrado na Figura 53 • O Diagrama de Estado da cápsula Device ficará como mostrado na Figura 54
Figura 52 - Class Diagram Inheritance
Figura 53 - Estrutura da Cápsula Device
• Seguindo os passos executados para a cápsula Device, criar uma cápsula chamada Sensor e promover a estrutura, o diagrama de estado e os atributos da cápsula Level para a cápsula sensor;
• Criar uma cápsula Thermometer e definí-la como subclass da cápsula Sensor; • O class diagram ficará como mostra a Figura 55Figura 52;
• O Diagrama de Estrutura da cápsula Sensor ficará como mostrado na Figura 56 • O Diagrama de Estado da cápsula Sensor ficará como mostrado na Figura 57
Figura 55 - Diagrama de Classe Inheritance
Figura 57 - Diagrama de Estado da Cápsula Sensor
6.3 Part 2 – Usando SubClasses
• Criar a subclasse DyeHT da Cápsula Dye;
• Modificar a estrutura e o comportamento da Cápsula DyeHT como mostrado na Figura 58 e Figura 59;
• Compilar e tirar os erros de compilação;
Figura 59 - Diagrama de Estado da Cápsula DyeHT • Criar a subclasse TankHT da Cápsula Tank
• Abrir a estrutura da cápsula TankHT;
• Sobreponha a cápsula dye pela cápsula DyeHT;;
• Modificar a estrutura da Cápsula TankHT como mostrado na ;
• Compilar e tirar os erros de compilação, e testar a cápsula. O resultado é mostrado na Figura 61;
Figura 61 - Teste da Cápsula TankHT
• Criar uma subclass chamada ControllerHT da classe Controller;
• Modificar a estrutura da classe ControllerHT, adiconando as portas heat e temperature), como é mostrado na Figura 62
Figura 62 - Diagrama de Estrutura da Cápsula ControllerHT • Criar uma subclass chamada MasterHT da classe Master;
• Modificar a estrutura da classe MasterHT, sobrepondo a cápsula Controller pela ControleerHT e adicionar as relay ports heat e temperature), como é mostrado na Figura 63;
Figura 63 - Diagrama de Estrutura da Cápsula MasterHT • Criar uma subclass chamada DyeingSystemHT da classe DyeingSystem;
• Modificar a estrutura da classe DyeingSystemHT, sobrepondo a cápsula Master por MastrHT e Tank por TankHT, e conectar as portas heat e temperature,, como é mostrado na Figura 64 • Compilar e tirar possíveis erros de compilação;
Figura 64 - Diagrama de Estrutura da Cápsula DyeingSystemHT
7. Lab 6– Completar o Sistema de Alta Temperatura
Esse laboratório acompanha Modulo 11 “Behavior Hierchies”.Neste laboratório você aprenderá administrar complexidade de comportamento construindo uma maquina hierárquica de estados infinitos (FSMs). Você modificará o comportamento do controlador de forma que se torne uma máquina de estado hierárquico. Então você somará comportamento termostático para ControllerHT de forma que isto pode regular a temperatura do liquido de tingimento do tank.
7.1 Objetivos
Quando completar esse laboratório com sucesso você estará apto a: • Criar uma FSM em um modelo existente.
• Distribuir o comportamento pelo FSM hierárquico de um modelo.
• Compilar, executar e debugar um modelo que contem uma máquina de estados finitos (FSMs).
7.2 Procedimento
7.3 Part 1 – Agregação do Controlador.
• Modificar o comportamento do Controller, agregando as cápsulas dyeing, filling e draining. E renomei para running, como mostra a Figura 65 e Figura 66;
• Salve o modelo
• Execute o teste de Performance de 30 Segundos de DyeingSystem para verificar que esta funcionando adequadamente, como mostra a Figura 67;
•
•
Figura 66 - Diagrama de Estado da Cápsula Running
Figura 67 - Tela de Teste da Cápsula DyeingSystem
7.4 Part 2 – Criando um comportamento hierárquico
• Para o ControllerHT adicione um atributo com o nome de dyeningTemperature (int), com um valor inicial 30.
• Modifique comportamento de ControllerHT para manter a tintura a uma temperatura fixa; o Acrescente no estado dyeing na aba EntryActions.o código como mostra a Figura 68 o Acrescente no estado dyeing na aba ExitActions.o código como mostra a Figura 69
• Crie dois novos estados de dyening com o nome de heating e maintaning como mostra a Figura 70;.
• Crie dois novos estados de maintaining com o nome de heatOn e heatOff como mostra a Figura 71 • Salvar o modelo
Figura 68 - Código a ser executado na entrada Figura 69 - Código a ser executado na saída
Figura 71 - Novos estados da Cápsula maintaining
Figura 72 - Execução do teste do sistema DyeingSystemHT
8. Lab 7– Deliverable and Test Harness / Low and High Temperature
Esse laboratório acompanha o Modulo 12 “Sistema de Hierarquia: Empacotamento e Camadas”.Neste laboratório você aprenderá administrar complexidade modelo usando pacotes. Você vai organizar o Dyeing System em sistema de duas categorias, Deliverable e Test Harness e de Baixa Temperatura e Temperatura Alta.
8.1 Objetivos.
Quando completar esse laboratório com sucesso você estará apto a:
• Criar pacotes e colocar os elementos existentes dentro desses pacotes • Criar conteúdo de cápsula
• Compilar, executar de debugar o modelo.
8.2 Instruções
Criar pacotes nomes de Deliverable, TestHarness e Common. Com a exceção de DyeingSystem e DyeingSystemHT, coloque todos os elementos modelo dentro o apropriado pacotes. Dentro de cada um dos pacotes (menos Common), crie um pacote de alto-temperatura e coloca o sistema de alta temperatura, como mostrado na Figura 73