Skip to content

Instantly share code, notes, and snippets.

@codykrieger
Created April 3, 2012 18:17
Show Gist options
  • Save codykrieger/2294365 to your computer and use it in GitHub Desktop.
Save codykrieger/2294365 to your computer and use it in GitHub Desktop.
Open Letter: Thoughts on GeneSIS/RIT Enrollment

Thoughts on GeneSIS

Introduction.

Hi,

My name is Cody Krieger. I'm an undergraduate student studying Software Engineering here at RIT, and I have some serious concerns about the new RIT Enrollment system.

After taking a good look at the new search functionality, and browsing through the Enrollment "marketing" site, it is clear that GeneSIS is headed in the wrong direction at high velocity.

Enrollment appointments.

I think we can all agree that the current SIS does not meet the needs of the students and the faculty. It has failed to provide a consistent, pleasant experience during registration for as long as anyone can remember. But instituting an artificial capacity cap on the new Enrollment system is most definitely not the right answer - the capacity issues that SIS currently experiences are the result of poor engineering and age, not an extreme number of students overloading the system. The new system could easily be load balanced by throwing an NGINX or HAProxy instance in front of the application servers. Companies like One Kings Lane (and many, many others) handle millions of customers concurrently, with very few servers on hand. It is not unreasonable to suggest that this system should be able to support a measly couple thousand concurrent students.

Keeping all of that in mind, the 150 student "enrollment appointments" are completely unfair to students. Instead of being a race to register for the most popular/required courses, if you're one of the unlucky ones to get stuck in the last group of 150 students to be let in, you might not be able to register for any of your desired courses. Who gets to choose which group of 150 a particular student fits into? Even if it's random, it's still extremely unfair, because your course registration fate is not in your own hands. You're at the mercy of the system.

User interface and usability.

There are also many, many problems with the UI of the search functionality. If the rest of the new Enrollment system is anything like the search UI, then there is no doubt in my mind that we're absolutely headed in the wrong direction. I've compiled a list of specific grievances below.

  • The UI for the search tool is really convoluted. There are far too many fields, some of which have really non-obvious names.

  • The default text field when you visit the search page is titled "Course Attribute." That's not immediately understandable, and is detrimental to the overall quality of the user experience. Google has one big search box for a reason: usability. It's unbelievably simple to search Google, and 99% of the time, their advanced search functionality is completely unnecessary. The same thing applies here.

  • Clicking the "select subject" button takes you to a separate page. This can easily be handled using modern AJAXy techniques, but like much of the rest of the search form, it's unnecessary. More on that below.

  • The error messages that appear in modal dialog boxes are really user-unfriendly. Example: "Invalid value -- press the prompt button or hyperlink for a list of valid values (15,11). The value entered in the field does not match one of the allowable values. You can see the allowable values by pressing the Prompt button or hyperlink." First of all, where are the prompt buttons/hyperlinks it mentions? Since this shows up in a modal dialog, there is little context as to what field this error is associated with - error messages do not belong in modal dialogs. Second, nobody wants to read error messages like that. They should be simple, concise, easily understandable, and provided in context. The quoted error message meets exactly zero of the aforementioned goals.

  • A default font size of 10 pixels is an unwise choice. It's far too small, and is potentially hard on the eyes. It shouldn't be necessary to increase the font size or zoom level in your browser in order to read text in the Enrollment application or its associated search functionality. This may be a symptom of having too much information on every page, and is a major reason to overhaul the UI entirely. This project desperately needs a UI designer who is well-versed in modern typography and web standards.

  • There are 43 HTML tables present on the search page. There's also no DOCTYPE. These are key indicators that the code was written in such a way that it will be very difficult to maintain, should customizations need to be made. This also makes it clear that there was a distinct lack of standards compliance involved in engineering the PeopleSoft-based GeneSIS.

The ideal solution.

By default, what you should see when attempting to search for a course is a single search box. It should have intelligent autocomplete functionality, so that every other field in the search form is unnecessary.

It is not only possible, but fairly simple, to implement search functionality with intelligent autocomplete with an indexing tool called elasticsearch. Here's a wonderful example of what it could look like. Autocompleted course search has even been done before with RIT Intersect, and is a great step in the right direction. What we need is a pleasant, Google-like experience for course search, not a frustrating experience with an extremely counterintuitive form.

Given the opportunity to do GeneSIS right, it would be a major step forward for RIT, and would be the guiding beacon for the semester conversion. This, a far cry from the current implementation of GeneSIS, is what RIT, its students, and its faculty need.

The bottom line.

Among the GeneSIS guiding principles is "Strive for little to no customizations. We will reengineer our processes to take advantage of the built-in 'best practices.'" That's an admirable goal, but there seems to be a distinct lack of "best practices" inherent in the PeopleSoft-based solution that is GeneSIS. One of the guiding principles also states, "Processes will be designed around student success, transformation, and institutional effectiveness…" This is patently false. The PeopleSoft UI is the perfect counterexample of the effectiveness and success that GeneSIS promises to provide.

RIT desperately needs a new system to replace SIS. However, the GeneSIS project is an unacceptable replacement, and represents several large steps in the wrong direction. It is extremely frustrating to see that so many millions of dollars (of students' tuition money, no less) were spent on an "enterprise" system that is not getting the job done, and will continue to be a major source of frustration for students and faculty alike for years to come.

Even more disappointing is the fact that the Software Engineering, Computer Science, and Information Technology majors weren't approached with the possibility of creating and maintaining this new system. Many students, myself included, are more than willing to work with RIT to create and maintain the solution that best fits our needs, and provides a consistent and pleasant user experience to boot. The innovative potential inherent in RIT's student population can and should be used for the good of the university.

On behalf of the RIT student population, I urge you to seriously reconsider the deployment of this new system. To these ends, I would be more than happy to discuss these points in greater detail with anyone who is willing to listen. I think I speak for all of us at RIT when I say that we have nothing but the university's best interests in mind. Please don't hesitate to contact me with any questions or concerns.

Regards,
Cody Krieger

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment