Файл: Этапы разработки, тестирования и ввода в эксплуатацию мобильных приложений ( Жизненный цикл программного обеспечения ).pdf
Добавлен: 28.03.2023
Просмотров: 286
Скачиваний: 3
СОДЕРЖАНИЕ
1. Теоретические аспекты проектирования и разработки мобильных приложенией
1.1. Жизненный цикл программного обеспечения
1.2. Методы разработки мобильных приложений
2. Анализ мобильных платформ для мобильных приложений
2.1 Мобильная платформа BlackBerry OS
2.3 Мобильная платформа Android
3. Основы тестирования программного обеспечения
3.1 Основы тестирования программного обеспечения для мобильных устройств
3.2 Виды тестирования мобильных приложений
интернационализации. Позволяет на этапе процесса мобильного убедиться в поддержке особенностей других (главным образом, в поддержке). в мобильных приложениях распространена, так как является простым способом увеличения аудитории. В процессе возникнуть многие для мобильных платформ , такие как свободного пространства на [15].
Тестирование удобства (usability). Этот вид является из самых важных, так как в высокой конкуренции приложения входит в основных , влияющих на популярность . Позволяет выявить приложения, которые привлекательны, а даже вызывают в навигации или использовании на экранах. Следует так же , что модель ресурсов приложением целевой аудитории, , приложения-напоминания не должны чрезмерное энергии.
Нагрузочное . Подразумевает наблюдение за памяти и системных , позволяет "узкие" места в , связанные с производительностью, опасные утечки .
Случайное (fuzzy testing, "" testing). Приложение корректно реагировать на случайных и событий. Мобильные чаще других в условия, в которых хаотичную информацию (например, не устройство в кармане), приложение должно реагировать на потоки данных.
тестирование. Приложение правильно работать на платформенных , для которых разрабатывалось. устройства обладают разнообразием, поэтому тестирования доступных видов , на которых используются сборки ОС, которые различные экранов, функционал и обеспечение, крайне и очень трудновыполнима.
тестирование. имитацию реальных качества связи и среды, позволяет как поведет приложение при нестабильном Wi-Fi или с нулевым на счету в сети 3G [2].
тестирование. для подтверждения соответствия стандартам, лицензионным и условиям использования.
требования к , разработанным для мобильных , работающих под управлением .
Установочный файл (.apk) должен согласован с Program (http://play.google.com/about/developer-content-policy.html).
В случае обновленной сборки придерживаться управления версиями (, принятого порядка версий) [4].
Приложение не противоречить GUI (http://developer.android.com/design/index.html).
Для отдельных ов приложений (Amazon App (URL: https://www.amazon.com/-apps) Apps (URL: http://www..com/ru/apps/mobile), .Store (URL: https://.yandex.ru) и подобных) могут свои собственные и гайдлайны.
3.2 Виды тестирования мобильных приложений
В процессе инсталляционного проверяется корректность и деинсталляции программного в среде приближенной к эксплуатационной. правильности установки продукта должна обязательным проекта по тестированию продукта [5]
Цель: цель состоит в том, убедиться, что может быть при различных условиях – как: новая инсталляция, системы (), установка по умолчанию, установка, установка по .
Дымовое тестирование ( testing): Первый прогон (после написания или внесения существенных ). Как правило, для определения, готова ли для проведения более тестирования.
Цель: проблем « на поверхности» – тестируется всего основная логика программы.
тестирование ( testing): соответствия продукта требованиям и спецификациям.
Цель: Проверка продукта функциональным и спецификациям.
Регрессионное (Regression testing): Повторное после внесения в программное обеспечение или в его (в новой версии ), чтобы в том, что функции, которые в предыдущей версии , по-прежнему работают так, как , а найденные успешно исправлены ( протестированное ранее повторно).
Цель: потенциальных , которые могли в результате изменений. исправления найденных дефектов.
тестирование (Integration ): Проверка компонентов прикладной с целью корректности их совместного .
Цель: Выявление проблем в совместном компонент.
графического интерфейса (User Interface ): Тестирование – экранов, и т.д. Большая часть ПО реализуется, как правило, пользовательский интерфейс.
Цель: Обнаружение в интерфейсе и поиск в функциональности посредством .
Тестирование производительности ( testing): Проверка скорости системы (время , частота транзакций и зависящие от ) в имитационной и реальной .
Цель: Установить производительность программного .
Нагрузочное (Load testing): Это те же тесты производительности, при система подвергается нагрузкам; при цель этого – оценить способность правильно функционировать при превышении нагрузок при реальной (система имеет «запас прочности») [1].
Цель: Убедиться в том, что работает соответственно рабочим нагрузочным (какой предел ).
Стресс (Stress testing): Является одним из тестирования на производительность. поведение при недостатке ресурсов ( пространства, обрывов и т.д.).
Цель: Проверка , что система реагирует на те или иные ситуации.
Конфигурационное (Configuration testing): Конфигурационное – тестирование работы на платформах. Различные аппаратной конфигурации, операционной и окружения.
Цель: работоспособность системы при конфигурациях.
Локализационное (Localization ): Локализационное , в свою очередь, , правильно ли локализован . То есть, на другой язык и работает с учетом особенностией страны или , в котором продаваться и использоваться .
Цель: Проверить, ли локализован продукт.
тестов на производится в соответствие с показателями качества, проверяются с их помощью. словами, тестирования на виды в зависимости от типа (функциональные, нефункциональные), с помощью [17].
Для проверки функциональности () ПО необходимо испытать ние на выполнение функциональных к нему ( использования и др.). Для этого собственно функциональные , а также тесты , объема и .
Тестирование надежности () ПО производится с целью нефункциональных требований, что работает, как и , устойчиво к падениям и т.п. применяются интеграционные , тесты структуры, тесты и .
Тестирование удобства (usability) ПО (нефункциональные ) производится с целью в том, что приложение для использования его конечным . Включает в себя на человеческий фактор, интерфейса и его , наличие и качество и контекстной помощи, и учебных материалов [22].
производительности () ПО выполняется с целью , что функционирование приложения в то время, когда нефункциональные к приложению по работе в условиях. Включает в оценку временных , времени , операционной надежности и других характеристик.
3.3 Особенности тестирования мобильных приложений
Чтобы понять тестирования приложений следует во внимание моменты, отличающие мобильные от десктопных: ОС для мобильных платформ, компании-изготовители устройств и комплектующих, функциональность как коммуникаторов и т.п.
В с этими особенностями, к разработке приложений и, в , тестированию на мобильных довольно отличается от десктопного. множество дополнительных нюансов и требований, необходимо . Немного осветим отличия в некоторых тестирования [4]:
Тестирование – частые операционной системы ( десктопов) приводят к обновлять приложение. должно просто и не требовать от специфических знаний. так же проверять различные пути приложения (Wi-Fi, 3G, с ПК, на SD).
Тестирование интернационализации на раннем этапе разработки приложения убедиться в культурных особенностей стран (главным , в языковой ). Интернационализация в мобильных крайне распространена, так как относительно простым серьёзного целевой аудитории. В могут возникнуть специфичные для мобильных проблемы, как недостаток свободного на экране.
Тестирование пользования (usability). вид тестирования одним из важных, так как в высокой конкуренции приложения входит в основных , влияющих на популярность . Позволяет выявить приложения, которые привлекательны или затруднения в навигации или на сенсорных экранах. так же убедиться, что модель ресурсов соответствует целевой . Например, приложения-напоминания не вызывать чрезмерное энергии. это тестирование пров в виде бета-тестирования [1].
тестирование подразумевает за использованием и системных ресурсов; того, нагрузочное позволяет выявить “” места в , связанные с производительностью, а обнаружить опасные памяти.
Случайное (fuzzy , “monkey” testing) – должно корректно на возникновение случайных и событий. устройства чаще попадают в условия, в получают хаотичную информацию (, незаблокированный девайс в ), потому приложение адекватно реагировать на потоки .
Мультиплатформенное и мультидевайсовое – приложение должно работать на всех всех , для которых разрабатывалось. фрагментации мобильных задача тестирования доступных устройств, на которых различные сборки ОС, и имеют различные экранов, и аппаратное обеспечение, же важна, насколько .
Лабораторное тестирование – реальных качества связи и среды. Обычно , как поведёт себя , например, при сигнале Wi-Fi или с балансом на счету в 3G. Данный вид тестирования проверить случаи.
Аттестационное используется для подтверждения приложения стандартам, соглашениям и использования [16, 9]:
Рассмотрим популярные платформы и их при тестировании:
Android:
- файл (.apk) должен быть с Program Policies .
- В публикации обновлённой желательно порядка управления (например, принятого нумерации версий).
- не должно документу GUI.
iPhone:
- должно иметь имя.
- Приложение должно к определённой .
- Нужно предоставить для осуществления обратной с разработчиком.
- Приложение не противоречить Human Interface .
Приложению может отказано в сертификации по наличия материалов, непредвиденных в работе или повторении функций.
ЗАКЛЮЧЕНИЕ
В ходе выполнения настоящей курсовой работы получены следующие результаты.
1. Рассмотрены модели жизненного цикла разработки программного обеспечения (ПО). В ходе анализа были изучены такие модели, как каскадная, каскадная с промежуточным контролем, V-образная модель, итеративная и инкрементная, а также спиральная модель.
Этапы разработки состоят из планирования, пользовательского проектирования, конструирования и переключения (конверсия данных и внедрение системы в организацию).
2. Изучены технологии разработки мобильных. Способы разработки веб-приложений разделены на несколько категорий: технологии, реализующие логику веб-приложений на стороне сервера; подходы, основанные на программировании или скриптах; каркасы веб-приложений и шаблоны проектирования (паттерны).
Рассмотрены архитектуры построения мобильных приложений с помощью базовых платформо-ориентированых языков программирования, выделены преимущества кроссплатформенной разработки. Выделены характеристики сред разработки, их преимущества и недостатки.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Вендров А. М. Case-технологии. Современные методы и средства проектирования информационных систем. / А. М. Вендров. Москва: Финансы и статистика, 2016. 544 с.
2. Гудов А. М., Завозкин С. Ю., Трофимов С. Н. Спецкурс. Технология разработки программного обеспечения. / А. М. Гудов, С. Ю. Завозкин, С. Н. Трофимов // Учебно-методический комплекс. Кемерово, КГУ, 2017. URL: http://unesco.kemsu.ru/study_work/method/po/UMK (Дата обращения 09.11.2018).
3. Зараменских Е. П. Управление жизненным циклом информационных систем: монография. / Е. П. Зараменских. Новосибирск: Издательство ЦРНС, 2014. 270 с.
4. Курапова М. В. Разработка методического обеспечения дисциплины «Управление жизненным циклом информационных систем». / М. В. Курапова // Выпускная квалификационная работа. Пермь, ПГГПУ, 2016. URL: http://vkr.pspu.ru/uploads/3681/Kurapova_vkr.pdf (Дата обращения 08.11.2018).
5. Лобода Ю. Г., Орлова О. Ю. Технологии разработки веб-приложений. / Ю. Г. Лобода, О. Ю. Орлова // Научные работы. Одесская национальная академия пищевых технологий. Одесса, Национальная библиотека Украины имени В. И. Вернадского, 2014. Вып. 46, том 1. С. 239-244.
6. Орлик С. В. Введение в программную инженерию и управление жизненным циклом ПО. / С. В. Орлик. Москва: Символ-Плюс, 2015. 183 с.
7. Сенина А. А. Обзор основных современных технологий разработки веб-приложений. / А. А. Сенина // XIII Всероссийская научно-практическая конференция «Технологии Microsoft в теории и практике программирования». Технологии разработки и проектирования информационных систем. Томск, ТНИПУ, 2010. Секция 6. С. 233-235.
8. Архитектуры ReactNative, Xamarin, PhoneGap и Qt. / Блок компании Microsoft. URL: https://habr.com/company/microsoft/blog/340116/ (Дата обращения 30.10.2018).
9. Веб-приложения. URL: http://megabook.ru/article/Web-приложения (Дата обращения 28.10.2018).
10. Информационное сопровождение деятельности. URL: http://comagency.ru/pr-support-of-evets (Дата обращения 25.10.2018).
11. Лекция 2: Информационные технологии и информационные системы. URL: https://www.intuit.ru/studies/courses/3735/977/lecture/14671?page=5 (Дата обращения 10.11.2018).
12. Лучшие среды разработки веб-приложений. URL: http://ccc.ru/magazine/depot/99_16/read.html?0801.htm (Дата посещения 28.10.2018).
13. Модели жизненного цикла программного обеспечения. URL: https://habrahabr.ru/post/111674/ (Дата обращения 09.11.2018).
14. Модель жизненного цикла RAD. URL: https://commons.wikimedia.org/w/index.php?curid=17833563 (Дата обращения 01.11.2018).
15. Настоящее и будущее решений для разработки кросс-платформенных мобильных гибридных приложений в корпоративной сфере. URL: http://files.tautechnologies.com/Events/2016_10_CEE_SECR/TAU_Technologies_CEE_SECR_2016_RUS.pdf (Дата обращения 29.10.2018).