Introduction Of Software Development Lifecycle

Do you know software development lifecycle? The following article is an Introduction to software development lifecycle, Read it and know more about it.

In order to understand what is Software Development Lifecycle (SDLC) let us break these words into two parts: Software Development , and LifeCycle.

Software Development.

Software Development is A PROCESS to create software.At first glance to a developer - this is the coding process. This is when you sit down with the computer and start to write codes that later processed (compiled,linked etc.) become the actual software that is used by the end user. This is might be the case for beginners or novice developer who are working on "garage" project.

In a small one person project its common for developers to go directly into coding and then testing their code. They are using common divide and conquer, then trial and error testing.But for a significant size software development trial and error method will be expensive.This is because large size project normally involved few developers. Any change in any part of the codes might requires other developers to change their code also.

Larger software development also requires better way to communicate, between the developers.The communication is to make sure developers understand what to be developed, when to start the development, when the other part of the software that they dependence to will be developed, when to test these parts together, what is considered pass..etc.etc. Lot of issues to synchronized the developers.

The larger the group, the harder it is to communicate to all the team members.

This can be worst if the team members are not located in the same place - which are common these day. The team that I am part of have people working in 4 different continents in different time zone.

To make it easier, a concept of "Lifecycle" is introduced.

Lifecycle

Common concept of lifecycle is communicated to a development team to synchronized all the team members - so that every one knows when are the important milestones.

Milestones are dates when certain important criteria or requirement has to be met.

Concept of lifecycle is not exclusive to software development.

For example a human being also has lifecycle. Start from the day a human being is born.

Then s/he grows become baby,teenager,adult, old and died. This lifecycle also can be traced differently based on different view -example if look from education lifecycle (of the same human being) it can start from pre-school,junior high, high school,college undergrad, and graduate.

To software lifecycle is look like normal products (cars,computers,furnitures) creation lifecycle.It can be splitted into 5 phases:

+ Requirement
+ Design

+ Implementation

+ Final test

+ Delivery

This phases actually applicable to the final product, or even into the individual component that make up the product. For example if you are creating a chair, then you have components such as the arm rest, legs,cushions, and back rest. Once the "high level" requirements (description, specification - lot of different names of the same thing) is defined the developer of each component should be able to continue on their own to produce the components. Each of the components will go through the same 5 phases lifecycle also.

This concept of "component" developement is that not far off from what is happening in software development. If you have been in the industry long enough I bet you have heard of "component based" development. The idea is to introduce generic requirement on how components can be handled, then as long as a component is developped in conformant to this standard it can be "plugged in" into another software that understand this standard with very little effort.

Even a lot of people say that software development should be the same as other product developement -- such as car and building constructions, but experience has proven that this is not true. The normal discipline that is used in building construction does not really work in software development.In software development on the other hand, the injection of ideas is hard to controlled since its actually needed in every phase. From the high level architecture, down to low level programming, ingenuity and creativity is needed. Most software development actually depending on in development discoveries to come up with innovative products. New way of coding, new algorithm, new component can make the difference between on software to the other in term of feature offered,resource usage and performance.

Because of this software development process is normally "less rigid" compare to car or buiding construction. The side effect is that this can also caused two major problems:

+ project delay
+ low quality -- more bugs, untested code/features.

This is part of the challenge in software development.

About the Author:

Shamsul Anuar Abdul Wahid is a software developer and project lead by day and the owner of website dedicated for software development www.dzikry.com when he is not at work.


Article Source:

thePhantomWriters Article Submission Service

Related Articles
- Offshore Software
A Software Model that emphasizes on global delivery of quality software build by talented pool of professionals at an economical cost from a development center that is located in a foreign land is Offshore Software Development. Here provides you the best practice in offshore software development.
- Business Software Development
- Abstract Type
- Beta Testing
- Software Development Services Provider
- Simply Rails 2
- Common Gateway Interface Script Installation
- Introduction Of Software Performance Engineering
- An Introduction To Point Of Sale Software
- Bespoke Software
Regional Articles
- Introduction Of Software Development Lifecycle Alabama
- Introduction Of Software Development Lifecycle Alaska
- Introduction Of Software Development Lifecycle Arizona
- Introduction Of Software Development Lifecycle Arkansas
- Introduction Of Software Development Lifecycle California
- Introduction Of Software Development Lifecycle Colorado
- Introduction Of Software Development Lifecycle Connecticut
- Introduction Of Software Development Lifecycle DC
- Introduction Of Software Development Lifecycle Delaware
- Introduction Of Software Development Lifecycle Florida
- Introduction Of Software Development Lifecycle Georgia
- Introduction Of Software Development Lifecycle Hawaii
- Introduction Of Software Development Lifecycle Idaho
- Introduction Of Software Development Lifecycle Illinois
- Introduction Of Software Development Lifecycle Indiana
- Introduction Of Software Development Lifecycle Iowa
- Introduction Of Software Development Lifecycle Kansas
- Introduction Of Software Development Lifecycle Kentucky
- Introduction Of Software Development Lifecycle Louisiana
- Introduction Of Software Development Lifecycle Maine
- Introduction Of Software Development Lifecycle Maryland
- Introduction Of Software Development Lifecycle Massachusetts
- Introduction Of Software Development Lifecycle Michigan
- Introduction Of Software Development Lifecycle Minnesota
- Introduction Of Software Development Lifecycle Mississippi
- Introduction Of Software Development Lifecycle Missouri
- Introduction Of Software Development Lifecycle Montana
- Introduction Of Software Development Lifecycle Nebraska
- Introduction Of Software Development Lifecycle Nevada
- Introduction Of Software Development Lifecycle New Hampshire
- Introduction Of Software Development Lifecycle New Jersey
- Introduction Of Software Development Lifecycle New Mexico
- Introduction Of Software Development Lifecycle New York
- Introduction Of Software Development Lifecycle North Carolina
- Introduction Of Software Development Lifecycle North Dakota
- Introduction Of Software Development Lifecycle Ohio
- Introduction Of Software Development Lifecycle Oklahoma
- Introduction Of Software Development Lifecycle Oregon
- Introduction Of Software Development Lifecycle Pennsylvania
- Introduction Of Software Development Lifecycle Rhode Island
- Introduction Of Software Development Lifecycle South Carolina
- Introduction Of Software Development Lifecycle South Dakota
- Introduction Of Software Development Lifecycle Tennessee
- Introduction Of Software Development Lifecycle Texas
- Introduction Of Software Development Lifecycle Utah
- Introduction Of Software Development Lifecycle Vermont
- Introduction Of Software Development Lifecycle Virginia
- Introduction Of Software Development Lifecycle Washington
- Introduction Of Software Development Lifecycle West Virginia
- Introduction Of Software Development Lifecycle Wisconsin
- Introduction Of Software Development Lifecycle Wyoming
Related Articles
- Offshore Software
A Software Model that emphasizes on global delivery of quality software build by talented pool of professionals at an economical cost from a development center that is located in a foreign land is Offshore Software Development. Here provides you the best practice in offshore software development.
- Business Software Development
- Abstract Type
- Beta Testing
- Software Development Services Provider
- Simply Rails 2
- Common Gateway Interface Script Installation
- Introduction Of Software Performance Engineering
- An Introduction To Point Of Sale Software
- Bespoke Software

Rss   Delicious   Digg   Add To My Yahoo   Add To My Google   Bookmark   Search Plugin

Topics:
Advertising Family Home Services Real Estate Resources
Business Services Fashion Industrial Goods & Services Retail & Consumer Services
Career Financial Services Insurance Software
Cars Food & Beverage Internet Technology
Computer Hardware Franchise Legal Telecommunications
Construction Health Miscellaneous Trade Shows
Education Holidays Nightlife Travel
Entertainment Home Appliances Online Database Weddings
Environmental Home Electronics Pets World History