Научная статья на тему 'Neil Maiden: «Programming is a creative process!» нил Мейден: «Программирование - это творческий процесс!»'

Neil Maiden: «Programming is a creative process!» нил Мейден: «Программирование - это творческий процесс!» Текст научной статьи по специальности «СМИ (медиа) и массовые коммуникации»

CC BY
75
12
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по СМИ (медиа) и массовым коммуникациям, автор научной работы — Власова Екатерина

Neil Maiden Doctor of Informatics, Professor of Systems Engineering, Head of the Centre for Human-Computer Interaction Design and co-founder of the Centre for Creativity in Professional Practice at City University London. His principal research is in requirements engineering, socio-technical systems design, design thinking and creativity support tools. Neil has published these results in over 160 peer-reviewed publications. Also he is successfully supervising the doctorates. Professor Maiden is currently Chair of the Steering Committee for the IEEE Requirements Engineering Conference. He is also Associate Editor for IEEE Software and edits its Requirements Column, is on the editorial board for the Requirements Engineering Journal. Our correspondent made acquaintance with Mr. Maiden at the conference «Software People 2011». Editors would like to thank the company Careerlab for assistance in arranging this interview.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Neil Maiden: «Programming is a creative process!» нил Мейден: «Программирование - это творческий процесс!»»

№ 3(33) 2011

Интервью

Нил Мейден:

«Программирование - это творческий процесс!»

Профессор Нил Мейден — доктор Информатики, специализирующийся в области системной инженерии, глава центра проектирования человеко-компь-ютерного взаимодействия (Human-Computer Interaction Design) и научный руководитель центра «Творчество в профессиональной практике» в City University London (Лондон). Основные направления его исследований лежат в таких областях, как инженерия требований, проектирование социально-технических систем, дизайн-мышление и средства поддержки креативных техник. Результаты его проектов представлены более чем в 160 публикациях. Нил Мейден успешно руководит подготовкой докторантов в области информатики. Кроме того, профессор Мейден является председателем руководящего комитета конференции ассоциации IEEE по инженерии требований, а также редактором периодических изданий IEEE Software и Requirements Engineering Journal.

Мы познакомились с господином Мейде-ном на конференции «Software People 2011». Редакция журнала выражает благодарность компании Careerlab за помощь в организации интервью2.

Мистер Мейден, одна из впечатляющих особенностей Ваших исследований — весьма широкий диапазон предметных областей. Прокомментируйте эту особенность, пожалуйста.

1 По материалам сайта City University London: URL: http://www.city.ac.uk/informatics/school-organisation/ centre-for-human-computer-interaction-design/people/ prof-neil-maiden.

2 URL: http://www.careerlab.ru.

Интересный вопрос. Одна из причин — разумное любопытство. Очень многие темы интересны и релевантны для разработки программного обеспечения. Люди рассматривают данный процесс как довольно узкую область деятельности — написание программ, тогда как на самом деле это нечто гораздо большее. Другая причина — исследовательский императив. Мы все более нуждаемся в междисциплинарном подходе — построении связей между понятиями и темами, в развитии новых концепций и направлений на основе нескольких дисциплин или же внутри какой-либо одной дисциплины, но на основе концепций, принятых в других. Ну и, наконец, третья причина — это доставляет удовольствие!

Расскажите об основных этапах Вашей 1Т-карьеры. Это первая профессия? Кто вдохновил сделать такой выбор?

Мой отец был /Г-консультантом, поэтому я был как бы «вытолкнут» в данную сферу в качестве студента, не помышляя ни о каком другом выборе. Одной из ступеней моего образования стала стажировка в крупной французской многонациональной корпорации. Первая моя работа — в должности аналитика-программиста во Франции и Швейцарии. Это было замечательно и привело к осознанию, что моя деятельность больше имела отношение к вопросам /^-проектирования, нежели к анализу и программированию. В тот период моего профессионального становления идея получения докторской степени прочно укоренилась в моем сознании.

Могли бы Вы вспомнить ключевые моменты, наиболее сильно повлиявшие на Ваши профессиональные интересы? Какой

№ 3(33) 2011

из проектов или научных результатов Вы отмечаете особо?

Мой интерес к креативному подходу был спровоцирован двумя моментами озарения. Первый из них имел место в 90-х годах прошлого столетия, во время преподавания нашим студентам курса по UML3. Предметом рассмотрения была разработка и анализ различных типов ^Ж-моделей. Мы начали изучение с use cases (вариантов использования), и очень скоро стало ясно, что почти все студенты, пытаясь разработать спецификации вариантов использования для новой системы, думали о существующих (например ATM4). Не было сгенерировано ни одной новой идеи, хотя все возможности имелись. На самом деле наши студенты стремились рассматривать разработку ПО скорее как механический, даже в каком-то смысле «преобразовательный» процесс — но не как творческий.

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

Каким образом Вы получаете информацию о возможностях разработки приложений? Кто обычно выступает инициатором проекта — заказчик или Вы?

3 Unified Modeling Language — унифицированный язык моделирования. {Прим. ред.).

4 Asynchronous Transfer Mode — асинхронный способ передачи данных. {Прим. ред.).

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

Какие проекты Вы предпочитаете? Существуют ли правила или критерии, которыми Вы обычно руководствуетесь при выборе?

Наиболее интересны новые варианты в новых областях приложения. Мы выполнили множество работ в большом количестве предметных областей, и, честно говоря, с течением времени эти области стали для нас менее интересными, так что ищем новые сферы приложения, привлекаем новые области — не ограничиваясь традиционными в нашем деле.

Работа делает Вас счастливым человеком? Могли бы Вы назвать все «за» и «против» своей профессии?

Да, очень. У меня великолепная работа. Я сам выбираю, что делать, и выбор чрезвычайно широк, — сколько людей могут себе это позволить в профессиональной деятельности? Я отдаю отчет, насколько мне повезло. Таким образом, первый аргумент «за» — интеллектуальная свобода и связанные с ней возможности. Я полагаю, мне было бы тяжело работать в более регулярном деловом ритме в режиме полной занятости. Основная позиция «против» — пытаться и делать слишком много, и последствия этого, отражающиеся на балансе «работа-жизнь». Так много возможностей и идей, так мало времени, чтобы все их реализовать...

Какой вид деятельности Вам нравится больше всего — преподавание, исследования или программирование? Сложно ли Вам объединять различные направления работы? Вы предпочитаете быть организатором или исполнителем?

Когда я был моложе, я целиком погружался только в исследования и программирование. Однако со временем я научился ценить

№ 3(33) 2011

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

Я также стал немного менеджером. Этого трудно избежать.

Вы уделяете большое внимание редакторской работе. Какими принципами при выборе тематики материалов Вы руководствуетесь?

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

Безусловно! И не только на журнальных страницах. Вы принимали участие в конференции «Software People 2011», прошедшей в апреле в Москве. Опыт оказался полезным? Какие впечатления Вы увезли с собой?

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

Вашдокпад «Инженерия требований как творческое решение проблем: новые возможности для улучшения ваших методов» вызвал большой интерес аудитории. На конференции Вы также провели мастер-класс. Разделяют ли российские специалисты Вашу

точку зрения на разработку ПО как творческий процесс?

Да, это как раз то, что я призывал делать. Примерно 35 человек преодолели в тот день снегопад ради моего мастер-класса и, казалось, были довольны мероприятием. Я думаю, что, будь я силен в предвидении, я сделал бы акцент на вопросах усиления креативности в agile-процессах и бизнес-системах — это то, что вызвало наибольший интерес. И даже если не все специалисты разделили мою точку зрения, я думаю, многих я вдохновил и побудил к внесению изменений в свои рабочие процессы по проектированию ПО.

А что Вы можете сказать в этом отношении о Ваших студентах в City University London?

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

Одна из основных рубрик нашего журнала — «1Т и образование». Что Вы как руководитель научно-практических исследований могли бы посоветовать соискателям ученых степеней вданной области?

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

Беседу вела Екатерина Власова

№ 3(33) 2011

Interview

Neil Maiden:

«Programming is a creative process!»

Neil Maiden — Doctor of Informatics, Professor of Systems Engineering, Head of the Centre for Human-Computer Interaction Design and co-founder of the Centre for Creativity in Professional Practice at City University London. His principal research is in requirements engineering, socio-technical systems design, design thinking and creativity support tools. Neil has published these results in over 160 peer-reviewed publications. Also he is successfully supervising the doctorates. Professor Maiden is currently Chair of the Steering Committee for the IEEE Requirements Engineering Conference. He is also Associate Editor for IEEE Software and edits its Requirements Column, is on the editorial board for the Requirements Engineering Journal1.

We made acquaintance with Mr. Maiden at the conference «Software People 2011». Editors would like to thank the company «Ca-reerlab2» for assistance in arranging this interview.

Mr. Maiden, one of the striking features of your researches is an amazing diversity of their subjects. How can you explain it?

Interesting question. One reason is intellectual curiosity. So many of these topics are interesting, as well as relevant to software development. Too many people treat software development as a rather narrow activity — writing software — but it is really so much more than

1 Based on the City University London website URL: http://www.city.ac.uk/informatics/school-organisation/ centre-for-human-computer-interaction-design/people/ prof-neil-maiden.

2 URL: http://www.careerlab.ru.

this. Another reason is a research imperative. Increasingly the research that we need is interdisciplinary — to make connections between concepts and topics in different disciplines, then evolve new concepts and directions between the disciplines, or in one discipline from the perspective of concepts in another. A third reason is, well, that it is fun!

Tell us about your IT-career milestones. Was this occupation the very first? Did somebody inspire you?

My father was an IT consultant. Therefore I rather stumbled into it as a student without thinking about other directions to take. I undertook a year's internship at a large French multinational corporation as part of my degree. So being an analyst-programmer in France and Switzerland was probably my first job. Although it was fun, it made me realize that there was probably more to IT than analyzing and programming. So by the time I graduated the idea of doing a PhD was firmly planted in my mind.

Could you remember anything remarkable in the past that influenced most strongly your future interests? What is your favorite project or scientific result?

Well, my interested in creativity were driven by two moments of enlightenment. The first was when teaching UML to our students in the 1990s. The focus was on developing and analyzing different types of UML models. The process started with use cases. It became very apparent very early was that almost all students simply thought about existing systems (e. g. an ATM) to develop the use case specifications for the new systems. Nowhere was the new idea explored by the methods available. Indeed,

№ 3(33) 2011

our students seemed to treat development as a rather mechanical, even transformational process — not one that was creative at all.

The second moment of enlightenment was during a major consulting project. We were supporting the client to discover more complete requirements using scenarios. But during the process I started to wonder where the new ideas and requirements would come from. Using our techniques and tools the analysts were simply developing better specifications of what already existed. Something radical was needed. We recommended the use of creativity techniques, and a new direction of research and practice was born.

In what way do you obtain information regarding application possibilities? Who usually initiates the project — customer oryou?

Customers. We are requirements specialists, after all. We seek to meet the client requirements, working out what the real requirements should be.

What kind of projects do you prefer? Are there any rules that you normally keep or criteria you use when making a choice?

New ones in new domains are more interesting. We've done a lot of work in a number of domains, and to be honest these domains become less interesting to us over time. So we look for domains that are new to use, and domains that are engaging — not traditional business domains.

Are you happy with your work? Could you name its pros and cons?

Very. I have a great job. I can pretty much decide what I do — how many people can do that in their work? I do recognize how lucky I am. So the main pro is the intellectual freedom and its associated challenges. I think that I'd struggle to do more regular business work on a full-time basis. The main point against — the tendency to try and do too much, and its consequences for the work-life balance. So many opportunities and ideas, so little time to pursue them all.

What kinds of activities do you like best — teaching, researching or programming? Is it difficult to combine these activities? Do you prefer to be a manager or performer?

When I was younger it was all about research and programming. But over time, I've really learned to appreciate the value of teaching students. Nowadays it is a key part of my academic life. I've also learned that it makes no sense to separate research and teaching — teaching informs the research in so many ways. It refines your thinking. It attracts new research staff and students. It builds connections to future clients — the ones that your inspired graduates go and work for.

Nowadays I've also become a bit of a manager. It is difficult to avoid it.

You also pay great attention to editorial activity. What principles of topics selection do you use?

Interesting ones! This means finding new angles on existing topics, which in turn means two things — interdisciplinary thinking, and humour. I try to get both into each issue. But you'll have to be the judge of whether I succeed.

Certainly! And not only on the magazine's pages. You participated in conference «Software People 2011» having been held this April in Moscow. Was this experience useful? What were the main outcome and impressions you brought with you back?

It was brilliant — so well organized, and a great audience. It gave me insights into new markets. I was fascinated by some of the topics key to the local audience — agile, outsourcing, distributed software development. These are important challenges to factor into our research and practice.

Your report entitled «Requirements Engineering as Creative Problem Solving: New Opportunities to Improve your Practices» attracted the interest of the audience. At the conference you held a master class. Do you think Russian specialists shared your point of view

№ 3(33) 2011

on software development as a creative process?

Well, the ones that I spoke to did. About 35 people trudged through the snow on a Saturday, and seemed to enjoy the event. I think that, had I had 20:20 foresight, I would have stressed more creativity for agile processes and business systems — this is what many were interested in. And even if the specialists did not share my point of view, I think that many were inspired and encouraged to change their development processes.

What would you say in this regard about your City University London student's opinion?

They are very much onboard! They see creativity and innovation as key differentiators in the marketplace — giving them the new skills

and knowledge that distinguish them from others in software development.

One of the main headings of our publication is the «IT and Education». What could you as the leader of the scientific and practical research advise applicants of academic degrees in this field?

Seek a broader IT education. Sure — be excellent in programming, design and other technical skills. But also learn the softer skills. Communication is still often cited as one of the most sought — after skills in software development. Learn a broader set of problem solving skills — including creativity, innovation and leadership skills. All of these will enable you to work in the higher-value areas of software.

ByEkaterina Vlasova

36 j

i Надоели баннеры? Вы всегда можете отключить рекламу.