
- •Ответы на вопросы по дисциплине «Технология программирования».
- •1.Жизненный цикл программного обеспечения. Каскадная модель. Спиральная модель.
- •3. Управление разработкой программного средства.
- •5. Понятие программного модуля и его основные характеристики.
- •7. Формирование пользовательского интерфейса в среде программирования Lazarus.
- •9. Виды документации программного средства.
- •11. Прототипирование и исследовательское программирование. Отличия.
- •13. Понятие программного средства. Понятие технологии программирования.
- •15. Автономная отладка и тестирование программного средства.
- •17. Функциональная спецификация программного средства.
- •19. Надежность программного средства.
- •21. Способы разработки определения требований к программному средству.
- •23. Табличный подход к спецификации функций. Метод таблиц решений. Алгебраический подход для определения функций.
- •25. Архитектура программного средства. Понятие модульности программного средства. Расширяемость.
- •29. Системы быстрой разработки приложений(rad). Особенности.
- •31. Диаграммы деятельности и коопераций, диаграммы состояний.
- •32. Эволюция технологий программирования.
- •33. Спецификация качества программного средства.
- •35. Внешнее описание программного средства. Руководство разработчика и руководство пользователя.
- •37. Case-технологии разработки программного средства.
- •40. Тестирование по методам «черного» и «белого» ящиков. Этапы тестирования.
- •41. Разработка технического задания. Требования к содержанию.
25. Архитектура программного средства. Понятие модульности программного средства. Расширяемость.
Архитектура ПС это его строение как оно видно (или должно быть видно) извне его, т.е. представление ПС как системы, состоящей из некоторой совокупности взаимодействующих подсистем. В качестве таких подсистем выступают обычно отдельные программы. Разработка архитектуры является первым этапом борьбы со сложностью ПС, на котором реализуется принцип выделения относительно независимых компонент.
Основные задачи разработки архитектуры ПС:
Выделение программных подсистем и отображение на них внешних функций (заданных во внешнем описании) ПС;
определение способов взаимодействия между выделенными программными подсистемами.
С учетом принимаемых на этом этапе решений производится дальнейшая конкретизация и функциональных спецификаций.
Модульность – это принцип, согласно которому программное средство (ПС, программа, библиотека, web-приложение и др.) разделяется на отдельные именованные сущности, называемые модулями. Модульность часто является средством упрощения задачи проектирования ПС и распределения процесса разработки ПС между группами разработчиков. При разбиении ПС на модули для каждого модуля указывается реализуемая им функциональность, а также связи с другими модулями.
Роль модулей могут играть структуры данных, библиотеки функций, классы, сервисы и др. программные единицы, реализующие некоторый функционал и предоставляющие интерфейс к этому функционалу.
29. Системы быстрой разработки приложений(rad). Особенности.
На начальном этапе существования компьютерных информационных систем их разработка велась на традиционных языках программирования. Однако по мере возрастания сложности разрабатываемых систем и увеличения запросов пользователей (чему в значительной степени способствовал прогресс в области вычислительной техники, а также появление удобного графического интерфейса пользователя в системном программном обеспечении) потребовались новые средства, обеспечивающие значительное сокращение сроков разработки. Это послужило предпосылкой к созданию целого направления в области программного обеспечения - инструментальных средств для быстрой разработки приложений. Развитие этого направления привело к появлению на рынке программного обеспечения средств автоматизации практически всех этапов жизненного цикла информационных систем.
Основные особенности методологии RAD
Методология разработки информационных систем, основанная на использовании средств быстрой разработки приложений, получила в последнее время широкое распространение и приобрела название методологии быстрой разработки приложений - RAD (Rapid Application Development). Данная методология охватывает все этапы жизненного цикла современных информационных систем.
RAD - это комплекс специальных инструментальных средств быстрой разработки прикладных информационных систем, позволяющих оперировать с определенным набором графических объектов, функционально отображающих отдельные информационные компоненты приложений.
Под методологией быстрой разработки приложений обычно понимается процесс разработки информационных систем, основанный на трех основных элементах:
небольшой команде программистов (обычно от 2 до 10 человек);
тщательно проработанный производственный график работ, рассчитанный на сравнительно короткий срок разработки (от 2 до 6 мес.);
итерационная модель разработки, основанная на тесном взаимодействии с заказчиком - по мере выполнения проекта разработчики уточняют и реализуют в продукте требования, выдвигаемые заказчиком.
При использовании методологии RAD большое значение имеют опыт и профессионализм разработчиков. Группа разработчиков должна состоять из профессионалов, имеющих опыт в анализе, проектировании, программировании и тестировании программного обеспечения.
Основные принципы методологии RAD можно свести к следующему:
используется итерационная (спиральная) модель разработки;
полное завершение работ на каждом из этапов жизненного цикла не обязательно;
в процессе разработки информационной системы необходимо тесное взаимодействие с заказчиком и будущими пользователями;
необходимо применение CASE-средств и средств быстрой разработки приложений;
необходимо применение средств управления конфигурацией, облегчающих внесение изменений в проект и сопровождение готовой системы;
необходимо использование прототипов, позволяющее полнее выяснить и реализовать потребности конечного пользователя;
тестирование и развитие проекта осуществляются одновременно с разработкой;
разработка ведется немногочисленной и хорошо управляемой командой профессионалов;
необходимы грамотное руководство разработкой системы, четкое планирование и контроль выполнения работ.