Olá, colegas.
Preciso modelar um sistema embarcado que será programado em C ANSI.
So que so conheço UML com Orientação a Objeto. Quais as adaptações que devo fazer para modelar um sistema estrutural?
Alguem ja ouviu isso? conhece algum material que possa me indicar?
Obrigada!!
Ou mesmo algum forum especifico onde eu possa perguntar isso…??
Não da pra usar uma ferramenta OO, mas não necessariamente seguindo regras OO?
Estruturada… tu poderia fazer:
Condicao
Sim - Siga este caminho
Nao - Siga este caminho
Então
Se condicao
…
…
Linearmente…
Entendo… mas o que queria não era bem um fluxograma apenas… queria gerar uma documentação completa…
como o UML permite para projetos OO
então???
Certo, poderia começar a abstrair os procedimentos.
E a ligação linear que os mesmos tem para com o main() principal. É meio viajem mesmo, mas é a forma que tu tem de documentar algo assim.
Lembre-se e entenda que os struct’ s são as “classes” daquela epoca, logo, também vale uma abstração…
Ex:
- InsereLista(*lista Lista) { }
- removeLista(int pos) { }
Melhor coisa, leia um livro de análise estruturada… Tem um muito bom, mas num lembro o nome… Se lembrar volto a postar aqui…
Procure por uma ferramenta case para Analise Estruturada. Um dos diagramas usados é o DFD (diagrama de fluxos de dados) http://pt.wikipedia.org/wiki/Diagrama_de_Fluxos_de_Dados.
Os livros de Engenharia de Software pode ajudar você, como do Roger Pressman e o título é Engenharia de Software, lá ele dá uma noção de análise estruturada e análise OO. Também tem o Palmer que é análise estruturada moderna, excelente, vale a pena ler.
Ferramentas interessantes:
Tem mais, mas estes você já consegue trabalhar bem com eles.
O nosso colega Camilo Lopes criou um trabalho acadêmico excelente de Análise Estruturada, se quiser peça uma cópia a ele, vai lhe ajudar bastante!
Espero ter ajudado.
UML só vai fazer sentido se você pensar nos seus cocneitos, como classes e objetos. Nada impede criar um sistema com conceitos OO em C, exceto pelo fato que estes sistemas tendem a não ser tão performáticos quanto os executados com paradigma procedural em sistemas embarcados.
Se voc precisa seguir um padrão, procure os diagramas de Meillir Page-Jones e Yourdon sobre divisão modular e controle de fluxo. Se não precisa faça o que é certo: crie documentação apenas do que faz sentido e use uma notação simples, que você mesma pode inventar baseada em UML.
Na minha humilde opinião você pode utilizar UML para modelar uma aplicação que será escrita em C.
É só pegar um livro de UML e trocar a palavra objeto por entidade. Vou tentar descrever alguns diagramas:
i)Diagrama de Casos de Uso
É um diagrama que apresenta os atores e as funcionalidades do sistema em questão - esse diagrama é “universal”;
ii) Diagrama de Classes
Apresenta uma visão estática do relacionamento das entidades do sistema;
iii) Diagrama de Objetos
Apresenta uma “foto” das entidades do sistema em um determinado estado do sistema;
iv) Diagrama de Sequência
Apresenta uma visão dinâmica do relacionamento das entidades do sistema.
Eu já modelei sistema estruturado utilizando UML. É só pensar que objetos são estruturas e funções em um mesmo arquivo.