Back

Mingyan's Journal

e-Portfolio Project of CCIS



Spring 2004  Fall 2003

Spring 2004
Week 3 Week 2 Week 1

Week 2



Week 1 (Jan. 5 - Jan.9)

Documentation of feedbacks from group members
System documentation
Modify code

Summary of last week
I modified the system according to your feedback.
    Write documentation about the database, how to start/shutdown the servers,  configuration of servers, etc.
    On each page, add some directions to guide students about what this page is about, what content is expected. Some reference links from Mel or Viera's webpage could be linked here to give students more detailed information.
    Students are able to upload files as attachment.
    When I did these improvements, I use OSPI as an reference, trying to make the organization similar to OSPI's.
    I tried on UNIX/Linux/WindowsXP, and the system works fine on every system.
    Misc: use course name instead of course number as index, not include grade of each course, change color of links, delete coop id of coop, etc.

Work going on
    Besides current education experience in CCIS, also add pre_education history like high school, other universities experience.
    Showing online the uploaded files.
    Enable to upload more than one attachments for one skills/page.
    Basically, in every page of the portfolio, student should be able to upload files, but currently, I just enable the 'ProgrammingSkills' page to upload.
   
   
Next to Do
    Based on Viera and Mark's suggestion about the framework of coop experience, I am trying to look for some techniques to implement TreeView of the coop experiences.

Questions
    What do you expect to view as administrator?
    Do we need everything in OSPI?


   




Fall 2003
Week 11,12,13  Week 8,9,10  Week 6,7  Week 5  Week 4  Week 3  Week 2  Week 1   


Week 11,12,13 (Nov.24-Dec.12)

Writing code
Based on feedback from other members of our group, modify and improve



Week 8,9,10  (Nov.3 -Nov.24 )

Starting from this week, I began to focus on MySQL to work on our project. To build the system, I use Apache as server, MySQL as database, PHP as language to operate on MySQL. All of them are quite new to me, I spent several days to make them work together.
To build the system, we also need some scenarios and flow charts to work on, and also need some real data from students to test.
To the tables in database, I constructed based on the doc provided by Mel.



Week 6,7 (Oct.20th - Oct.31)

Installation and building OSPI and related packages
Comparing OSPI/rsmart
Phone meeting with rsmart

README of building ospi portfolio: (file:  /proj/bkl/myshao/doc/OSPI/portfolio/README-Mingyan)

*************************************************************************
*************************************************************************
This file is about how I built OSPI system.
For some output, see build.note.mingyan.
Before this step, I built Apache Ant-1.5.4, Tomat-5.0.12 and MySQL-4.0.15.

*************************************************************************
*************************************************************************
========================================================================
0. Build ant, tomcat and MySQL
   
   Ant
   Tomcat has base directory and instance directory. (detail, see book "Tomcat")
   MySQL, created database 'portfolioDB', user 'portfolio', pawd 'mbnccp', driver, url, etc


=========================================================================

1. Configuration     build.properties
    serlvet.home --> Tomcat's root directory
    deploy.home  --> Tomcat instance's directory
    java.home    --> $JAVA_HOME
  
   Note: if tomcat is not relocated for instance, then deploy.home need not to be changed.
     servlet.home and deploy.home are both use actually directory, not environment, e.g., servlet.home = /proj/bkl/myshao/doc/jakarta-tomcat ... . So, later, if we use another directory, we need change it.


=========================================================================
2. Build
    Not necessary to change build.xml
   

=========================================================================
3. Deploy   (output: build.note.mingyan)
    They provide three approaches, we use the first one: Ant web.
    init -> prepare -> compile -> jar -> web

    init.
    prepare: create directories:
        in tomcat-instance/protfolio/webapps/portfolio, ./WEB-INF/,etc
        in OSPI/portfolio/build/, build/classes, build/lib, etc
    compile: compile files to OSPI/portfolio/build/classes ,etc
    jar:     OSPI/portfolio/build/lib/portfolio.1.0.0.b3.jar
    web:     copy related jar files to tomcat-instance/portfolio/...



=========================================================================
4. Configuration of OSPI application, four files in etc/

    portfolio.xml    has many useful settings, need read later
        webserver.baseURL
        email.smthhost
        email.sendmailExecutable
        feedbackaddress
        loginPage
        successP
        institution
        user storage (may modify later)
        database, set to MySQL

    log4j.xml
        unchanged currently
   
    jaas.config
        if using RDBMS, not change
        if use CAS, change accordingly.   
        --- I want to RDBMS for authentication, so, unchange ---
        --- I need to read MySQL for user&password management
   
    web.xml
        default web application configuration file

    server.xml
        change driver, url of mysql jdbc driver
        driver: com.mysql.jdbc.Driver
        url:    jdbc:mysql://localhost:3306/portfolioDB
   
        I downloaded mysql connector jdbc. should copy its jar file to webapp's lib dir: /proj/bkl/myshao/doc/tomcat-instance/portfolio/webapps/portfolio/WEB-INF/lib
   
        Also, add mysql connector jar file to CLASSPATH



=========================================================================
5. set up database
    sql/tables.xml, tables.xsl, data.xml, dbloader.xml
    only change dbloader.xml now to adopt to MySQL
    later, should change the other three for the data of CCIS
   
    ********************************************************
    ******* Question: how to change dbloader.xml??? ********
    ********************************************************
       
    in dbloader.xml, I uncomment driver/url/user/pswd for MySQL

    Started MySQL,
   
    in MySQL, I created a database: portfolioDB,
    mysql> create database portfolioDB;
   
    I created a user and passwd for database portfolioDB.
    mysql> grant all on portfolioDB.* to portfolio@localhost identified by 'mbnccp';

    <from forum >
    modify portfolio/etc/portfolio.xml. username and password
   
    ,,,,,, tomcat/common/lib/ should have a common-logging-....jar ????
    Anyway, I got it from jakarta.apache.com and copy to lib/.
   
    Currently, mysql-connector-java-3.0.9-stable-bin.jar is in 4 places:
    CLASSPATH, tomcat/common/lib, OSPI/portfolio/lib, tomcat-instance/portfolio/WEB-INF/lib, tomcat/shared/lib/

   

    in tomcat-instanct/../conf/server.xml, add a context for portfolio.
    then, in "Ant db", db is ok. but "db-tip" has problem. need to change tiploader.xml accordingly.
    After change, got such problem in ant db, db-tip:
    -------
     [echo] Invoking DbLoader for tips.   
          [java] Parsing file:/proj/bkl/myshao/doc/OSPI/portfolio/sql/tiploader.xml...
         [java] Could not get a database connection...
         [java] Error getting connection: null
    -------
   
    now:
    [java] Error getting connection: null
        [java] java.lang.NullPointerException
       [java]     at java.lang.Class.forName0(Native Method)
         [java] Could not get a database connection...
         [java]     at java.lang.Class.forName(Class.java:140)


    -- Nov. 2nd ---
    In tomcat-instance/conf/server.xml, change username and passwd to real values.
    change sql/tiploader.xml to be EXACTLY same with dbloader.xml about MySQL driver (4.0.15)

    Then, everything is ok.


    The complete output of 'Ant db' is in build.note.
    In Database portfolioDB, there are 80 tables.


=========================================================================
6. Build all by 'Ant all'
    successful


**********************************************************************
**********************************************************************
Note:

Related files/configurations:

Tomcat: conf/server.xml, common/lib/(MySQL's driver, common-logging.jar, etc)
MySQL:  database/user/pawd/driver/url
OSPI:   build.properties, etc/portfolio.xml(and other three files if needed)
    sql/dbloader.xml, sql/tiploader.xml


Besides the configuration documents provided by OSPI website, read carefully the related posts on forum, they had similar questions.

user: test01, pswd: ***********

**********************************************************************
**********************************************************************

Comparison of OSPI/rsmart

rsmart is based/powered by OSPI. OSPI is open source, actually I think it's free software. rsmart is open source, i.e., we have source code after we buy its license.
rsmart is several steps ahead of OSPI, like it can add category. OSPI can add element, I am not sure if it can add category.

Phonemeeting with rsmart

I asked them several questions. Details in group meeting report.



Week 5  (System requirements, functionalities)
Oct. 15th

System requirements:  

The following parameters are from Jack Brown of OSPI:

" At the University of Minnesota, we are granting our users 20MB of space, though most don't appear to use more than 5MB.
  We do, on a case by case basis, allow certain users (such as Fine Arts) additional allocation. Currently, the largest allocation is 100MB.
  We are running on Red Hat Linux (I think version 8-something) currently, with dual 2.4GHz P4 Xeon processors, 1GB RAM, and a huge amount of      disk space (several 150GB disks, I think). I don't have the exact params, but could get you them if you need. We are using Tomcat 4.1.24 currently,        with the 1.4.1_02 build of Java, and running ssl through apache (using mod_jk connectors). Our database runs on Oracle 9i, on Solaris. "

Detailed operation system/ software suggestions: (from OSPI source code, readme file)

"The OSPI Portfolio has the following requirements for deployment. These are the only tested configurations. Parenthesized versions of products
   should also work, but will not have been fully tested.

    Operating System:
        RedHat Linux 7.3 (fully patched) (should work with RedHat Linux 8 as well)

    Database:
        Oracle 9i (also, Oracle 8i)

    JDK Version:  (from Sun)
        Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1-b21)

    Web Server:
        Apache 1.3, as delivered with RedHat 7.3, and fully patched through up2date.

    Servlet Engine:
        jakarta-tomcat version 4.1.18 (or newer).

    Build tool:
        jakarta-ant 1.5.1 (http://ant.apache.org/) "


We would notice that
--- the system requires huge disk space since each students will roughly use 5MB or more,
--- which operation system we'd better use, Linux, or Unix. If use unix, we will work more together with system group for some issue like security.
--- I have get the related software, tomcat, ant, and OSPI, and am waiting for the available machine to use and Oracle license.


Oct. 18th

Functionalities : Student, Faculty, Employers, Administrators.

Students: almost like OSPI. Each student has some space to show his/her key performances in education, career, skills, professional practices, and recognition, etc.  Besides editing the portfolio, the student can also share selected content of portfolio with anyone by indicating email address, and may view any portfolios shared by other students to him/her. (Would it be better if I display some OSPI demo in our group meeting since I got an account from OSPI?) Besides, could we also allow students to write some feedbacks to employers he/she co-op worked with?

Faculty and Employers: Faculty and employers are involved in the portfolio system because they are invited to write some feedback of students in both education and co-op. Their accessibilities to the system are in different ways: faculty can view/evaluate any student, while employers can view/evaluate the students co-opped in their companies. It would be better if employers and faculty could provide some information about themselves, adopting different portfolio structure from students', so that the system will be more interactive and more helpful in helping students to select the employers and prepare for the co-op experience. In a word, faculty and employers can edit their own portfolios, and can view/feedback some students' portfolio without asking permission.

Administrators: view and organize the architecture of the whole system, manage different user groups, do statistical works on the system, guarantee the security,  update the system when necessary, etc.


Different views: 
Each student can view his/her own portfolio, shared portfolios, each faculty's basic info, each employer' basic info.
Each faculty can view his/her own portfolio, other faculty's portfolios, employers' info, any students' portfolio.  (and student's feedback? )
Each employer can view his/her portfolio, portfolios and feedback of students co-opped in his/her company.


Suggestion: Students can write feedback about faculty and employers, and vice verse.

Questions: Could we let the students have the priviledges to view the feedbacks from faculty/employers to him/her?
                   Could we let employers view all the students and their feedback?





Week 4

Oct. 8th

What are the functionalities of our portfolio project? What's the purpose we want to build this system? Giving students their own space to show their best/favorite part in CCIS/NU, or help college to track students' records, or help both students and college to improve quanlity of learning and teaching.

Comparing different portfolios

Alverno college   Faculty/administrator can access students' portfolio without asking for permission ahead. They provide well-formatted portfolio structure, and students can almost simply fill in records. Yes, students can specify some PPDs(Personal and Professional Development), like community/professional involvement, career research, inventories, etc.. But there is restricted flexibilities for students to show their best quanlities. Its usage to us is that we can use their functionalities of faculty view students records without permission.

Kalamazoo college   The college gives the students some guidelines, like what are expected in the portfolio. From the sample portfolios, I found they have quite loose format, and organized by students themselves. The content may be different, almost no official records except some info about the classes have been taken. Most information is about community involvement, leadership, reading, career/life goal, family, friends, hobbies, etc. The portfolios are public and accessible online. A good point of their system is that they seperate the building of portfolio into several stages according to students' experience in college, like the requirement of freshman, sophomore, junior, and senior respectively. I think this will guide the students to build their portfolios step by step. (I want to print out something from their website. en, yes, I did.)

From the link of Michigan State Univ(MSU, provided by Mel), I also found many portfolios from various unviersities/colleges, and they also provide many samples. From these samples, I found almost all of them, except Alverno college, use the same mechanism to do the project: give students some general guide and instructions, the students design, organize and implement their portfolios on their own. As Dr. Helen Barrett pointed out, there are two way to work on the e-portfolio system, general toosl(GT) and customized systems(CS). Alverno college and OSPI belong to CS, and all others belong to GT. GT such as html editors, word processing, pdf, and othe rcommonly used productively tool software, CS, on the other hand, involves servers, programming and databses. Using GT, students have maximal freedom to design their portfolio's stucture. CS provides a standard structure of all the portfolios, which make it easy for both students and administrators in a way that students need not to learn how to organize and implement their portfolios, and administrator can access the portfolios in a standard way like query the database.

Since we want to construct a system with uniform structure of each student's portfolio, we may use OSPI as template, and add other functionalities like faculty can construct their own portfolios, both faculty and employers can feedback on certain students, and administrators/employers/faculty can view portfolios of certain or all students, etc. (I should write something down on the paper)

The portfolio on STUDENT side is almost it. To PROFESSOR/TEACHER side, what do we want to contain in the portfolio?


Dr. Helen Barrett from Univ. of Alaska Anchorage has a huge amount of resources of e-portfolio.



Oct. 9th

Following the links to some samples of portfolios of teachers/professors, I found there are some difference between these content about teachers and our plan, both in content and functional ways. In these samples, professors/teachers focus on showing their teaching philosophy, goals and accomplishment, course work, self assessment of teaching, resume, and personal info, etc. In our project, professors are expected to not only explain/show themselves, but also access the students' portfolios for feedback.

The unique point of our system is that employers also got involved. I am considering instead of the employers write their feedbacks to coop students, we could also offer some space to each employer, and invite them write something about their company. So our system will be more interactive, and can help students know more about the companies, and help them in their coop experience.





Week 3

Sep. 30th

Since we concerned about the browse facility provided for administrator, I emailed Nichole of UMN about this issue. She replied that OSPI does has some facilities that enable administrator to view all the records of the students. But instead of view the portfolios created by students themselves, the administrative office use a different mechanism, which store different kinds of records, in a different DB.

How about using MYSQL to build the whole system to test?  I know someone using OSPI are trying to use MYSQL as database. After downloaded mysql-4.0.15, I found we should do a lot of configurations to use it. Instead of using mysql, maybe we can wait a while to get an oracle license. If needed, I will work on to configure mysql.





Week 2

Sep. 22th

Today Oracle9i has been started in our college. But it turns out that it's only teaching purpose. If we want to use Oracle, we need a specific license and a server to set up.
Last week, I have downloaded the binary code of OSPI. But without a database, OSPI can not been installed.

With some other questions about OSPI, I subscribed the mailing list of OSPI. Hopely I can get some useful information about it.



Sep. 23th

I have several messages back and forth with Nichole Kluth, analyst and user support of OSPI. We talked about some issues about the mailing list of OSPI, and she has been reached by Viera also about our project, so she knows what's going on here. She also shares with me the portfolio directory which is quite different from the demo portfolio on OSPI website, hopely that will helps us with our project.

I downloaded the source code of OSPI. Since it requires some other software package to be installed, I downloaded them too. Database is included in those software. I contacted with system group, they said we can't use the Oracle of college unless we have a seperate license and a server set up. Viera is working on the license now. Currently, I am working on the other several software packages to make sure they work well. After database is settled down, I will install OSPI somewhere to see how it works. (question: where should I install all these things? my directory now. but due to security, account security, and space consideration, it would be better if we can have a seperate account, and seperate space would be much better)

To portfolio system of Univ. Minnestona, I have two accounts now, one can reach demo portfolio and edit my own portfolio for testing, the other can view the portfolio which is sort of administration data.




Week 1

Sep. 15th

We, the whole group, had our first meeting this semester. We discussed several problems regarding the interaction among students, faculty, employer, and group, information structure, software package, etc.

Back