Please report any problems to the Shared Tools Team at    Broken Links? Missing Macros? WIKI Retiring Plugins
Skip to end of metadata
Go to start of metadata


These EBOs are focused on Curricular information - that is - information about courses and those who teach and attend the courses and the resources that describe those courses. They are intended to provide a snapshot of current, not historical data. They are limited to Curricular information and do not cover Academic information. They include Curricular information not included in the Student Information System. They also describe EBOs which are probably useful but are currently gaps in our system. We have attempted to mark the gaps in the EBOs.
Any Term based EBO is only for Published Terms. Published Term means that the Term is finalized and will be placed in the schedule of classes. This is an ISIS business process.

Mapping of Systems' Use Cases to EBOs

Consuming Systems
Use Case/Business Process
EBOs Consumed

eLearning Systems
Course Management Systems

  • Moodle
  • D2L
  • Drupal in some instances

Resource Bridge in Portal
Class Schedular

  1. Instructor or LMS admin rolls up several class sections into a single section (gap)
  2. Instructor sees list of classes and enrolled students AKA Class Roster
  3. Instructor sees list of classes she is teaching
  4. LMS administrator sees what terms are available
  5. Student finds list of textbook and course materials related to a class
  6. Student/Instructor Reviews class materials
  7. Student/Instructor sees list of course times, dates building room
  8. Student/Instructor sees list of exam dates, times, buildings, rooms
  9. Student/Instructor sees list of library resources related to class (gap)
  10. User gets a list of all cross-listed courses for a subject

Course (Topics, GEBLCs+Honors et al...)
Class Meeting (class section + time,day,building, room, exam dates/times)
Enrollment Packages
Class Roster
Class Materials (Textbooks, URL, Supplies, etc. and information about these materials)
Special Instructions ( )
Aggregate Class Roster (cross-listed/meets with joined)
Rolled Up Class Roster (ad hoc joins of class rosters)
Instructor Class List (list of all courses/sections for an instructor)
Student Class List (list of all courses/sections for a student)
School Colleges
Instructor Org

Web Content Management Systems

  • MyWebSpace
  • Drupal
  1. Student/Instructor sees list of course times, dates and room-building information
  2. Student finds list of textbook(s) and course materials related to a class
  3. User finds courses in a subject
  4. User finds list of schools and colleges
  5. User looks at last taught dates and next offering dates for a class (course?)
  6. User looks up classes taught by an instructor
  7. User looks up term start and end dates

Instructor Class List
Student Class List
School Colleges

On-line Catalogs of Course Information

  • Course Guide
  1. User finds all the subjects that match criteria
    1. eg give me all anthropology - receive name of subject (or subjects if cross-listed), title of course, catalog number, description, pre-requisite (which is part of description), credits, effective term/date, status (active and inactive)(not currently in curricular hub)(they may want to look at inactive possibly in order to reuse a catalog number or to reactivate an inactive course.  (note: active/inactive is a gap)
  2. Student Sees List of Classes
  3. User gets a list of all cross-listed courses for a subject
    1. Who gets a list? Why?
    2. Is the Curriculum Committee the actor?
  4. Student/Instructor sees list of course times, dates building room
  5. User finds courses in a subject
  6. User finds instructors in a subject (see Instructor EBO)
  7. User finds list of schools and colleges (can be extrapolated from Subject EBO.  As of now, we do not have a direct method for obtaining Schools and Colleges)
  8. User looks up term start and end dates
  9. Student finds list of textbook and course materials related to a class
  10. User looks at last taught dates and next offering of a course
  11. User looks up classes taught by an instructor
  12. Student filters or searches by various course characteristics
    1. Subjects, Courses,Courses by schools, by subject Topics by instructor, title, keywords

Class Section (Class Roster minus Students)
Class Meeting
Instructor Class List
Instructor Teaching Subject (The subjects in which an instructor has taught)

Collaboration Tools

  • WiscCal
  • Wikis
  1. Instructor emails all students in a section
  2. Instructor grants access to a collaborative space to students who are enrolled in a
  3. Instructor or LMS admin rolls up several class sections into a single section


Other Systems

  • Class Scheduler
  • Door Access Systems
  1. Class Scheduler finds sections that are close to each other
  2. Class Scheduler builds a schedule based on Enrollment Package Options
  3. gets a list of text books
  4. Student gets door access to lab space (based on Course Roster)

Curricular EBOs

Core EBOs

Core EBOs represent a standard set of data - the minimum set - that represent a core element in the EBOSs. The Core EBOS are: Class Core, Subject Core, Cross-Listed Subject(s) Core, Instructor Core and Student Core. These EBOs are defined below and referenced in the follow-on EBOs. The Core EBOs are not meant to be delivered by themselves though use cases might exists where just the core data would be required. The data elements in each Core EBO are common to many other EBOs.

Class Core

Class Core

Term Code Is Term Code correct or should this be a Term Core?


Subject Core

Catalog Number

Course ID

Offering Number (Note: CourseID/Offering Number are redundant and can be calculated)

Type (4/22 enumerated type:  IND, FLD, LEC, DIS, LAB, SEM )

Section Number (4/22 string)

Class Number (4/22 term and class)

5/26  Question raised by developers whether there is a mode of instruction such as on-line.

Subject Core

Subject Core

example elements

Formal Description

Rural Sociology


Rural Sociology

Short Description

rur soc

Subject Code


School/College(s) Description

col of agricultural&life scie

School/College(s) Formal Description

College of Agricultural and Life Sciences

Cross-Listed Subject Core

Cross-Listed Subject Core

Formal Description


Short Description

Subject Code

Instructor Core

Instructor Core



Instructor Name - First, Middle, Last

Instructor Type

Instructor eMail Address

Instructor-Affiliation (from 4/22 review)

class unique id

instructor core

role code

role description

display flag    boolean    Controls display to protect instructors

Student Core

Student Core



Name - First, Middle, Last

eMail Address

Level (Year in School)



4/22 Topic Core

Short Desc


Long Desc

Full EBOs

The full EBOs are those EBOs that represent a full business object and are based upon the Core EBOs above plus the additional elements needed to fully describe a given business object.

Course EBO

8/11: Course EBO - Question from Nick re: course description - Do we want to populate the description field in the course ebo with some default value for these courses with null COURSE_DESCR_NOPREREQ (e.g. 'No description available.' or the like)? Or should we modify the course ebo in the schema to make description optional?

8/10: Course EBO - Need to add an IS_BEING_TAUGHT (Y/N) field to course EBO

4/27:api for course: term, subject code and catalog number (current cris).  list<Course>.  getCoursesBySubject (termCode, SubjectCode)

4/27: note cheaper to determine if a course is cross-listed than to deliver the list of cross-listed courses.  level.

4/27: ai for EBO group: review use cases for cross listed to verify the suggested approach will work


Course Title

Catalog Number

Subject Core

Cross Listed Subject(s) Core  4/27 replace with boolean flag indicating whether course is xlisted.

CourseID Number

GEBLC flags (4/22/10 broken out general ed, ethnic studies, breadth (mutliple values), letters&science)

Open to First Year Flag (4/22 boolean)

Honors Indicator, etc.  (4/22 enumerated type: Honors Only, Honors Level, Instructor Approved)

Course Credit Range (4/22 human readable)

Catalog Print Flag (4/22 change "Field" to "Flag"  -- a Boolean)

Course Typically Offered (4/22 human readable e.g., every other summer)

Topics Title Attribute (Y/N) (4/22 Topic type with multiple possible values)

Status Active (GAP: Inactive status not represented in CHUB)(4/22 remove from EBO?  We're not going to present courses that are set to false, but all courses are set to active in CHUB)

Status Effective Date/Term (4/22/10 as long as the course has a reference to the term code, then this is also redundant)


Divisional Committee Prerequisites (4/22 label Advisory Prerequisites: Stated Prerequisites defined by Divisional Committee  string type -- human readable)

Enrollment Prerequisites GAP - these cannot be determined easily(4/22 this is an enforced pre-requisite.  They change every term  string type -- human readable)

Repeat for Credit Flag GAP - DARS Issue(4/22 String because it may be human readible.  Keep in EBO)

Class Section EBO

Class Section

Data Elements

Class Core


Class Timing Elements

Start Date


End Date


Status (cancelled, etc) (4/22  Suggest label "Active" of type boolean.  Active is anything not cancelled.  Default will be true)

Cross Listed / Meets With Elements

Cross-listed Classes: Subject, 5 Digit Class#, Section Combined ID

(4/22 indicator that a class is xlisted and a method for retrieval)

Meets With Classes: Subject, Catalog#, Section#, 5 Digit Class#, Section Combined ID


Aggregate Enrollment Cap


Aggregate Enrollment Count


Primary Class Number

Class Attribute Elements

Section Level Com B Flag (4/22 this is a special value of GenED)


Section Level Honors Flag


Section Credit Range


Course Title?


Topic (4/22 a single, optional value.  only from domain defined in course)


Notes: Term Course Session Notes and Term Class Notes, Term Subject Notes

Instructor Core

May have multiple Instructors

Administration Elements

Graded Component (4/22 boolean)


Publicly Viewable Section (scheduled print indicator)


Enrollment Capacity


Enrollment Count

Class Roster EBO

Class Roster is a "rolled-up" by definition. Cross-listed and meets-with rosters are included in the Class Roster. This covers aggregate class roster EBO

Class Roster

Data Elements

Class Core


Instructor Core


Student Core

Note:Core carries eMail Address and EmplID. Not sure if they should appear here

Additional Student Elements



Catalog # they registered for


Subject they registered for


Section they registered for


Class # they registered for


Add Date


Drop Date GAP: date not stored if drop prior to start of session


Credits Enrolled For


Enrolled as Honors Flag


Audit Flag

Example: Scott, Jim and Karen are in the same "class" Scott is enrolled in the "Reconquest" course as Spanish 575, Section 1, Lecture. Jim is enrolled as Portuguese 375 Seminar. Karen is enrolled as History 375 Seminar. Spanish 575 is a "Meets-With" course with Portuguese 375. History is "Cross-Listed" with Portuguese 375.








Meets with col 2


x-list with col 2






Catalog #















Class #










Course ID










Grade Roster

Note: there is a student class list that Joe Tarter maintains.  (Class lists utility) It's an email list.  All email addresses for students enrolled in the class are used to provision the listserv. Class Roster is the appropiate EBO to use for this.

Grade Roster

Data Elements

Class Core


Instructor(s) Core


Student Core



Add Date


Drop Data GAP: date not stored if drop prior to start of session


Credits Enrolled For


Enrolled as Honors Flag


Audit Flag

Graded Component Elements

Graded Component Flag


Student Grade Basis Indicators

Class Meeting EBO

4/27: Need to describe whether it is a exam meeting or class meeting.  Add element Meeting Type "exam", "class"

Class Meeting

Data Elements

Class Core


Time Day Elements

Final Exam Date, Time, Room(s), Building(s)


Class Room(s) and Building(s)  (4/22 Bldg should have lat long, name, street eng) need lat long for google.  This should be published by space mgmt or from wherever it resides
room is string)


Class Day(s), Date(s), Time(s)


Course Title / Topic Title (4/22 remove from EBO.  It belongs in Course and Class)

Class Materials EBO

Pass in term and class # returns complex class materials class

4/27 Future date?

Class Materials

Data Elements

Class Core


Instructor Core


Materials Elements

Materials Flag: No (no materials), Null (unknown), Yes (materials entered)


Last Updated Date & Time

Textbook Elements

Textbook Title




Publisher's Name


Author's Name


Year Published




Required or Recommended Flag


Note Field (GAP)


Cover Icon (GAP)

Additional Materials Elements

Resource Name


Required or Recommended Flag


Note Field (GAP) 

Notes Elements

Notes Text

URL Elements

URL Fields

Finalized Elements

Finalized Flag:  Yes (display info to users) No (hide details from users) Is this per item?


Finalized Date

Enrollment Package EBO

4/27  two methods, one to return enrollmentPackageUniqueID, one to return enrollmentPackageClass.  Review schema.

Enrollment Package


Section Number(s)

Section Type(s)

Enrollment Class Number



Catalog Number


Class Number

Instructor Class Schedule EBO

Instructor Class Schedule

Term EBO

Instructor Core

Class Meeting EBO

Use Cases:

  1. Show me the list of classes that I as an instructor am teaching.
  2. Instructor class list EBO could be used to develop an instructor's class schedule.  Where do I need to be when?
  3. I really like that instructor: I would like to see the classes she is teaching

Student Class Schedule EBO

Note: This information is for the current term and up to 2 future terms

Student Class Schedule

Term EBO

Student Core

Class Meetings: Class Meeting EBO

Use Cases:

  1. I'm in the portal; show me the classes for which I'm registered
  2. Use Case 2 Show me the classes for which I'm enrolled and that are also in D2L (note: ISIS doesn't carry the Learning Management System info)
  3. Use Case 3 Advisor looks at schedule of advisee (out of scope for this effort. May be taken up at a future time)

Terms EBO


Term Code (e.g. 1102)

Academic Career (code, short descr, long descr)

Career-specific Instruction Begin Date (First day of regular, full-semester classes)

Career-specific Last Class Date

Career-specific Term Begin Date

Career-specific Term End Date

Short Term Description

Long Term Description

Extract Date

Subject EBO


Subject Core

Subject Notes

CIP Code (Classification of Instructional Program)

HEGIS Code (Higher Ed General Information Survey)

UDDS Funding Source 1/2 a gap - Subjects do not always line up with meaningful UDDS codes.

School_College EBO

Note: Bogus Acad Org table does not consistently match short and long description with the Academic Group Table. To be consistent with schools & college descriptions in subject, we should ...


Academic Group Code (e.g., ALS)

Acad Org Code (e.g., A)

School/College Description = col of agricultural&life sci

School/College Formal Descr = College of Agricultural and Life Sciences

UDDS Funding Source Short Description (e.g. A07) (1/2 a gap) May be filled with a best guess.

EBO Gaps and Oddities

These EBOs are defined or ill-defined and represent gaps in the current systems of record. Use Cases exist where these would be useful.

Rolled up Class Roster EBO (GAP join done at consuming system)

Rolled Up class roster is an ad hoc joining of Class Sections into a new joined Class Roster. The joining may be done by an instructor or a system administrator. There is no way to predict these rolled up rosters. They would need to be fed back to the enterprise by the system (e.g. Learn@UW, Moodle, etc) where the joining occurs. It would be useful to have these rosters present so that all systems match the joined rosters (e.g. if Sections 1,3 and 7 were joined in Moodle into a new Roster, we might want to have an eMail list that is also joined and a MyWebSpace shared folder that is also joined, etc.)

Academic Calendar EBO (Gap)

Note: this is very general information that covers dates applicable to the primary careers. More specific date information relates to the class and term.

Note: this EBO is incomplete but has content that we feel may be useful.

  • Use Case 1: Ensure class activities don't conflict with holidays or commencement
  • Use Case 2: Instructor using syllabus-builder gets this information automatically populated into her syllabus
  • Use Case 3: Display the information in moodle so that the student can see relavent dates

Academic Calendar

Summary Period (equivalent to final exam period)

Exam Dates


Study Dates

Commencement Date and Time

Ceremonies for different populations (these populations are not necessarily carreer-related

Instructor EBO GAP or from Multiple Sources

Note: With the exception of emplid, information comes from non-ISIS sources. This may mean that this would not be part of instructor core but might come from some other service (e.g., UDS service)

Note: this is only for instructors, not for advisors who are not instructors

Instructor (Bio/Demo about the instructor)

Name (L,F, MI)(carried by ISIS)

Title (HR determined e.g., emeritus, advisor-only, professor, lecturer, TA)
Is always current title


Office Address


Contact Info = email

Teaching Subject(s) (used to disambiguate same name)
Note: Teaching subject = subject core defined in subject EBO
This will return all teaching subjects for which the person was the instructor of record within the past nine terms.

Note instructor type is maintained in the class EBOs and is not carried here

Instructor Org we won't use this

  • Hiring org. 
  • Responsible entity for creating appointment Unclear how academic org and UDDS apply and relate to each other
  • sketchy  approx equal to best udds
  • Unclear why we are pulling this information.  Probably required by ISIS
  • We are probably not using it to its fullest potential.
  • Used to disambiguate instructors with duplicate names

Academic Org (sometimes called teaching org)

  • School college level or subject level
  • is the academic version of the UDDS
  • One can determine acad org from looking at subject.  One cannot navigate the other way.
  • Contains subject and school/college values
  • E = College of engineering
  • E0435 = Biomed Engineering
  • Used in security (access control);
  • One does not get dept from acad org

Academic Org

Org value


UDDS (short desc)

  • Subject Org
    • Tied to a course
    • Not the same as a dept
    • sometimes depts are the same as subject
  • UDDS Org
    • Dept lives here
  • Financial Org

Advisor EBO (out of scope)


  1. There are several org structures with no enterprise-level alignment nor guidance which to use.  Further there are ties among them that are not well documented.  This is a gap that will require attention (out of scope for this).  There is discussion currently on this in DEM.   Note: We have yet to define what is the role of academic org in the institution (6/24/09)
    1. Recommend that we develop use cases that engage the intersection of these.  e.g., security
    2. Recommend a best practices document on which to org to use for a particular business process
    3. Recommend a mapping among orgs

It is unclear why we use Instructor Org instead of subject.

  1. This issue relates to the org issue above.  There may be a business need to capture the instructure's org (6/8/09)
  2. Recommend best practices statement regarding appropriate use.  Is it appropriate to use UDDS?
  3. Possibly should be revisited after UDDS/HRS work is completed.
  4. Instructor Org is required by ISIS corresponding to the security set up for assigning instructor to classes.
    #Because this is a required field, it has been populated but without sufficient consistency or appropriate thought to its best use.
  1. Archival EBOs out of scope for this project, but note that this is a GAP. (6/24/09)
  2. Business Process gap: managing instructor title/type (6/8/09)
  3. 6/10/09 Clarification/Definition of instructor roles
    1. One who is attached to a current class (i.e. in which today falls)? One who is attached to a class in the bracketing three terms?  One who has a current appointment?  
      1. Instructor of record is an instructor attached to a class in one of the three terms
      2. Current instructor is an instructor attached to a class for the current term (in which today falls)
      3. Eligible instructor (who one will see in the EBO) anyone who has been an instructor of record in the last nine terms.
  4. 6/10/09 GAP.  Somewhat related to the Instructor role above, we need to establish an enterprise definition of instructor types: who is a TA, lecturer, emeritus, resident assistant etc.  There is no way we can fetch "TA" from UDS.  There is a need for that in our EBOs, for D2L and Moodle.   It would be ideal to have those sourced in the HR system.   There are two perspectives for defining type/role: the employment status and the class role.    Person has TA status in HR but functions as primary instructor in Spanish 101.   Proposed Action: this is an enterprise/idm gap that should be addressed by a follow-on team.   Send to IMLG.  Action Karen draft problem statement.

Some example Use Cases

Bookstore gets list of all Textbooks

The bookstore gets a list of all textbooks for an upcoming term. They review the list to see which of them they might want to follow-up on.

Variation: Bookstore gets a list of all Textbooks by Class with Enrollment Numbers.

Get a list of all Courses for a given Subject

Get a list of all Courses for a Subject (including Cross-Listed and Meets-With Courses?)

Get a list of all Cross-Listed Courses for a Subject
Instructor sees a list of all of their Classes

Variation: Instructor sees a list of all of their Classes and the Enrolled Students

Student sees a list of the Classes they are enrolled in currently
Class Scheduler finds Sections that are close to each other (physically)
WisCal displays the schedule of Classes for a given Student or Instructor
Instructor emails all Students in a Section
Student gets door access to a lab space for a Lab Class
Student or Instructor sees a list of Exam Dates, Exam Times, Building and Room

Variation: Student or Instructor sees a list of Course Dates, Course Times, Building and Room(s)

Student looks for an Instructor who taught in a given Subject
  • No labels


  1. Note: Any Term Based EBO is only for published Terms. Published Term means that the Term is finalized and will be placed on the schedule of classes.

    Course EBO - does the Course EBO need to be termified. If the Course EBO changes, the Status Effective Date/Term will change. If the course was going to change next term, you might need to display the current information for this term but also let people know what will happen next term (say the GEBLCs are going to change next term).

    Subject EBO: Long Name, Short Name, Code, Effective Date

  2. RE: Organizations

    Are Departments a Financial Organization (on this campus) or an HR Organization or both?
    Subjects do not map to departments directly. There may be overlap and some mapping but they may also be completely independent. Are they completely independent of both the financial org structure and the HR org structure?
    If there is a true "Academic Organization Structure", what are the elements of the structure - Majors, Subjects, Certificates...?

  3. EBO whiteboard, 9-March-2009

    Enterprise Business Object

    Business Process


    TA enters grades


    Instructor submits grades



    Flow chart above is to document current state, that becomes input in input-action-output table

    course -> course roster -> grade roster

    BP-centric views; EBO-centric views

    current vs. future for state-flow, etc.

    • ent. name for ebo
    • definition (in business terms)
    • related ebos with state changes
    • future interfaces

    Will we need static representations of the objects (ER diagrams)? there's a risk that the developer's ER model may differ.

  4. In the curricular EBO's we have session as part of the Class Core.   There has been a web service request for sessions in a term and the begin and end dates.   Does session need to be an EBO and if so, should a session description be included in the EBO along with the session code, begin date and end date?

  5. Need to include waitlist elements in EBO (new RO project).