Website development process step by step

Posted on 2014-01-03
Last Modified: 2014-01-28

I am working on developing a website for a start-up business, however I am trying ascertain the main steps needed to ensure that the website meets the business requirements.
I have listed the steps I believe are necessary to accomplish this below.
However, I will welcome feedback on any improvements that can be made to the process outlined.

Website Design Process:
Step 1 - Business Modeling
Step 2 - Business Process Modeling
Step 3 - Conceptual Data Modeling
Step 4 - Logical Data Modeling (Using UML)
Step 5 - Interface Prototyping
Step 6 - Coding (For Application and UI)

Could you please provide feedback on:
1. The order of the activities in the process,
2. Whether or not UML alone can be used for the Logical Data Modeling step and
3. Are there any other steps that can be included?
Question by:Honya
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 83

Expert Comment

by:Dave Baldwin
ID: 39754532
I think that is way too sophisticated for most web sites.  Web sites are an exchange of information.  The client can find out about the business and contact the business.  Even Ecommerce is an information exchange.

The obvious things for a business web site, even a large one, are information on the business, contact forms for the client to contact the business, and then product related information and possibly ordering.

I would make a list of the things that the web site can do for that particular business and pare it down to the things it should do.

Author Comment

ID: 39755844
Hi Dave
What exactly did you mean by "pare it down to the things it should do"?

Additionally I also noted your comments about the complexity of the website, however please note that the business will require a website which provides much more features listed.

We need the following features:
1.   Requirements CRUD (Customer and Internal)
2.   Request for Quotes CRUD
3.   Quote CRUD
4.   Order CRUD
5.   Invoice CRUD
6.   Shipment CRUD
7.   Customer CRUD
8.   Supplier CRUD
9.   Product Catalogue
10. A couple of web-services

Once a customer creates his or her requirements, he or she should be able to track all the Request for Quotes, Quotes, Orders, Invoices and Shipments, that are related to a particular requirement.

Our company is into distribution so in some cases we will be using web-services to request quotes and order products from suppliers.

Finally based on what I have just indicated, do you think that the approach that I initally suggested is too complex?
LVL 83

Expert Comment

by:Dave Baldwin
ID: 39756305
I think your feature list is much more important for the web site.  The web site does not normally represent all of what the business does.  Any of those items that the customer can access must be split between customer and internal access.  

And one of the biggest items will be SECURITY!  All caps because there is clearly money involved and that attracts hackers and thieves.  You may end up with two databases, one for internal use and a different isolated one for web access.  If you are collecting and storing credit card data, then you must implement PCI-DSS security which is both data and physical.
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 39764586
Finally, just a couple of questions based on what you mentioned:

1. Will you recommend placing the two databases on the same server?
2. How is the data transferred from the web database to the internal database?
LVL 83

Expert Comment

by:Dave Baldwin
ID: 39765805
1. Depends on needs, no particular recommendation... except that the web database should have only data that is used by the web site, nothing else.
2. Just an update or transfer procedure done daily or as needed.

Author Comment

ID: 39773585
Hi Dave,

In your first comment, Posted on 2014-01-03 at 10:27:40 ID: 39754532, referring to the website design process I mentioned in the opening question you mentioned, "I think that is way too sophisticated for most web sites." However, considering that the business is a start-up, I believe that such steps are vital for success. Could you therefore comment on the two following questions?

1. Can UML alone be used for the Logical Data Modeling step?
2. Are there any other steps that can be included?
LVL 83

Expert Comment

by:Dave Baldwin
ID: 39773619
I have never used UML or "Logical Data Modeling" so I wouldn't know what other steps might be included.  After a little reading in Wikipedia, I can see where they might be useful.  But in doing 100 web sites, those concepts have never come up.  Though maybe they should have a few times.  It's hard to get small business owners to even list their requirements.  They are usually stuck on the "panic of the moment".

Please click on "Request Attention" above to get others to look at your question.
LVL 52

Assisted Solution

by:Scott Fell, EE MVE
Scott Fell,  EE MVE earned 100 total points
ID: 39779312
Looking at your original question, it sounds like you have everything covered although to Dave's point about being overly complex, I could agree only because after doing enough of these things, we probably tend to think in terms of schemas and flowcharts in our head. I know when I am talking with a client for the first time even if they are a little confused as to what they are trying to say, I already have your first three steps in my head.  

What you are proposing is a good way of thinking everything through and by putting them on paper help get others on board.  Depending on who you are sharing with, you just may want to pare down the information so it is not confusing.  For yourself, having all this detail is a great help.

It does sound like you have this well thought out.  And understanding each step is very important.  I like to verify your step 2 - Business Process Modeling with client because this is  the basis that you create your schema and all your CRUD http:#a39755844.  

It is very common that even after I get past Step 5 - Interface Prototyping and after coding and people are using they realize what they meant to say in step 2 is different than what they actually said and now the changes needed require changes down the entire line.    

It even happens on this site.  Somebody asks a seemingly simple question on how to code js/css to do xyz based on a sample they have.  After I have created the code, "Oh, your code does not work, I meant to tell you the piece in the middle that is now hidden needs to stay".

The point is no matter how well you think you have this planned out, you still need to plan for final testing.  After saying all of this, Step 7 is very important, testing and recoding.

Good luck on your project, it sounds like you have this well thought out.
LVL 110

Accepted Solution

Ray Paseur earned 300 total points
ID: 39779348
I got a neglected question alert on this one.  The question is far too broad and deep for any really good answer in a Q&A forum like EE.  It spans the breadth and depth of a bachelors degree in computer science, so about the best I can do is offer a little philosophy.  

In my experience, these details evolve as the web site is built.  And since the business is a start-up, they probably don't know what they need from a web site yet.  Trying to do everything "behind closed doors" preparing for a "reveal" (like a real estate renovation) is at best a big time-waster, or at worst a sure path to catastrophe.  

The better path is always the iterative path, developing web site elements and capabilities step-by-step, working in concert with the client.  This is often called "agile" development.  A daily stand-up meeting identifies the goals and obstacles for the next 8 hours, then work proceeds, then at the end of the day we all have a beer and review our progress and our plans for tomorrow.

It's quite reasonable to have two or more instances of the web site.  One of them is "live" with a site map, public hosting, etc.  The other is "dev" where you can make all the mistakes you want, try out ideas for the client, etc.  Your deployment strategy would dictate what makes the move from dev to live.

This little book is helpful:

Best of luck with it, and I hope they make it to the mezzanine! ~Ray
LVL 29

Expert Comment

ID: 39779484
You have already had lots of good stuff above.
I will just add my 2 cents:
1 - you plan on site building; however you must also anticipate what will happen when the site will be up and running: is your customer aware of all the tasks that will need to be done sitewise (add new products, change prices, make season promos etc.) and for delivery (ie stocks, delivery, tracking, etc);
-- some of this is not your turf, however you must ensure of their awareness;
-- some of this is your turf: who will update? whether it is you or not, some work is involved from you and should be billed (even if you do not handle updates, you will need to train the updaters!)
2 - For design, just to insist on Dave's comment: consider that you web database might be destroyed or hacked... so place there as few info as possible; and your order/ stock / customers database should be accessable ONLY thru 1 or 2 machines
LVL 34

Assisted Solution

Slick812 earned 100 total points
ID: 39780357
greetings Honya, , I have read this question and responses, And you do not say things that someone that has done web site development would say like - Business Process Modeling - Conceptual Data Modeling - Logical Data Modeling.
You do say this -"Product Catalog wid web-services where a customer creates an account for his or her requirements."
There are thousands of web sites that sell products and services, who do this very thing now, very successfully, so you may can look to some ideas that others have used to do this without re-inventing it from the start.
As to web development, I feel that "Result and Goal oriented web site development" wins at every turn, where you (or some one In Charge, that has web design experience) defines the Site that the whole team will work towards "creating and coordinates and guides", , all module and pieces and parts of team development towards a unified easy-to-use Client-Attractive result web site.  Simplify the pages and client view, to easy navigation and understanding, touch access, whenever possible. Remember that without Clients you make no profit, when you set your design goals. In the "Interface Prototyping" be sure to have several many "typical user" testers, where you listen to their trouble navigating your Prototype, or finding and using EXACTLY what they came to your site to get. And change the Prototype from "normal people" NOT the pro web developers that "know too much", to have good opinions about interface crap and normal user happiness. Do Not handle the important security code requirements with someone inexperienced! ! ! as you seem to be by your response about Dave Baldwin suggestion about "two databases". Web security is now extremely complex, and even Large Businesses with great security setups get "Hacked" and have financial losses. Pay the price required to get significant web security.
LVL 25

Expert Comment

ID: 39782262

I think these apply more to software development.
By experience even long time company don't take the time to do the things correctly because they need money (fast money).
These steps are overkilled for website development to my opinion.

Most of the time Website are marketing tools to attract new customer.
Know the domain, client, competitor (the market).
Use your own code try not depend of CMS or Framework.
Think about visual, mobile, responsive aspect, navigation, security, social network
and the content.

Good luck

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction Knockoutjs (Knockout) is a JavaScript framework (Model View ViewModel or MVVM framework).   The main ideology behind Knockout is to control from JavaScript how a page looks whilst creating an engaging user experience in the least …
I found this questions asking how to do this in many different forums, so I will describe here how to implement a solution using PHP and AJAX. The logical flow for the problem should be: Write an event handler for the first drop down box to get …
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE) provides powerful tools for surveying targeted groups, and utilizing data from completed surveys to find trends, discover areas of demand or customer expectation, and make business decisions on products or services.

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question