Проектирование модели прогнозирования финансовой устойчивости предприятия

Суть метода взвешенных тангенсов и фазовых трендов. Характеристика временных рядов на базе графов и матриц подобия. Построение модели внешне несвязанных регрессий. Этапы анализа и проектирования веб-приложения. Особенность тестирования программы.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 21.09.2018
Размер файла 2,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

{

Label8.Visible = true;

if (CheckBoxList1.Items[0].Selected != true)

{

Label6.Visible = true;

Label6.Text = "Текущие обязательства";

TextBox1.Visible = true;

if (TextBox1.Text != "")

{

double tek = Convert.ToDouble(TextBox1.Text);

Label9.Text = "По Спрингейту: " + ec.Sprin(my_data, tek);

Label9.Visible = true;

Label13.Visible = true;

}

}

else

{

Label7.Visible = true;

Label7.Text = "Текущие обязательства";

TextBox2.Visible = true;

if (TextBox2.Text != "")

{

double tek = Convert.ToDouble(TextBox2.Text);

Label10.Text = "По Спрингейту: " + ec.Sprin(my_data, tek);

Label10.Visible = true;

Label13.Visible = true;

}

}

}

if (CheckBoxList1.Items[2].Selected == true)

{

Label8.Visible = true;

if (CheckBoxList1.Items[1].Selected != true)

{

if (CheckBoxList1.Items[0].Selected != true)

{

Label6.Visible = true;

Label6.Text = "Средняя стоимость активов";

TextBox1.Visible = true;

Label7.Visible = true;

Label7.Text = "Затраты компании";

TextBox2.Visible = true;

if (TextBox1.Text != "" && TextBox2.Text != "")

{

double act = Convert.ToDouble(TextBox1.Text);

double zat = Convert.ToDouble(TextBox2.Text);

Label9.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label9.Visible = true;

Label13.Visible = true;

}

}

else

{

Label7.Visible = true;

Label7.Text = "Средняя стоимость активов";

TextBox2.Visible = true;

Label14.Visible = true;

Label14.Text = "Затраты компании";

TextBox3.Visible = true;

if (TextBox2.Text != "" && TextBox3.Text != "")

{

double act = Convert.ToDouble(TextBox2.Text);

double zat = Convert.ToDouble(TextBox3.Text);

Label10.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label10.Visible = true;

Label13.Visible = true;

}

}

}

else

{

if (CheckBoxList1.Items[0].Selected != true)

{

Label7.Visible = true;

Label7.Text = "Средняя стоимость активов";

TextBox2.Visible = true;

Label14.Visible = true;

Label14.Text = "Затраты компании";

TextBox3.Visible = true;

if (TextBox2.Text != "" && TextBox3.Text != "")

{

double act = Convert.ToDouble(TextBox2.Text);

double zat = Convert.ToDouble(TextBox3.Text);

Label11.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label10.Visible = true;

Label13.Visible = true;

}

}

else

{

Label14.Visible = true;

Label14.Text = "Средняя стоимость активов";

TextBox3.Visible = true;

Label15.Visible = true;

Label15.Text = "Затраты компании";

TextBox4.Visible = true;

if (TextBox3.Text != "" && TextBox4.Text != "")

{

double act = Convert.ToDouble(TextBox3.Text);

double zat = Convert.ToDouble(TextBox4.Text);

Label11.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label11.Visible = true;

Label13.Visible = true;

}

}

}

}

if (CheckBoxList1.Items[3].Selected == true)

{

Label8.Visible = true;

if (CheckBoxList1.Items[2].Selected != true)

{

if (CheckBoxList1.Items[1].Selected != true)

{

if (CheckBoxList1.Items[0].Selected != true)

{

Label6.Visible = true;

Label6.Text = "Средняя стоимость активов";

TextBox1.Visible = true;

Label7.Visible = true;

Label7.Text = "Текущие обязательства";

TextBox2.Visible = true;

if (TextBox1.Text != "" && TextBox2.Text != "")

{

double act = Convert.ToDouble(TextBox1.Text);

double zat = Convert.ToDouble(TextBox2.Text);

Label9.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label9.Visible = true;

Label13.Visible = true;

}

}

else

{

Label7.Visible = true;

Label7.Text = "Средняя стоимость активов";

TextBox2.Visible = true;

Label14.Visible = true;

Label14.Text = "Текущие обязательства";

TextBox3.Visible = true;

if (TextBox2.Text != "" && TextBox3.Text != "")

{

double act = Convert.ToDouble(TextBox2.Text);

double zat = Convert.ToDouble(TextBox3.Text);

Label10.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label10.Visible = true;

Label13.Visible = true;

}

}

}

else

{

if (CheckBoxList1.Items[0].Selected != true)

{

Label7.Visible = true;

Label7.Text = "Средняя стоимость активов";

TextBox2.Visible = true;

if (TextBox2.Text != "" && TextBox1.Text != "")

{

double act = Convert.ToDouble(TextBox2.Text);

double zat = Convert.ToDouble(TextBox1.Text);

Label10.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label10.Visible = true;

Label13.Visible = true;

}

}

else

{

Label14.Visible = true;

Label14.Text = "Средняя стоимость активов";

TextBox3.Visible = true;

if (TextBox3.Text != "" && TextBox2.Text != "")

{

double act = Convert.ToDouble(TextBox3.Text);

double zat = Convert.ToDouble(TextBox2.Text);

Label11.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label11.Visible = true;

Label13.Visible = true;

}

}

}

}

else

{

if (CheckBoxList1.Items[1].Selected != true)

{

if (CheckBoxList1.Items[0].Selected != true)

{

Label14.Visible = true;

Label14.Text = "Текущие обязательства";

TextBox3.Visible = true;

if (TextBox1.Text != "" && TextBox3.Text != "")

{

double act = Convert.ToDouble(TextBox1.Text);

double zat = Convert.ToDouble(TextBox3.Text);

Label10.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label13.Visible = true;

}

}

else

{

Label15.Visible = true;

Label15.Text = "Текущие обязательства";

TextBox4.Visible = true;

if (TextBox2.Text != "" && TextBox4.Text != "")

{

double act = Convert.ToDouble(TextBox2.Text);

double zat = Convert.ToDouble(TextBox4.Text);

Label11.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label11.Visible = true;

Label13.Visible = true;

}

}

}

else

{

if (CheckBoxList1.Items[0].Selected != true)

{

if (TextBox1.Text != "" && TextBox2.Text != "")

{

double act = Convert.ToDouble(TextBox2.Text);

double zat = Convert.ToDouble(TextBox1.Text);

Label11.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label11.Visible = true;

Label13.Visible = true;

}

}

else

{

if (TextBox2.Text != "" && TextBox3.Text != "")

{

double act = Convert.ToDouble(TextBox3.Text);

double zat = Convert.ToDouble(TextBox2.Text);

Label12.Text="По Сайфулина-Кадыкова:"+ec.Say(my_data,act,zat);

Label12.Visible = true;

Label13.Visible = true;

}

}

}

}

}

}

}

}

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Data;

namespace WebApplication1

{

public class Econometric_model

{

double[] Zh_y = new double[8] { 0.03037293, 0.004508092, 0.012287257, 0.014187398, 0.014491574, -0.076430333, -0.069947505, 0.004129624 };

double[] Tr_y = new double[8] { 0.388894539, 0.468095538, 0.439915323, 0.616140321, 0.418361232, 0.359315784, 0.38452303, 0.399975509 };

double [,] Zh_x = new double [8, 3] { { 1, 2989, 95422 }, { 1, 849, 187479 }, { 1, 2913, 241075 }, { 1, 4167, 300523 }, { 1, 3195, 327039 }, { 1, -25463, 356588 }, { 1, -25389, 386235 }, { 1, 1572, 413577 } };

double[,] Tr_x = new double [8, 5] { { 1, 3232, 801, -22617, 1689 }, { 1, 5091, 800, -49382, 5092 }, { 1, 9883, 1000, -39331, 3430 }, { 1, 13305, 6224, -24388, 2439 }, { 1, 11843, 4579, -42729, 1471 }, { 1, 12667, 99, -42514, 1086 }, { 1, 11706, 700, -46679, 2384 }, { 1, 14908, 700, -34238, 36 } };

double[] Zh_uhat_full = new double[8] { 0.007175, -0.007661, -0.003023, -0.001617, 0.002891, -0.003684, 0.004145, 0.001774 };

double[] Tr_uhat_full = new double[8] { -0.00411, 0.02496, -0.02875, 0.006275, - 0.006795, -0.005897, -0.00892, 0.02324 };

double[] Beta = new double[12] { 0.985599, 2.02E-08, -6.71E-07, 1.94E-08, 0.0195856, 2.89E-06, -5.26E-08, 0.380329, 1.11E-05, 1.42E-05, 5.27E-06, 5.01E-05 };

public double SUR_data(DataSet data, DataSet prog)

{

int count = data.Tables["XLData"].Rows.Count;

double[] y = new double[count];

double[] y_raschet = new double[count];

double [,] x = new double [count, 4];

double[] uhat = new double[count];

for (int i = 0; i < count; i++)

x[i, 0] = 1;

for (int i = 0; i < count; i++)

{

y[i] = (double)data.Tables["XLData"].Rows[i][11];

x[i, 1] = (double)data.Tables["XLData"].Rows[i][2];

x[i, 2] = (double)data.Tables["XLData"].Rows[i][5];

x[i, 3] = (double)data.Tables["XLData"].Rows[i][10];

y_raschet[i] = 0.985599 + x[i, 1] * 2.02E-08 - 6.71E-07 * x[i, 2] + 1.94E-08 * x[i, 3];

uhat[i] = y[i] - y_raschet[i];

}

double [] result=Matrix(y, x, count, uhat);

double x2 = (double)prog.Tables["XLData2"].Rows[0][2];

double x5 = (double)prog.Tables["XLData2"].Rows[0][5];

double x10 = (double)prog.Tables["XLData2"].Rows[0][10];

double res = result[0] + x2 * result[1] + result[2] * x5 + result[3] * x10;

return res;

}

public double Regres_data(DataSet data)

{

double x1 = (double)data.Tables["XLData2"].Rows[0][1];

double x3 = (double)data.Tables["XLData2"].Rows[0][3];

double x5 = (double)data.Tables["XLData2"].Rows[0][5];

double res = 0.987 - 2.57E-08 * x1 + 3.06E-08 * x3 - 6.51E-07 * x5;

return res;

}

public double[] Matrix(double[] y, double [,] x, int count, double[] uhat)

{

double[] Sur_y = new double[count * 3];

double [,] Sur_x = new double [count * 3, 12];

double[] Zh_uhat = uhat_correct(Zh_uhat_full, count);

double[] Tr_uhat = uhat_correct(Tr_uhat_full, count);

for (int i = 0; i < Sur_y.Length; i++)

{

if (i < count) Sur_y[i] = y[i];

else if (i < count * 2) Sur_y[i] = Zh_y[i-count];

else Sur_y[i] = Tr_y[i-count*2];

}

for (int i = 0; i < Sur_y.Length; i++)

for (int j = 0; j < 12; j++)

{

if (i < count)

{

if (j < 4) Sur_x[i, j] = x[i, j];

else Sur_x[i, j] = 0;

}

else if (i < count * 2)

{

if (j < 4) Sur_x[i, j] = 0;

else if (j < 7) Sur_x[i, j] = Zh_x[i-count, j-4];

else Sur_x[i, j] = 0;

}

else

{

if (j < 7) Sur_x[i, j] = 0;

else Sur_x[i, j] = Tr_x[i-count*2, j-7];

}

}

double[,] cov = new double[3, 3] { { Cov(uhat, uhat), Cov(uhat, Zh_uhat), Cov(uhat, Tr_uhat) }, { Cov(Zh_uhat, uhat), Cov(Zh_uhat, Zh_uhat), Cov(Zh_uhat, Tr_uhat) }, { Cov(Tr_uhat, uhat), Cov(Tr_uhat, Zh_uhat), Cov(Tr_uhat, Tr_uhat) } };

double[,] inverse_cov = inverse_matrix(cov);

double[,] one_matr = new double[count, count];

for (int i = 0; i < count; i++)

for (int j = 0; j < count; j++)

if (i == j) one_matr[i, j] = 1;

else one_matr[i, j] = 0;

double[,] kroneker = Kroneker(count, inverse_cov, one_matr);

double[,] Sur_x_trans = Transp(Sur_x, count);

double[,] first = Multipl(Sur_x_trans, kroneker);

double[,] second = Multipl(first, Sur_x);

double[,] third = inverse_matrix(second);

double[,] fourth = Multipl(third, Sur_x_trans);

double[,] fifth = Multipl(fourth, kroneker);

double[] resultmatrix = Multipl_1(fifth, Sur_y);

return resultmatrix;

}

public double Cov(double[] arr1, double[] arr2)

{

double x_y = 0;

double x = 0;

double y = 0;

for (int i = 0; i < arr1.Length; i++)

x_y += arr1[i] * arr2[i];

x_y = x_y / arr1.Length;

for (int i = 0; i < arr1.Length; i++)

x += arr1[i];

x = x / arr1.Length;

for (int i = 0; i < arr2.Length; i++)

y += arr2[i];

y = y / arr2.Length;

double cov = x_y - x * y;

return cov;

}

public double[] uhat_correct(double[] arr, int count)

{

double[] temp = new double[count];

for (int i = 0; i < count; i++)

temp[i] = arr[i];

return temp;

}

public double[,] Kroneker(int count, double[,] inverse_cov, double[,] one_matr)

{

double[,] kroneker = new double[count * 3, count * 3];

int str = 0;

int stl = 0;

int kroneker_icount = count;

int kroneker_jcount = count;

foreach (double el in inverse_cov)

{

int k = 0;

for (int i = str; i < kroneker_icount; i++)

{

int m = 0;

for (int j = stl; j < kroneker_jcount; j++)

{

kroneker[i, j] = el * one_matr[k, m];

m++;

}

k++;

}

if (k == count)

{

kroneker_jcount = kroneker_jcount + count;

stl = stl + count;

}

if (stl == count * 3)

{

kroneker_jcount = count;

str = kroneker_icount;

kroneker_icount = kroneker_icount + count;

stl = 0;

}

}

return kroneker;

}

public double[,] Transp(double[,]x, int count)

{

double[,] trans = new double[12,count * 3];

for (int i = 0; i < count*3; i++)

for (int j = 0; j < 12; j++)

trans[j, i] = x[i, j];

return trans;

}

public double[,] Multipl(double[,] a, double[,] b)

{

int a_rows=a.GetLength(0);

int b_rows=b.GetLength(0);

int b_col=b.GetLength(1);

double[,] multi = new double[a_rows, b_col];

for (int i = 0; i < a_rows; i++) // каждая строка A

{

for (int j = 0; j < b_col; j++) // каждый столбец B

for (int k = 0; k < b_rows; k++)

multi[i, j] += a[i, k] * b[k, j];

}

return multi;

}

public double[] Multipl_1(double[,] a, double[] b)

{

double[] result = new double[a.GetLength(0)];

for (int i = 0; i < a.GetLength(0); ++i) // каждая строка A

for (int k = 0; k < a.GetLength(1); ++k)

result[i] += a[i, k] * b[k];

return result;

}

public double[,] inverse_matrix(double[,] hhh)

{ //'единичная матрица

// h = 3; //активаровать для проверки. результат найдите тут: http://matrixcalc.org/

int h = hhh.GetLength(0);

double[,] ggg = new double[h, h];// единичная матрица

// Dim A_edin(k + 1, k + 1) As Double 'затем она перейдёт в обратную

for (int i = 0; i < h; )

{

for (int j = 0; j < h; )

{

if (i == j)

{ ggg[i, j] = 1; }

else

{ ggg[i, j] = 0; }

j++;

}

i++;

}

for (int i = 0; i < h; i++)

{

// normalizing row (making first element =1)

double tmp = hhh[i, i];

for (int j = h - 1; j >= 0; j--)

{

ggg[i, j] /= tmp;

hhh[i, j] /= tmp;

}

// excluding i-th element from each row except i-th one

for (int j = 0; j < h; j++)

if (j != i)

{

tmp = hhh[j, i];

for (int k = h - 1; k >= 0; k--)

{

ggg[j, k] -= ggg[i, k] * tmp;

hhh[j, k] -= hhh[i, k] * tmp;

}

}

}

// now e contains inverted matrix so we need only to copy e to matrix

for (int i = 0; i < h; i++)

for (int j = 0; j < h; j++)

hhh[i, j] = ggg[i, j];

return hhh;

}

public string Lis (DataSet data, double pr)

{

double obor_capital = (double)data.Tables["XLData2"].Rows[0][2] - (double)data.Tables["XLData2"].Rows[0][5];

double x1 = obor_capital / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double x2 = (double)data.Tables["XLData2"].Rows[0][9] / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double x3 = pr / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double x4 = (double)data.Tables["XLData2"].Rows[0][3] / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double lis = Math.Round(0.063 * x1 + 0.092 * x2 + 0.057 * x3 + 0.001 * x4, 4);

string inter = "";

if (lis > 0.037) inter = " - низкая вероятность";

else inter = "- высокая вероятность";

string result = "расчетный показатель = " + lis.ToString() + inter;

return result;

}

public string Sprin(DataSet data, double tek)

{

double obor_capital = (double)data.Tables["XLData2"].Rows[0][2] - (double)data.Tables["XLData2"].Rows[0][5];

double x1 = obor_capital / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double x2 = (double)data.Tables["XLData2"].Rows[0][8] / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double x3 = (double)data.Tables["XLData2"].Rows[0][9] / tek;

double x4 = (double)data.Tables["XLData2"].Rows[0][6] / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double spr = Math.Round(1.03 * x1 + 3.07 * x2 + 0.66 * x3 + 0.4 * x4, 4);

string inter = "";

if (spr > 0.862) inter = " - низкая вероятность";

else inter = "- высокая вероятность";

string result = "расчетный показатель = " + spr.ToString() + inter;

return result;

}

public string Dav (DataSet data, double sr_act, double zat)

{

double obor_capital = (double)data.Tables["XLData2"].Rows[0][2] - (double)data.Tables["XLData2"].Rows[0][5];

double x1 = obor_capital / ((double)data.Tables["XLData2"].Rows[0][1] + (double)data.Tables["XLData2"].Rows[0][2]);

double x2 = (double)data.Tables["XLData2"].Rows[0][10] / (double)data.Tables["XLData2"].Rows[0][3];

double x3 = (double)data.Tables["XLData2"].Rows[0][6] / sr_act;

double x4 = (double)data.Tables["XLData2"].Rows[0][10] / zat;

double dav = Math.Round(8.38 * x1 + x2 + 0.054 * x3 + 0.063 * x4, 4);

string inter = "";

if (dav > 0.42) inter = " - вероятность банкротства меньше 10%";

else if (dav > 0.32) inter = "- вероятность банкротства от 10% до 35%";

else if (dav > 0.18) inter = "- вероятность банкротства от 35% до 50%";

else if (dav > 0) inter = "- вероятность банкротства от 60% до 80%";

else inter = "- вероятность банкротства от 90% до 100%";

string result = "расчетный показатель = " + dav.ToString() + inter;

return result;

}

public string Say(DataSet data, double sr_act, double tek)

{

double x1 = (double)data.Tables["XLData2"].Rows[0][3] / (double)data.Tables["XLData2"].Rows[0][2];

double x2 = (double)data.Tables["XLData2"].Rows[0][2] / tek;

double x3 = (double)data.Tables["XLData2"].Rows[0][6] / sr_act;

double x4 = (double)data.Tables["XLData2"].Rows[0][8] / (double)data.Tables["XLData2"].Rows[0][6];

double x5 = (double)data.Tables["XLData2"].Rows[0][10] / (double)data.Tables["XLData2"].Rows[0][3];

double say = Math.Round(2 * x1 + 0.1 * x2 + 0.08 * x3 + 0.045 * x4 + x5, 4);

string inter = "";

if (say >= 1) inter = " - низкая вероятность";

else inter = "- высокая вероятность";

string result = "расчетный показатель = " + say.ToString() + inter;

return result;

}

}

Таблица Г.1. Тесты по стратегии черного ящика

Входные данные

Ожидаемый результат

Полученный результат

Тест

Excel-файл с числовыми данными не по шаблону.

Год {2009, 2010, 2011}

1 переменная {23,24,25}

….

Ошибка загрузки

Сообщение «Ошибка: неверных формат заголовков. Заполните данные в подготовленном шаблоне»

+

Excel-файл с числовыми данными по шаблону.

Год {2009, 2010, 2011}

X1 {23,24,25}

….

Загрузка данных, расчет результатов

Значение прогноза коэффициента финансовой стабильности:

по SUR-модели: 0,5112 или 51,12%

по регрессионной модели: 0,4852 или 48,52%

Таблица с данными

+

Excel-файл не с числовыми данными не по шаблону.

Год {2009, 2010, 2011}

1 переменная {23,24,25}

….

Ошибка загрузки

Сообщение «Ошибка: неверных формат данных»

+

Excel-файл не с числовыми данными по шаблону.

Год {2009, 2010, 2011}

X1{23,24,25}

….

Ошибка загрузки

Сообщение «Ошибка: неверных формат данных»

+

Не выбрана ни одна модель:

галочка не проставлена

Ошибка

Сообщение: «Необходимо выбрать хотя бы одно значение»

+

Выбор моделей: модель Лиса

Доступ к вводу верных доп. полей

Доп. поле «Нераспределенная прибыль»

+

Выбор моделей: модель Спрингейта

Доступ к вводу верных доп. полей

Доп. поле «Текущие обязательства»

+

Выбор моделей: модель Давыдовой-Беликова

Доступ к вводу верных доп. полей

Доп. поля «Средняя стоимость активов» и «Затраты компании»

+

Выбор моделей: модель Сайфулина-Кадыкова

Доступ к вводу верных доп. полей

Доп. поля «Средняя стоимость активов» и «Текущие обязательства»

+

Выбор моделей: модель Лиса и модель Спрингейта

Доступ к вводу верных доп. полей

Доп. поля «Нераспределенная прибыль» и «Текущие обязательства»

+

Выбор моделей: модель Лиса, модель Спрингейта и модель Давыдовой-Беликова

Доступ к вводу верных доп. полей

Доп. поля «Нераспределенная прибыль», «Текущие обязательства», «Средняя стоимость активов» и «Затраты компании»

+

Выбор моделей: все модели

Доступ к вводу верных доп. полей

Доп. поля «Нераспределенная прибыль», «Текущие обязательства», «Средняя стоимость активов» и «Затраты компании»

+

Выбор моделей: модель Спрингейта и модель Давыдовой_Беликова

Доступ к вводу верных доп. полей

Доп. поля «Текущие обязательства», «Средняя стоимость активов» и «Затраты компании»

+

Таблица Г.1. Тесты по стратегии черного ящика (продолжение)

Входные данные

Ожидаемый результат

Полученный результат

Тест

Выбор моделей: модель Спрингейта, модель Давыдовой_Беликова и модель Сайфулина-Кадыкова

Доступ к вводу верных доп. полей

Доп. поля «Текущие обязательства», «Средняя стоимость активов» и «Затраты компании»

+

Выбор моделей: модель Давыдовой_Беликова и модель Сайфулина-Кадыкова

Доступ к вводу верных доп. полей

Доп. поля «Текущие обязательства», «Средняя стоимость активов» и «Затраты компании»

+

Ввод не числовых дополнительных данных: раыарворлвы

Ошибка ввода

Блокировка ввода

+

Ввод слишком больших числовых значений: 4342354354355345435435435435455

Ошибка ввода

Блокировка ввода по истечению лимита символов

+

Ввод десятичных значений через запятую:

Нераспределенная прибыль: 10,2

Загрузка данных

Вероятность банкроства компании:

По Лису: 0,037 - низкая вероятность

+

Ввод десятичных значений через точку:

Нераспределенная прибыль: 10.2

Ошибка

Сообщение: «Введите верные значения. Десятичные числа указываются через запятую»

+

Ввод пустого поля:

Нераспределенная прибыль: _____

Ошибка

Сообщение: «Введите верные значения. Десятичные числа указываются через запятую»

+

Одно значение буквы, другое число:

Нераспределенная прибыль: 10.2

Текущие обязательства: авроврмов

Ошибка

Сообщение: «Введите верные значения. Десятичные числа указываются через запятую»

+

Одно значение пустое, другое число:

Нераспределенная прибыль: 10.2

Текущие обязательства: ______

Ошибка

Сообщение: «Введите верные значения. Десятичные числа указываются через запятую»

+

Оба значение числа:

Нераспределенная прибыль: 10.2

Текущие обязательства: 11

Расчет вероятности банкротства

Вероятность банкротства компании:

По Лису: расчетный показатель = 0,0371 - низкая вероятность

По Спрингейту: расчетный показатель = 15846,0485 - низкая вероятность

+

Размещено на Allbest.ru

...

Подобные документы

  • Описание проектного решения стратегической системы, этапы объектно-ориентированного анализа и проектирования. Описание связей между объектами. Программная реализация, построение модели состояний объекта. Руководство пользователя и описание программы.

    курсовая работа [388,8 K], добавлен 17.11.2011

  • Понятие сетей и связи их компонентов. Характеристики и структура сетей. Основные модели, описывающие поведение сетей. Проектирование и реализация взвешенных сетей: требования к интерфейсу, выбор среды разработки, структура приложения. Анализ результатов.

    курсовая работа [1,1 M], добавлен 29.06.2012

  • Сущность обратного проектирования, принцип работы лазерных сканеров. Этапы обратного проектирования модели существующего объекта. Построение модели по фотографиям, обработка полигональной сетки и построение параметрических поверхностей в Geomagic Wrap.

    курсовая работа [4,8 M], добавлен 19.11.2017

  • Приведена оптимизация расходов и трудозатрат персонала. Реализация модели ARIMA (модели Бокса-Дженкинса), являющейся интегрированной композицией метода авторегрессии и модели скользящего среднего. Применение средств программного продукта Matlab 2013a.

    дипломная работа [876,7 K], добавлен 19.09.2019

  • Разработка информационно-торгового сайта для ООО "Аккаунт". Характеристика компании, основные принципы работы с клиентами. Построение концептуальной модели базы данных: структура, этапы проектирования. Создание интернет-сайта, программы для тестирования.

    дипломная работа [1,2 M], добавлен 29.05.2012

  • Понятие информации, автоматизированных информационных систем и банка данных. Общая характеристика описательной модели предметной области, концептуальной модели и реляционной модели данных. Анализ принципов построения и этапы проектирования базы данных.

    курсовая работа [1,7 M], добавлен 18.01.2012

  • История и суть задачи "Ханойские башни", построение ее математической модели в виде рекуррентного соотношения. Решение задачи с помощью рекурсии и кода Грея, ее связь с теорией графов. Анализ временных затрат. Различные головоломки с измененным условием.

    курсовая работа [1021,6 K], добавлен 06.08.2013

  • Теоретические основы проектирования и разработки баз данных. Этапы физической реализации. Даталогическое и инфологическое проектирование. Определение сущностей, атрибутов, взаимосвязей между сущностями, ключей. Построение ER-модели. Управляющая программа.

    курсовая работа [1,5 M], добавлен 02.06.2015

  • Методика и основные этапы проектирования логической и физической модели базы данных. Реализация спроектированной модели в системе управления базами данных, принципы создания и апробация специального клиентского приложения для работы данной программы.

    курсовая работа [1,3 M], добавлен 27.06.2013

  • Разработка технического задания на проектирование, определение требований к программе. Предварительный выбор метода решения синтаксического анализатора, проектирование программного приложения, конфигурация технических средств программы и её тестирование.

    курсовая работа [28,5 K], добавлен 28.06.2011

  • Построение концептуальной модели, процесс моделирования смыслового наполнения базы данных. Основные компоненты концептуальной модели. Построение реляционной модели. Целостность данных в реляционной базе. Нормализация. Проектирование базы данных в ACCESS.

    курсовая работа [1,8 M], добавлен 29.10.2008

  • Общая характеристика ателье "Вита", схема модели рабочего процесса. Исследование заданной системы с помощью моделирования динамических рядов, модели типа "система массового облуживания". Построение имитационной модели деятельности данного ателье.

    курсовая работа [1,4 M], добавлен 01.06.2016

  • Основные области проектирования информационных систем: базы данных, программы (выполнение к запросам данных), топология сети, конфигурации аппаратных средств. Модели жизненного цикла программного обеспечения. Этапы проектирования информационной системы.

    реферат [36,1 K], добавлен 29.04.2010

  • Структура математической модели линейной задачи, алгоритм симплекс-метода. Разработка программы: выбор языка программирования, входные и выходные данные, пользовательский интерфейс. Описание программы по листингу, тестирование, инструкция по применению.

    курсовая работа [1,2 M], добавлен 31.05.2013

  • Создание модели с использованием шаблона, предложенного программой по умолчанию. Создание твердотельной модели. Построение траектории обработки и получение управляющей программы. Построение траектории обработки профиля. Отображение удаленного материала.

    курсовая работа [1,3 M], добавлен 25.07.2012

  • Суть программирования с использованием библиотеки OpenGL, его назначение, архитектура, преимущества и базовые возможности. Разработка приложения для построения динамического изображения трехмерной модели объекта "Компьютер", руководство пользователя.

    курсовая работа [866,8 K], добавлен 22.06.2011

  • Процессы, протекающие в отделе кадров любой организации. Проектирование ER-модели тестирования кандидатов. Разработка веб-приложения, позволяющего вносить данные о заявках на пропуска, формировать отказы и автоматически подготавливать общий отчет.

    дипломная работа [1,8 M], добавлен 05.04.2017

  • Проектирование базы данных, предназначенной для хранения информации о деканате (сотрудниках, кафедрах, факультетах, специальностях). Анализ запросов на кафедру, выделение основных необходимых записей. Построение инфологической модели приложения.

    контрольная работа [85,8 K], добавлен 12.03.2013

  • Проведение исследования опыта взаимодействия в сети. Методы улучшения согласования с пользователем web-сервиса. Особенность проектирования онлайн-приложения. Изучение разработки контроллеров и моделей. Характеристика создания интерфейса программы.

    дипломная работа [1,3 M], добавлен 11.08.2017

  • Пример матрицы смежности для соответствующей сети. Функция распределения степеней узлов. Вариант матрицы смежности для взвешенной сети. Распределение степеней для случайных графов. Требования к интерфейсу. Алгоритм модели Баррат-Бартелэмью-Веспиньяни.

    контрольная работа [1,4 M], добавлен 13.06.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.