title: What does WCF mean in following context?
body: <p>am a newbie, but I am given this project where I have to make an address book using MVC. The problem is I have no clue how to use MVC I am familiar with asp.net though. I have no clue how to get started. I AM NOT ASKING ANYONE TO DEVELOP ENTIRE PROJECT FOR ME i am just unclear where to start and What WCF mean, where do i have to use it in this project? HOW LONG WOULD IT TAKE ME TO LEARN MVC from scratch and complete this project? Assuming i am at beginner level in c sharp and asp.net The following are details:</p>
  
  <p>Functional Requirements:</p>
  
  <p>Information of Individual people will be stored in the Address Book.
  Each Individual can have multiple phone numbers, email addresses and instant messenger contacts.
  Show a List of All the Contacts.
  Allow Adding new Contacts
  Allow Viewing / Editing / Deleting of Contacts
  Viewing of Contacts shows the detailed Contact Information and linked Phone Numbers, EmailAddresses and Instant Messenger Contacts.
  You can Add / Edit / Remove Phone Numbers, Email Addresses and Instant Messenger Contacts.
  Technical Details:</p>
  
  <p>Contact will have the following information:</p>
  
  <p>Title
  First Name
  Last Name
  Middle Name
  Age (Numeric Field)
  Date of Birth (Date Field)
  Sex : (Male or Female) -
  Radio Box Category : Options are Business, Family, Other (Drop-down box) - This should be a Enum in your Data Structure
  Phone Numbers will have following information:</p>
  
  <p>Phone Number Type : Home, Work, Mobile, Other (Enum)
  Phone Number:
  Email Address will have following information:</p>
  
  <p>Email Type: Primary, Secondary, Work, Home, Other (Enum)
  Email Address:
  Instant Messenger Contact will have following Information</p>
  
  <p>IM type: AIM, MSN, Yahoo, Jabber, GTalk, Other (Enum)
  IM Address:
  The application should be a N Tier Architecture, using objects and WCF services. The Website should be done using MVC .</p>
  
  <p>Your web application should not have any hard coded styles and should use CSS for all styling. Also your web application should have a Master Page / Layout [ look how you can deal with master page concept in MVC ] to allow easy updating of all pages at a later date.</p>
  
  <p>All the input fields need to be validated.</p>
  
  <p>Incase of any errors on the page, the error message should be shown on the top of the page (Default error page should never be shown) and the error message should be logged in a logging file (use Log4Net for logging).</p>
  
  <p>Steps:</p>
  
  <p>Create your Class Structures
  Create your Database Structure. Make sure that you have your SQL file different so that the application can be easily ported to a different machine.
  Create your WCF Service with necessary methods.
  Write NUnit tests for your WCF Service Methods.
  Create an HTML Prototype on how your pages will look and get that approved before you start actual implementation.
  Create your Web Application.
  Create an msbuild script to build your code.</p>