Proposta de Especificação de Software Calculadora Aplicada Acadêmicos: Ana Paula Garboça, Cleverson Massaroli, Gilso Manfredi Curso: Sistemas de Informação Local: Dois Vizinhos, segunda-feira, 14 de dezembro de 2009
Sumário Sumário... 2 1. Objetivos deste documento... 3 2. Objetivo Geral... 3 3. Requisitos... 3 3.1 Modelagem de Negócios... 3 3.1.1 Descrição da Visão do Negócio... 3 3.1.2 Regras de Negócio... 4 3.2 Captura de Requisitos... 5 3.2.1 Requisitos Funcionais... 5 3.2.2 Modelo de Casos de Uso... 6 3.2.3 Descrição detalhada dos Casos de Uso do sistema... 7 3.3 Glossário... 9 4. Classes de Projeto... 10 2
1. Objetivos deste documento Este documento tem por objetivo apresentar uma proposta de especificação de software (PESw) para uma calculadora aplicada a computação. Este documento é um requisito parcial para aprovação nas disciplinas de: (I) Engenharia de Software I, (II) Matemática aplicada a Computação, (III) Programação II e (IV) Web Design. 2. Objetivo Geral O objetivo principal / geral deste trabalho é desenvolver uma Calculadora Aplicada a Computação utilizando de conceitos de programação orientada a objetos. 3. Requisitos Na apresentação dos requisitos terá por objetivo englobar todas as atividades previstas para a produção da calculadora, com analises detalhadas e seus procedimentos para devida conclusão. 3.1 Modelagem de Negócios Nesta etapa será apresentada a estrutura de negócio e também as regras de negócios que serão utilizadas na formação da calculadora. 3.1.1 Descrição da Visão do Negócio O curso de Sistemas de Informação da Unisep no segundo semestre promove o segundo trabalho integrador onde os alunos terão por objetivo fazer uma calculadora aplicada, nesta será apresentado aos professores o conhecimento adquirido nas matérias no decorrer do semestre. As seguintes matérias estão relacionadas no trabalho: Engenharia de software I, Programação II, Web Design, e Matemática Aplicada a Computação. Para o trabalho a disciplina de matemática aplicada à computação será utilizada em vários tópicos contidos na programação da calculadora que estará interligada a matéria de Programação II. Para disciplina de Web Design será apresentado o site nele contendo apresentações sobre a calculadora, e por fim a disciplina de Engenharia 3
de Software que nela estará contido o modelo descrito de que a calculadora ira fazer e como ira fazer. A calculadora trará facilidade nas operações matemáticas, rapidez em cálculos, ou seja, um fator indispensável para situações do dia-a-dia que precisem de agilidade. 3.1.2 Regras de Negócio RN01 Nome Cálculos de Soma, Subtração e Multiplicação escalar de matrizes Descrição Os cálculos citados somente podem ser efetuados se as matrizes envolvidas serem da mesma ordem, ou seja, mesmo tamanho entre linhas e colunas de tamanho infinito. Fonte Professora de Matemática - Sheila Identificação - Aulas 2 Semestre RN02 Nome Cálculos de Multiplicação entre matrizes Descrição O calculo de multiplicação somente poderá ser feita entre matrizes quadradas ou matrizes que o numero de colunas a primeira matriz seja igual ao numero de linhas da segunda matriz e vice-versa. Fonte Professora de Matemática - Sheila Identificação - Aulas 2 Semestre RN03 Nome Cálculos de Traço e inversa de matriz Descrição Os cálculos para encontrar o traço e a inversa da matriz somente poderá ser feita em matrizes quadrada(mesmo numero de linhas e colunas) e também podem ser de ordem infinita. Fonte Professora de Matemática - Sheila Identificação - Aulas 2 Semestre RN04 Nome Cálculos de Determinante de matriz Descrição Cálculos com determinantes devem ser com matrizes de ordem 2X2 ou 3X3 Fonte Professora de Matemática - Sheila Identificação - Aulas 2 Semestre 4
RN05 Nome Cálculos de Escalonamento Descrição Para a realização de cálculos de escalonamento de Sistemas lineares deve-se ser com valores correspondentes a matrizes de 4X4. Fonte Professora de Matemática - Sheila Identificação - Aulas 2 Semestre RN06 Nome Descrição Informação de Matrizes Inteiras Somente devera informar valores inteiros na matriz RN07 Nome Informação de Matrizes Decimais Descrição Somente devera informar valores decimais na matriz Ex: 2.9, 3.5 3.2 Captura de Requisitos 3.2.1 Requisitos Funcionais Havendo a necessidade da execução de cálculos com matrizes e conjuntos será criada calculadora aplicada para a execução dos seguintes tipos de cálculos: A calculadora deverá efetuar cálculos de soma, subtração e multiplicação escalar as matrizes devem ser iguais e de ordem infinitas. A Calculadora devera efetuar cálculos de multiplicação de matrizes de ordem indeterminada. Obedecendo a regra de que o número de colunas da primeira matriz ser igual ao numero de linhas da segunda matriz. Caso não atenda esta especificação, é tentado inverter a posição das matrizes. A Calculadora deverá efetuar o calculo do traço e inversa de matrizes quadradas de ordem infinita. A Calculadora deverá efetuar os cálculos da transposta de matriz de ordem infinita. A Calculadora deverá efetuar os cálculos de determinante de ordem 2X2 e 3X3. 5
A Calculadora devera efetuar escalonamento de sistemas lineares de ordem 4X4. A Calculadora devera efetuar os cálculos de união, interseção, diferença e plano cartesiano de conjuntos com qualquer número de elementos. Para entrada dos dados das matrizes e conjuntos será usado a classe de números Inteiros. Os dados de Saída serão do tipo decimal para os cálculos da transposta e Inversa de matrizes, o restante dos cálculos a saída é de valores inteiros. Para fazer os cálculos dos conjuntos os valores de entrada serão gerados através de funções predefinidas como: Números pares Números Ímpares Sequência de Fibonacci Sequência dos recíprocos (inversos) Função de Heaviside 3.2.2 Modelo de Casos de Uso 6
3.2.3 Descrição detalhada dos Casos de Uso do sistema Número 1: Caso de uso: Realizar operações com matrizes Descrição: Operações de matrizes Ator: Usuário Pré-condição: Ter Valores a ser informado Fluxo principal: 1. O usuário escolhe no sistema qual o tipo de operação com matrizes que deseja; 2. O usuário informa a quantidade linhas da matriz; 3. O usuário informa o numero de colunas da matriz; 4. O usuário clica no botão gerar para que seja gerada na tela de digitação a matriz; 5. Depois de informado os valores da matriz conforme regra de negocio RN06, o usuário clica em gravar; 6. O usuário clica em calcular para o sistema processar o calculo desejado. 7. O sistema apresenta na tela o resultado. Tratamento das Exceções: 1. Operações que necessitam de duas matrizes 1.1. O usuário informa o numero de linhas da segunda matriz a ser informada; 1.2. O usuário informa o numero de colunas da segunda matriz a ser informada; 1.3. O usuário clica no botão gerar para que seja gerada na tela de digitação a segunda matriz; 1.4. Depois de informado os valores da segunda matriz conforme regra de negocio RN06, o usuário clica em gravar; 1.5. Segue fluxo normal a partir do item 6. Pós-condição: É apresentado o resultado da operação solicitada. Número 2: Caso de uso: Calcular Escalonamento Descrição: Será descrito como é o procedimento para se fazer o calculo de escalonamento Ator: Usuário Pré-condição: Ter Valores a ser informado 7
Fluxo principal: 1. O escolhe a opção ESCALONAMENTO no menu principal da calculadora; 2. O Usuário clica em gerar, para que seja gerada a matriz na tela de digitação; 3. O Usuário digita os valores na matriz gerada, obedecendo a regra negocio RN07, o usuário clica em gravar; 4. Usuário clica em calcular para que o sistema processe as informações; 5. O sistema apresenta na tela o resultado. Pós-condição: É apresentado o resultado da operação solicitada. Número 3: Caso de uso: Calcular Determinante Descrição: Será descrito como é o procedimento para se fazer o calculo de Determinante de uma matriz conforme Regra de Negocio RN04. Ator: Usuário Pré-condição: Ter Valores a ser informado Fluxo principal: 1. O escolhe a opção DETERMINANTE no menu principal da calculadora; 2. O Usuário informa qual a ordem da matriz que deseja calcular; 3. O Usuário digita os valores na matriz gerada, obedecendo a regra negocio RN06, o usuário clica em gravar; 4. O Usuário clica em calcular para que o sistema processe as informações; 5. O sistema apresenta na tela o resultado. Pós-condição: É apresentado o resultado da operação solicitada. Número 4: Caso de uso: Calcular Conjuntos Descrição: Será descrito os procedimentos utilizados pelo usuário para que seja efetuada as operações com Conjuntos. Ator: Usuário Pré-condição: Saber quantos registros será necessário gerar de cada seqüencia e qual será a quantidade de registros para o resultado. Fluxo principal: 8
1. O escolhe a opção CALCULOS COM CONJUNTOS no menu principal da calculadora; 2. O usuário escolhe qual será o tipo de operação que será efetuado com os conjuntos; 3. O usuário escolhe qual será a seqüencia do primeiro conjunto; 4. O usuário escolhe qual será a seqüencia do segundo conjunto; 5. O usuário informar qual a quantidade de registros que será gerado para o conjunto 1; 6. O usuário informar qual a quantidade de registros que será gerado para o conjunto 2; 7. O usuário informar qual a quantidade de registros que será gerado para o resultado; 8. O usuário clica em calcular; 9. O sistema devera apresentar na tela de resultados os valores do resultado. Tratamento das Exceções: 1. Não informado o tipo de operação 1.1. O sistema Informa através de mensagem de sistema que não foi informada a operação; 1.2. Segue fluxo normal a partir do item 2. 2. Não informado a seqüencia do Conjunto 1 2.1. O sistema informa através de mensagem de sistema que não foi informada a seqüencia do Conjunto 1; 2.2. Segue Fluxo normal a partir do item 3. 3. Não informado a seqüencia do Conjunto 2 3.1. O sistema informa através de mensagem de sistema que não foi informada a seqüencia do Conjunto 2; 3.2. Segue Fluxo normal a partir do item 4. Pós-condição: É apresentado o resultado da operação solicitada. 3.3 Glossário Neste projeto de especificação de software existem alguns nomes específicos, segue lista para melhor entendimento: 1. USUÁRIO A pessoa que estará utilizando a calculadora, logo usuário do sistema que foi criado; 2. SISTEMA O sistema que esta sendo citado é a própria calculadora aplicada. 9
4. Classes de Projeto 10