09 «ИТ Программные решения для бизнеса» Разработка программных решений для повышения производительности бизнеса включает в себя много различных навыков и дисциплин. Ключевым моментом здесь является быстрое осознание изменений в характере отрасли и умение идти в ногу с темпами изменений. IT профессионалы всегда работают в тесном контакте с клиентами для модификации существующих систем или создания новых: • они могут изменить уже имеющееся в наличии программное обеспечение и интегрировать его в существующие системы • они часто работают в составе команды профессионалов, отвечающей за разработку технического задания, системный анализ и проектирование, реализацию, тестирование, обучение пользователей и внедрение, а также обслуживание информационной системы Этапы разработки информационной системы: • Предварительное проектное исследование и обследование предметной области • Анализ бизнес-процессов и деятельности Заказчика • Составление проектной документации, в том числе Технического Задания • Разработка программного обеспечения и баз данных • Тестирование программного обеспечения Конкурсант в номинации «IT программные решения для бизнеса» должен обладать следующими навыками: • понимать важность рассмотрения всех возможных вариантов и получения наилучшего решения на основе надежных аналитических суждений и интересов клиента • понимать важность использования методологий разработки системы (например, объектно-ориентированные технологии) • знать и уметь применять системный анализ и методологию проектирования: UML (Unified Modelling Language), MVC (Model-View-Control), шаблоны проектирования (Design Patterns) • рассматривать все нормальные и ненормальные сценарии и уметь обрабатывать исключительные ситуации • следовать стандартам (например, правилам кодирования, руководству по стилю (оформление системной и программной документации), применять конструкции интерфейса пользователя, управлять каталогами и файлами) • знать важность точного и постоянного контроля версий (управление версиями) • использовать существующий код в качестве основы для анализа и модификации • уметь разрабатывать системы с акцентом на модульность и возможность повторного использования Конкурсант должен уметь проектировать системы на основе: • диаграммы классов, диаграммы последовательности, диаграммы состояний, диаграммы деятельности - описания объекта и пакета • схемы реляционной или объектной базы данных • структуры пользовательского интерфейса • средств безопасности и контроля • структуры многозвенного приложения Конкурсант должен уметь работать с базами данных: • использовать системы управления базами данных для построения, хранения и управления данными для требуемой системы (MySQL или SQL Server) • уметь разработать приложение "клиент-сервер" на базе .NET или Java • определить и интегрировать соответствующие библиотеки и фреймворки в программное решение • построить многоуровневые приложения • построить веб-поддержку и/или мобильный интерфейс для клиента на основе серверной системы Конкурсант должен обладать умением проверки работоспособности разработанных решений: • принципы тщательной проверки разработанных решений и устранения возможных проблем • составлять план тестирования (например, поблочное тестирование, нагрузочные испытания, интегрированные и приемочные испытания) • разрабатывать тест-кейсы и проверять результаты тест- кейсов • отладку и исправление ошибок • составлять отчет о тест-процессе Конкурсант должен уметь работать с конструкторской документацией: • должен понимать важность тщательного документирования разработанных решений • разрабатывать документацию для пользователей • работать с технической документацией Задание (WorldSkills Россия, 2015г.) Ведется разработка некоторой информационной системы. Заказчик предоставил детали и примеры ожидаемого результата. Требуется спроектировать, реализовать и задокументировать программное решение. Подготовка результата осуществляется на протяжении 5 этапов. Набор, предоставляемых по итогам каждого этапа, результатов определен ниже в соответствующих разделах данного документа. Результат каждого этапа может использоваться в последующих этапах. Требуется разработать программное решение для учета платежей физических лиц. Используя полученный программный продукт физические лица могут вести учет своих платежей. Кроме того, появится возможность производить несложный анализ затрат в разрезе периодов или категорий. Также можно получать результаты анализа в печатной форме. Предоставляется: задание на разработку, исходные данные, макеты отчета для печати Задание 1: Задание 2: Задание 3: Задание 4: Задание 5: Системный анализ и проектирование Средства безопасности и контроля Реализация ключевых сценариев программного решения Создание средств отчетности Обеспечение качества программного решения Задание 1. Системный анализ и проектирование Для выполнения задания необходимо определить порядок и способ взаимодействия конечных пользователей с разрабатываемым программным решением, выделить необходимые данные и способ их хранения, а также разработать модели структуры и ожидаемого поведения системы. Этапы задания 1. Этап Моделирование прецедентов 2. Моделирование реализации прецедентов 3. Моделирование данных Описание На этом этапе необходимо установить границы системы; роли, взаимодействующие с системой (актеры); варианты использования системы (прецеденты) и отношения между ролями и прецедентами. На данном этапе нужно определить наборы классов, реализующих поведение, описанное в прецедентах. Для этого необходимо показать классы анализа, взаимодействующие для реализации прецедента и взаимодействия определенных экземпляров, реализующих прецедент. В рамках этого этапа требуется выделить таблицы, домены, ключи и отношения, на основе которых будет производиться разработка базы данных. 1. 2. Результат Диаграмма прецедентов; Спецификации прецедентов. 1. 2. Диаграмма классов анализа; Диаграммы взаимодействия (диаграммы взаимодействий, либо диаграммы последовательностей, либо коммуникационные диаграммы). 1. Диаграмма «сущность-связь», в которой отражены таблицы, связи и поля с указанием типов данных. Задание 2. Средства безопасности и контроля Перед выполнением основной части задания выполните следующие действия: • Создайте новую базу данных на сервере СУБД. Назовите ее «EKB2015» • Используйте свою ER-диаграмму и описание ниже для создания таблиц с подходящими атрибутами и отношениями (первичные и внешние ключи) • Используйте подходящие типы данных для ваших атрибутов • Добавьте по крайней мере 5 записей в качестве образца данных в каждую таблицу Предполагается, что система будет использоваться несколькими пользователями и содержать относительно конфиденциальные данные. Поэтому необходимо в проекте программного решения создать интерфейсную форму и методы для реализации идентификации пользователей посредством пары «имя пользователя / пароль». Детальная информация о пользователях приведена в Excel-файле в папке «Ресурсы». Функции добавления и удаления пользователей моделировать и реализовывать не нужно. В папке «Ресурсы» может располагаться дополнительная документация для реализации задания. Задание 3. Реализация ключевых сценариев программного решения Необходимо реализовать ключевые сценарии для программного решения: • добавление основных данных • удаление основных данных • выборка данных по критерию Участнику выдается : • макет интерфейса пользователя • набор исходных данных • описание задачи заказчика Необходимо реализовать обработку исключений и вывода ошибок при проверке ввода данных в своей системе Задание 4. Создание средств отчетности Для формы выборки данных по критерию нужно создать печатную форму отчета, соответствующую данным, отображаемым в результате выполнения операции выборки. Необходимо создать документ, который описывает как система разрабатывалась и объясняет как она работает. Включить разработанные ранее диаграммы и спецификации, а также скриншоты интерфейсов в документацию. Требуемые секции: • • • Титульный лист Диаграммы и спецификации Интерфейсы и Руководство по использованию системы Задание 5. Обеспечение качества программного решения Требуется осуществить тестирование программного обеспечения. Для этого необходимо: • создать проект тестирования • подключить библиотеки тестирования и разработанный программный проект • на каждый разработанный метод объявлен и разработан метод теста; • реализовать все необходимые модульные тесты • осуществить тестирование и убедиться, что все тесты успешно исполняются Поставленные задачи не требовали каких-либо глубоких знаний в отрасли. Необходимая поддержка была предоставлена организаторами в рамках конкурса. В идеале проект может использоваться в благотворительной или другой сфере, не приносящей прибыль, в стране, организующей конкурс, чтобы расходы (материальные и моральные) не были потрачены впустую Инфраструктурный лист № п/п Наименование Важность Программное обеспечение общего назначения для участников 1. 64-bit Microsoft® Windows® 7 Professional English witch Service Pack Upload. Критично 2. Microsoft Office 2010 Professional или более новый Критично 3. Adobe Acrobat Reader 11 или более новый критично 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. Программное обеспечение специального назначения для участников ПО ArgoUML ПО Astah community ПО brModelo ПО Crystal report ПО DBDesigner ПО DeZign for Databases ПО Dia Diagram Editor ПО Eclipse ide for java ee developers ПО Editplus text editor ПО Framework.net ПО Inno Setup ПО iReport designer for JasperReport ПО JDK 7 ПО JDK 8 ПО JRE 7 ПО JRE 8 ПО Jasper Studio ПО Java FX Scene Builder ПО Java FX Tooling ans runtime dor Eclipse ПО MatePad ПО Microsoft Report viewer 2012 ПО Microsoft SQL Server 2012 ПО Microsoft Visio Professional 2013 ПО Microsoft Visual Studio Ultimate 2012 ПО MySQL Community Server ПО MySQL Workbench ПО Netbeans ПО Notepad++ ПО sublime text ПО SQL Server Management Studio ПО UltraEdit ПО VirtualBox ПО Visual C++ ПО Windows builder plugin Eclipse Kepler ПО WinRAR критично критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично Критично