Dissecting  Aeries Infrastructure, Data Design, & Thinking About Future Possibilities

Time Allotment:

120 Minutes?

Expected Outcomes:

Upon completing this Aeries conference session, attendees should be familiar with:

  • A deeper understanding of Aeries database structure.
  • Ideas about how to capitalize upon open ended architecture elements and grow Aeries to fit your needs
  • Ability to move forward in growing Aeries to suit your needs with methods within your skill set.

Session Outline

Base Information:

  • Aeries uses Microsoft SQL Server (MSSQL) as its Relational Database Management System (RDBMS)
  • The predominant application interface of Aeries is our web application.
  • Aeries provides granular form based permissions for users including groups and inheritance from group affiliation.
  • Aeries has an API available for integration needs for vendors that have endeavored to use it. We also have a OneRoster API and are developing integration with EdFi.
  • Aeries has many forms to provide much convenience, yet the majority of fields do not have fixed choices for codes providing a great openness to have Aeries fulfill your unique needs.
  • Even though we have many forms and reports tailored to meet the needs and obligations many will face, we have Analytics, Custom Reports, and a flexible and simplified query language available to pull data out in many ways.

Opening up the Aeries Database:

  • Table and Field Names
  • Relationships and Normalization
  • Indexes, Stored Procedures and Views

Source Code Philosophies:

  • Multi-Tier Architecture
  • Technology Choices and Options
  • Home-Grown Entity Framework

Why Aeries is so Fast:

  • Microsoft Performance Lab
  • By having the Aeries code do the work on the web servers, immense concurrency can be achieved with no locks in SQL
  • Web Servers can be added easier than making a SQL Server faster by adding resources
  • Heavy memory and processor usage on web servers, means lower costs and greater scalability of your SQL server.

Extensibility Thoughts:

  • Does a place already exist for the new data you wish to collect? - No need to customize!
  • Stop trying to make paper forms inside a relational-database-backed software system! A form has redundant information like demographics you already have. So you need only collect the new elements on a paper form.
  • Does a place now exist for what you were previously collecting in a custom way? - Moving it to where Aeries can now hold such data may provide a better ongoing solution.
  • Have you populated sufficient code choices for your tasks? - Aeries is growing to have more default code sets you can conveniently import as a starting point example.
  • Supplemental (SUP) or District Supplemental (DSD) can be an easy place to add fields to collect data not already having another suitable place.
  • Custom Tables/Views can collect more details with their own unique ability to secure them. These also have the ability to hold many rows instead of a mere one to one relationship.

Our user's voice is an immense help to the Design and Growth of Aeries!

So you want to make your own forms or custom reports:

  • It may be a good to pitch your idea as a Programming Request before making your own custom. After all, what benefits you may also be useful for others.
  • If you have the skill to use Visual Studio and make changes to existing forms or create new ones, you may do so using our open source code. It would be crucial to document your customs and have more than one person at your organization capable of maintaining and applying those changes to each new version you place in production.
  • If you wish to make your own custom report using the integrated Aeries Reporting Service, you can acquire your own copy of Active Reports by GrapeCity to do so. This also requires your skills being able to grow to do this. The same concept of having more than one individual capable of backing you up in applying these custom changes is still wise.
  • So you want to make a report with SQL Server Reporting Services? You can have (SSRS) running for your MSSQL Server Instance as it is included with that license. Such reports can be beneficial as they liely will require no change when Aeries is updated. Windows Active Directory is the default method of securing which users can run a certain SSRS report. Anonymous authentication for reports can also work securely by passing variables from Aeries to SSRS reports where they can be used in the where clause of the data set. This allows for a rudimentary SSO method where only a valid user can retrieve data from an SSRS report. A stale visit to the same URL would securely return nothing if you were not the correct individual. This is viable for hosted customers as well if they wish to deploy their own SSRS solution in house.