Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


etc:teach:oop:lab4

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
etc:teach:oop:lab4 [2008/02/19 15:45] – создано kkvetc:teach:oop:lab4 [2009/05/15 15:28] (current) kkv
Line 1: Line 1:
 === Лабораторная работа 4 === === Лабораторная работа 4 ===
 +
 +
 +== Варианты заданий ==
 +
 +  - S=1,М,+
 +  - S=N,М,
 +  - S=1,М,-
 +  - S=N,B,+
 +  - S=1,B,+
 +  - S=1,B,-
 +  - S=N,М,+
 +  - S=N,B,-
 +
 +Обозначения: S=X количество серверов; M-моновещание; B-широковещание +/- -наличие режима подтверждения
  
 <file> <file>
 +     Дисциплина "Объектно-ориентированное программирование"
 +                 Весенний семестр 2004/2005 уч.г.
 +
 +                           ТРЕБОВАНИЯ
 +              к выполнению лабораторной работы N 4
 +
 +          ПРОЕКТИРОВАНИЕ И РЕАЛИЗАЦИЯ СИСТЕМЫ КЛАССОВ,
 +                ОБЕСПЕЧИВАЮЩИХ ОБМЕН СООБЩЕНИЯМИ
 +              В ОБЪЕКТНО-ОРИЕНТИРОВАННОЙ ПРОГРАММЕ
 +
 +      1. Цель работы
 +
 +           Создание программного обеспечения для снабжения
 +           объектно-ориентированных программ средствами обмена
 +           сообщениями.
 +
 +      2. Задание
 +
 +           Разработать и испытать систему классов, обеспечивающих
 +           обмен сообщениями в объектно-ориентированной программе
 +           и являющихся самостоятельными компонентами,
 +           ориентированными на применение в других программах.
 +           Обмен сообщениями должен удовлетворять общим требованиям
 +           к механизму обмена и требованиям индивидуального задания.
 +
 +      3. Общие требования к механизму обмена сообщениями
 +
 +      3.1. Обмен сообщениями должен быть построен по схеме
 +           "почтовый клиент - почтовый сервер".
 +      3.2. Все почтовые клиенты обмениваются сообщениями только с
 +           помощью почтового сервера.
 +      3.3. Почтовый сервер осуществляет регистрацию почтовых
 +           клиентов.
 +      3.4. Почтовый сервер принимает сообщения только от
 +           зарегистрированных клиентов и отправляет сообщения только
 +           зарегистрированным клиентам.
 +      3.5. Отправляемое сообщение задает проблемное действие, которое
 +           должен выполнить получатель и, возможно, посылку
 +           отправителю подтверждения о получении сообщения и
 +           выполнении заданного действия.
 +      3.6. Схемами посылки и приема сообщений могут быть:
 +           - односторонние: сервер-клиент, клиент-сервер";
 +           - двухсторонние: сервер-клиент-сервер, клиент-сервер-
 +             клиент.
 +      3.7. Для каждой пары участников обмена сообщениями задается
 +           режим вещания: моновещание (только указанному получателю)
 +           или широковещание (всем клиентам, всем серверам).
 +
 +
 +      4. Требования, определяемые индивидуальным заданием
 +
 +           Индивидуальное задание определяет схему обмена
 +           сообщениями, режим вещания и необходимость посылки
 +           подтверждения.
 +      5. Основные этапы разработки
 +
 +      5.1. Формулирование основной идеи архитектуры системы объектов
 +           для обеспечения обмена сообщениями.
 +      5.2. Построение системы объектов в процессе объектно-
 +           ориентированного анализа механизма обмена сообщениями,
 +           заданного индивидуальным заданием и отвечающего общим
 +           требованиям. При этом приводятся и обосновываются
 +           информационные модели объектов, действий и связей между
 +           ними.
 +      5.3. Проектирование основных автономных классов на языке С++
 +           на основе контрактов:
 +            - для каждой интерфейсной функции должны быть
 +              сформулированы пред- и постусловия;
 +            - для каждого класса должны быть определены инварианты.
 +      5.4. Проектирование конструкторов и деструкторов классов,
 +           выделенное в отдельные подэтапы.
 +      5.5. Проектирование системы описаний классов как системы
 +           файлов на языке С++.
 +      5.6. Разработка методики тестирования классов и тестовых
 +           наборов данных.
 +      5.7. Разработка внешней спецификации программы на языке С++,
 +           тестирующей классы как самостоятельные компоненты,
 +           ориентированные на применение в других разработках.
 +      5.8. Разработка тестирующей программы на языке С++
 +
 +      6. Подготовка отчета по лабораторной работе.
 +                Отчет должен быть выполнен в соответствии с
 +                требованиями разд. 4 "Общих требований к
 +                выполнению цикла лабораторных работ".
  
 </file> </file>
 +
 +
 +
 +
 +
 +
etc/teach/oop/lab4.1203425153.txt.gz · Last modified: 2008/02/19 15:45 by kkv