Главная Теоретический материал Лабораторные работы Задачи Тесты Контакты

Узбекское Агентство
Связи и Информатизации



Ташкентский Университет Информационных Технологий


Кафедра
«Программное обеспечение информационных технологий»

Направления:

5521900Информатика и
информационные технологии,
5523500Защита информации,
5523600Электронная коммерция,
5811200Сервис (информационный сервис),
5811300Сервис (электронные и
компьютерные технологии),
5320200Информатика и
библиотековедение,
5140900Профессиональное образование
(по направлению
информатика и
информационные технологии).


Преподаватель дисциплины



Доцент
Чернев Дмитрий Алексеевич

Постановка целей

Цели- это конкретные ориентиры для программного про­дукта. Процесс их постановки - это прежде всего процесс принятия компромиссных решений.

Отличие цели от требования заключается в том, что требование должно быть обязательно выполнено,а цель допускает ее достижение с некоторым приближением.

В целом цели программного обеспечения можно разбить на 9 больших групп.

Надежность - мера работы программного обеспечения без отказов в течение определенного периода времени.

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

Не  должно  быть  формулировки  типа  «Необходимо  добиться

максимальной общности»: — должны быть просто перечислены необходимые пользователю функции. Каждая функция прог­раммного изделия должна быть оценена с точки зрения реальной ее выгоды для пользователя и ее влияния на надежность, так как «обобщенные» системы обычно больше и сложнее.

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

Психологические факторыготового программного изделия — это мера легкости его понимания и удобства использования. Мера защищенности программного изделия от неправильного упот­ребления и от частоты ошибок пользователя.

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

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

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

Удобство сопровождения- это мера затрат времени и средств на исправление ошибки в работающем программном изделии.

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

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

Средства защиты (обеспечение безопасности) включает тщательную изоляцию данных и программ разных пользователей друг от друга и от операционной системы. Безопасность обычно согласуется со стремлением к надежности.

Документация это вопрос качества и количества пуб­ликаций для пользователя.

Цели здесь аналогичны тем, которые касаются психоло­гических факторов, — они тоже связаны с легкостью понимания и использования продукта. Поэтому цели документирования не противоречат стремлению к надежности.

Стоимостьпрограммного изделия включает затраты на перво­начальную разработку плюс сопровождение продукта.

Рост стоимости во многом вызывается возрастанием числа ошибок. Поэтому стремление к высокой надежности и желание минимизировать стоимость разработки и сопровождения не противоречат друг другу.

Календарный план —определение срока получения результата. Одна из главных причин срывов графика — невысокая надеж­ность создаваемого продукта. Например, если на отладку ПО будет отведено недостаточно времени, то после завершения проектиро­вания в программном обеспечении может остаться много ошибок. И время на их исправление можно сократить, уменьшая число ошибок, допущенных в процессе проектирования.

Две тенденции: обеспечить надежность программного обес­печения и сократить календарное время — вполне согласуются между собой при условии, конечно, что календарные сроки не сокращены до такой крайности, когда на надлежащее проек­тирование просто не остается времени.

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

Цели продукта:

1.Резюме. Вначале  следует  коротко  сформулировать  общее  назначение  ПО.

2. Определение пользователя. Если разрабатывается большое ПО с разными группами пользователей, они должны быть опре­делены.

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

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

5. Эффективность- цели производительности, такие, как временные характеристики, пропускная способность, исполь­зование ресурсов. Также необходимые средства измерения произ­водительности и средства настройки.

6. Совместимостьпрограммного изделия с другим. Указы­ваются также относящиеся к делу международные и государст­венные стандарты.

7. Конфигурацияаппаратуры и ПО, в которых система может работать и другие программные продукты, от которых она за­висит.

8. Безопасностьданных от несанкционированного доступа.

9. Обслуживание.

10. Установка— методы и средства настройки программного изделия на конкретные условия эксплуатации.

11. Надежность.

Цели проекта:

1.  Ориентировочная стоимость каждого проекта.

2.  Календарный план проекта.

3.  Цели для каждого процесса тестирования.

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

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

6.  Уровни надежности на каждом этапе разработки для дос­тижения заданной надежности продукта.

7.  Внутренняя документация при работе над проектом.

8.  Критерии для готовности готового продукта к исполь­зованию.

При постановке целей распространены следующие ошибки:

- цели не формулируются явно;

- составляется беглый набросок списка целей, причем жиз­ненно важные цели в него не включаются;

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

- цели формулируются только для продукта. Забывается формулировка целей для проекта.


Назад


Главная Теоретический материал Лабораторные работы Тесты Контакты