Структура иерархии классов "Экран курсового проектирования"

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

ачества;

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

    Исходя из всего этого, ставятся основные требования к приложению:

    1. Удобный пользовательский интерфейс;
    2. Обеспечение гибкости программы для добавления новых функций;
    3. Надежность программы.

    Данное приложение было реализовано в среде MicrosoftVisualStudio 2010(

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

    1. 32-разрядный (x86) или 64-разрядный (x64) процессор с тактовой частотой 1 гигагерц (ГГц) или выше;
    2. 1 гигабайт (ГБ) (для 32-разрядной системы) или 2 ГБ (для 64-разрядной системы) оперативной памяти (ОЗУ);
    3. 16 гигабайт (ГБ) (для 32-разрядной системы) или 20 ГБ (для 64-разрядной системы) пространства на жестком диске;
    4. графическое устройство DirectX 9 с драйвером WDDM версии 1.0 или выше.

     

    2. Проектирование структуры классов

     

    При рассмотрении исходных данных создается структура иерархии классов Экран курсового проектирования. Для максимального соответствия заданию, создается три класса:

    1. TObject (абстрактный базовый класс);
    2. TScreen (класс, содержащий информацию об экране курсового проектирования);
    3. TStudent (класс, содержащий информацию о студенте и ходе его выполнения курсовой работы).

    Иерархия классов показана на рисунке 1.

    Абстрактный базовый класс TObject содержит поле TName(имя), которое наследуется в классы TStudent и TScreen. Это поле служит для задания имени курсовому проекту и имени студента. В конструкторе класса TObject этому полю присваивается значение Default. Это поле наследуется с атрибутом Public. Также класс TObject содержит виртуальную функцию SetName(), которая переопределяется в классах TStudent и TScreen. Она служит для присвоения значения полю TName заданного имени. В качестве атрибута ей передается устанавливаемое имя.

    Класс TScreenсодержит поля и методы, относящиеся к заголовку экрана курсового проекитрования. Информация о группе студентов, выполняющих курсовые работы хранится в поле TName, которое наследуется от базового класса TObject; информация о дате утверждения экрана курсового проектирования хранится в поле Date; информация о составе приемной комиссии в поле Composition. В этом классе переопределяется функция присвоения имени полю TNameSetName(). Данный класс содержит две собственные функции:

    1. SetDate(присваивает полю Date дату утверждения экрана курсового проектирования);
    2. SetComposition(присваивает полю Composition информацию о составе приемной комиссии).

    В качестве атрибутов этим функциям передается необходимая информация.

    В классе TStudent содержится информация о студенте, выполняющем курсовую работу, точнее о ходе ее выполнения. Также как класс TScreen класс TStudent имеет наследуемое поле TName от класса TObject. Этому полю присваивается значение функцией SetName, которая переопределяется в этом же классе. Помимо этого наследуемого поля, класс содержит собственные поля:

    1. ControlScore(контрольная оценка за курсовой проект);
    2. NumberWeek(номер контрольной недели);
    3. *Plan(указатель на массив с плановыми процентами выполнения курсовых работ);
    4. *Fact(указатель на массив с фактическими процентами выполнения курсовых работ);
    5. *Control(указатель на массив с оценками за контрольные недели);
    6. Test(плановая дата сдачи завершенного курсового проекта на проверку);
    7. TestF(фактическая дата сдачи завершенного курсового проекта на проверку);
    8. Revision(плановая дата выдачи завершенного курсового проекта на доработку);
    9. RevisionF(фактическая дата выдачи завершенного курсового проекта на доработку);
    10. Protection(плановая дата защиты курсового проекта);
    11. ProtectionF(фактическая дата защиты курсового проекта);

    Каждому полю соответствует определенный метод, который устанавливает его значение. Ниже приведен список собственных методов, содержащихся в классе TStudent:

    1. SetNumberWeek();
    2. SetPlan();
    3. SetFact();
    4. SetControl();
    5. SetTest();
    6. SetTestF();
    7. SetRevision();
    8. SetRevisionF();
    9. SetProtection();
    10. SetProtectionF();
    11. SetControlScore();

    Реализация иерархии классов Экран курсового проектирования предложен в Приложении А.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Рисунок 1 - Иерархия классов Эк?/p>