Look at the queries, make sure they're efficient. Look at the indexes, make sure that they support the queries
If SQL's locking at the table level then either it can't lock at the other levels (row/page locks disabled), or it's reading the entire table because the query/indexes are inefficient and as a result it locks the entire table.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability