Файл: Отчет по лабораторной работе 5 дисциплина Проектирование архитектуры и программного обеспечения автоматизированных систем.docx

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

Категория: Отчет по практике

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

Добавлен: 07.11.2023

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

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

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство науки и высшего образования Российской ФедерацииФедеральное государственное образовательное учреждение высшегообразования «Алтайский государственный технический университет им. И. И. Ползунова»Заочный институтОтчет защищен с оценкой________Преподаватель_________(подпись)«____» ______________ 2023 г.Отчетпо лабораторной работе №5дисциплина «Проектирование архитектуры и программного обеспечения автоматизированных систем»Студент группы 9ИВТ-01 Савичев С.М.Старший преподаватель Третьяков А.А.Барнаул 2023Вариант 13Цели и задачи работы:Разработка диаграммы классов и модели базы данных.Задание к работе:1. Разработать диаграмму классов программной системы;2. Разработать модель базы данных;3. Сгенерировать скрипт базы данных из разработанной модели.«Информационная система городской телефонной сети»
Задание 1.
В ходе выполнения лабораторной работы было разработано две диаграммы классов программной среды, на основе информационной системы.Рисунок 1 – Сокращенная диаграмма классов программной системы Рисунок 2 – Расширенная диаграмма классов программной системы Задание 2.Модель базы данных Microsof SQL Server «SubscribersTelephoneNetwork» Рисунок 3 – Модель базы данных «SubscribersTelephoneNetwork»В построенной модели базы данных имеются таблицы, а именно:Таблица "Subscriber" (Абонент): Отвечает за хранение информации об абонентах. Включает атрибуты, такие как идентификатор абонента, ФИО, адрес, контактные данные и другую персональную информацию.
Таблица "Gender" (Пол): Содержит список доступных полов для абонентов. Включает значения, такие как мужской, женский.Таблица "Number" (Номер): Хранит информацию о номерах телефонов. Может содержать атрибуты, такие как идентификатор номера, сам номер и статус (активен, неактивен), тарифный план, дата регистрации и баланс.Таблица "Status" (Статус): Содержит список возможных статусов для абонентов или номеров. Включает значения, такие как активный, либо заблокированный.Таблица "Calls" (Звонки): Отвечает за хранение информации о звонках, сделанных абонентами. Включает атрибуты, такие как идентификатор звонка, дата и время звонка, длительность, идентификатор исходящего и входящего номеров.Таблица "Benefit" (Льгота): Содержит информацию о льготных условиях или скидках, предоставляемых абонентам. Включает атрибуты, а именно положена льгота или нет.Таблица "Employee" (Сотрудник): Отвечает за хранение информации о сотрудниках, работающих в системе. Включает атрибуты, такие как идентификатор сотрудника, логин и пароль для доступа, ФИО, email (почту), должность и другую персональную информацию. Таблица "TariffPlan" (Тарифный план): Хранит информацию о различных тарифных планах, доступных для абонентов. Включает атрибуты, такие как идентификатор тарифного плана, название, описание, стоимость.

  • Таблица "Position" (Должность): Содержит список доступных должностей для сотрудников. Включает значения, такие как менеджер, оператор.
Каждая из этих таблиц играет определенную роль в информационной системе городской телефонной сети и содержит соответствующую информацию, необходимую для обработки данных и обеспечения функциональности системы.Задание 3.Скрипт базы данных для информационной системы система городской телефонной сети «SubscribersTelephoneNetwork».Листинг:gocreate database SubscribersTelephoneNetwork collate Cyrillic_General_CI_AS;USE [SubscribersTelephoneNetwork]GO/****** Object: Table [dbo].[Benefit] Script Date: 07.06.2023 21:15:03 ******/SET ANSI_NULLS ON

GOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Benefit]( [BenefitCode] [nchar](1) NOT NULL, [BenefitName] [nvarchar](60) NOT NULL, [Description] [nvarchar](150) NULL,CONSTRAINT [PK_Benefit] PRIMARY KEY CLUSTERED ( [BenefitCode] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[Calls] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Calls]( [IdCalls] [int] IDENTITY(1,1) NOT NULL, [IdInNumber] [int] NOT NULL, [IdOutNumber] [int] NOT NULL, [CallsDate] [date] NOT NULL, [DurationInMinute] [int] NOT NULL,CONSTRAINT [PK_Calls_1] PRIMARY KEY CLUSTERED ( [IdCalls] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[Employee] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Employee]( [IdEmployee] [int] IDENTITY(1,1) NOT NULL, [IdPosition] [int] NOT NULL, [LastName] [nvarchar](50) NOT NULL, [FirstName] [nvarchar](50) NOT NULL, [Patronymic] [nvarchar](50) NULL, [GenderCode] [nchar](1) NOT NULL, [BirthDate] [date] NOT NULL, [NumberPhone] [nvarchar](11) NOT NULL, [Email] [nvarchar](100) NULL, [Login] [nvarchar](15) NOT NULL, [Password] [nvarchar](15) NOT NULL,CONSTRAINT [PK_Employee] PRIMARY KEY CLUSTERED ( [IdEmployee] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[Gender] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Gender]( [GenderCode] [nchar](1) NOT NULL, [GenderName] [nvarchar](7) NOT NULL,CONSTRAINT [PK_Gender] PRIMARY KEY CLUSTERED ( [GenderCode] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[Number] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Number]( [IdNumber] [int] IDENTITY(1,1) NOT NULL, [IdSubscriber] [int] NOT NULL, [NumberName] [nvarchar](11) NOT NULL, [RegDate] [datetime] NOT NULL, [IdTariffPlan] [int] NULL, [Balance] [decimal](10, 2) NOT NULL, [StatusCode] [nchar](1) NOT NULL,CONSTRAINT [PK_Number] PRIMARY KEY CLUSTERED ( [IdNumber] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[Position] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Position]( [IdPosition] [int] NOT NULL, [PositionName] [nvarchar](30) NOT NULL, [Description] [nvarchar](150) NULL,CONSTRAINT [PK_Position] PRIMARY KEY CLUSTERED ( [IdPosition] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[Status] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Status]( [StatusCode] [nchar](1) NOT NULL, [StatusName] [nvarchar](9) NOT NULL,CONSTRAINT [PK_Status] PRIMARY KEY CLUSTERED ( [StatusCode] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]
GO/****** Object: Table [dbo].[Subscriber] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Subscriber]( [IdSubscriber] [int] IDENTITY(1,1) NOT NULL, [LastName] [nvarchar](50) NOT NULL, [FirstName] [nvarchar](50) NOT NULL, [Patronymic] [nvarchar](50) NULL, [GenderCode] [nchar](1) NOT NULL, [BirthDate] [date] NULL, [Email] [nvarchar](100) NULL, [PassportSeries] [nchar](4) NOT NULL, [PassportNumber] [nchar](6) NOT NULL, [Address] [nvarchar](150) NULL, [RegDate] [datetime] NOT NULL, [BenefitCode] [nchar](1) NOT NULL, [BenefitCertififcate] [nchar](10) NULL, [IsDeleted] [bit] NOT NULL,CONSTRAINT [PK_Subscriber] PRIMARY KEY CLUSTERED ( [IdSubscriber] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GO/****** Object: Table [dbo].[TariffPlan] Script Date: 01.06.2023 21:15:04 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[TariffPlan]( [IdTariffPlan] [int] IDENTITY(1,1) NOT NULL, [TariffName] [nvarchar](60) NOT NULL, [Description] [nvarchar](150) NULL, [Cost] [decimal](10, 2) NOT NULL, [IsDeleted] [bit] NOT NULL,CONSTRAINT [PK_TariffPlan] PRIMARY KEY CLUSTERED ( [IdTariffPlan] ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]GOALTER TABLE [dbo].[Number] ADD CONSTRAINT [DF_Number_IdTariffPlan] DEFAULT (NULL) FOR [IdTariffPlan]GOALTER TABLE [dbo].[Number] ADD CONSTRAINT [DF_Number_StatusCode] DEFAULT (N'а') FOR [StatusCode]GOALTER TABLE [dbo].[Subscriber] ADD CONSTRAINT [DF_Subscriber_IsDeleted] DEFAULT ((0)) FOR [IsDeleted]GOALTER TABLE [dbo].[TariffPlan] ADD CONSTRAINT [DF_TariffPlan_IsDeleted] DEFAULT ((0)) FOR [IsDeleted]GOALTER TABLE [dbo].[Calls] WITH CHECK ADD CONSTRAINT [FK_Calls_NumberIn] FOREIGN KEY([IdInNumber])REFERENCES [dbo].[Number] ([IdNumber])GOALTER TABLE [dbo].[Calls] CHECK CONSTRAINT [FK_Calls_NumberIn]GOALTER TABLE [dbo].[Calls] WITH CHECK ADD CONSTRAINT [FK_Calls_NumberOut] FOREIGN KEY([IdOutNumber])REFERENCES [dbo].[Number] ([IdNumber])GOALTER TABLE [dbo].[Calls] CHECK CONSTRAINT [FK_Calls_NumberOut]GOALTER TABLE [dbo].[Employee] WITH CHECK ADD CONSTRAINT [FK_Employee_Gender] FOREIGN KEY([GenderCode])REFERENCES [dbo].[Gender] ([GenderCode])GOALTER TABLE [dbo].[Employee] CHECK CONSTRAINT [FK_Employee_Gender]GOALTER TABLE [dbo].[Employee] WITH CHECK ADD CONSTRAINT [FK_Employee_Position] FOREIGN KEY([IdPosition])REFERENCES [dbo].[Position] ([IdPosition])GOALTER TABLE [dbo].[Employee] CHECK CONSTRAINT [FK_Employee_Position]GOALTER TABLE [dbo].[Number] WITH CHECK ADD CONSTRAINT [FK_Number_Status] FOREIGN KEY([StatusCode])REFERENCES [dbo].[Status] ([StatusCode])GOALTER TABLE [dbo].[Number] CHECK CONSTRAINT [FK_Number_Status]GOALTER TABLE [dbo].[Number] WITH CHECK ADD CONSTRAINT [FK_Number_Subscriber] FOREIGN KEY([IdSubscriber])REFERENCES [dbo].[Subscriber] ([IdSubscriber])GOALTER TABLE [dbo].[Number] CHECK CONSTRAINT [FK_Number_Subscriber]GOALTER TABLE [dbo].[Number] WITH CHECK ADD CONSTRAINT [FK_Number_TariffPlan] FOREIGN KEY([IdTariffPlan])REFERENCES [dbo].[TariffPlan] ([IdTariffPlan])GOALTER TABLE [dbo].[Number] CHECK CONSTRAINT [FK_Number_TariffPlan]GOALTER TABLE [dbo].[Subscriber] WITH CHECK ADD CONSTRAINT [FK_Subscriber_Benefit] FOREIGN KEY([BenefitCode])REFERENCES [dbo].[Benefit] ([BenefitCode])GOALTER TABLE [dbo].[Subscriber] CHECK CONSTRAINT [FK_Subscriber_Benefit]GOALTER TABLE [dbo].[Subscriber] WITH CHECK ADD CONSTRAINT [FK_Subscriber_Gender] FOREIGN KEY([GenderCode])REFERENCES [dbo].[Gender] ([GenderCode])GOALTER TABLE [dbo].[Subscriber] CHECK CONSTRAINT [FK_Subscriber_Gender]
GO