Software Development Life Cycle – Listen Up, They’re Not Just Buzzwords

If you’re interested in software development you should be thinking about the Software Development Life Cycle. Whether you have the next great idea for a web site, are a software developer finishing your degree, the owner of a company trying to increase your web presence, or an experienced project manager in the software industry, you may not know it yet but this phrase will have a profound effect on the success of any new or existing software project you’re involved in.

For the purpose of this post, let’s start with defining Software Development Life Cycle (SDLC). A Google search will provide anyone with countless resources on the topic, but for our purposes, we’re talking about the process that takes places from the inception of an idea for software to that idea becoming a fully functional, usable application. In researching the topic you can find most resources suggest an Life Cycle that utilizes phases to break up SDLC into parts. In an effort to be concise, we’ll discuss the following phases:

  1. Requirements Gathering and Analysis

  2. System Architecture and Design

  3. Construction

  4. Quality Assurance

  5. Maintenance

Really what we’re discussing when we say that a software application has a “life” is that it’s constantly growing and evolving to meet its users needs. The phrase “Life Cycle” becomes important when discussing a SDLC because of the evolution of software; the SDLC is the “cycle” of how the software will grow. Every time we create a new iteration of software that life cycle begins again, anew.

Now that we’ve provided a basic definition for SDLC, we can discuss ways to use this information and how it affects software projects. Here are some quick hit ideas to keep in mind:

  • Preparedness

    • Clients should be asking questions about how a prospective software development team is going to be handling their project’s SDLC. Make sure the answers you get are thought out and well-developed. If you were building a house you wouldn’t want to hear “we’ll just throw together four walls and a roof,” right? Become comfortable with the process that you’re about to engage in.

    • Development teams should have an established process in place that they’ve previously executed successfully. When a possible client asks about a specific phase of the SDLC developers should be able to break down how the team is prepared to handle each of the phases.

  • Preference and Communication

    • As a client, think about how life cycles might work best for you and prepare to have that conversation with your development team. But remember to keep in mind that a software team may have years of experience perfecting a great process–be willing to accept their ideas and consider them as options or alternatives.

    • Development teams should have the flexibility to work with clients to meet their needs in the best possible way. Sometimes this might mean prototyping screens throughout the life cycle or doing a large portion of development targeting a “Beta” release for the application.

    • Clear, open communication about how the SDLC will be executed is key in making the project a success. The client and developers should agree, as soon as they can, as to the path they feel will be best.

  • Evolution

    • Both sides need to remember that if a project will have multiple phases, its life cycle will “restart” as you begin a second phase. This means that using everything you have learned along the way in the initial phase(s) will be important to refine requirements for any additions that will be made to the project.

So now we’ve discussed ways that getting to understand the SDLC, even at a basic level, will help both a client and a development team. We’ve only just scratched the surface but, hopefully, you can begin to shape your thoughts about what it might take to build that great new application that will save your company tons of money. The process can’t just be “we’ll slap some code together and, voila!” And the process doesn’t stop here either–the SDLC has many shapes and forms; whether you’re a client or a developer, increasing your knowledge of the Software Development Life Cycle will benefit your team and your software projects, going forward.

Advertisements
This entry was posted in Client Relationships, Software Development, Web Development and tagged , by Patrick Johnson. Bookmark the permalink.

About Patrick Johnson

After joining the Algonquin Studios team as an intern in 2006, I've worked on projects for a vast majority of our clients in one form or another. After earning my degree from SUNY Fredonia in 2008, I joined the team full time and since then have thoroughly enjoyed building relationships both internally and with the great clients that we work together with regularly. Currently as a Development Manager my responsibilities include managing project life cycles from the requirements analysis phase through deployment to supporting production systems. Thanks for reading, go Yankees!

One thought on “Software Development Life Cycle – Listen Up, They’re Not Just Buzzwords

  1. Pingback: Maintain Your Software Like It’s Your Home | Algonquin Studios Blog

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s