Планирование программного проекта
Оценка возможного размера масштаба программного продукта. Определение стоимости, трудоемкости и длительности. Анализ, идентификация и оценка проектных рисков. Документирование плана работ и утверждение его менеджером разработчиков программного проекта.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лекция |
Язык | русский |
Дата добавления | 15.12.2015 |
Размер файла | 507,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
-- содействовать облегчению и автоматизации переноса кода готовых прикладных программ на иные платформы;
-- способствовать определению и унификации интерфейсов программных компонентов заранее при проектировании программных средств, а не только в процессе их реализации;
-- сохранять по возможности и учитывать все главные, созданные ранее, унаследованные и используемые программные средства и компоненты;
-- определять необходимый минимум интерфейсов компонентов и комплексов программ для ускорения создания и расширения программных продуктов, а также для анализа, одобрения и утверждения документов;
-- развивать стандарты в направлении обеспечения коммуникационных сетей, распределенной обработки данных и защиты информации;
-- рекомендовать ограничивать использование объектного кода для программ в простых системах.
Разработчики новых версий стандартов группы POSIX тщательно учитывали их предысторию и наличие множества унаследованных, созданных и развиваемых компонентов и комплексов программ, удовлетворяющих более ранним версиям этих стандартов. В процессе развития стандартов соблюдался принцип обратной совместимости - новые интерфейсы добавлялись так, чтобы они не конфликтовали со старыми. Однако полностью это не удалось реализовать, и некоторые интерфейсы в повторно применяемых программах необходимо корректировать при их использовании в новых программных средствах.
Цель данной версии стандарта состоит в том, чтобы минимизировать дополнительную работу для разработчиков прикладных программ. Тем не менее, поскольку каждая историческая реализация стандарта неизбежно подвергается изменению, пусть даже незначительному, прикладным программам также неизбежно предстоит изменяться, чтобы прийти в соответствие. Концептуально этот стандарт описывает набор фундаментальных услуг, необходимых для эффективной разработки прикладных программ. Доступ к этим услугам обеспечивался определением интерфейса, с использованием языка программирования Си, процессора командного языка, и стандартных сервисных программ (утилит), которые устанавливают стандартную семантику и синтаксис интерфейсов. Этот стандарт предназначен для всех, кто по роду своей деятельности связан с операционными системами, базирующимся на UNIX.
Цель состояла также в том, чтобы продвинуть мобильность прикладных программ по всей области применения операционной системы UNIX, развивая ясный, последовательный и однозначный стандарт для спецификации интерфейса переносимой операционной системы, основанной на документации системы UNIX. Этот стандарт систематизирует все существующие типовые формулировки операционной системы UNIX. Стандарт был разработан для того, чтобы программа, написанная и транслированная для исполнения в одной конкретной версии ОС, могла быть также транслирована для другой версии ОС. Однако этот стандарт не гарантирует, что используемый код (объектный) даст соответствующий результат при другой ОС, нежели той, для которой программа была транслирована, даже при идентичном аппаратном обеспечении.
Разработчики данного стандарта стремились добиться возможности наиболее широкого применения данного стандарта ко всему диапазону уже существующих и потенциальных операционных систем. Однако существовало согласованное мнение по поводу того, какой набор функций, типов, определений (дефиниций) и концепций предназначен для формирования того интерфейса, который является общим для большинства исторически сложившихся типов реализации ПС. Предыдущие стандарты и их модификации выявили множество несогласованных областей, что в основном устранено в данном варианте. Пересмотренное издание стандарта стремится минимизировать количество изменений, касающихся реализаций, которые соответствуют более ранним версиям одобренных стандартов, необходимых для приведения их в соответствие с настоящим стандартом.
Новую версию международных стандартов POSIX составляют аннотированные ниже четыре части стандартов ISO 9945:1-4:2003 - ИТ. Интерфейсы переносимых операционных систем. Ч. 1. Базовые определения. Ч. 2. Системные интерфейсы. Ч. 3. Команды управления и сервисные программы. Ч. 4. Обоснование.
Стандарт ISO 9945-1:2003 - содержит основные концептуальные определения и подробные пояснения методов реализации интерфейсов для обеспечения мобильности компонентов и комплексов программ, общее для всех томов оглавление стандарта, в том числе сервисные соглашения и определения заголовков языка Си. В большом разделе - концепция - изложены: базовые директории; файловая иерархия; сетевое взаимодействие; измерение времени и синхронизация; процессы повторного использования компонентов; политика очередей и применение семафоров. Далее выделены разделы.
-- описание синтаксиса и организации данных в файлах для системных интерфейсов и взаимодействия с терминалами;
-- характеристики переносимых компонентов, язык кодирования, описание файлов;
-- локальные переменные, определения и грамматика;
-- описание переменных окружения, интернационализация переменных;
-- контекстно-независимый синтаксис представления характеристик переменных компонентов, определения регулярных выражений, генерация требований, базис и грамматика выражений, продленные выражения;
-- структура директорий, файлов и устройств, типы терминалов;
-- базовые интерфейсы типов терминалов, параметры возможных устройств;
-- конвенция и руководство по синтаксису аргументов утилит;
-- содержание функций прототипов, описание символьных констант, макросы, препроцессоры, типы определений, форматы входов.
Стандарт ISO 9945-2:2003 - Системные интерфейсы - уточняет и детализирует: концепцию переносимости и принципы ее обеспечения путем унификации интерфейсов прикладных программ с операционными системами, функции обслуживания, ориентированные на язык программирования Си, функциональные вопросы, в том числе мобильность, обработка ошибок, и устранение ошибок. Он содержит три крупных раздела:
-- введение;
-- содержание основной информации;
-- системные интерфейсы.
Документ предназначен для разработчиков приложений, в которых необходимо обеспечить мобильность программ и данных, для разработчиков и пользователей операционных систем, а также для покупателей вычислительной техники и программных средств. Основная цель стандарта - унифицировать интерфейсы приложений и связи с окружением ядра операционной системы путем формализации описаний внутренних и внешних интерфейсов на базовом языке программирования Си. Концептуально представлено описание синтаксиса и семантики взаимосвязей, используемых при проектировании переносимых прикладных программ. Унификация ориентирована на версии UNIX, а также на другие операционные системы, совместимые по интерфейсам с версиями UNIX. Разработчики стандарта стремились предусмотреть все потенциально возможные функции взаимодействия прикладных программ с ядром ОС на различных аппаратных платформах, в автономных, сетевых и распределенных информационных системах. Для этого представлено содержание 1123 интерфейсов, включающих: описание, типовую структуру, возможные ошибки, примеры и обоснование каждого.
Языково-ориентированные услуги и интерфейсы для языка Си в стандарте состоят из двух частей: ядра, взаимодействующего с ядром операционной системы на языке Си, и расширения для взаимодействия с прикладными программами, реализованными на различных языках. Первоначальная, жесткая ориентация стандартов POSIX на ОС UNIX в последующем изменилась и расширилась на любые операционные среды, обеспечивающие реализацию концепции открытых систем. Отмечается целесообразность применения для взаимодействия с внешней средой концепции и совокупности стандартов, являющихся развитием базовой эталонной модели взаимосвязи открытых систем (ВОС) - ISO 7498.
В третьей части стандарта ISO 9945-3:2003 - Основные команды управления и сервисные программы (Shell and utilities) - изложено конкретное представление команд операционной системы и утилит, обеспечивающих унифицированное взаимодействие с мобильными прикладными программами, определения для стандартного источника кодового уровня интерфейса командного интерпретатора ("shell") и стандартные утилиты для прикладных программ. Стандарт содержит четыре раздела:
-- введение;
-- описание языка управления;
-- пакет обслуживания окружения;
-- сервисные программы - утилиты.
Цель этой части стандарта - конкретизировать интерфейсы прикладных программ на уровне команд, для интерпретатора командного языка, и полный набор сервисных программ - утилит. Он специфицирует интерфейсы операционных систем на уровне программных текстов и кодов. Стандартизированный командный язык Shell - средство для подготовки небольших мобильных процедур и их быстрой интерактивной отладки. В развитой среде возможно объединять команды в цепочки с фильтрацией промежуточных результатов. Каждая утилита содержит: описание структуры; применение; операнды; входные файлы; окружение. Факультативные утилиты расширяют возможности для пользователей мобильных приложений по связи с внешним окружением. В терминах языка Си (стандарт ISO 9899:1990) описаны языково-независимые услуги интерфейсов для переносимых приложений и связи с внешним окружением при представлении интерфейсов приложений на различных языках высокого уровня.
Команды и утилиты содержат конкретные механизмы на уровне операторов для выполнения операций: сравнения, вывода на печать и на экран файлов, редактирования файлов, вычисления выражений, сортировки данных, определения очередности исполнения сигналов и доступа к информации о среде. Можно выделить:
-- утилиты среды взаимодействия программ;
-- управляющие утилиты, поддерживающие мобильность программ и связь внешних пользователей с асинхронными терминалами;
-- утилиты для взаимодействия комплексов программ;
-- языково-независимые системные услуги для прикладных программ на нескольких языках программирования высокого уровня.
Четвертая часть стандарта ISO 9945-4:2003 - Обоснование - содержит группу из пяти крупных приложений\
-- обоснование базовых определений - приложение А;
-- обоснование системных интерфейсов - приложение В;
-- обоснование команд управления и сервисных программ-утилит -- приложение С;
-- рассмотрение переносимости - приложение D;
-- рассмотрение субпрофилей - приложение Е.
В перечисленных приложениях подробно разъясняются базовые положения стандартов POSIX, обосновываются формализованные в них решения. Пространные пояснения, которые не слишком вписывались в остальные части документа, содержат исторические комментарии по тексту стандарта, разъяснения причин, по которым те или иные свойства, признаки и компоненты были включены в стандарт или были отвергнуты разработчиками. Параллельно с подготовкой и внедрением новых четырех стандартов группы POSIX действуют и применяются представленные ниже, утвержденные базовые международные стандарты, углубляющие некоторые возможности и облегчающие создание мобильных приложений.
В стандарте ISO 14252:1996 - Руководство по POSIX окружению открытых систем (OSE) - изложена идеология и модель создания мобильных программных средств, которое детализирует для пользователей модель комплекса стандартов POSIX, а также взаимодействующих с ними стандартов де-юре, де-факто и спецификаций, необходимых для создания переносимых приложений. Модель отражает принципы построения интерфейсов прикладных программ с платформой - операционной системой, через которую осуществляется взаимодействие с компонентами внешнего окружения. Считается, что прикладные программы непосредственно не взаимодействуют с внешним окружением, а связаны с ним только через операционную систему. Разработка приложений предполагается в кросс-режиме, то есть платформа разработки - инструментальная может не совпадать с платформой исполнения (применения) программ (объектной - целевой). Результат компиляции программы на инструментальной платформе может быть перенесен для исполнения на целевую платформу.
Определяющими являются два интерфейса между тремя базовыми компонентами: между прикладными программами и платформой - операционной системой (API) и между платформой и внешним окружением (EEI). Определены общие функции - услуги платформы для этих взаимодействий.
Внешнее окружение включает компоненты человеко-машинного взаимодействия с пользователями, компоненты информационного взаимодействия с внешними устройствами ЭВМ и с компонентами, обеспечивающими коммуникацию с внешней средой. Эти интерфейсы и услуги более детально формализованы соответствующими стандартами POSIX.
Стандарт включает также общие принципы и руководство по формированию и описанию сложных согласованных профилей и по обеспечению непротиворечивости их интерфейсов с внешним окружением;
-- поддерживающие непосредственное взаимодействие прикладных программ с пользователями, регламентирующие интерфейсы с виртуальными терминалами и графические системы;
-- обеспечивающие административное управление файловыми системами и различными, в том числе распределенными, базами данных;
-- регламентирующие телекоммуникацию и обмен данными на верхних уровнях эталонной модели ВОС;
-- обеспечивающие аттестацию и безопасность применения информационных технологий, программ и данных в соответствии со стандартами ВОС и криптографии.
Стандарт ISO 13210:1998 - Методы тестирования для оценки соответствия стандартам POSIX - содержит общую методологию тестирования для проверки соответствия интерфейсов прикладных программ стандартам POSIX. Представлены принципы формирования наборов тестов и предлагается методика развития системы тестов для контроля создаваемых приложений на соответствие ISO 9945. В методе тестирования выделены: подготовка тестов; процедуры тестирования; оформление документов, удостоверяющих соответствие стандартам. Определены и кратко представлены три основных уровня сложности тестирования: исчерпывающий; достаточно полный; оценочный - для установления общих характеристик качества. Подчеркивается, что предлагаемые методы не гарантируют абсолютное соответствие стандартам, так как исчерпывающее тестирование невозможно по техническим и экономическим причинам. Приводятся рекомендации по:
-- классификации тестовых сценариев и утверждений;
-- подготовке описаний детерминированных тестов и тестов для проверки структурных конструкций;
-- кодированию и представлению результатов тестирования во взаимосвязи с исходными тестами;
-- формированию удостоверения о соответствии интерфейсов прикладных программ стандартам POSIX.
В стандартах POSIX даются ссылки на многие стандарты ISO, ANSI и де-факто. В результате полная совокупность стандартов, поддерживающих проектирование мобильных программ в разных классах открытых систем, возрастает. В конкретных прикладных разработках каждый раз необходима только некоторая, относительно небольшая часть из них, которую целесообразно выделять в соответствующий проблемно-ориентированный профиль.
Размещено на Allbest.ru
...Подобные документы
Обзор и анализ существующих методик управления проектами и оценки трудоемкости. Разработка алгоритма задания параметров и вычисления трудоемкости и стоимости программного продукта. Отладка и тестирование продукта. Разработка руководства пользователя.
дипломная работа [2,5 M], добавлен 18.11.2017Требования к функциям и задачам, выполняемым системой "Подбор кредита ОАО "Россельхозбанк". Проектирование архитектуры программного продукта. Структурная схема программного продукта. Описание компонент программного обеспечения. План менеджмента проекта.
курсовая работа [684,0 K], добавлен 03.05.2015Суть и описание проекта (резюме бизнес-плана). Классификация программного обеспечения для управления проектами. Функции программного обеспечения для календарного планирования. Календарное планирование. Управление затратами.
курсовая работа [192,2 K], добавлен 18.06.2007Анализ существующего программного обеспечения. Этапы создания проекта. Концептуальное, логическое и физическое проектирование базы данных. Структура программного продукта. Руководство программиста и оператора. Тестирование программного продукта.
курсовая работа [586,4 K], добавлен 26.06.2015Характеристика программного продукта и стадий разработки. Расчет затрат на разработку и договорной цены, эксплуатационных расходов, связанных с использованием нового программного продукта. Оценка конкурентоспособности. Изучение, оценка рыночного спроса.
курсовая работа [139,0 K], добавлен 22.09.2008Категории и природа сопровождения программного обеспечения, оценка его трудоемкости. Разработка логической модели программы по регистрации контрольных работ. Организация вывода информации на web-страницу. Определение годового экономического эффекта.
курсовая работа [2,4 M], добавлен 14.01.2011Краткая характеристика программного средства и стадии ее разработки, предъявляемые требования и функциональные особенности. Определение трудоемкости и состава группы исполнителей. Вычисление затрат на разработку программного продукта и договорной цены.
курсовая работа [464,5 K], добавлен 05.02.2016Характеристика структурного подразделения "Шахматный клуб". Выбор основных методологий, инструментальных средств и расчет затрат на разработку специализированного шахматного программного обеспечения ИС "ШК". Оценка экономической эффективности проекта.
дипломная работа [5,6 M], добавлен 29.06.2010Процесс разработки продукта. Процесс оценки, анализ риска, планирование, трассировка и контроль. Структура распределения работ. Типовая структура распределения проектных работ. Анализ чувствительности программного проекта к изменению условий разработки.
реферат [319,6 K], добавлен 26.06.2009Модель этапа пост-архитектуры. Предварительная оценка программного проекта на основе LOC-метрик. Расчет затрат на разработку ПО. Стоимость, длительность разработки проекта на основе модели этапа пост-архитектуры конструктивной модели стоимости СОСОМО II.
курсовая работа [89,9 K], добавлен 29.09.2009Создание программного продукта, представляющего моделирование на компьютере логнормального распределения, определение вероятностной оценки стоимости актива. Описание работы программного продукта. Работа с графиками, таблицами, математическими функциями.
курсовая работа [742,7 K], добавлен 08.01.2009Архитектура программного продукта и требования к платформе, обоснование выбора разработки. Закономерности и основные этапы алгоритмизации и программирования, а также отладка и тестирование продукта. Разработка и содержание руководства пользователя.
дипломная работа [2,3 M], добавлен 19.01.2017Применение промышленных технологий создания программного продукта. Описания принципов, методов, применяемых процессов и операций. Общие понятия методологии разработки программного обеспечения (ПО). Сравнение современных методологий проектных групп.
курсовая работа [1,6 M], добавлен 04.12.2009Оценка финансовой, стратегической ценности и уровня рисков проекта. Классификация проектов: "свой" заказчик, продукт под заказ, тиражируемый продукт, аутсорсинг. Организация процесса разработки программного обеспечения, методологии его проектирования.
презентация [82,8 K], добавлен 07.12.2013Разработка программного продукта, предназначенного для поиска туров, транспорта, мест проживания и расчета стоимости тура, а так же для работ с клиентской базой туристической фирмы. Тестирование программного продукта в среде Borland Developer Studio 2006.
курсовая работа [2,5 M], добавлен 08.11.2012Анализ методов и средств моделирования мультиагентных схем. Тестирование лабораторных работ "Climatechange", "ElFarol" и "Pagerank". Экспериментальное тестирование и отладка программного комплекса. Оценка качества разработанного программного продукта.
дипломная работа [4,5 M], добавлен 12.08.2017Классификация основных рисков, их идентификация. Планирование и оценка рисков информационной системы в организации, принятие мер для устранения рисков. Определение точки безубыточности проекта. Расчет цены потерь и вероятности наступления риска.
лабораторная работа [381,2 K], добавлен 20.01.2016Схемы взаимодействия между заказчиком и разработчиком программного обеспечения. Качество программного обеспечения и определение основных критериев его оценка на современном этапе, особенности управления на стадиях жизненного цикла, анализ достаточности.
презентация [114,7 K], добавлен 14.08.2013Общие требования охраны труда во время работы, а также в аварийных ситуациях. Использование метрик программного продукта при ревьюировании. Проверка целостности программного кода и анализ потоков данных. Сценарии использования программного продукта.
отчет по практике [2,0 M], добавлен 28.11.2022Особенности алгоритмов, критерии качества. Создание и применение программного продукта на языке Delphi. Тип операционной системы. Внутренняя структура программного продукта. Руководство пользователя и программиста, расчет себестоимости и цены программы.
дипломная работа [1,5 M], добавлен 12.06.2009