diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java
index e724e2d89e..94c81c97d6 100644
--- a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java
+++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/EventDao.java
@@ -5,6 +5,6 @@ import se.su.dsv.scipro.data.dataobjects.Event;
  * @author Richard Wilkinson - richard.wilkinson@jweekend.com
  *
  */
-public interface EventDao extends Dao<Event> {
+public interface EventDao extends LazyDeleteDao<Event> {
 
-}
+}
\ No newline at end of file
diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectDao.java
new file mode 100644
index 0000000000..9d4b244482
--- /dev/null
+++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectDao.java
@@ -0,0 +1,15 @@
+package se.su.dsv.scipro.data.dao.interfaces;
+
+import java.util.List;
+
+import se.su.dsv.scipro.data.dataobjects.Project;
+import se.su.dsv.scipro.data.dataobjects.User;
+import se.su.dsv.scipro.data.enums.ProjectStatus;
+import se.su.dsv.scipro.data.enums.ProjectTeamMemberRoles;
+
+public interface ProjectDao extends Dao<Project>{
+	public List<Project> getProjectsByParticipant(final User user, final ProjectStatus projectStatus);
+	public int countProjectsByParticipant(final User user, final ProjectStatus projectStatus);
+	public List<Project> getProjectsByHeadSupervisor(final User user, final ProjectStatus projectStatus);
+	public List<Project> getProjectsByProjectTeamMember(final User user, final ProjectStatus projectStatus, final ProjectTeamMemberRoles teamRole);
+}
diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectFollowerDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectFollowerDao.java
new file mode 100644
index 0000000000..cc24d423c9
--- /dev/null
+++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectFollowerDao.java
@@ -0,0 +1,7 @@
+package se.su.dsv.scipro.data.dao.interfaces;
+
+import se.su.dsv.scipro.data.dataobjects.ProjectFollower;
+
+public interface ProjectFollowerDao extends Dao<ProjectFollower> {
+
+}
diff --git a/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectScheduleDao.java b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectScheduleDao.java
new file mode 100644
index 0000000000..1e63360fee
--- /dev/null
+++ b/src/main/java/se/su/dsv/scipro/data/dao/interfaces/ProjectScheduleDao.java
@@ -0,0 +1,23 @@
+package se.su.dsv.scipro.data.dao.interfaces;
+
+import java.util.List;
+
+import se.su.dsv.scipro.data.dataobjects.Event;
+import se.su.dsv.scipro.data.dataobjects.ProjectSchedule;
+
+public interface ProjectScheduleDao extends Dao<ProjectSchedule>{
+	
+	public List<Event> getAllEventsByProjectSchedule(final ProjectSchedule ps);
+	public List<Event> getUpcomingEventsByProjectSchedule(final ProjectSchedule ps, boolean includeOldNotDoneEvents);
+	
+	/**
+	 * 
+	 * @param ps
+	 * @param eventIsDone true/false or null if you don't care
+	 * @return
+	 */
+	public List<Event> getOldEventsByProjectSchedule(final ProjectSchedule ps, final Boolean eventIsDone);
+	
+	public int countOverDueEvents(final ProjectSchedule ps);
+	
+}