Проектировка и организация.

Тема в разделе "WASM.ZEN", создана пользователем DarkWanderer, 13 мар 2007.

  1. DarkWanderer

    DarkWanderer New Member

    Публикаций:
    0
    Регистрация:
    11 июл 2006
    Сообщения:
    333
    Адрес:
    Барнаул.
    Может найдется у кого время или желание просмотреть описание проекта?
    Интересно, как вы бы организовали все это дело.
    Какие методы реализации пользовательского интерфейса и все, что вам взбредет в голову. Но главное - интерфейс, exampl'ом MDI от Iczelion'а не обойтись.
    Копаю давно, не наезжайте со словами 'думай сам'.
    В приложении подробный лист и exel'евская таблица для наглядности. Вполне реальная, коей сейчас пользуются.
    Кратко описывать не буду, получается или не понятно или длинно.
    В task важна только графа exterior.
    Таблица есть готовая, thank Jupiter.
    Язык - masm. Цель - редактор расписания занятий.
     
  2. DarkWanderer

    DarkWanderer New Member

    Публикаций:
    0
    Регистрация:
    11 июл 2006
    Сообщения:
    333
    Адрес:
    Барнаул.
    архив не лепится. Извините, что текстом.

    Код (Text):
    1. ; :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    2. ; :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    3. ; :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
    4.  
    5. ; ~~~~~~~~~~
    6. ; target:
    7. ; ~~~~~~~~~~
    8. Основное назначение - позволить удобно редактировать расписание занятий.
    9.  
    10. ; ~~~~~~~~~~~~~~~~~~~~~~
    11. ; Требования к Activity Table:
    12.  
    13. ; main
    14. среда должна исключать диспорядок уже одним фактом своего существования.
    15. не допускать ошибок при составлении таблиц.
    16. компенсировать неаккуратность пользователя, существующую и возможную.
    17. хотя бы выглядеть как серьезный продукт. Никаких больших кнопок в стиле delphiстов и т.п.
    18.         Не надоедать простотой интерфейса.
    19.  
    20. ; exterior
    21. таблица, рабочая область.
    22.         отдельный проект на каждую неделю. Воскресные дни отображаются для полноты картины.
    23.         левый заголовок - преподаватели. отображаются фамилия/инициалы, также информация о часах
    24.                                                                   проведенных/оставшихся.
    25.         верхний заголовок - в две строки. верхняя, день недели и дата. дата, кратко строкой (18 янв, 13 апр).
    26.                                                                   нижняя, номера пар. предполагается шесть. Настраивать не нужно.
    27.         столбец таблицы, можно выделить рамкой. отмечается один одним кликом. несколько, для
    28.                         вывода общей о них информации, как-то еще. выделение одного снимается пользователем.
    29.         выделение ячеек в произвольных сочетаниях.
    30.         на каждого преподавателя четыре строки. первая для группы, вторая для второй группы, если нужна,
    31.                         четвертая для аудитории. третья дополнительная, кабинет второй ставить хоть чоли.
    32. панель с элементами.
    33.         отображаются кабинеты и группы. номера короткие, максимум три символа для групп и два для аудиторий.
    34.                         в одной панели в двух колонках. лучше в разных, гибкость  
    35.         при выделении столбца затеняются назначенные группы и аудитории.
    36.         выполнены как listbox.
    37.         при выделении, к примеру, группы, в панели кабинетов выделение не снимается,
    38.                         а меняет цвет как неактивное.
    39. строка состояния.
    40.         показывает координаты. какие-то активные режимы. и что-то еще.
    41. строка tool bar.
    42.         наинужные из функций, наметятся позже.
    43.         настройка не планируется, хотя убирать лишние расставляя флаги можно и сделать.
    44. строка меню.
    45.         все возможные функции или все функциональные(ирующие) возможности.
    46. ; add
    47. строка вкладок.
    48.         в стиле exelевских вкладок, осуществляет:
    49.         навигация между проектами, нужна бы она была.
    50.         переключение между таблицами и дополнительной информацией.
    51. окна вывода и настройки дополнительной информации.
    52.         заменяют окно таблицы.
    53.         количество часов для групп, преподавателей, что-то еще и т.п.
    54.  
    55. окна, кроме таблицы обязаны перетаскиваться и прилипать к любому месту уже на раннем этапе.
    56.                 дабы не переделывать многое, все равно делать.
    57. как вариант - окна закреплены на позициях, можно изменять размер, не более того.
    58.  
    59. элементы, выделенные в панели элементов вставляются в нужные места мышкой или клавиатурой.
    60. как дополнение - контекстное меню каждой ячейки: insert - кабинет/группа.
    61. кроме того, возможность руками вносить значения.
    62.  
    63. ; to make improvement
    64. архив расписаний:
    65.         хранение всего, что должно храниться. (желательно, но неосуществимо?, не привязывать архивы к
    66.                                                 программе уникальным форматом).
    67.         как дополнение- подгрузка, по мере надобности, прошлых таблиц,
    68.                                                 дабы можно было подглядывать. зачем- пока не знаю.
    69.         (для дальнейшего, псевдобесконечное мотание влево-право с синхронной подгрузкой. Просто красиво,
    70.                         оригинально, но сложно пока).  Как вариант - подгрузка по нажатию кноп-стрелок лево/право.
    71. подсветка ошибок:
    72.         оставить идею ненавязчивого изменения цвета. Никаких сообщений с заголовком 'error'.
    73.         возможность просмотра проекта расписания и вывода ошибок в отдельном окне. в стиле 'compile',
    74.                                 с навигацией по проекту.
    75.         как вариант - секция в строке состояния или подобном месте, где кратко описана
    76.                                 последняя ошибка с указанием координат.
    77. список возможных ошибок при составлении:
    78.                 повторение аудитории
    79.                 повторение группы
    80.                 размер группы не сходится с человекоемкостью аудитории
    81.                 с клавиатуры внесено некорректное значение.
    82. подсветка дней:
    83.         выставлять периодичные выходные. т.е. такой-то преподаватель имеет выходные по четвергам и/или
    84.                 каждый понедельник двенадцатого числа, подсветить соответствующие дни.
    85.                 ни в коем разе не сделать выходные в свойствах преподавателя. (специфика заведения)
    86.         высвечивание какого-либо дня, для которого не требуется составление расписания.
    87.  
    88. базы элементов (групп и аудиторий, и преподавателей):
    89.         настраиваются, сохраняются. как дальнейшее, для повышения гибкости, - смена/загрузка разных баз.
    90.                 remark: хранить как базы  данных только если это действительно нужно. Пока же формат свой.
    91.         для каждого элемента, совокупности элементов, настраиваются свойства.
    92.                 для аудиторий: емкость. корпус. стратегический или нет.
    93.                 для студенческих групп: размер, количество студентов.
    94.                                                            деление групп на подгруппы с указанием индекса в таблице.
    95.                                                                         как вариант - буквенный настраиваемый индекс (типа м/ж, L/R)
    96.                                                            слияние групп учтено в таблице дополнительной строкой.
    97.                 для преподавателей: время возможной работы. (преподавание для многих не основная работа)
    98.                                                      профиль не важен для гибкости. (и так все подряд читают все подряд)
    99. учет:
    100.         количество часов:
    101.                 сколько отчитано/сколько осталось для преподавателя, для групп.
    102.                                 пока - полная настройка руками в начале семестра.
    103.         свободные аудитории для каждой пары. Не делить пары на часы (не встречается, специфика)
    104.         стратегические аудитории. Стратегической считается узко специализированная аудитория
    105.                 (много мониторов, к примеру). Выводить по требованию текущую хронификацию их использования.
    106.                 указывать кем и когда используются.
    107.         как дополнение - количество переходов групп между корпусами.
    108.                 возможно, анализ всего расписания на основе критического значения. Критическое значение вшить
    109.                 жестко из своих соображений, из вредности. (много бегают).
    110.          
    111. output:
    112.         конвертация в преподавательские/студенческие расписания. Распечатка.
    113.         файл проекта, кроме сохранения возможность добавить к архиву.
    114.         экспортировать элементную базу.
    115. формат выходных расписаний:
    116.         ..
    117.  
    118.  
    119. ; ~~~~~~~~~~~~~~~~~~~~~~
    120. ; Альтернатива's:
    121. Exel со своими формулами и макросами:
    122. возможности:
    123.         разделение таблицы на три части, верхний и левый заголовки и, собственно, таблица.
    124.         подсветка ошибок.
    125.         подсветка отдельных дней. как то:
    126.                 выставить периодичные выходные дни преподавателям. (недостаток - руками)
    127.                 выставить глобальные выходные.
    128.                 ..
    129.         формулы. Сумма часов, автовставка из соседних листов общей информации (f.s. выставляется
    130.                                         количество оставшихся часов из таблицы часов).
    131.         пересчет проекта в студенческое расписание автоматический.
    132. недостатки:
    133.         приходится копировать/вставлять элементы при работе.
    134.                         Есть готовый набор групп и т.п., но редактировать руками.
    135.         нудное хранение архивов.
    136.  
    137. Экспресс-расписание:
    138. возможности:
    139.         может много.
    140.         куча возможностей, настроек и т.п.
    141. недостатки:
    142.         интерфейс. уже фактом существования. неудобный, надоедливый и не наш.
    143.         на каждом шагу сообщения о неправильном шаге. Вплоть до 'вы ставите на выходной день. продолжить?'
    144.         заточена под автора. заявлено, что заточена под все, школа, колледжи и т.п. Значит, не подходит никуда.
    145.         коммерческая, доступно только demo. хотя не совсем недостаток.
    146.  
    147. Расписание ПРО
    148.         терпел две минуты. впечатление плохое.
    149.         коммерческая.
    150.         на delphi
    151.         сделана качественно и со старанием
    152.        
    153. итог: из шести рассмотренных  программ (четыре ранее) под наше "учебное заведение" не подошла ни одна.
    154.          отбросить интерфейс, личные предпочтения,- все равно не подойдет в силу тонкостей организации.
    155.          опираться придется только на exelевские листы.
    156.          от альтернативных программ полезное только недостатки.
     
  3. DarkWanderer

    DarkWanderer New Member

    Публикаций:
    0
    Регистрация:
    11 июл 2006
    Сообщения:
    333
    Адрес:
    Барнаул.
    Хорошо, что подправили - не догадался и торопился.

    Так хотелось перед созданием каркаса интерфейса посоветоваться с опытными людьми.
    Свои мысли есть, но все же.
    До сих пор не перехотелось.