Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пример-СТПО.docx
Скачиваний:
37
Добавлен:
10.06.2015
Размер:
33.63 Кб
Скачать

Как читать этот пример

  1. Пример начинается на следующей странице.

  2. То, что написано зеленым - комментарий преподавателя. Реагировать на коммент соответственно его содержанию. Если что-то не понятно - смотри пункт 4.

  3. Не все разделы СТПО, предлагаемые стандартом применимы к нашим задачам. Если есть сомне­ния - смотри пункт 4.

  4. Если что-то не понятно - смотри пункт 4.

  5. Не стесняемся, обращаемся с вопросами к преподавателю.

Спецификация требований программного обеспечения «Навигатор классов для

ОС Microsoft Windows 7 x86»

Оглавление

Для решения наших задач можно обойтись без оглавления.

  1. Введение

    1. Цели стпо

Данный документ содержит требования к разрабатываемому программному продукту и является ос­новой для его разработки. Документ предназначен для специалистов ООО «ГоСт» по разработке программного обеспечения.

    1. Границы применения

  1. Данный документ содержит требования к программному продукту «Навигатор классов для ОС Microsoft Windows 7 х86» (в дальнейшем просто, продукт или изделие).

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

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

  4. Данный пункт не нужен, поскольку он используется если составляется СТПО для подсистемы.

    1. Термины, акронимы, сокращения

СТПО - спецификация требований к программному обеспечению ПО - программное обеспечение ОС - операционная система

    1. Ссылки

  1. Спецификация требований программного обеспечения «Навигатор классов для ОС Microsoft Windows 7 x64»

  2. Спецификация требований программного обеспечения «Навигатор классов для ОС Ubuntu

  1. LTS 32 bit»

  1. Спецификация требований программного обеспечения «Навигатор классов для ос Ubuntu

  1. LTS 64 bit»

  1. Спецификация требований программного обеспечения «Навигатор классов для OS X 10.8.5»

    1. Краткий обзор

Аналогично оглавлению.

  1. Общее описание

    1. Описание изделия

Данное изделие работает независимо от другого ПО за исключением операционной системы, уста­новленной на вычислительной машине.

      1. Интерфейсы системы

Этот раздел содержит описание интерфейсов систем и подсистем. В данном случае он отсутствует, потому что ПО не является подсистемой (частью системы).

      1. Интерфейсы пользователя

Интерфейс пользователя представляет собой окно, размер которого определяется пользователем. По- умолчанию размер окна задается таким, чтобы отобразить все функциональные элементы окна (ин­терфейса пользователя). Максимальный размер окна соответствует максимальному разрешению экрана. Интерфейс пользователя содержит следующие функциональные компоненты:

  • меню

  • переключатель вкладок

  • поле открытых файлов.

Каждая вкладка соответствует определенному файлу и содержит несколько полей:

  1. Поле дерева классов - отображает в виде дерева классы, описанные в открытом файле.

  2. Поля содержимого класса. Первое поле отображает сигнатуры конструкторов, второе - мето­дов, третье отображает имена, типы и права доступа свойств, четвертое - атрибутов.

Поле открытых файлов содержит историю открытых пользователем файлов.

Меню одержит пункты: «Выбрать новый файл с исходным кодом», «Перейти к следующей вкладке» «Перейти к предыдущей вкладке», «Закрыть текущую вкладку», «Закрыть все вкладки», «Очистить историю открытых файлов», «Закрыть приложение».

Выбор файла осуществляется в виде диалога.

Функциональные клавиши продукта:

Ctrl + о - открыть диалог открытия файла.

Ctrl + стрелка вправо - отобразить вкладку, расположенную справа от текущей вкладки.

Ctrl + стрелка влево - отобразить вкладку, расположенную слева от текущей вкладки.

Ctrl + F4 - закрыть текущую вкладку.

ALT + F4 - закрыть программу.

Диалог выбора файла должен отображать директорию последнего открытого файла.

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

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

      1. Интерфейсы аппаратных средств

Этот раздел содержит описание интерфейсов с аппаратными средствами, управлением которыми осуществляется непосредственно вашим ПО. В данном случае продукт не взаимодействует непо­средственно с каким-либо аппаратным средством.

      1. Интерфейсы программного обеспечения

Поскольку рассматриваемое ПО не зависит от работы других программных продуктов, кроме опера­ционных систем, а для описания интерфейсов ОС нужны более глубокие познания в программирова­нии и операционных системах, на данном этапе достаточно привести краткое описание основных ин­терфейсов операционных систем:

Интерфейсы ОС Windows:

Интерфейсы прикладного программирования (Windows API):

Оконный интерфейс пользователя:

Windows User Interface Windows GDI+

Функции работы с файлами, предоставляемые Windows API (CreateFile, OpenFile, ReadFile, WriteFile, CloseFile, DeleteFile, CopyFile, FindFirstFile, FindNextFile, GetFileSize)

Приведу другие интерфейсы других систем для энтузиастов:

Работа с графикой (ОС Windows):

DirectX (directDraw, directD3D), OpenGL Работа со звуком (ОС Windows):

DirectX (), OpenAL

Итерфесы других ОС:

  1. Интерфейсы ОС Linux: любой из: Qt KDE GNOME GTK Работа с графикой:

OpenGL

Работа со звуком:

OpenAL

  1. Интерфейсы MAC OS:

Интерфейсы прикладного программирования:

Cocoa

Работа с графикой:

X11

      1. Интерфейсы коммуникаций

В данном примере этот пункт не нужен, поскольку передача данных с использование сетевых техно­логий задачей не предусмотрена.

      1. Ограничения памяти

Здесь необходимо подсчитать (примерно) необходимый для работы программы объем памяти (как оперативной так и постоянной)

Размер инсталлированной в систему программы не должен превышать 100 Мбайт Эту цифру, в первом приближении, грубо округлив, берем с потолка =)))

Суммарный объем файлов, создаваемых изделием в процессе работы на жестком диске, не должен превышать 1 Мбайт.

Как получена эта цифра. Программа хранит историю открытых файлов (полные пути к ним), путь к последнему открытому файлу и пути к текущим открытым файлам в виде текста. Каждый путь пред­ставляет собой строку (максимум 255 символов), каждый символ кодируется 8 или 16 битами (в за­висимости от используемой кодировки. Возьмём 8 бит. Таким образом, для хранения одной строки требуется 2048 бит или 2 Кбит. Исходя из предположения хранения максимум 1024 файлов в исто­рии и максимум 128 текущих открытых файлов получаем 2252Кбит, или 2.2Мбит, или ~280Кбайт. Добавим то, что мы что-то не учли, получим 1 Мбайт.

Объем оперативной памяти, занимаемой программой не должен превышать 200 Мбайт По аналогии с объемом постоянной памяти, занимаемой программой.

      1. Действия

Действия инициируемые пользователем:

  • выбор файла

  • анализ выбранного пользователем файла и отображение информации о классах, описанных в этом файле

  • произвольный выбор вкладки, связанной с открытым ранее файлом

  • переход к следующей или предыдущей вкладке

  • закрытие вкладки

  • отображение подробной информации о методах класса

  • отображение подробной информации о свойствах класса

  • отображение подробной информации о конструкторах класса

  • отображение подробной информации об атрибутах класса

  • очистка истории открытых файлов

  • закрытие программы Периоды диалоговых действий:

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

Периоды оставленных без отклика действий:

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

      1. Требования настройки рабочих мест

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

    1. Функции изделия

Здесь приводятся основные функции изделия (без фанатичной детализации). Функции поделены на 3 группы.

  1. Функции работы с файлами:

Обработка файла, содержащего список (историю) отрытых пользователем файлов (чтение, создание, запись, добавление).

Обработка файла, содержащего список файлов с исходным кодом, связанных с открытыми вкладка­ми (чтение, создание, запись, добавление).

Обработка файлов с исходным кодом (чтение).

  1. Анализ исходного кода, прочитанного из файла:

Определение используемого языка программирования.

Определение классов в анализируемом тексте.

Определение членов выделенных классов.

  1. Функции интерфейса пользователя:

Выбор файла для анализа.

Добавление строк с именем файла в поле истории открытых файлов.

Удаление строк из поля истории открытых файлов.

Отображение полного пути к файлу.

Добавление вкладки.

Удаление вкладки.

Отображение списка классов во вкладках.

Отображение подробной информации о членах выбранного класса.

Масштабирование элементов интерфейса пользователя.

    1. Характеристики пользователя Данное изделие предназначено для программистов, обладающих опытом работы с объектно­ориентированными языками программирования.

    2. Ограничения

  1. Анализируемые файлы (с исходным кодом) ни в коем случае не могут быть изменены. Приложе­ние получает доступ к указанным пользователем файлам только для чтения.

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

  3. При создании новой вкладки в оперативной памяти выделяется определенная область, которая должна быть очищена при закрытии вкладки или завершении работы приложения.

  4. Файлы, необходимые в процессе работы приложения, помещаются в директорию, для которой пользователь, запустивший изделие, имеет полный доступ.

  5. Анализу подвергаются файлы с исходным кодом, написанным на языках программирования C++, C#, Java.

    1. Предположения и зависимости Данное изделия работает с обычными текстовыми файлами (без форматирования).

    2. Распределение требований Поддержка исходных кодов на языках программирования отличных от предусмотренных пунктом 5 параграфа 2.4 настоящего документа будет включена в будущем, в зависимости от потребностей пользователей и финансирования проекта.