КГТУ Лекция 2: Обеспечение Качества Программного ОбеспеченияIosif ItkinКГТУ - Костромской Государственный Технологический Университет
Курс Лекций:
Обеспечение Качества Программного Обеспечения
Лекция 2: Жизненный цикл ПО и технологические основы биржевой торговли
Максим Рудовский, Инновационные Трейдинговые Системы
Иосиф Иткин, Exactpro Systems
Программная среда «УЧИМСЯ ПРОГРАММИРОВАТЬ»Pavel GorbunovПрезентация возможностей программной среды "Учимся вместе". ПС предназначена для повышения качества обучения учащихся вузов, общеобразовательных школ и колледжей по информатике.
Основные задачи, решаемые ПС:
1.Автоматизация учебного процесса для преподавателя и учащегося;
2.Помощь учащемуся при решении задач;
3.Отбор лучших решений по каждой задаче по критерию быстродействия и требуемых аппаратных ресурсов;
4.Повышение мотивации учащихся при обучении языкам программирования;
5.Определение плагиата в решениях.
На рынке дистанционного обучения в Российской Федерации есть сильные игроки. Это такие компании, как Competentum, Вебсофт, Открытый Университет «ИНТУИТ» и ряд других. Также в ведущих российских ВУЗ-ах, таких как МФТИ, МГУ, НИЯУ МИФИ и некоторых других ведется обучение студентов языкам программирования с помощью технологий дистанционного обучения. Вместе с тем данные ресурсы предназначены для внутреннего использования и недостаточно универсальны, чтобы стать тиражируемыми в другие учебные заведения. Поэтому прямых сильных конкурентов предлагаемому решению нам не известно.В Интернет имеется целый ряд отечественных и зарубежных электронных ресурсов, посвящённых подготовке к олимпиадам по программированию - acm.timus.ru, codeforces.ru, acm.sgu.ru, acmp.ru, acm.uva.es и др. Однако, данные ресурсы имеют достаточно узкую специализацию – подготовка к этапам чемпионата мира по программированию ACM и к похожим соревнованиям. В отличие от них, программная среда имеет следующие преимущества:- позволяет комбинировать задания на разработку работающих компьютерных программ с традиционными тестами и обучающими материалами. С этой целью нами выполнена интеграция с открытой системой дистанционного обучения Moodle;- программная среда содержит задания самого разного уровня сложности – не только для подготовки к олимпиадам, но и для начального обучения программированию;- задачи сгруппированы по учебным курсам и темам, имеется возможность разграничения прав доступа по курсам, темам и учебным группам / классам;- кроме задач по программированию, в системе содержится комплект заданий по базам данных и языку SQL. С этой целью разработана специализированная подсистема для взаимодейс
TMPA-2013 Sharov: Client CertificationIosif ItkinTools & Methods of Program Analysis Conference (TMPA-2013)
Alexeenko, А., Protsenko, P., Matveeva, А., Itkin, I., Sharov D., Innovative Trading Systems, LLC, Exactpro Systems LLC
Compatibility Testing of Protocol Connections of Exchange and Broker Systems Clients
КГТУ Лекция 2: Обеспечение Качества Программного ОбеспеченияIosif ItkinКГТУ - Костромской Государственный Технологический Университет
Курс Лекций:
Обеспечение Качества Программного Обеспечения
Лекция 2: Жизненный цикл ПО и технологические основы биржевой торговли
Максим Рудовский, Инновационные Трейдинговые Системы
Иосиф Иткин, Exactpro Systems
Программная среда «УЧИМСЯ ПРОГРАММИРОВАТЬ»Pavel GorbunovПрезентация возможностей программной среды "Учимся вместе". ПС предназначена для повышения качества обучения учащихся вузов, общеобразовательных школ и колледжей по информатике.
Основные задачи, решаемые ПС:
1.Автоматизация учебного процесса для преподавателя и учащегося;
2.Помощь учащемуся при решении задач;
3.Отбор лучших решений по каждой задаче по критерию быстродействия и требуемых аппаратных ресурсов;
4.Повышение мотивации учащихся при обучении языкам программирования;
5.Определение плагиата в решениях.
На рынке дистанционного обучения в Российской Федерации есть сильные игроки. Это такие компании, как Competentum, Вебсофт, Открытый Университет «ИНТУИТ» и ряд других. Также в ведущих российских ВУЗ-ах, таких как МФТИ, МГУ, НИЯУ МИФИ и некоторых других ведется обучение студентов языкам программирования с помощью технологий дистанционного обучения. Вместе с тем данные ресурсы предназначены для внутреннего использования и недостаточно универсальны, чтобы стать тиражируемыми в другие учебные заведения. Поэтому прямых сильных конкурентов предлагаемому решению нам не известно.В Интернет имеется целый ряд отечественных и зарубежных электронных ресурсов, посвящённых подготовке к олимпиадам по программированию - acm.timus.ru, codeforces.ru, acm.sgu.ru, acmp.ru, acm.uva.es и др. Однако, данные ресурсы имеют достаточно узкую специализацию – подготовка к этапам чемпионата мира по программированию ACM и к похожим соревнованиям. В отличие от них, программная среда имеет следующие преимущества:- позволяет комбинировать задания на разработку работающих компьютерных программ с традиционными тестами и обучающими материалами. С этой целью нами выполнена интеграция с открытой системой дистанционного обучения Moodle;- программная среда содержит задания самого разного уровня сложности – не только для подготовки к олимпиадам, но и для начального обучения программированию;- задачи сгруппированы по учебным курсам и темам, имеется возможность разграничения прав доступа по курсам, темам и учебным группам / классам;- кроме задач по программированию, в системе содержится комплект заданий по базам данных и языку SQL. С этой целью разработана специализированная подсистема для взаимодейс
TMPA-2013 Sharov: Client CertificationIosif ItkinTools & Methods of Program Analysis Conference (TMPA-2013)
Alexeenko, А., Protsenko, P., Matveeva, А., Itkin, I., Sharov D., Innovative Trading Systems, LLC, Exactpro Systems LLC
Compatibility Testing of Protocol Connections of Exchange and Broker Systems Clients
Симуляционное моделирование и семантические технологииSergey GorshkovПлатформа симуляционного моделирования для оптимизации, прогнозирования, поддержки принятия решений.
Алексей Иванов -- курс по стыку системной и программной инженерийAnatoly LevenchukДоклад Алексея Иванова «Стык системной и программной инженерии в учебном курсе моделеориентированной разработки программоёмких систем» на 75 заседании Русского отделения INCOSE, 24 апреля 2013г.
Программное обеспечение, его классификация. Понятие операционных системkurbanovafainaПрограммное обеспечение, его классификация. Понятие операционных систем
Аудит безопасности программного кода: Подходы, стандарты, технологии выявлени...Andrey FadinСеминар ставит целью познакомить технических специалистов как с теоретическими, так и с прикладными вопросами оценки безопасности кода приложений (ПО).
Затрагиваются вопросы нормативной базы, классификации уязвимостей и дефектов ПО, а также стандартизации терминов и методик аудита, рассматриваются различные методы статического и динамического анализа, менеджмент процесса, существующие инструменты в этой области.
2. Содержание лекции 1. Требования к программному обеспечению. 2. Виды тестирования. 3. Логическое программирование. 4. Функциональное программирование. 5. Стандарты и программные средства. 6. WEB-технологий .
3. Программные средства обеспечения управления информационными ресурсами Прикладные программные средства Тестовые и диагностические программы Антивирусные программы Операционные системы Системные программные средства Программные средства обеспечения управления информационными ресурсами
4. Постановка математической задачи Операционные системы Однопользовательские однозадачные системы (MS-DOS) Однопользовательские многозадачные системы (Windows 98/2000) Многопользовательские системы (UNIX, Windows XP)
5. Этапы разработки ПС анализ требований; определение спецификаций; алгоритмизация; тестирование; подготовка программной документации.
6. Анализ требований: - к ресурсам, выделенным на разработку программных средств; - к ресурсам, которые будут затрачиваться на эксплуатацию программных средств. - к пользовательскому интерфейсу; - к временной сложности алгоритмов; к используемому объему оперативной и внешней памяти; к системному программному обеспечению; - к используемым техническим средствам; Все требования оформляются в виде технического задания (ТЗ) на разработку программных средств.
7. Определение спецификаций включает: определение функций, выполняемых программой; установление или разработка входных и выходных данных; определение характеристик этих данных: носителей, формы представления, структур хранения; разработка сценария диалога; определение структуры запросов к базе данных.
8. Алгоритмизация. Формируется архитектура программной системы, т.е. определяется список компонент и отношения между этими компонентами (структура модулей): - отношения управление – управляющий, информационно связанные отношения. Информационно связанными называются модули в том случае, когда результаты выполнения одного программного модуля являются входными данными для другого модуля. Таким образом, чтобы задать архитектуру программной системы, необходимо задать состав модулей и установить управляющие и информационные связи между ними.
9. Алгоритмизация (п родолжение) Назначаются разработчики компонент программной системы. Разрабатываются или выбираются методы решения задач. Выбираются языки программирования для каждого компонента системы. Сначала выбирается класс языка, потом сам язык программирования. Например, Лисп – язык функционального программирования, Prolog – логический язык. Выбирается технология, инструментальные средства и система документирования программ. Кодирование программы.
10. Тестирование 1. Планирование тестирования: 1.1. Формулировка цели тестирования в зависимости от вида тестирования, выбор критериев тестирования (например, тесты должны покрыть все переходы между операторами). Стратегия предполагает разработку таких планов, чтобы они покрывали всех операторов. 1.2. Выбор методов формирования тестов. Можно выбрать реальные тесты (подмножество реальных данных), либо абстрактные тесты. 1.3. Определение ресурсов, которые будут использованы при тестировании.
11. Тестирование (п родолжение) 2. Составление тестов и заданий на отладку. 3. Разработка средств информирования о результатах выполнения тестов. 4. Проведение тестирования и контроль правильности работы программы, обнаружение ошибок. 5. Локализация ошибок, определение причин и выработка мер по устранению ошибок в программе. 6. Корректировка исходного текста программы.