Layered Architecture in Application Development | NoteLib