- •Организации и уровни стандартизации, основные стандарты.
- •Качество программных средств. Методы достижения качества. Сертификация и аттестация.
- •Сущность и принципы структурного подхода, основные понятия и примеры.
- •Стандарты жизненного цикла пс. Iso/iec 12207, гост 19.102-77
- •2. Эскизный проект
- •3. Технический проект
- •4. Рабочий проект
- •5. Внедрение
- •5.Планирование процессов разработки пс. Методы определения трудоемкости и стоимости разработки пс.
- •6.Моделирование данных. Основные понятия, определения и примеры.
- •7.Назначение и классификация case-средств.
- •1. Компонентный состав:
- •9.Назначение, термины и основные возможности case-средства erwin.
- •10. Классификация систем и методов защиты программных средств и показатели оценки их качества.
Сущность и принципы структурного подхода, основные понятия и примеры.
Сущность структурного подхода к разработке ИС заключается в ее декомпозиции (разбиении) на автоматизируемые функции (бизнес‑процессы): система разбивается на функциональные подсистемы, которые, в свою очередь, делятся на подфункции, а они – на задачи, и так до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны.
Базовыми принципами структурного подхода являются:
принцип «разделяй и властвуй» – разбиение задачи на множество меньших независимых задач, легких для понимания и решения;
принцип иерархического упорядочения – принцип организации составных частей проблемы в иерархические древовидные структуры с добавлением новых деталей на каждом уровне;
принцип абстрагирования – выделение существенных аспектов системы и отвлечение от несущественных;
принцип формализации – необходимость строгого методического подхода к решению проблемы;
принцип непротиворечивости – обоснованность и согласованность элементов;
принцип структурирования данных, т.е. данные должны быть структурированы и иерархически организованы.
В структурном анализе используются в основном две группы средств. Каждой группе средств соответствуют определенные виды моделей (диаграмм), наиболее распространенными среди которых являются:
DFD (Data Flow Diagrams) – диаграммы потоков данных (процессов);
SADT (Structured Analysis and Design Technique) – модели и соответствующие функциональные диаграммы;
ERD (Entity-Relationship Diagrams) – диаграммы «сущность-связь».
Стандарты жизненного цикла пс. Iso/iec 12207, гост 19.102-77
Модель жизненного цикла ПС (ЖЦ ПС) – структура, содержащая процессы, действия и задачи, которые осуществляются в ходе разработки, функционирования и сопровождения программного средства в течение всей жизни системы, от определения требований до завершения ее использования (прил. 2.1).
ЖЦ ПС формулируется стандартами:
ISO/IEC 12207 (ГОСТ Р ИСО/МЭК 12207) – современный международный стандарт (прил. 2.1);
ГОСТ 19.102-77 ЕСПД – устаревший стандарт;
ГОСТ 34.601-90. – стандарт для автоматизированной системы.
Стандарт ISO/IEC 12207 (ГОСТ Р ИСО/МЭК 12207) не предписывает конкретную модель ЖЦ или метод разработки ПС, но определяет, что стороны-участницы использования стандарта ответственны за выбор модели ЖЦ для проекта ПС, за адаптацию процессов и задач стандарта к этой модели, за выбор и применение методов разработки ПС, за выполнение действий и задач, подходящих для проекта ПС.
Множество процессов и задач сконструировано так, что возможна их адаптация в соответствии с проектами ПС. Процесс адаптации является процессом исключения процессов, видов деятельности и задач, не применимых в конкретном проекте. Степень адаптивности – максимальная
Стандарт ISO12207 равносильно ориентирован на организацию действий каждой из двух сторон: поставщик (разработчик) и покупатель (пользователь) и может быть в равной степени применен, когда обе стороны – из одной организации.
Каждый процесс ЖЦ разделен на набор процессов, каждый процесс – на набор процедур. Очень важное отличие ISO: каждый процесс или процедура инициируется и выполняется другим процессом по мере необходимости, причем нет заранее определенных последовательностей (естественно, при сохранении логики связей по исходным сведениям процессов и процедур и т.п.).
В стандарте ISO 12207 описаны:
Основные процессы ЖЦ ПС
Процесс приобретения. Определяет действия предприятия-покупателя, которое приобретает АС, программный продукт или сервис ПС.
Процесс поставки. Определяет действия предприятия-поставщика, которое снабжает покупателя системой, программным продуктом или сервисом ПС.
Процесс разработки. Определяет действия предприятия-разработчика, которое разрабатывает принцип построения программного изделия и программный продукт. Анализ требований к системе. Устанавливаются функции системы, условия внешней среды, качество и требования к характеристикам, требования к интерфейсам и к сопряжению аппаратных и программных средств. Проектирование системы. Требования к системе преобразуются в архитектуру системы, производится распределение функций и компонент между аппаратурой и программами, а также ручными операциями, что оформляется документом первичных требований к системе, компонентам и интерфейсам. Анализ требований к программному средству. Устанавливаются и документируются функции и предварительные спецификации требований к программным и информационным компонентам, их качество и физические характеристики, необходимые ресурсы компьютера, требования к базе данных и интерфейсам, к средствам обеспечения отладки и сопровождения. Проектирование архитектуры программного средства. Разрабатываются структура ПС и интерфейсы компонент, согласуются функции и технические требования к компонентам, методы и стандарты проектирования, а также отчетные документы по процессам и объектам разработки. Детальное проектирование программного средства. Проводится детальная разработка спецификаций каждой компоненты, интерфейса между ними и конфигурации ПС, разрабатываются требования к тестам и план интегрирования компонент. Программирование компонент. Разрабатываются текст программных модулей и описаний данных, процедуры и данные для их тестирования, документы результатов тестирования, документы процедур и данных для интеграции ПС.
Процесс функционирования. Определяет действия предприятия-оператора, которое обеспечивает обслуживание системы (а не только ПС) в процессе ее функционирования в интересах пользователей. В отличие от действий, которые определяются разработчиком в инструкциях по эксплуатации (эта деятельность разработчика предусмотрена во всех трех рассматриваемых стандартах), определяются действия оператора по консультированию пользователей, получению обратной связи и др., которые он планирует сам и берет на себя соответствующие обязанности. Эксплуатация системы и программного средства. Заказчик или пользователь системы использует ее в соответствии с документацией, подготавливает отчеты о выявленных ошибках, а также о желательных модификациях и развитии системы и программного средства. Поддержка пользователей системы и программного средства. Осуществляются обучение и консультация пользователей, накапливаются и обрабатываются отчеты и рекомендации пользователей по совершенствованию системы; пользователи информируются об изменениях системы и ПС. Прекращение эксплуатации конфигурации системы и/или программного средства. Обоснование и извещение пользователей о прекращении поддержки версии системы, архивация версии и ее документации, предложение пользователям доступных вариантов для замены системы и/или программного средства.
Процесс сопровождения. Определяет действия персонала сопровождения, который обеспечивает сопровождение программного продукта, что представляет собой управление модификациями программного продукта, поддержку его текущего состояния и функциональной пригодности, включает в себя инсталляцию и удаление программного изделия на вычислительной системе. Анализ ошибок и предложений на модификацию программного средства. Исследуются спрос на модификацию, степень изменения программ и необходимые затраты, риск и возможные альтернативы, подготавливаются решения на изменения и тесты для проверки. Реализация модификации программного средства. Корректировка программ, данных и интерфейсов, разработка необходимых модулей и компонент, повторение тестирования и испытания версии программного средства и системы. Приемка, установка, настройка и опытная эксплуатация новой версии системы в реальной среде.
Вспомогательные процессы: решение проблем, документирование, управление конфигурацией, гарантирование качества (верификация, аттестация, совместная оценка, аудит), организационные процессы (управление, создание инфраструктуры, усовершенствование, обучение), адаптация (определяет основные действия, необходимые для адаптации стандарта к условиям конкретного проекта).
ГОСТ 19.102–77 ЕСПД. Стадии разработки.
1. Техническое задание (стадия)
Обоснование необходимости разработки программы (этап). Постановка задачи. Сбор исходных материалов. Выбор и обоснование критериев эффективности и качества разрабатываемой программы. Обоснование необходимости проведения научно‑исследовательских работ
Научно‑исследовательские работы. Определение структуры входных и выходных данных. Предварительный выбор методов решения задач. Обоснование целесообразности применения ранее разработанных программ. Определение требований к техническим средствам. Обоснование принципиальной возможности решения поставленной задачи.
Разработка и утверждение технического задания. Определение требований к программе. Разработка технико‑экономического обоснования разработки программы. Определение стадий, этапов и сроков разработки программы и документации на нее. Выбор языков программирования. Определение необходимости проведения научно‑исследовательских работ на последующих стадиях. Согласование и утверждение технического задания.