Файл: Курсовая работа по предмету Разработка кода информационных систем Тема работы Разработка информационной системы для организации работы дорожных служб.docx

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2024

Просмотров: 97

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Вывод из пройденных тестов, что система готова к работе, но имеется не критичные недостатки, которые не влияют на работу системы. Исправления ошибок нужно лишь для более удобного интерфейса программы.


Заключение


В данной работе был пройден полный путь разработки информационной системы начиная с планирования до тестирования.

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

Конкретно были выполнены следующие задачи. Изучение работы организации, для которой строится система с учётом плана работы и особенностях организации. Составление плана разработки системы. Разработка сценария использования системы для оптимизации работы организации и требований к техническому заданию.

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

Следующий шаг — проектирование работы информативной системы. После идет начало формирования базы на основе данных организации. Далее для создания информативной системы был разработан макет системы для работы с данными и последующие написание кода элементов для работы приложения.

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

Далее подготовка к ведению к исполнение информационной системы. Подготовка мануала и обучение сотрудников работе с системой. Инсталляция программы.

В итоге мы получили систему, через которою руководители смогут назначать сотрудников в состав бригад и отправлять их на задания удалено.

Библиографический список


  1. Чистая архитектура. Искусство разработки программного обеспечения | Роберт Мартин — Питер, 2018 г. - 410 с,: ISBN 978-5-4461-0772-8

  2. Программирование на C# для начинающих. Основные сведения | Алексей Васильев — Эксмо, 2018 г. 586 с,: ISBN 978-5-04-092519-3

  3. Эффективное программирование на C#. 50 способов улучшения кода | Вагнер Билл — Вильямс, 2017 г. 224 с,: ISBN 978-5-9908911-2

  4. CLR via C#. Программирование на платформе Microsoft .NET Framework 4.5 на языке C#. 4-е изд.| Вагнер Билл — Вильямс, 2017 г. 224 с,: ISBN 978-5-9908911-2

  5. C# 7 и .NET Core. Кросс-платформенная разработка для профессионалов. 3-е издание | Прайс Марк— Питер, 2017 г. 640 с,: ISBN 978-5-4461-0516-8

  6. Язык программирования C# 7 и платформы .NET и .NET Core | Филипп Джепикс, Эндрю Троелсен— Диалектика-Вильямс, 2017 г. 1330с,: ISBN 978-5-6040723-1-8

  7. C# 7.0. Справочник. Полное описание языка | Албахари Бен, Албахари Джозеф — АСТ, 2018 г. 1024 с,: ISBN 978-5-6040043-7-1

  8. C# 7.0. Карманный справочник | Албахари Джозеф, Албахари Бен — , 2018 г. 224 с,: ISBN 978-5-9909446-1-9

  9. ASP.NET Core MVC 2 с примерами на C# для профессионалов | Адам Фримен. — Вильямс, 2019 г. 1007 с, ISBN: 978-5-6041394-3-1

  10. Изучаем C# | Грин Дженнифер, Стиллмен Эндрю — Питер, 2020 г. 816 с,: ISBN 978-5-4461-1563-1

  11. Адаптивный код: гибкое кодирование с помощью паттернов проектирования и принципов SOLID | Холл Г.М. — Вильямс, 2019г. 448 с,: ISBN 978-5-9909445-9-6

  12. C# 7 и .NET Core. Кросс-платформенная разработка для профессионалов | Прайс Марк — Питер 2018 г. 640 с,: ISBN 978-5-4461-0516-8

  13. ASP.NET Core MVC 2 с примерами на C# для профессионалов | Фримен Адам — Диалектика, 2019 г. 1008с,: ISBN 978-5-6041-3943-1

  14. ASP.NET Core. Разработка приложений | Чамберс Джеймс, Пэкетт Дэвид — Диалектика, 2018 г. 464 с,: ISBN 978-5-496-03071-7

  15. См. дополнительные сведения о средствах пакета SDK для .NET Core и .NET Core (опубликовано: 09.09.2020, автор: Microsoft) URL: https://docs.microsoft.com/ru-ru/dotnet/core/tutorials/ (дата обращения к сайту: 20.09.2020)



Приложение 1. Скрипт базы данных


1

USE [testWork]

2

GO




3

/****** Object: Table [dbo].[brigade] Script Date: 23.09.2020 20:45:27 ******/

4

SET ANSI_NULLS ON

5

GO




6

SET QUOTED_IDENTIFIER ON

7

GO




8

CREATE TABLE [dbo].[brigade](

9




[id] [int] IDENTITY(1,1) NOT NULL,

10




[vin] [nvarchar](255) NULL,

11




[name] [nvarchar](255) NULL,

12

CONSTRAINT [PK_brigade] PRIMARY KEY CLUSTERED

13

(




14




[id] ASC

15

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

16

) ON [PRIMARY]

17







18

GO




19

/****** Object: Table [dbo].[employee] Script Date: 23.09.2020 20:45:28 ******/

20

SET ANSI_NULLS ON

21

GO




22

SET QUOTED_IDENTIFIER ON

23

GO




24

SET ANSI_PADDING ON

25

GO




26

CREATE TABLE [dbo].[employee](

27




[id] [int] IDENTITY(1,1) NOT NULL,

28




[surname] [nvarchar](255) NULL,

29




[name] [nvarchar](255) NULL,

30




[patronymic] [nvarchar](255) NULL,

31




[specialty] [nvarchar](255) NULL,

32




[login] [nvarchar](255) NULL,

33




[password] [nvarchar](255) NULL,

34




[dostoop] [float] NULL,

35




[brigade] [int] NULL,

36




[image] [varbinary](max) NULL,

37

CONSTRAINT [PK_employee] PRIMARY KEY CLUSTERED

38

(




39




[id] ASC

40

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

41

) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

42







43

GO




44

SET ANSI_PADDING OFF

45

GO




46

/****** Object: Table [dbo].[Factory] Script Date: 23.09.2020 20:45:28 ******/

47

SET ANSI_NULLS ON

48

GO




49

SET QUOTED_IDENTIFIER ON

50

GO




51

CREATE TABLE [dbo].[Factory](

52




[Kod] [nvarchar](255) NULL,

53




[Factory] [nvarchar](255) NULL

54

) ON [PRIMARY]

55







56

GO




57

/****** Object: Table [dbo].[tasks] Script Date: 23.09.2020 20:45:28 ******/

58

SET ANSI_NULLS ON

59

GO




60

SET QUOTED_IDENTIFIER ON

61

GO




62

CREATE TABLE [dbo].[tasks](

63




[id] [int] IDENTITY(1,1) NOT NULL,

64




[industry] [nvarchar](255) NULL,

65




[name] [nvarchar](255) NULL,

66




[brigade] [int] NULL,

67

CONSTRAINT [PK_tasks$] PRIMARY KEY CLUSTERED

68

(




69




[id] ASC

70

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

71

) ON [PRIMARY]

72







73

GO




74

/****** Object: Table [dbo].[Year] Script Date: 23.09.2020 20:45:28 ******/

75

SET ANSI_NULLS ON

76

GO




77

SET QUOTED_IDENTIFIER ON

78

GO




79

CREATE TABLE [dbo].[Year](

80




[Kod] [nvarchar](255) NULL,

81




[Year] [nvarchar](255) NULL

82

) ON [PRIMARY]

83







84

GO




85

ALTER TABLE [dbo].[employee] WITH CHECK ADD CONSTRAINT [FK_employee_brigade] FOREIGN KEY([brigade])

86

REFERENCES [dbo].[brigade] ([id])

87

GO




88

ALTER TABLE [dbo].[employee] CHECK CONSTRAINT [FK_employee_brigade]

89

GO




90

ALTER TABLE [dbo].[tasks] WITH CHECK ADD CONSTRAINT [FK_tasks_brigade] FOREIGN KEY([brigade])

91

REFERENCES [dbo].[brigade] ([id])

92

GO




93

ALTER TABLE [dbo].[tasks] CHECK CONSTRAINT [FK_tasks_brigade]

94

GO







Приложение 2. Фрагменты кода

Код окна авторизации


1

using System;

2

using System.Collections.Generic;

3

using System.ComponentModel;

4

using System.Data;

5

using System.Data.SqlClient;

6

using System.Drawing;

7

using System.Linq;

8

using System.Text;

9

using System.Threading.Tasks;

10

using System.Windows.Forms;

11




12

namespace testWork

13

{

14

public partial class Form1 : Form

15

{

16

SqlConnection sqlConn;

17




18

public Form1()

19

{

20

InitializeComponent();

21

}

22




23

public static class Glab

24

{

25

public static string login;//хранение логина пользователя

26

}//метод глобальных переменых

27




28

private void vxod_Click(object sender, EventArgs e)

29

{

30

sql_zapros();

31

}

32




33

private async void sql_zapros()

34

{

35

string ConnStr = @"Data Source=62.63.74.62,1433;Initial Catalog=testWork;User ID=work;Password=0303";//строка подключения

36




37

sqlConn = new SqlConnection(ConnStr); //Создание подключения

38




39

await sqlConn.OpenAsync();//открытие подключение

40




41

SqlDataReader sqlRead = null;//переменая для вывода запроса

42




43

int proverka = 0;//счетчек на количество ответов

44

bool proverkaMen = false;//переменая для записи статуса

45




46

SqlCommand comed = new SqlCommand

47

("SELECT * FROM [employee] " +

48

"WHERE [login] = @log AND " +

49

"[password] = @pass", sqlConn);//запрос на ноличиее пользователя

50

comed.Parameters.AddWithValue("@log", LoginBox.Text);//иннициация переменых

51

comed.Parameters.AddWithValue("@pass", PasswordBox.Text);

52




53

try {

54

sqlRead = await comed.ExecuteReaderAsync();//запрос в базу

55




56

int brigade = 0;

57




58

while (await sqlRead.ReadAsync())//проверка на ответ

59

{

60

if (Convert.ToDouble(sqlRead["dostoop"]) == 1.00)//проверка на статус пользователя

61

proverkaMen = true;

62

proverka++;

63




64

brigade = Convert.ToInt32(sqlRead["brigade"]);

65




66

Glab.login = LoginBox.Text;//сохраняем логин

67

}

68




69

if (proverka != 0)//открытие окна менеджера

70

{

71

Menu_men settingsForm = new Menu_men(proverkaMen, brigade);

72




73

settingsForm.Show();

74




75

if (sqlConn != null && sqlConn.State != ConnectionState.Closed)

76

sqlConn.Close();

77




78

this.Hide();

79




80

}

81

else//вывод собшение об отчуствие пользователя

82

{

83

MessageBox.Show(

84

"Неверное имя пользователя или ты пытаешся его взломать",

85

"Упс",

86

MessageBoxButtons.OK,

87

MessageBoxIcon.Question);

88




89

if (sqlConn != null && sqlConn.State != ConnectionState.Closed)

90

sqlConn.Close();

91

}

92

}

93

catch (Exception ex)

94

{

95




96

MessageBox.Show(ex.Message.ToString(), ex.Source.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Error);

97




98

if (sqlConn != null && sqlConn.State != ConnectionState.Closed)

99

sqlConn.Close();

100

}

101

finally

102

{

103

if (sqlRead != null)

104

sqlRead.Close();

105

}

106

}//запрос на вход

107




108

private void Form1_FormClosing(Object sender, FormClosingEventArgs e)

109

{

110

Clos_Avtoris();

111

}

112




113

public void Clos_Avtoris()//закрытие подключение

114

{

115

if (sqlConn != null && sqlConn.State != ConnectionState.Closed)

116

sqlConn.Close();

117

}

118




119

}

120

}