IUP Portfolio Functional Specifications

IUP Portfolio is an education platform for Swedish schools, focused around the students individual development plan ("Individuell utvecklingsplan", IUP) and learning portfolio.

License 

IUP Portfolio is published under the "GNU General Public License V2".

Technical 

IUP Portfolio is a web application developed in PHP5 / MySQL5, and can be hosted on any operating system capable of running a web server, a PHP5 interpreter and a MySQL5 database system.

Typical running environments are:
LAMP (Linux + Apache + MySQL + PHP).
FAMP (FreeBSD + Apache + MySQL + PHP).

Application definition

What is it? 

In 2006, the Swedish government created a new law, saying that every Swedish pupil in K-12 schools must have an "individual development plan".
This plan contains the goals that will be created in connection with parent/teacher/pupil talks that are held two times a year.

IUP Portfolio is meant to serve as an online plan repository so that all parties are able to access the document at any time and follow up on the goals that were created.

Purpose 
IUP Portfolio has four different user roles, meaning, different kind of users which are able to do different things.
Here are the functions allowed, per user role:

Pupil or parent 
 Front-end authentication with a login or logout box.
 Plan "one-year" view.
 Plan "one-semester" view, with the possibility to validate and comment the data entered by the teacher.
 Portfolio view, with access to the three subdivisions (Documents or pictures or media).
 Portfolio document view.

Teacher 
 Front-end authentication with a login or logout box.
 Plan summary view for all of his students, for a year.
 Plan "one-year" view for a single student.
 Plan "one-semester" view, where the teacher can edit text fields with what was agreed upon during IRL talks with the pupil.

School administrator 
 Front-end authentication as any of his school pupils / teachers.
 Back-end authentication with a login / logout box.
 User Management.
 Plan Management.
 Portfolio Management.
 Document Management.
 Picture Management.
 Media Management.

Administrator 
 Front-end authentication as any pupil, parent or teacher.
 Back-end authentication with a login / logout box, or as any school administrator.
 User Management.
 Plan Management.
 Portfolio Management.
 Document Management.
 Picture Management.
 Media Management.
 Admin Management.
 School Management.

Application models

Designer's model

Front-end 
 User secured login.
 User user interface.
 User logout.

Back-end 
 User management.
 User administration (Creation / Modification / Deletion). A user creation / deletion automatically creates / deletes a plan.
 Plan management.
 Plan administration (Modification).
 School management.
 School administration (Creation / Modification / Deletion).

Entities 
 User : A user is an entity that can authenticates itself on the IUP Portfolio system, and can interact with the website.
 Plan : A plan is a static entity linked to a "Pupil-Parent" User, and accessible to all user roles.
 School : A school is a static entity linked to a "Teacher" User, used as a safeguard during the registration of new users.

Programmer's model

Entities 
 User
 First name.
 Last name.
 Sex.
 Age.
 Address.
 Role.
 School.
 Plan.
 Plan
 School
 Address.

Educational software