- •28. Предпроектные исследования предметной области.
- •29. Техническое задание. Основные разделы.
- •30. Архитектура программного обеспечения.
- •31. Тип пользовательского интерфейса.
- •32. Выбор языка и среды программирования
- •1). Выбор языка программирования.
- •33. Спецификация программного обеспечения при структурном подходе.
- •34. Язык описания разработки программных продуктов uml.
- •35. Тестирование программного обеспечения.
32. Выбор языка и среды программирования
1). Выбор языка программирования.
Все существующие языки программирования можно разделить на следующие группы:
универсальные языки высокого уровня;
С и С++
Object Pascal, использованная в среде Delphi
Basic
Modula
Ada
специализированные языки разработчика программного обеспечения;
языки баз данных;
языки создания сетевых приложений;
языки создания систем искусственного интеллекта и т.д.
специализированные языки пользователя (обычно являются частью профессиональных сред пользователя,
характеризуются узкой направленностью и разработчиками программного обеспечения не используются);
языки низкого уровня.
языки типа Ассемблера.
Универсальные языки высокого уровня имеют ряд существенных достоинств:
многоплатформенность;
наличие операторов, реализующих основные структурные алгоритмические конструкции;
возможность программирования на низком уровне;
огромные библиотеки подпрограмм и классов.
(Каждый из указанных выше языков, имеет свои особенности и, соответственно, свою область применения)
Специализированные языки разработчика используют для создания конкретных типов программного обеспечения. Эти языки изучаются на специальных курсах.
Специализированные языки пользователя обычно являются частью профессиональных сред пользователя, характеризуются узкой направленностью и разработчиками программного обеспечения не используются.
Языки низкого уровня позволяют осуществлять программирование практически на уровне машинных команд. Эти языки не годятся для создания больших программ и программных систем (низкий уровень абстракций)
2). Выбор среды программирования. Средой программирования называют программный комплекс, который включает специализированный текстовый редактор, встроенные компилятор, компоновщик, отладчик, справочную систему и другие программы, использование которых упрощает процесс написания и отладки программ.
Наиболее часто используемыми являются визуальные среды Delphi, C++ Builder фирмы Borland (Inprise Corporation), Visual C++, Visual Basic фирмы Microsoft, Visual Ada фирмы IBM и др.
Между основными визуальными средами этих фирм Delphi, C++ Builder и Visual C++ имеется существенное различие: визуальные среды фирмы Microsoft обеспечивают более низкий уровень программирования «под Windows». Достоинство –уменьшается вероятность возникновения «нестандартной» ситуации, недостаток –существенно загружает программиста «рутинной» работой.
В общем случае, если речь идет о выборе между этими средами, то он в значительной степени должен определяться характером проекта.
33. Спецификация программного обеспечения при структурном подходе.
Спецификации представляют собой полное и точное описание функций и ограничений разрабатываемого программного обеспечения. Одна часть спецификаций (функциональные) описывает функции разрабатываемого программного обеспечения, а другая (эксплуатационные) определяет требования к техническим средствам, надежности, информационной безопасности и т.д.
требование полноты означает, что спецификации должны содержать всю существенную информацию, где ничего важного не было бы упущено, и отсутствует несущественная информация, например детали реализации, чтобы не препятствовать разработчику в выборе наиболее эффективных решений;
требование точности означает, что спецификации должны однозначно восприниматься как заказчиком, так и разработчиком.
Точные спецификации можно определить, только разработав некоторую формальную модель разрабатываемого программного обеспечения. Формальные модели, используемые на этапе определения спецификаций можно разделить на две группы: модели, зависящие от подхода к разработке (структурного или объектно-ориентированного), и модели, не зависящие от него.
В рамках структурного подхода на этапе анализа и определения спецификаций используют три типа моделей: ориентированные на функции, ориентированные на данные и ориентированные на потоки данных.
Диаграммы переходов состояний определяют основные аспекты поведения программного обеспечения во времени, диаграммы потоков данных – направление и структуру потоков данных, а концептуальные диаграммы классов – отношение между основными понятиями предметной области.
Так методологии структурного анализа и проектирования, основанные на моделировании потоков данных, используют комплексное представление проектируемого программного обеспечения в виде совокупности моделей:
диаграмм потоков данных (DFD – Data Flow Diagrams), описывающих взаимодействие источников и потребителей информации через процессы, которые должны быть реализованы в системе;
диаграмм «сущность-связь» (ERD – Entity-Relationship Diagrams), описывающих базы данных разрабатываемой системы;
диаграмм переходов состояний (STD – State Transition Diagrams), характеризующих поведение системы во времени;
спецификаций процессов;
словаря терминов.
