Remember Me
forgot your password?

Is Systems Development an Art or a Science?

This is an important question which is ultimately at the heart of a lot of the problems in systems and software development. There is one camp that believes development to be an art form requiring free-spirited creative types of people, and another camp believing it to be a science requiring people that are more disciplined and organized.

The difference between an art and a science is subtle but significant. An art form is based on the intuitiveness of the person performing the work, something that is difficult, if not impossible, to pass on to another human being. For example, apprentices serving under an artist may try for years to emulate the master, but may never attain his level of skill and creativity. In contrast, a science is based on a governing body of concepts and principles and, as such, can be easily taught to others. From this perspective, programming can certainly be viewed as a science as it has certainly been taught and passed on to others for many years; further, it involves certain governing principles in terms of language syntax, approaches to defining program logic and construction. Some might argue the physical design of a report or screen requires creativity, and there is a certain element of truth to this as some look better than others. But even the design of reports and screens can be governed by certain principles in terms of layout, navigation, color schemes, etc.

On the systems side, there are governing principles as well which can easily be taught to others. It too requires a certain element of creativity for such things as analyzing and solving business problems and designing work flows. I guess what I'm driving at is that science is certainly not devoid of creativity. For example, consider the sciences of architecture and engineering, all of which are based on governing principles, yet offers channels of creativity in design. Music is another excellent example of a science involving creativity. In other words, art does not hold a monopoly on creativity.

In any form of development you can either build things one at a time or in volume. Artists are excellent for building unique works of art, but it is hardly an effective approach for corporations to take who tend to build things with many people. Consequently, they are more inclined to adopt a development approach based on science as opposed to an art form. Further, maintaining a product derived from a science is easier than one based on art as you can more readily reproduce the object according to specifications.

Not long ago I wrote an article on why it is necessary to record your time during the day, specifically as it applies for project management purposes. During the article, I mentioned there is often resistance to reporting time by those people who perceive themselves as free-spirited creative types who do not like to be encumbered by such discipline. Pursuant to the article, I received some interesting responses who felt it wasn't necessary to impose too many management controls and discipline on such creative spirits, particularly programmers, that it would be viewed as a bureaucracy and nuisance as opposed to helping with their assignments. They also commented on their disdain for micromanagement; that they would prefer more freedom as it pertains to their work. Personally, I do not have a problem with this as I have always advocated worker empowerment (managing from the bottom-up). In other words, they want more decision making authority in the planning process of their assignments. This means they should also be participating in the preparation of estimates for their assignments and should be able to report back to management on the progress of their assignments. To do so, there should be something more substantial than vague generalities as to where they stand on an assignment, e.g.; "I'm 50% complete." Because of the many people participating in today's development projects, management can ill-afford to operate with vague generalities and instead needs to know early on if the worker is in trouble or will be delivering his work product early or late. This can be simply performed by recording time spent and estimating the amount of effort remaining on an assignment. This is particularly needed, if their assignment affects the schedules of others. If the worker is going to be given more freedom to layout and estimate his work, it seems perfectly reasonable to apply a little discipline and accountability regardless of the creative spirits involved, especially if other people are involved.

So, is systems and software development a science or an art? I contend that it is a science for the reasons already mentioned. As such, it can be taught and implemented in essentially the same manner as other sciences, such as architecture and engineering, who are basically in the same business as systems and software personnel except designing other types of products. True, we still have issues of creativity and managing complexity, but this is no different than the other disciplines as well. It also means imposing the same types of discipline, organization and accountability as found in the other disciplines. The problem though is this conflicts with today's relaxed office mores. One has to question if we have become perhaps too lax in our corporate cultures to the point it is having an adverse effect on productivity; that maybe some discipline and accountability might produce positive results.

Younger developers might contend that I am out of touch with how systems and software is developed these days, that they need free reign to do what they want. I contend there will always be a place for management, otherwise we will end up with the "1000 Monkey Phenomenon" whereby people are permitted to do whatever they so desire and maybe, just maybe, something worthwhile will be produced. Companies can certainly not afford to operate in this manner and, because of this, we will always need management to orchestrate development efforts in a concerted manner.

One last note, an area that greatly concerns me is the lack of standards in this industry, particularly in the area of systems. Sure we have plenty of theories of what systems are, but no definitive body of knowledge that can be applied uniformly. This is one obstacle prohibiting us from becoming a legitimate science. As long as there are multiple interpretations of the same thing, we will never realize any consistency and management will continue to perceive developers as free spirited artists as opposed to disciplined professionals.

If you would like to discuss this with me in more depth, please do not hesitate to send me an e-mail.

Tim Bryce

Tim Bryce is a writer and management consultant located in Palm Harbor, Florida.
http://www.phmainstreet.com/timbryce.htm

He can be contacted at: timb001@phmainstreet.com

Copyright © 2008 Tim Bryce. All rights reserved.

Rate this Article: 5 / 5 stars - 1 vote(s)
Print Email Re-Publish


Article Source: http://www.articlesbase.com/programming-articles/is-systems-development-an-art-or-a-science-358948.html
Add new Comment



Captcha
0
1. sony (06:12, 12.09.2008)
hello sir.goodmorning.

  • Latest Programming Articles
  • More from Tim Bryce

Your Website – Custom Designed or Template?

By: SearchPooch.com | 04/07/2009
A quick Internet search will reveal the tens of thousands of people out there all wanting to make a better website for you. They range from sites where you do the work with the help of a template, to those that offer a one-off custom-built design. The former are usually “free”; the latter may cost more or less depending on the skills of the designer, and how much they think they can charge their customers.

Hire ASP Dot Net Programmers:Hire php developers

By: Arshad | 03/07/2009
Since the concept of outsourcing changed the economy of many countries it has been very clear that paying Indian development service providers is very much economical than funding an in-house private team. Analysis says that more than 50% of the cost can be saved by inking contracts with Indian IT service providers.

Virtual assistant services

By: Arshad | 03/07/2009
Virtual assistant services are those which handle the administrative and technical aspects of your growing business from a remote location. With the help of all the latest technologies it is possible for skilled people all around the world to assist their clients in a very similar and efficient way as a home full time assistant would do. The good thing about virtual assistant service is that they are much more affordable than hiring a home assistant.

Creative Web Development in India

By: Shoun | 03/07/2009
Perception system has vast experience in website designing and website developing. It has team of young web designers and developers who are always create new and remarkable for their clients. Visit http://www.perceptionsystem.com/ for further assistance.

Mostly used programming languages and their programming advantages

By: Joanna Gadel | 02/07/2009
PHP programming, Java programming and Dot Net programming are the three widely used languages in recent web programing as well as in software programing arena. This article describes the reasons of their vast use and the advantages in terms of their features and application procedures.

Web Developement and Web Design Company in india

By: Ashutosh | 02/07/2009
NSG Infotech is a growing company in india, working on diffrent technologies like Miscosoft Technologies and Open source technologies

Introduction to Black Box Testing Techniques

By: yogindernath | 02/07/2009
Introduction to Black Box Testing Techniques

Java - Programmimg Language

By: Vikas Sah | 02/07/2009
Familiarize yourself with Java as a programming language. Read on.

The Absence of Technology

By: Tim Bryce | 02/06/2009 | Information Technology
"Imagine no cell phones, it's easy if you try, no PC's or TV's, above us, only sky. Imagine all the people, living life in peace."

The Price of Ethics

By: Tim Bryce | 02/06/2009 | Ethics
Describes the cost of ethical behavior, along with Tim's crash course in ethics.

How we are Judged

By: Tim Bryce | 02/06/2009 | Career Management
Ever wonder why people treat you the way they do? A lot has to do with how you are perceived by others. Let me give you an example...

Show me the Proof!

By: Tim Bryce | 02/06/2009 | Management
Does technology alone truly improve productivity?

The Bright Side of Getting Fired

By: Tim Bryce | 26/05/2009 | Career Management
Time for some soul-searching.

Pussyfooting Diplomacy

By: Tim Bryce | 20/04/2009 | Politics
A good way of describing our foreign policy.

OBI-WAN MANAGEMENT

By: Tim Bryce | 10/04/2009 | Management
Some basic tips for effective management.

Why Do We Trust Politicians?

By: Tim Bryce | 02/04/2009 | Politics
Like it or not, we do.

Submit Your Articles Free: Signup


Article Categories




Use of this web site constitutes acceptance of the Terms Of Use and Privacy Policy | User published content is licensed under a Creative Commons License.
Copyright © 2005-2008 Free Articles by ArticlesBase.com, All rights reserved. (0.10, 1)