pen-15 Software Requirement Specification

1. General Product Description

pen-15 is a web based email client. Students shall be able to check email on their existing email accounts with Harvey Mudd College, and manipulate folders to organize emails.

2. Glossary Definitions

2.1 pen-15: Personal Email Nexus System 15
2.2 IMAP: Internet Mail Access Protocol
2.3 LDAP: Lightweight Directory Access Protocol
2.4 SSL: Secure Socket Layer

3. General Requirements

3.1 The user shall be able to compose and recieve emails via a simple web interface.
3.2 IMAP folders can be used to organize emails into separate folders.
3.3 The user's Pine address book file may be used/modified.
3.4 The user may look up other Harvey Mudd email addresses via LDAP functionality.

4. Functional Requirements

4.1 Email Composition

4.1.1 User shall be able to specify all relevant fields (To, Cc, Subject, Message Body).
4.1.2 User shall be able to attach files to an email.
4.1.3 User shall be able to specify recipients using the Pine address book.
4.1.4 The user's Pine signature file will be appended to the end of outgoing emails.

4.2 Email Viewing

4.2.1 User shall be able to download any attached files via a simple button or link.
4.2.2 Any URL's within the email message body will be converted to clickable links.
4.2.3 Any HTML formatting will be filtered out of recieved messages.

4.3 Folder Manipulation

4.3.1 User shall be able to view all their IMAP folders in alphabetically sorted order.
4.3.2 User shall be able to move messages from one folder to another.
4.3.3 User shall be able to create/remove/rename folders.
4.3.4 User shall be able to mark messages as read or unread.
4.3.5 User shall be able to delete messages.

5. Non-Functional Requirements

5.1 pen-15 will be run from Harvey Mudd's main student email server Odin.
5.2 pen-15 will run in an Apache environment with relevant modules installed.
5.3 Passwords will be verified via SSL.
5.4 Sessions will be implemented, though passwords will never be stored to a file in plain-text.