Tuesday, April 29, 2014

Выбор CASE инструмента для разработки процессов в BPMN

http://habrahabr.ru/post/204686/

Каждый, кто начинает разрабатывать бизнес процессы в BPMN нотации, сталкивается с проблемой выбора оптимального инструмента. Даже когда этот инструмент спускается сверху (мы в нашей организации работаем только на …) или коллега советует программу (меня полностью устраивает …), очень хочется, чтобы огласили весь список, который поможет понять, что Вы сделали верный выбор, ну или, что существуют более эффективные инструменты, чем те, на которых Вы вынуждены работать.
Для разработки схем процессов в соответствии с нотацией BPMN наработано уже довольно много программ. Этот обзор – результат небольшого исследования рынка для поиска того программного продукта, которое можно будет использовать для работы. Обзор не претендует на полный анализ рынка и может быть использован для получения первичной информации. Следует иметь ввиду, что все рассматриваемые программы рассмотрены в первую очередь с точки зрения «рисования» процесса, без учета реального позиционирования этих программ на рынке. Основные возможности, которые востребованы в рамках рассматриваемого контекста и по которым оценивались программы, это:

  • полнота и соответствие нотации BPMN 2.0;
  • удобство разработки схем процессов в нотации BPMN 2.0 и скорость дизайна;
  • возможность проверки схем и выгрузки результатов в общепринятых форматах.

Также немного затронут вопрос возможности автоматизации разработанных процессов (без учета сложности и удобства внедрения, а также полноты достижения бизнес целей).

Visio


Решение от Microsoft, наиболее доступное из платных продуктов, самое распространенное и имеющее максимальное количество специалистов, им владеющих. Для того, чтобы разрабатывать процессы в Visio с максимальной эффективностью, необходимо обратить внимание не только на версию продукта но и на его редакцию. Рисовать процессы можно в любой версии, но наличие шаблонов BPMN процессов и проверка схемы на корректность согласно нотации возможна только в Microsoft Visio 2010 в редакции премиум или Microsoft Visio 2013 в редакции профессиональная и выше. Программа платная.

Рисование схем процессов.

По удобству, одна из лучших. Основным замечанием по программе является отсутствие полной поддержки BPMN в профессиональной редакции Microsoft Visio 2010. Как следствие – неполное соответствие нотации (некоторые элементы отсутствуют) и отсутствие проверки схемы. Полный комплект элементов можно получить, если установить дополнительную библиотеку элементов, например: www.orbussoftware.com/downloads/free-visio-stencils/bpmn-20-visio-stencil-and-template/(использование бесплатно) – в ней есть недостающие элементы, дополнительные возможности работы с пулом и т.д.
Для более продвинутых пользователей есть широкие возможности кастомизации, такие как, ведение своей библиотеки заготовок фрагментов процессов, оформление и др.
Схемы получаются красивыми и что немаловажно, могут быть вставлены в документ WORD в качестве встроенных объектов, что позволяет менять их прямо у Заказчика. В целом, данный продукт, возможно, является лучшим выбором для тех, кто ограничивается использованием BPMN в качестве красивых картинок в документах.

Проверка и симуляция

Проверка есть, но не во всех версиях. Симуляции выполнения процесса нет.

Автоматизация процессов.

Есть, в рамках интеграции с Business Studio. К сожалению, нет возможности выгрузить процесс в общепринятых форматах, таких как XPDL и BPEL, для использования в сторонних программах – будьте внимательны при выборе!

Enterprise architect 11.4


Решение от IBM, одного из столпов, кто активно участвует в разработке и продвижении BPMN. Строго говоря, у IBM есть целая линейка различных продуктов, в которых в разной степени поддержана работа с BPMN процессами. Я начал знакомство с продуктами компании с «Enterprise architect». Несмотря на столь солидную фирму и внушительную цифру в номере версии, продукт сначала несколько изумляет, потом вызывает шквал вопросов, и наконец, по мере получения ответов, изумление сменяется полным разочарованием. Классическая ситуация «Сапожник без сапог» — Enterprise architect сейчас – это пережиток далекого, весьма уважаемого прошлого, которое совершенно непригодно к применению в современных реалиях. Программа платная.

Рисование схем процессов.

Epic Fail – этими двумя словами все сказано. Продукт требует от пользователя по крайней мере в 3 раза больше времени на рисование процесса, чем остальные инструменты. Поддержка нотации BPMN 2.0 скудная. Копипаста нет – при выполнении копирования и последующей вставки объекта, программа сообщает, что не может вставить его по причине того, что на схеме уже есть объект с таким именем. Вставить группу скопированных объектов с любыми случайными именами программа не может, потому что это противоречит общей концепции. Автоматическое выравнивание – это аналог предложения процессу «убиться об стенку». Все дело в том, что граничные события никак не привязаны к своим задачам, они просто висят сверху и при автоматическом выравнивании отправляются в ад теряют форматирование. По этой же причине, ни о какой проверке правильности процесса и речи быть не может.
Вообще все сделано плохо, очень неудобно и просто некрасиво, работая с этим инструментом, не покидает ощущение, что это какая-то альфа версия программы, потенциал есть, но предстоит доделать еще очень много. Дополняет картину очень неудобный пользовательский интерфейс а-ля прошлое тысячелетие.

Проверка и симуляция

Проверки нет. Симуляции выполнения процесса нет.

Автоматизация процессов.

Enterprise architect позиционируется как корпоративное решение для управления процессами предприятия и я полагал, что получу множество «best practice», когда дойдет черед именно до автоматизации процессов. Но, автоматизации нет – совсем. Смотрим продукты IBM, вот оно – есть продукт IBM BPM – именно он позволяет выполнить автоматизацию! Логично предположить, что разработанные в Enterprise architect процессы сразу заработают в IBM BPM, ибо у них один разработчик. Но они не работают…, и с напильником не работают…, наконец, Вы узнаете, что эти продукты полностью несовместимы! Чтобы автоматизировать процессы, Вам нужно изначально разрабатывать их в IBM BPM (в котором BPMN чуть больше, чем ничего).
В завершении, в качестве некоторого плюса, хочу сказать, что крупные компании по ряду причин тяготеют к решениям IBM и, не смотря на все его минусы, этот инструмент используется. Аналитиков, которые согласны умеют работать с Enterprise architect не так много, поэтому владея этим инструментом можно рассчитывать на весьма высокий уровень компенсации.

ELMA BPM 3.2


Решение от ELMA, одного из ведущих Российских интеграторов. Хочется сказать отдельное спасибо ELMA за перевод нотации BPMN 2.0 на русский язык. Итак, ELMA BPM – это система управления бизнес-процессами. Это как раз тот случай, когда схемы разрабатываются не для картинок, а для автоматизации. Программа платная, для ознакомления можно установить бесплатную версию.

Рисование схем процессов.

Рисование довольно удобное, однако соответствие нотации неудовлетворительное (очень многих элементов не хватает, однако если сравнить ее с IBM BPM 8.5.0.0, то производит очень благоприятное впечатление), программа позволяет использовать только те элементы, которые в состоянии автоматизировать. Поэтому ELMA BPM в качестве инструмента для рисования процессов по нотации BPMN не подходит.

Проверка и симуляция

Проверка есть. Симуляции выполнения процесса в бесплатной версии нет.

Автоматизация процессов.

Есть. Судя по количеству внедрений, с этим у ELMA все в порядке. К сожалению никак не могу оценить удобство внедрения и полноту достижения целей бизнеса, т.к. сам с этим ни разу не сталкивался.

BPM 2.0 modeler for Visio 4.1.1


Решение от Trisotech является надстройкой для Visio и добавляет ту функциональность, которой так не хватает в самой Visio. Решение платное, для ознакомления с BPM 2.0 modeler for Visio можно установить пробную версию на 30 дней.

Рисование схем процессов.

Для BPM 2.0 modeler for Visio актуально все то хорошее, что было сказано про Visio. Для разработки схем процессов используется своя библиотека элементов, полностью соответствующая нотации BPMN 2.0. Рисуется быстро и приятно, это все тот же Visio!

Проверка и симуляция

Проверка есть. Для симуляции выполнения процесса требуется установка дополнительного ПО.

Автоматизация процессов.

Нет. Еще очень важный момент – добавлена возможность выгрузить результат в различных форматах (XPDL, BPEL), чего очень не хватало в самой Visio. Таким образом это решение может быть использовано для разработки процессов с последующей их автоматизацией в другой программе.

Bizagi Process Modeler 2.6


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

Рисование схем процессов.

Рисование довольно удобное (очень похоже на ELMA), соответствует нотации почти полностью (некоторых элементов не хватает). Пока схемы простые, рисовать их одно удовольствие, однако с увеличением сложности схемы, начинаются затруднения у пользователя, например: потеря описаний событий и потоков, причудливое извивание потоков управления, и, что особенно огорчило – групповая потеря форматирования объектами (при копировании объекты сбиваются в кучу, случайно цепляясь к ближайшим потокам управления) – при этом отменить это безобразие невозможно, волшебное Cntr+Z не работает, иногда единственный выход – загрузка с диска предыдущей версии схемы! Bizagi Process Modeler может быть успешно использован в качестве инструмента для рисования процессов по нотации BPMN, если помнить о его «недокументированных особенностях».

Проверка и симуляция

Проверка есть, даже две, но они недоделаны и могут использоваться только на простых процессах. Одна проверка доступна по кнопке, другая выполняется автоматически перед симуляцией. К сожалению, эти проверки выдают разный результат, проверка по кнопке может вернуть «все ОК», а проверка перед симуляцией вернуть ошибку процесса, при этом какая именно ошибка не пишется.
Симуляция есть, ее тоже можно использовать только на простых процессах. Для симуляции существует большое количество ограничений: не удалось заставить работать прикрепленные события, подпроцессы в симуляции не участвуют, поток сообщений между пулами, от промежуточного сообщения к промежуточному, токен не передает – работает передача токена только к стартовому событию и т.п. В общем на симуляции можно было бы поставить крест, однако, если вспомнить про ограничение на использование элементов нотации, существующие у ведущих автоматизаторов «IBM BPM» и «ELMA BPM», тогда и к имеющимся возможностям симуляции в бесплатном продукте начинаешь проникаться уважением.

Modelio 3.0.1


Решение от Modeliosoft оставляет двойственные впечатления. Видно, что проделана огромная работа, но складывается впечатление, что все функции немного недоделаны. Это выражается либо в не дружественности интерфейса (многое сделано просто неудобно), либо в несоответствии ожиданиям (например, схема с белым фоном в самом Modelio, при формировании картинки получала грязно желтый фон). Отдельно хочется сказать про полное отсутствие копипаста (копирование объекта или группы объектов в буфер обмена с последующей вставкой) – это несерьезно! Решение бесплатное.

Рисование схем процессов.

Не самая лучшая реализация разработки процессов, требует вдвое больше времени на разработку процесса, чем лидеры. Соответствие нотации почти полное (некоторые возможности нотации не поддерживаются), однако имеет ряд недочетов (например, у граничного события при свойстве «CancelActivity=True» граница рисуется штрихом, что неверно). 
Не очень получается и конечный результат – такое чувство, что картинки получаются с очень низким разрешением. Также, нет возможности выгрузить процесс в общепринятых форматах, таких как XPDL и BPEL, для использования в сторонних программах – будьте внимательны при выборе! Я бы не стал рекомендовать использовать эту программу в качестве средства разработки процессов.

Проверка и симуляция

Проверка есть, реализована очень неплохо, но со своими тараканами. Симуляции выполнения процесса нет.

ARIS Express 2.4


Решение от IDS Scheer, очень качественный продукт, удобный и полностью бесплатный. ARIS Express настолько удобный, что бросает вызов Visio в номинации лучшего средства разработки процессов в BPMN нотации. Решение бесплатное.

Рисование схем процессов.

По удобству, одна из лучших. Соответствие нотации почти полное (небольшая часть возможностей нотации не поддерживается). Из минусов можно отметить ограничение добавления элементов на схему в соответствии с заложенными в программу правилами, например, если не заложена возможность проассоциировать поток сообщений с артефактом, то сделать это невозможно. Процессы рисуются быстро и красиво.
В программе есть возможность ведения своей библиотеки заготовок фрагментов процессов (Fragments) – работать с библиотекой очень удобно.
Схемы процессов, сохраненные в формат «adf» могут быть перенесены в полнофункциональную версию ARIS, а вот выгрузка в форматах XPDL или BPEL отсутствует. Следует использовать эту программу с осторожностью, чтобы после разработки 50+ процессов, Вы не столкнулись с ситуацией «Ну все, выгружайте все процессы в BPEL формате а мы пока документы подпишем…». Ущербность форматов выгрузки – основной минус этого решения.

Проверка и симуляция

Проверка есть, выполняется в процессе моделирования. Симуляции выполнения процесса нет.

Сводная таблица


Наименование BPMN 2.0Удобство Стоимость
1 Visio 2010 (профессиональный) ОтличноОтлично Платное
2 Enterprise architect 11.4 ПлохоПлохо Платное
3 ELMA BPM 3.2 ПлохоХорошо Платное
4 BPM 2.0 modeler for Visio 4.1.1 ОтличноОтлично Платное
5 Bizagi Process Modeler 2.6 ОтличноХорошо Бесплатное
6 Modelio 3.0.1 ПлохоХорошо Бесплатное
7 ARIS Express 2.4 ОтличноОтлично Бесплатное

Полезные ссылки


  1. Aris Express www.arisexpress.com
  2. AuraPortal www.auraportal.com
  3. BizAgi Process Modeler www.bizagi.com
  4. eVSM www.evsm.com.
  5. Flowbreeze. www.breezetree.com/
  6. Gravity from SAP www.sap.com/community/showdetail.epx?ItemID=20085
  7. 2c8 Modeling Tool www.2c8.com/
  8. BizAgi www.bizagi.com/
  9. Intalio www.intalio.com/downloads
  10. iGrafx www.igrafx.com/index.html.
  11. Lombardi Blueprint www.lombardisoftware.com/bpm-blueprint-product.php
  12. Omnigraffle Professional www.omnigroup.com/products/omnigraffle/download/
  13. Promanade Basic software www.promanade.co.uk/
  14. QPR ProcessGuide Xpress www.qpr.com/Products/qpr-processguide-xpress.html
  15. Smartdraw www.smartdraw.com/downloads/
  16. Sparxsystem www.sparxsystems.com/products/ea/index.html
  17. Systems2win www.systems2win.com/
  18. TaskMap www.taskmap.com/products%20and%20services.htm
  19. Viflow www.viflow.biz
  20. Websphere Business Modeler www-01.ibm.com/software/integration/wbimodeler/advanced/features/

Monday, April 21, 2014

How to Use UIPageViewController to Build Tutorial Screens

http://www.appcoda.com/uipageviewcontroller-tutorial-intro/

How to Use UIPageViewController to Build Tutorial Screens

june 16, 2013 by  48 comments


Editor's note: For the very first time you launch an app, you'll probably find a series of tutorial screens to walk you through the basic features. It's a common practice to explain how the app works. This week, we'll show you how to build a similar type of tutorials by using UIPageViewController.

The UIPageViewController class was introduced into the iOS 5 SDK as a mechanism to implement a page turning style of user interface in iOS applications. The UIPageViewController is a highly configurable class that it lets developers to configure:

  • the orientation of the page views – vertical or horizontal
  • the transition style – page turning style or a dot based style
  • the axis (spine) on which the page will turn

In this tutorial we are going to show how to use the UIPageViewController to implement an app that allows users to scroll between multiple screens. You can find examples of this type of page view implementation in games like Angry Birds to show the available levels or in apps that includetutorial/walkthrough screens.

Sample Walkthrough Screens from Path

Sample Walkthrough Screens from Path

Prior to iOS 5 we had to use the UIPageControl class and explicitly control the animations, as well as, transitions between pages. This procedure has been highly simplified with the introduction of the UIPageViewController. We'll keep the demo app very simple and focus to demonstrate the usage of UIPageViewController. However, with the basic understanding of the page view controller, you can easily build the tutorial screens in your app.

A Glance at the Demo App

The application we are going to create is very simple: it consists of five different screens that each page displays a unique screen label. You're allowed to navigate between pages by swiping through the screen.

pageviewcontroller1

Creating the Project

Open Xcode and create a new Project by using the Single View Application template. It might seem a little bit strange to select the Single View Application template as Xcode already comes with a Page-Based Application template, which contains a fully functional app based on the UIPageViewController. However, this template is a little bit complex and it will take us more time to clean-up the code of the template than to start from scratch. Needless to say, we can better grasp the concept behind the UIPageViewController when we start from scratch.

UIPageViewController Demo Project

Creating a new project using Single View Application template

Okay, let's move on. In the next screen enter PageApp as the product name and set com.appcoda in the company identifier field. Select the Use Authomatic Reference Counting option, but unselect the Use Storyboard since we're not going to use storyboards for this project. Press next and create the project. Then, select the APPViewController.xib file and change the background of the view to black color.

Creating the Tutorial Screen

The next step is to implement the view controller class that we use to display our five tutorial screens. Select File -> New -> File … and from the list of available templates, select the "Objective-C class" template. Name the class APPChildViewController and make it a subclass of UIViewController. Also, check the box labeled "With XIB for user interface" in order to create the corresponding user interface.

Select the APPChildViewController.xib file just created. Change the background of the view to Blackand reduce the vertical size of the view to 512 points to leave some free space for the dots of the page controller (which has a default height of 36 points). Finally add a white UILabel centered on the screen, with a big font size, and change its content to "Screen #n". The resulting view should look something like:

User Interface for the main screen

User Interface for the main screen

Note: We keep the five tutorial screens very simple that it only displays the screen number in each screen. In the actual app, you may display images to elaborate your app feature.

Next, we have to create an IBOutlet for that label. In order to do that, change the Editor to the Assistant mode meanwhile the APPChildViewController.xib file is selected. The APPChildViewController.h file should be opened. Control and drag from the UILabel to the APPViewController.h and create an IBOutlet. Set the name as screenNumber. Finally, create a new property of type NSInteger called index. The resulting APPChildViewControl.h file should be something like:

1
2
3
4
5
6
7
8
#import <UIKit/UIKit.h>

@interface APPChildViewController : UIViewController

@property (assign, nonatomic) NSInteger index;
@property (strong, nonatomic) IBOutlet UILabel *screenNumber;

@end

The index property allows us to control which screen is currently shown. In order to do that, once we have created a child screen, we have to set up its index through the index property. At the same time, we update the text of the label as well. Add the following line of code to the end of the viewDidAppear:method in the file APPChildViewController.m:

1
self.screenNumber.text = [NSString stringWithFormat:@"Screen #%d", self.index];

Handling the View Controllers

The UIPageViewController class highlights the distinction between a view controller and a container controller. The container controller is used to contain and manage multiple view controllers shown in the app, as well as, controlling the way one view controller switches to another. Here the UIPageViewController is the container controller that lets the user navigate between pages of content, where each page is managed by its own view controller object.

In order to make UIPageViewController work, our APPViewController has to adopt theUIPageViewControllerDataSource protocol. By implementing the data source protocol, we tell the page view controller what to display for each page.

Open the APPViewController.h file and modify the @interface declaration, and add a new property to hold the UIPageViewController:

1
2
3
4
5
6
7
#import <UIKit/UIKit.h>

@interface APPViewController : UIViewController <UIPageViewControllerDataSource>

@property (strong, nonatomic) UIPageViewController *pageController;

@end

Next, we have to implement at least two methods of the protocol:

  • viewControllerAfterViewController – provides the view controller after the current view controller. In other words, we tell the app what to display for the next screen.
  • viewControllerBeforeViewController – provides the view controller before the current view controller. In other words, we tell the app what to display when user switches back to the previous screen.

Add the following lines of code before the end of the APPViewController.c file:

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
- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController {
    
    NSUInteger index = [(APPChildViewController *)viewController index];
    
    if (index == 0) {
        return nil;
    }
    
    index--;
    
    return [self viewControllerAtIndex:index];
    
}

- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController {
    
    NSUInteger index = [(APPChildViewController *)viewController index];
    

    index++;
    
    if (index == 5) {
        return nil;
    }
    
    return [self viewControllerAtIndex:index];
    
}

The above methods are very straightforward. We simply increase/decrease the screen number and return the view controller to display. However, please note that we have to check if we have reached the boundaries of the pages and return nil in that case. In the demo app, we have a maximum of five pages. So we'll return nil if user has come to the end of the pages.

As you may wonder, there are two ways to create the view controllers for the container. We can either create them all at once and put them into the container. However, this way is not recommended as it takes up too much resources. Another way is to create the view controller only when they are needed. Here, the "viewControllerAtIndex" method is designed for this purpose. It takes in the index parameter and creates the corresponding view controller (i.e. APPChildViewController) on the fly.

Add the following method at the end of the APPViewController.m file:

1
2
3
4
5
6
7
8
- (APPChildViewController *)viewControllerAtIndex:(NSUInteger)index {
        
    APPChildViewController *childViewController = [[APPChildViewController alloc] initWithNibName:@"APPChildViewController" bundle:nil];
    childViewController.index = index;
    
    return childViewController;
    
}

Finally, you have to tell iOS the number of dots to display in the page view controller and which dot must be selected at the beginning. Add the following two methods at the end of the APPViewController.m file:

1
2
3
4
5
6
7
8
9
- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController {
    // The number of items reflected in the page indicator.
    return 5;
}

- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController {
    // The selected item reflected in the page indicator.
    return 0;
}

Again the above code is very straightforward. We simply tell iOS that we have 5 pages to display in the page view controller and the first page should be selected by default.

Initializing the UIPageViewController

The final step is to create and initialize the UIPageViewController. The best place to do that is in the viewDidLoad method. Open the APPViewController.m file and change the method to:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
- (void)viewDidLoad {
    
    [super viewDidLoad];
    
    self.pageController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];
    
    self.pageController.dataSource = self;
    [[self.pageController view] setFrame:[[self view] bounds]];
    
    APPChildViewController *initialViewController = [self viewControllerAtIndex:0];
    
    NSArray *viewControllers = [NSArray arrayWithObject:initialViewController];
    
    [self.pageController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:nil];
    
    [self addChildViewController:self.pageController];
    [[self view] addSubview:[self.pageController view]];
    [self.pageController didMoveToParentViewController:self];
    
}

Let's see what the method does. We first create the UIPageViewController object and specify the navigation style, as well as, the navigation orientation. Here we useUIPageViewControllerTransitionStyleScroll as the transition and UIPageViewControllerNavigationOrientationHorizontal as orientation. Please note that the transition using dots is only available if we use an horizontal orientation and a scroll style. Other orientations or transitions styles will default the switch to a page turning style.

Next we specify the data source, in this case it is the class itself. We also modify the frame of the controller in order to opt for the full screen. We then create the first child screen and add that screen to an array of controllers. We do not add more controllers to the array of controllers as we have opted to create them on demand.

And finally, we have to replace the current controller by our new page controller, and to add the page controller view to the current view.

Compile and Run the App

And there we go, start the application and see how the UIPageViewController works. You should be able to test the page view controller by using the iPhone Simulator. Try to swipe through the screen to navigate between pages.

PageView Demo App

PageView Demo App

Download Full Source Code

In this tutorial, we have given a basic introduction of UIPageViewController. This is a very handy class for implementing tutorials in your app. Try to modify the sample app and build a more elegant tutorials.

For your complete reference, you can download the full source code from here. As always, leave us comment and share your thought.

Saturday, April 19, 2014

Adobe выложила в открытый доступ Photoshop CS2

http://www.macdigger.ru/macall/adobe-vylozhila-v-otkrytyj-dostup-photoshop-cs2.html

Adobe выложила в открытый доступ Photoshop CS2

8 ЯНВ, 2013 КОММЕНТИРОВАТЬ (23)



Adobe Photoshop и Illustrator, два наиболее используемых графическими художниками приложения, теперь можно скачать абсолютно бесплатно. Неограниченные лицензии на популярный программный пакет для платформ Mac и Windows предложил разработчик продукта – компания Adobe Systems Incorporated.

Adobe-Photoshop-CS2-1

Получить официально бесплатные лицензии на Photoshop и другие программные продукты, входящие в пакет Adobe CS2 Premium Plus, очень просто. Для этого нужно зарегистрироваться на официальном сайте компании. После регистрации вы получите доступ на страницу загрузки с бесплатными серийными номерами для программ Adobe.

Adobe-Photoshop-CS2-2

Бесплатный пакет Adobe CS2 Premium Plus включает:

  • Photoshop CS2
  • Illustrator CS2
  • Creative Suite 2
  • Acrobat 3D 1.0
  • Acrobat Standard 7.0
  • Acrobat Pro 8.0
  • Audition 3.0
  • GoLive CS2
  • InCopy CS2
  • InDesign CS2
  • Photoshop Elements 4.0/5.0
  • Adobe Premiere Pro 2.0

Обратите внимание: приложения доступны только на английском языке. Кроме того, для использования ПО на операционных системах Apple требуются версии Mac OS X 10.2.8–10.3.8 или установленный динамический транслятор Rosetta.

Adobe предложила бесплатно скачать Photoshop и другие свои графические программные продукты с единственной просьбой – не выкладывать это ПО на торрент-трекеры и другие файлообменные сервисы.

Присоединяйтесь к нам в TwitterВКонтактеFacebookGoogle+ или через RSS, чтобы быть в курсе последних новостей из мира Apple, Microsoft и Google.