Среда разработки программного обеспечения для "тонкого" клиента



Среда разработки программного обеспечения для "тонкого" клиента
Среда разработки программного обеспечения для "тонкого" клиента
Среда разработки программного обеспечения для "тонкого" клиента
Среда разработки программного обеспечения для "тонкого" клиента
Среда разработки программного обеспечения для "тонкого" клиента
Среда разработки программного обеспечения для "тонкого" клиента
Среда разработки программного обеспечения для "тонкого" клиента

 


Владельцы патента RU 2469385:

МАЙКРОСОФТ КОРПОРЕЙШН (US)

Изобретение относится к области сред разработки программного обеспечения. Техническим результатом является предоставление "тонкому" клиенту среды разработки программного обеспечения. Предоставляется серверное приложение разработки программного обеспечения, которое выполнено с возможностью отображения в пользовательском интерфейсе "тонкого" клиента на клиентском компьютере. Серверное приложение разработки имеет серверный компилятор. От клиентского компьютера принимаются входные данные для взаимодействия с проектом разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения. Проект разработки программного обеспечения сохраняется в местоположении, доступном из приложения разработки программного обеспечения. Выбор компиляции принимается от клиентского компьютера, чтобы скомпилировать проект разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения. Скомпилированное приложение формируется с помощью серверного приложения разработки программного обеспечения и предоставляется клиентскому компьютеру. Функциональные возможности для совместного использования позволяют осуществлять доступ к проекту разработки программного обеспечения множеству пользователей с различных клиентских компьютеров. 2 н. и 13 з.п. ф-лы, 7 ил.

 

Уровень техники

Среды разработки программного обеспечения настоящего времени, такие как MICROSOFT® Visual Studio, Eclipse и т.д., основаны на принципах "толстого" клиента. В таких средах общим является необходимость установок многогигабайтного программного обеспечения, что может занимать часы для установки прежде, чем среда разработки сможет быть использована. Машина, на которой устанавливается приложение разработки программного обеспечения, должна иметь достаточно ресурсов, чтобы управлять компиляциями, которые зачастую могут требовать большого количества RAM и других системных ресурсов. Это накладывает тяжелое бремя на машину для локальной разработки.

Кроме того, пользователи таких сред разработки программного обеспечения не способны легко совместно использовать свою работу с друзьями и/или коллегами без использования механизма совместного использования от третьей стороны, например, посредством передачи проекта по электронной почте человеку или использования системы контроля версий, которая управляет исходным кодом. Одной проблемой с передачей проекта по электронной почте является то, что зачастую может быть задействовано большое количество файлов исходного кода, и получатель электронной почты также должен иметь приложение разработки программного обеспечения, установленное на своем компьютере. Одной проблемой с системами контроля версий является то, что они также зачастую ограничены установками на толстом клиенте, и могут типично быть доступны только коллегам в той же конкретной компании ввиду ограничений безопасности компании.

Сущность изобретения

Раскрываются различные технологии и способы для предоставления "тонкому" клиенту (клиенту-терминалу) среды разработки программного обеспечения. Предоставляется серверное приложение разработки программного обеспечения, которое функционирует с возможностью отображения в пользовательском интерфейсе "тонкого" клиента на клиентском компьютере. Серверное приложение разработки имеет серверный компилятор, который управляет задачей компиляции, которая может зачастую быть чувствительной к ресурсам. От клиентского компьютера принимаются входные данные для взаимодействия с проектом разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения. Проект разработки программного обеспечения сохраняется в местоположении, доступном из приложения разработки программного обеспечения. Выбор этапа компиляции принимается от клиентского компьютера, чтобы скомпилировать проект разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения. В ответ на выбор компиляции от клиентского компьютера скомпилированное приложение формируется с помощью серверного приложения разработки программного обеспечения и предоставляется клиентскому компьютеру, как, например, с помощью функциональной возможности загрузки файла.

В одном варианте осуществления различные функциональные возможности разработки предоставляются пользователям в пользовательском интерфейсе "тонкого" клиента, как, например, окончание команды, раскрашивание синтаксиса и помощь по параметрам - если перечислять несколько неограничивающих примеров. В еще одном варианте осуществления функциональная возможность совместного использования позволяет осуществлять доступ к проекту разработки программного обеспечения множеству пользователей с различных клиентских компьютеров, например, для того, чтобы просмотреть, исправить и/или прокомментировать проект. Одна или более настроек безопасности могут управлять доступом к проекту одного или более пользователей. В одном варианте осуществления пользователь, который создает проект, управляет тем, кто может получить доступ к проекту.

Данная краткая сущность предусмотрена для того, чтобы в упрощенной форме представить выбор концепций, которые дополнительно описываются ниже в подробном описании. Эта сущность не предназначена для того, чтобы идентифицировать ключевые признаки или важнейшие признаки заявляемого предмета изобретения, а также не предназначена для того, чтобы быть использованной в качестве помощи при определении области применения заявляемого предмета изобретения.

Краткое описание чертежей

Фиг.1 является схематическим представлением вычислительной системы одного варианта осуществления.

Фиг.2 является схематическим представлением серверного приложения разработки программного обеспечения одного варианта осуществления, работающего в вычислительной системе на фиг.1.

Фиг.3 является блок-схемой процесса для одного варианта осуществления системы на фиг.1, иллюстрирующей этапы, используемые при предоставлении серверного приложения разработки программного обеспечения, которое может быть доступно в пользовательском интерфейсе "тонкого" клиента.

Фиг.4 является блок-схемой процесса для одного варианта осуществления системы на фиг.1, иллюстрирующей этапы, используемые при использовании функциональной возможности совместного использования проекта разработки программного обеспечения "тонкого" клиента.

Фиг.5 является логической схемой для одного осуществления системы на фиг.1, иллюстрирующей компоненты, используемые при предоставлении серверного приложения разработки программного обеспечения, которое доступно в пользовательском интерфейсе "тонкого" клиента.

Фиг.6 является смоделированным экраном одного осуществления системы на фиг.1, который иллюстрирует пользовательский интерфейс "тонкого" клиента для серверного приложения разработки программного обеспечения, чтобы предоставить возможность пользователю создать проект или продолжить существующий.

Фиг.7 является смоделированным экраном одного осуществления системы на фиг.1, который иллюстрирует пользовательский интерфейс "тонкого" клиента для серверного приложения разработки программного обеспечения, который позволяет пользователю написать исходный код, скомпилировать исходный код и увидеть результаты.

Подробное описание

В целях способствования пониманию принципов изобретения теперь будет сделана ссылка на варианты осуществления, иллюстрированные на чертежах, и будет использован специфический язык, чтобы описать их. Тем не менее, будет понятно, что в связи с этим не подразумевается ограничение рамок изобретения. Все изменения и дополнительные модификации в описанных вариантах осуществления и любые дополнительные применения принципов, которые описаны в данном документе, рассматриваются, как обычно придет на ум специалисту в данной области техники.

Система может быть описана в общем контексте как приложение разработки программного обеспечения, но система также служит другим целям в дополнение к этим. В одном осуществлении один или более способов, описанных в данном документе, могут быть осуществлены в качестве функциональных возможностей в программе разработки программного обеспечения, такой как MICROSOFT® Visual Studio, Eclipse или из любого другого типа программы или службы, которая позволяет пользователю создавать программное обеспечение для одной или более платформ операционной системы. В одном осуществлении предоставлено серверное приложение разработки программного обеспечения, которое доступно пользователю в пользовательском интерфейсе "тонкого" клиента. Серверный компилятор выполняет компиляцию и другие чувствительные к ресурсам задачи, таким образом компьютер пользователя не должен делать это. Файлы проекта разработки программного обеспечения одного отдельного пользователя могут необязательно совместно использоваться между множеством пользователей.

Как показано на фиг.1, примерная вычислительная система, используемая для реализации одной или более частей системы, включает в себя одно или более вычислительных устройств, таких как вычислительные устройства 100 и/или 130. В своей самой базовой конфигурации вычислительные устройства 100 и/или 130 типично включают в себя, по меньшей мере, один блок (102 и 132 соответственно) обработки и память (104 и 134 соответственно). В зависимости от точной конфигурации и типа вычислительного устройства память 104 или 134 может быть энергозависимой (такой как RAM), энергонезависимой (такой как ROM, флеш-память и т.д.) или некоторой комбинацией обеих. Эта самая базовая конфигурация иллюстрирована на фиг.1 линиями 106 и 136.

Кроме того, устройства 100 и/или 130 могут также иметь дополнительные признаки/функциональность. Например, устройства 100 и/или 130 могут также включать в себя дополнительное хранилище (съемное и/или несъемное), включающее в себя, но не только, магнитные или оптические диски или ленту. Такое дополнительное хранилище проиллюстрировано на фиг.1 посредством съемного хранилища (108 и 138 соответственно) и несъемного хранилища (110 и 140 соответственно). Компьютерные носители хранения включают в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или технологией хранения такой информации, как компьютерно-читаемые инструкции, структуры данных, программные модули или другие данные. Память 104 и 134, съемное хранилище 108 и 138, несъемное хранилище 110 и 140 - все являются примерами компьютерных носителей хранения. Компьютерные носители хранения включают в себя (но не только) RAM, ROM, EEPROM, флэш-память или другую технологию памяти, CD-ROM, универсальные цифровые диски (DVD) или другие оптические устройства хранения, магнитные кассеты, магнитные ленты, устройства хранения на магнитных дисках или другие магнитные устройства хранения, либо любой другой носитель, который может быть использован для того, чтобы сохранять нужную информацию, и доступ к которому может осуществляться посредством устройства 100 и/или 130. Любые такие компьютерные носители хранения могут быть частью устройства 100 и/или 130.

Вычислительные устройства 100 и/или 130 включают в себя одно или более соединений связи, которые позволяют вычислительным устройствам 100 и/или 130 осуществлять связь друг с другом и/или одним или более другими вычислительными устройствами (150, 160 и 170 соответственно) через сеть 116. Соединение(я) 114 и 144 связи являются примерами среды передачи данных. Среда связи типично воплощает компьютерно-читаемые инструкции, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущее колебание или другой механизм распространения, и включает в себя любой носитель для доставки информации. Термин "модулированный сигнал данных" означает сигнал, который имеет одну или более из его характеристик, установленных или изменяемых таким образом, чтобы кодировать информацию в сигнале. В качестве примера, но не в качестве ограничения, среда связи включает в себя проводную среду, такую как проводная сеть или прямое проводное соединение, и беспроводную среду, такую как акустическая среда, RF, инфракрасное излучение и другая беспроводная среда. Термин "компьютерно-читаемые носители" при использовании в данном документе включает в себя как носители хранения, так и среду связи.

В одном осуществлении вычислительное устройство 100 является клиентским компьютером, который связывается с серверным компьютером 130 с помощью соединения 114 и 144 связи через сеть 116. В таком осуществлении пользовательский интерфейс 118 "тонкого" клиента (например, браузера) клиентского вычислительного устройства 100 обращается к пользовательским данным 150 проекта разработки программного обеспечения (если есть в наличии) и серверному приложению 200 разработки программного обеспечения на серверном вычислительном устройстве 130 для выполнения одной или более задач разработки программного обеспечения. Будет понятно, что пользовательские данные 150 проекта разработки программного обеспечения и/или серверное приложение 200 разработки программного обеспечения могут быть сохранены на одном и том же компьютере или разных компьютерах, но что они показаны на одном и том же серверном вычислительном устройстве 130 ради ясности. В одном осуществлении пользовательский интерфейс 118 "тонкого" клиента клиентского вычислительного устройства 100 является основанным на браузере пользовательским интерфейсом, а серверное вычислительное устройство 130 является веб-сервером.

Вычислительные устройства 100 и 130 могут также иметь устройство(а) ввода (114 и 134 соответственно), такие как клавиатура, мышь, перо, устройство голосового ввода и т.д. Устройство(а) вывода (116 и 136 соответственно), такие как дисплей, динамики, принтер и т.д., также могут быть включены в состав системы. Эти устройства хорошо известны в области техники, и нет необходимости обсуждать их здесь.

Обращаясь теперь к фиг.2 с продолжающейся ссылкой на фиг.1, иллюстрируется серверное приложение 200 разработки программного обеспечения, функционирующее на вычислительном устройстве 100. Серверное приложение 200 разработки программного обеспечения является одной из прикладных программ, которые постоянно находятся в вычислительном устройстве 100. Однако будет понятно, что серверное приложение 200 разработки программного обеспечения может альтернативно или дополнительно быть осуществлено как компьютерно-исполняемые инструкции на одном или более компьютерах и/или в других вариациях, чем показано на фиг.1. Альтернативно или дополнительно, одна или более частей серверного приложения 200 разработки программного обеспечения могут быть частью системной памяти 104, на других компьютерах и/или приложениях 115, или другими такими вариациями, которые придут на ум специалисту в области техники компьютерного программного обеспечения.

Серверное приложение 200 разработки программного обеспечения включает в себя программную логику 204, которая отвечает за выполнение некоторых или всех способов, описанных в данном документе. Программная логика 204 включает в себя логику 206 для предоставления серверного приложения разработки программного обеспечения, работающего, чтобы отображаться в пользовательском интерфейсе "тонкого" клиента, по меньшей мере, на одном клиентском компьютере; логику 208 для предоставления серверного компилятора как части приложения разработки, компилятор функционирует так, чтобы предоставить один или более скомпилированных файлов отдельному получателю на основе запроса клиентским компьютером выполнения компиляции; логику 210 для получения входных данных, по меньшей мере, от одного клиентского компьютера, чтобы получить доступ к приложению разработки с помощью пользовательского интерфейса "тонкого" клиента; логику 212 для сохранения, по меньшей мере, одного пользовательского проекта, который был создан клиентским компьютером, когда клиентский компьютер обращался к серверному приложению разработки программного обеспечения; логику 214, чтобы сделать пользовательский проект доступным одному или более пользователям (например, для просмотра, исправления и/или комментирования) на основе набора настроек безопасности для проекта; логику 216 для предоставления множества функциональных возможностей разработки, таких как завершение команды, раскрашивание синтаксиса и помощь по параметрам; и другую логику 220 для работы приложения.

Обращаясь теперь к фиг.3-4 с продолжающейся ссылкой на фиг.1-2, этапы осуществления одной или более реализаций серверного приложения 200 разработки программного обеспечения описываются более подробно. Фиг.3 является блок-схемой процесса, иллюстрирующей этапы, используемые при предоставлении серверного приложения 200 разработки программного обеспечения, к которому может осуществляться доступ в пользовательском интерфейсе "тонкого" клиента. В одной форме процесс на фиг.3, по меньшей мере, частично реализован в операционной логике вычислительного устройства 100. Процедура начинается в точке 240 старта с предоставления серверного приложения разработки программного обеспечения, выполненного с возможностью отображаться в пользовательском интерфейсе "тонкого" клиента на клиентском компьютере (этап 242). В одном осуществлении пользовательский интерфейс "тонкого" клиента доступен в веб-браузере из множества платформ операционных систем, которые используют некоторые команды на основе AJAX или другой технологии (этап 242). В одном осуществлении предоставлены возможности среды разработки, такие как окончание команды, раскрашивание синтаксиса и помощь по параметрам - если упоминать несколько неограничивающих примеров (этап 242). Альтернативно или дополнительно, один или более веб-компонентов первоначально загружаются из серверного приложения разработки на конкретный клиентский компьютер, прежде чем пользовательский интерфейс "тонкого" клиента будет правильно функционировать. Серверное приложение разработки программного обеспечения может занимать более или менее чем один гигабайт пространства хранения на сервере (этап 242).

Входные данные принимаются от клиентского компьютера так, чтобы выполнять взаимодействие с проектом разработки программного обеспечения с помощью приложения разработки программного обеспечения (этап 244). Проект разработки программного обеспечения сохраняется (например, на серверном компьютере, на клиентском компьютере и т.д.) и доступен приложению разработки программного обеспечения (этап 246). Проект разработки программного обеспечения может необязательно иметь одну или более настроек безопасности для указания того, какие права доступа к проекту могут иметь один или более пользователей (этап 248), например только чтение, чтение-запись, защита от копирования и т.д. В одном осуществлении пользователь, который создал проект, может модифицировать установки безопасности, управляющие правами доступа (этап 248). Альтернативно или дополнительно, другим пользователям (таким как менеджеры проектов или сетевые администраторы) может быть предоставлено разрешение модифицировать установки безопасности для одного или более проектов.

Выбор этапа компиляции принимается от клиентского компьютера, чтобы скомпилировать проект разработки программного обеспечения с помощью приложения разработки программного обеспечения (этап 250). Скомпилированное приложение (или один или более компонентов) формируется с помощью приложения разработки программного обеспечения посредством серверного компилятора (этап 252). Термин "компиляция", когда используется в данном документе, определяется как перевод исходного кода в исполняемый формат, такой как исполняемый (EXE) файл, динамически подключаемая библиотека (DLL), элемент управления, подключаемый программный модуль и т.д. Скомпилированное приложение предоставляется компьютеру назначения (такому как клиентский компьютер или другой компьютер), как, например, посредством создания одного или нескольких файлов (исполняемых файлов, DLL, подключаемых программных модулей, элементов управления и т.д.), доступных для загрузки (этап 254). Альтернативно или дополнительно, файлы, сформированные компилятором, могут автоматически развертываться сервером, например, когда затрагивается веб-часть или разработка расширения для веб-приложения, если упоминать неограничивающий пример. Другие сценарии загрузки файлов и/или развертывания файлов для скомпилированного одного или более файлов также возможны, как придет на ум обычному специалисту в области техники программного обеспечения. Процесс заканчивается в точке 256.

Фиг.4 иллюстрирует одно осуществление этапов, используемых при использовании функциональной возможности совместного использования проекта разработки программного обеспечения "тонкого" клиента. В одной форме процесс на фиг.4, по меньшей мере, частично реализован в операционной логике вычислительного устройства 100. Процедура начинается в точке 270 старта предоставлением серверного приложения разработки программного обеспечения с серверным компилятором (этап 272). Приложение разработки программного обеспечения доступно множеству клиентских компьютеров через пользовательский интерфейс "тонкого" клиента (такого, как разрешающего доступ клиентского компьютера, после того как приняты правильные реквизиты доступа)(этап 272). Входные данные принимаются от первого клиентского компьютера для того, чтобы создать проект разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения (и, необязательно, принимаются установки безопасности, которые указывают, какие пользователи могут осуществлять доступ к проекту)(этап 274). Проект разработки программного обеспечения сохраняется в местоположении хранения, которое доступно из серверного приложения разработки программного обеспечения (например, на том же или другом компьютере)(этап 276). Входные данные принимаются от второго клиентского компьютера для того, чтобы осуществить доступ к проекту разработки программного обеспечения (этап 278). Проект разработки программного обеспечения предоставляется второму клиентскому компьютеру (этап 280). Приложение разработки программного обеспечения необязательно принимает комментарии и/или исправления от второго клиентского компьютера, которые сохраняются с проектом (этап 280). Процесс заканчивается в точке 282 окончания.

Фиг.5 является логической схемой для одного осуществления системы на фиг.1, иллюстрирующей компоненты, включенные в предоставление серверного приложения 400 (200 на фиг.1 и 2) разработки программного обеспечения, которое доступно в пользовательском интерфейсе "тонкого" клиента. Показаны клиентские компоненты 402 и серверные компоненты 404. Клиентские компоненты включают в себя пользовательский интерфейс 406 "тонкого" клиента, как, например, интерфейс в браузере, таком как MICROSOFT® Internet Explorer, Firefox и т.д. Пользовательский интерфейс 406 "тонкого" клиента может использовать Atlas или другую AJAX-библиотеку и т.д. для осуществления некоторой функциональности. Серверные компоненты 404 включают в себя компонент 408 раскрашивания синтаксиса, компонент 410 окончания команд, компонент 412 помощи по параметрам, уровень 414 веб-службы и внутреннюю среду 416 разработки. Компонент 408 раскрашивания синтаксиса, компонент 410 окончания команд и компонент 412 помощи по параметрам являются только неограничивающими примерами типов функциональных возможностей разработки, предоставляемых серверным приложением разработки программного обеспечения. Уровень веб-службы ссылается на функциональность, которая предоставляет возможность связывания между внутренней средой 416 разработки и "тонким" клиентом 406. Внутренняя часть 416 среды разработки отвечает за предоставление функциональности приложения, такой как контекст проекта, семантический контекст, раскрашивание синтаксиса и т.д.

Фиг.6 является смоделированным экраном 430 одного осуществления системы на фиг.1, который иллюстрирует пользовательский интерфейс "тонкого" клиента для серверного приложения разработки программного обеспечения, чтобы предоставить возможность пользователю создать проект 434 или продолжить существующий 432. Фиг.7 является смоделированным экраном 450 одного осуществления системы на фиг.1, который иллюстрирует пользовательский интерфейс "тонкого" клиента для серверного приложения разработки программного обеспечения, который позволяет пользователю написать исходный код 458, скомпилировать исходный код с помощью функциональной возможности 454 сборки кода и увидеть результаты компиляции в окне 460 компиляции. Проект может быть сохранен с помощью варианта 452 "сохранение" и необязательно совместно использоваться с другими пользователями с помощью варианта 456 "совместное использование". Признак 462 окончания команды показан после ввода фразы "Console."("консоль."), чтобы показать различные варианты окончания команды. Хотя и не показано, чтобы сохранить ясность, также может использоваться раскрашивание синтаксиса, чтобы изменить цвет различных типов синтаксиса, чтобы сделать его легким для распознавания пользователем. Одним неограничивающим примером является предоставление комментариев цветом, отличным от фактических команд. Также может быть предоставлена помощь по параметрам, например, показывающая пользователю, какие параметры принимает вызов данной процедуры, чтобы помочь пользователю закончить запись вызова в эту процедуру.

Хотя предмет изобретения описан на языке, характерном для структурных признаков и/или методологических действий, следует понимать, что предмет изобретения, заданный в прилагаемой формуле изобретения, не обязательно ограничен характерными признаками или действиями, описанными выше. Скорее, характерные признаки и действия, описанные выше, раскрываются как примерные формы реализации формулы изобретения. Все эквиваленты, изменения и модификации, которые попадают под дух реализаций, описанных в данном документе и/или нижеследующей формуле изобретения, должны попадать в пределы охраны.

Например, обычный специалист в области компьютерного программного обеспечения поймет, что клиентское и/или серверное устройства, содержимое экрана пользовательского интерфейса и/или форматы данных, которые описаны в примерах, обсужденных в данном документе, могут быть организованы по-разному на одном или более компьютерах, чтобы включать в себя меньше или дополнительные варианты или признаки, в сравнении с представленными в примерах.

1. Способ предоставления среды разработки для "тонкого" клиента, содержащий этапы, на которых:
предоставляют серверное приложение разработки программного обеспечения, выполненное с возможностью отображения в пользовательском интерфейсе "тонкого" клиента на клиентском компьютере, при этом серверное приложение разработки программного обеспечения выполнено с возможностью предоставлять в клиентский компьютер функциональные возможности разработки, содержащие, по меньшей мере, завершение команды, раскрашивание синтаксиса и помощь по параметрам;
принимают от клиентского компьютера входные данные для взаимодействия с проектом разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения, при этом проект разработки программного обеспечения содержит исходный код;
принимают от клиентского компьютера выбор компиляции для компиляции проекта разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения;
формируют скомпилированное приложение с помощью серверного приложения разработки программного обеспечения; и
предоставляют скомпилированное приложение компьютеру назначения, причем компьютер назначения не является клиентским компьютером, при этом серверное приложение разработки программного обеспечения выполнено с возможностью обеспечивать пользователю, который создал проект разработки программного обеспечения, возможность указать, имеют ли какие-либо из множества пользователей одно или более прав доступа к проекту разработки программного обеспечения.

2. Способ по п.1, в котором скомпилированное приложение предоставляется компьютеру назначения посредством этапа, на котором делают по меньшей мере один файл доступным для загрузки.

3. Способ по п.2, в котором упомянутый по меньшей мере один файл содержит исполняемую программу.

4. Способ по п.1, дополнительно содержащий этап, на котором принимают от другого клиентского компьютера входные данные для взаимодействия с проектом разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения, причем упомянутое взаимодействие со стороны другого клиентского компьютера содержит исправление, которое сохраняется с проектом разработки программного обеспечения.

5. Способ по п.1, в котором серверное приложение разработки программного обеспечения поддерживает разработку для множества платформ операционных систем.

6. Способ по п.1, в котором к проекту разработки программного обеспечения может осуществлять доступ множество пользователей.

7. Способ по п.1, в котором проект разработки программного обеспечения приспособлен для сохранения на серверном компьютере.

8. Способ по п.1, в котором проект разработки программного обеспечения приспособлен для сохранения на клиентском компьютере.

9. Способ по п.1, в котором серверное приложение разработки программного обеспечения занимает по меньшей мере один гигабайт пространства хранения на серверном компьютере для предоставления множества функциональных возможностей разработки программного обеспечения.

10. Способ по п.1, в котором серверное приложение разработки программного обеспечения выполнено с возможностью предоставления пользовательского интерфейса "тонкого" клиента с использованием, по меньшей мере, некоторых команд на основе AJAX-технологии.

11. Способ по п.1, в котором серверное приложение разработки программного обеспечения предоставляется с серверным компилятором, причем приложение разработки программного обеспечения является доступным множеству клиентских компьютеров через пользовательский интерфейс "тонкого" клиента, при этом способ дополнительно содержит этапы, на которых:
принимают от первого клиентского компьютера из множества клиентских компьютеров входные данные для создания проекта разработки программного обеспечения с помощью серверного приложения разработки программного обеспечения;
сохраняют проект разработки программного обеспечения в месте хранения, доступном из серверного приложения разработки программного обеспечения;
принимают от второго клиентского компьютера из множества клиентских компьютеров входные данные для осуществления доступа к проекту разработки программного обеспечения; и
предоставляют проект разработки программного обеспечения второму клиентскому компьютеру.

12. Способ по п.11, в котором из второго клиентского компьютера принимаются комментарии относительно проекта разработки программного обеспечения, причем эти комментарии сохраняются вместе с проектом разработки программного обеспечения.

13. Способ по п.11, в котором от первого клиентского компьютера и второго клиентского компьютера требуется предоставить правильные регистрационные реквизиты перед доступом к серверному приложению разработки программного обеспечения.

14. Способ по п.11, в котором серверное приложение разработки программного обеспечения позволяет первому пользователю указать, могут ли какие-либо из множества пользователей иметь одно или более прав доступа к проекту.

15. Машиночитаемый носитель, на котором имеются машиноисполняемые инструкции для предписания компьютеру выполнять этапы способа по пп.1-14.



 

Похожие патенты:

Изобретение относится к способу и устройству для диспетчеризации обновления контента мобильного виджета. .

Изобретение относится к вычислительной технике. .

Изобретение относится к технике организации распределенных вычислений и защите информации. .

Изобретение относится к способу управления объектами приложений. .

Изобретение относится к архитектуре обработки с использованием вычислительных средств. .

Изобретение относится к средствам преобразования интерфейса для определенного программного обеспечения. .

Изобретение относится к системе, предназначенной для унифицированного предоставления виртуальных и физических образов диска. .

Изобретение относится к областям мультимедиа и связи и более конкретно к программируемому мультимедийному контроллеру, предназначенному для домашнего и коммерческого применения, профессиональной работы с аудио или видео, вещания или студийной работы, обеспечения безопасности, автоматизации или других сфер применения, который выполнен с возможностью взаимодействия, контроля и управления широким спектром аудио- и видеоустройств, устройств связи, передачи данных и другими устройствами.

Изобретение относится к области начальной загрузки беспроводного устройства при включении питания. .

Изобретение относится к медицинской технике, а именно к системам и способам для модификации хирургических операций. .

Изобретение относится к цифровой технике и может быть использовано для генерации случайных чисел и преобразования данных, обработки шумоподобных сигналов, идентификации, аутентификации и авторизации, в стохастических системах и устройствах, системах представления и отображения информации, информационно-коммуникационных и сенсорных устройствах и системах.

Изобретение относится к области сопоставления отпечатков пальцев. .

Изобретение относится к области вычислительной техники и может быть использовано при проектировании и модернизации систем бесперебойного электропитания. .

Изобретение относится к области обработки информации о действиях. .

Изобретение относится к автоматике и вычислительной технике. .

Изобретение относится к способам аппроксимации, используемым в обработке аппаратным обеспечением и программным обеспечением. .

Изобретение относится к средствам оценки аутентичности объектов и может быть использовано для контроля и мониторинга их эксплуатационной пригодности. .

Изобретение относится к системам и способам для тестирования и контроля данных о состоянии здоровья. .

Изобретение относится к электронным адресным книгам, в частности данное изобретение касается обновления таких адресных книг. .

Изобретение относится к области цифровой обработки сигналов и информационно-измерительной техники и может быть использовано для линеаризации функции преобразования блоков и систем, интерполяции и экстраполяции результатов измерений, сжатия и восстановления сигналов, а также для измерения параметров сигналов сложной формы, а именно параметров колебательных компонент сигнала.

Изобретение относится к цифровой вычислительной технике, а именно к цифровым вычислительным системам для обработки входной информации о характеристиках боевых средств
Наверх