Solved

Website development process step by step

Posted on 2014-01-03
14
582 Views
Last Modified: 2014-01-28
Hi,

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?
0
Comment
Question by:Honya
14 Comments
 
LVL 82

Expert Comment

by:Dave Baldwin
Comment Utility
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.
0
 

Author Comment

by:Honya
Comment Utility
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?
0
 
LVL 82

Expert Comment

by:Dave Baldwin
Comment Utility
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.
0
 

Author Comment

by:Honya
Comment Utility
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?
0
 
LVL 82

Expert Comment

by:Dave Baldwin
Comment Utility
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.
0
 

Author Comment

by:Honya
Comment Utility
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?
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 82

Expert Comment

by:Dave Baldwin
Comment Utility
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.
0
 
LVL 52

Assisted Solution

by:Scott Fell, EE MVE
Scott Fell,  EE MVE earned 100 total points
Comment Utility
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.
0
 
LVL 108

Accepted Solution

by:
Ray Paseur earned 300 total points
Comment Utility
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: http://www.sitepoint.com/store/deliver-first-class-websites-101-essential-checklists/

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

Expert Comment

by:fibo
Comment Utility
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
0
 
LVL 33

Assisted Solution

by:Slick812
Slick812 earned 100 total points
Comment Utility
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.
0
 
LVL 24

Expert Comment

by:lenamtl
Comment Utility
Hi,

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
0

Featured Post

Control application downtime with dependency maps

Visualize the interdependencies between application components better with Applications Manager's automated application discovery and dependency mapping feature. Resolve performance issues faster by quickly isolating problematic components.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
CSS (line height?) issue 2 56
ColdFusion Rereplace 3 61
WCAG (Web Content Accessibility Guidelines) levels 3 40
Problem to page 4 16
In this article you'll learn how to use Ajax calls within your CodeIgniter application. To explain this, I'll illustrate how to implement a simple contact form to allow visitors to send you an email through your web site.
It’s a strangely common occurrence that when you send someone their login details for a system, they can’t get in. This article will help you understand why it happens, and what you can do about it.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
Use Wufoo, an online form creation tool, to make powerful forms. Learn how to choose which pages of your form are visible to your users based on their inputs. The page rules feature provides you with an opportunity to create if:then statements for y…

772 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now