Está en la página 1de 6

IPN – ESIME – ICE

Proyecto GeoCalc-0

A. Precedentes

Un estudiante de ingeniería requiere un sistema (programa) de cómputo, para calcular el


perímetro y el área de figuras geométricas bidimensionales, tales como la circunferencia y el
triángulo, entre otras.

Se utiliza el Método del Proyecto de Ingeniería (Fase de Anteproyecto).

Programación
Orientada a
Objetos (POO)

Requerimientos Opciones Evaluación Implementación, Informe


(Problema) de y Pruebas y Técnico y
e Información Solución Selección Depuración Manual de
(Análisis) (UML) (C++) (Dev-C++) Usuario

Figura A-1. La Programación Orientada a Objetos en el Ciclo del

Se realiza la entrevista con el usuario del sistema.

B. Objetivo (Problema)

De la entrevista con el usuario del sistema, el objetivo del sistema es:

Proyectar un Sistema (programa) de cómputo para el cálculo del perímetro y el área de figuras
geométricas bidimensionales, tales como el círculo, triángulo equilátero y el cuadrado, entre
otros. Se utilizará el Método del Proyecto de Ingeniería (Anteproyecto), así como la
Programación Orientada a Objetos (Herencia), el Lenguaje de Modelado Unificado (UML) y el
Lenguaje de Programación C++. Asimismo, se utilizarán los recursos del Laboratorio de
Computación. Los entregables serán: el Programa en una USB, el Informe Técnico y el Manual
de Usuario. La fecha de entrega será el último día del mes en curso.

C. Análisis

Analizando el objetivo del proyecto, se elabora el ejemplo siguiente para el caso del círculo:
C1. Círculo
Dado el radio (Radio) de un círculo:
Perímetro = PI x 2xRadio
Área = Pi x Radio2

Radio Perímetro Área


(m) (m) (m2)
1 6.28 3.14
2 12,56 12.56
3 18.84 28.26

D. Diseño

D1. Casos de Uso

D11. Diagrama UML. El diseño del sistema se inicia con la especificación de los casos para los
que se usará dicho sistema, mediante un diagrama UML.

Los casos de uso son: a) principal, b) Círculo, c) Otra.

GeoCalc-0
Circulo

Principal
Operador
Otra

Figura. Diagrama UML de Casos de

D12. Detalle de Casos de Uso

Nombre: Principal
Id: PrnId
Actores: Operador
Precondición: El Operador (O) ha iniciado una sesión de la Aplicación
(A).
Actividades:
1. La (A) despliega en pantalla:
“GeoCalc-0”
“Cálculo del perímetro y el área de un círculo”
“Pulse una tecla para continuar.”
2. El (O) pulsa una tecla.
3. La (A) despliega:
“Radio: ”
4. El (O) teclea: 1
5. La (A) calcula el perímetro y el área, y despliega en pantalla:
“Radio= 1”
“ Perímetro= 6”
“Área= 3”
“Presione una tecla para continuar …”
6. El (O) presiona una tecla.
7. La (A) retorna al S.O.

Postcondición: el sistema retorna al Sistema Operativo.

D2. Diagrama UML de clases, métodos y principal.

D21. Clases

Principal( cBidimensional
)
aBdmPrm: Real
aBdmAra: Real

cBidimensional()

cCirculo

aCrcRdo: Real

cCirculo()
mCirculo()

E. Implementación (Codificación en C++)

//GeoCalc-01

#include<iostream>
#include<stdio.h>
#include<math.h>

using namespace std;

const int PI = 3.14;

class cBidimensional
{
protected:
float aBdmPrm;
float aBdmAra;
public:
cBidimensional()
{
aBdmPrm = 0;
aBdmAra = 0;
}
};

class cCirculo : cBidimensional


{
private:
float aCrcRdo;
public:
cCirculo()
{
aCrcRdo = 0;
}
void mCirculo(void)
{
cout<<"Calculo del Perimetro y el área de un Circulo"<<endl;
cout<<"Radio: ";
cin>>aCrcRdo;
aBdmPrm = PI*(aCrcRdo + aCrcRdo);
aBdmAra = PI*pow(aCrcRdo, 2);
cout<<endl<<"Radio= "<<aCrcRdo;
cout<<endl<<"Perimetro= "<<aBdmPrm;
cout<<endl<<"Area= "<<aBdmAra<<endl;
system("pause");
return;
}
};

int main()
{
cBidimensional oBidimensional;
cCirculo oCirculo;
oCirculo.mCirculo();
system("pause");
return 0;
}
F. Pruebas y depuración

Para las pruebas y la depuración se utiliza Dev-C++

F1. Edición y compilación.

F2. Correr.
G. Informe Técnico y Manual del Usuario.

G1. Informe Técnico.

El informe técnico es todo lo descrito arriba.

G2. Manual del Usuario.

También podría gustarte