Family Engagement Setup Guide
- lee.morrow
- Stephen Fuqua
- Ian Christopher (Deactivated)
Use this Setup Guide to install and configure your Family Engagement solution using test data. At the end of this Setup Guide you'll have a test environment which closely mimics a production environment. This test environment allows administrators and stakeholders to test configuration changes being considered for the production environment without an impact on end-users. This test environment is separate and distinct from the sample environment created during the Quick Start.
Summary
More information
This Setup Guide builds on core skills and concepts in the Family Engagement Quick Start. We recommend running that Quick Start before moving on to this more detailed Setup Guide.
Solution Overview
In this section you'll get a general understanding of the components of your Family Engagement solution to provide context for completing the remainder of the Setup Guide.
The diagram below depicts the general architecture of your Family Engagement solution.
Once you complete this Setup Guide:
- Data from your Student Information System will flow into your Operational Data Store (ODS) via the ODS / API.
- Connections between your SIS and the ODS / API will be managed using the ODS / API Admin App.
- The Family Engagement Portal web application will connect directly to the Ed-Fi ODS database to retrieve the data and use it to generate your Family Engagement detailed views.
The core components, including web apps, are described in the Using the Family Engagement Solution section of the Family Engagement Quick Start.
The rest of this guide will instruct you on installing these components, connecting your SIS to the ODS via the ODS API, connecting the Family Engagement Portal application to your ODS, conforming your SIS data to the Ed-Fi Data Standard, and using the Family Portal to engage and support your family members, students, and staff with your data.
Step 1. Install
In this step you will install all of the components of the Ed-Fi solution summarized in the Quick Start section to start creating your district's test environment for your own Family Engagement solution. The installation requires Windows Server 2016-2019. If you would like additional information on what's required to install your solution please see general reference and starter kit specific requirements.
Install Microsoft SQL Server
- Starting with a base Windows Server 2019 image install Microsoft SQL Server Standard (or higher).
- Setup your organization's authentication with the database.
Install the Ed-Fi Solution
Install the Ed-Fi Solution Suite 3 v5.1.0 using the /wiki/spaces/TSINSTALL/overview.
- Review the Tech Suite Installer /wiki/spaces/TSINSTALL/pages/20055180 and /wiki/spaces/TSINSTALL/pages/20055184 details to determine if you want to use the EXE installer or Powershell scripts.
- Install the Ed-Fi components using the /wiki/spaces/TSINSTALL/pages/20055784of the installer.
Once completed you will have the following Ed-Fi components installed:
- ODS / API for Suite 3 v5.1.0
- Admin App v2.1
Install Microsoft Visual Studio
Today, the Family Engagement Portal solution requires Microsoft Visual Studio to build and deploy the web application. The Family Engagement Portal web application maintains a live connection to the ODS / API, but can be deployed to a separate Windows IIS-based web application server from the database server. You will be able to adjust those connection settings as needed during the deployment of the portal application.
You can download the appropriate version of Visual Studio here: https://visualstudio.microsoft.com/downloads/.
Reminder
If you do not have a Visual Studio license, you will automatically obtain a trial license for all of the features needed with the Community Edition. This trial license is valid for 30 days after you first launch and build the portal application.
You will only need a licensed copy of Visual Studio when you are building and deploying the Family Portal web application and will not need to keep a license after the application is deployed in production, unless you rebuild and re-deploy the application.
Step 2. Load Test Data
In this step you will load test data from your SIS to the ODS API so it can be available to the Family Engagement Portal web application.
Understand Dependencies When Loading Data
Before you can load your production or test data, your Ed-Fi ODS / API requires that each data item, whether submitted via API from your SIS or directly loaded in bulk to the ODS database, must be structurally and relationally consistent and syntactically valid according to the Ed-Fi Data Standard v3.x
Put simply, some data items must be loaded correctly before others can be loaded, and each data item must follow the rules of the standardized vocabulary to load correctly.
But don't panic! You won't have to load everything in your SIS to get started. Furthermore, acceptable defaults for some needed data are already loaded in your Ed-Fi ODS / API to ease your start. If your SIS is Ed-Fi-certified, it will already have tackled these load order dependencies and other requirements, and you won't have to worry about these details now. However, it is important to know the proper loading order for your data to minimize the frustration of tracking down potential errors during the loading process.
Provided below is a dependency graph for loading data into the ODS / API highlighted with the specific data needs for Family Engagement. The vertical path represents dependencies that must be satisfied as you move downward, while items in the same horizontal position can be loaded independently or simultaneously. The purple labels to the side describe key Ed-Fi concepts that may be new to you. Again, don't worry, you will learn more about these concepts as you continue in this Setup Guide.
Note that to get to the "green light" of successfully loaded student performance data, you must load the set of needed "reference" data described in this chart. The Family Engagement reference page details the minimal data requirements and the full data requirements to power the Family Engagement Portal. The minimal data set will allow parents and caregivers to login and view basic information about their student, like attendance, discipline, and GPA. The full data set will provide a richer, more comprehensive experience for parents and caregivers, including information such as student schedules, assignments, and the student's success team.
Next, we will configure your Ed-Fi ODS / API and SIS to communicate via the API.
Add Your Student Information System in the Admin App
- Follow the Admin App - Getting Started instructions to complete its initial configuration steps.
- Follow the Admin App - Next Steps to configure your first Vendor and Application entry for your Student Information System.
- Once you create an Application in the Admin App, you will store and use the generated "Key" and "Secret" in the next section.
- Note: Treat the Key and Secret as secure information for your organization (because it will control student data exchange from your SIS).
- Store it according to your local IT Security policy. Often this will be in a password keeper app, or on a secure file server, or similar method (check with your IT department).
- Note that other applications you may add over time, for example Assessment applications used in other starter kits, will each have their own "key" and "secret".
Deep dive
For additional information on the Ed-Fi Data standard and vendors who support it see the pages below.
Links:
More Information
If your SIS vendor is not Ed-Fi certified use the Vendor Request Form and we can help you make the ask of your vendor to support data interoperability and certify their product.
Configure Your Student Information System
Each SIS provider has its own vendor-specific configuration tool and steps to connect to the Ed-Fi API, perform basic data mapping, provide descriptors, and to enable you to begin loading data into your ODS API. You will connect your SIS to your ODS API using the key and secret you generated in the Admin App.
- Verify that your SIS supports Ed-Fi data interoperability, and is certified to use the ODS API to allow you to use this Family Engagement starter kit: Registry of Ed-Fi Certified Products - Student Information Systems API v3 Certification.
- Verify that your district is using the version of your SIS that the vendor certified.
- If you are not running the current certified version of your SIS (or newer), plan your update/upgrade to the certified version of your SIS.
- If your SIS is not listed as an Ed-Fi certified SIS, use the vendor request form to the right side of this page to get our help in making your ask and conveying your requirements of your vendor.
- Request Ed-Fi enablement and configuration from your SIS vendor's product support team.
- Log into your SIS vendor's customer support portal or knowledge base to find the most current help documentation to guide you in the SIS configuration steps.
- Follow your SIS vendor's configuration guide to configure the product to connect to your ODS API and prepare for loading your data.
See the General Reference page for a list of publicly known vendor configuration guides.
Map SIS Codes to the ODS API
- Once your SIS is configured to connect with the Ed-Fi API, the next step to getting your data to the ODS API is to map "code sets", or Descriptors, as they are known in the Ed-Fi data standard, from the data elements and codes used in your SIS to those you will use in the Ed-Fi ODS API. To do this:
- Refer to your SIS vendor configuration guide you used above to locate and use the data mapping tools in your SIS application.
- Proceed with your SIS vendor's data mapping instructions, referring to their configuration guide and the dependency chart provided above to work through the data mapping and loading in the right sequence.
- In the next step (3) of this setup guide, you will use these descriptors to understand how your data is displayed in the Family Engagement portal application.
- Review the Best Practices for Descriptors presentation if you would like more background explanation of descriptors and why they're relevant to your needs.
Need help?
Having difficulty configuring your SIS or mapping SIS codes? Reach out to an Ed-Fi Alliance representative for assistance.
- Ed-Fi Slack channel #starter-kits
- Open a ticket in Ed-Fi Tracker
Deep dive
For detailed information on the minimal and full data requirements to be able to power the Family Engagement Portal, see the data loading requirements linked below.
Step 3. Configure
In this step you will configure the application and settings to enable the data visualization capabilities of the Family Engagement Portal starter kit in your own test environment with your district's data.
Download, Build and Deploy the Family Engagement Portal Web Application From Visual Studio
Once you have installed Visual Studio, from the Windows Desktop of your installation environment follow these steps to configure and get the application running:
Download the Family Engagement Code
Use this link to download the code for the Family Engagement Portal: https://github.com/Ed-Fi-Exchange-OSS/Family-Engagement-Portal/archive/main.zip
Once you have downloaded it we recommend you unzip it to the following location:
C:\Ed-Fi\QuickStarts\FamilyEngagement\
Open Visual Studio, Configure the Application, and Run It
- Open the C:\Ed-Fi\QuickStarts\, then locate and open the FamilyEngagement folder
- Select and open this file in Visual Studio: Student1.ParentPortal.sln
If this is your first time launching Visual Studio, you will have some initial setup tasks outlined below:
- Select OK
- It is not necessary to login to the Visual Studio developer services to continue. Click on "Not now, maybe later."
- Choose the option of downloading the appropriate Microsoft .NET Targeting pack.
- Accept the defaults to install all of the needed Visual Studio build dependencies.
- Click Install.
- The Visual Studio installer will now download and apply those updates.
There is no need to watch the installer after you have clicked Install. However, this download and install process may take as much as an hour to complete depending on your internet bandwidth.
Please allow it to complete. - Visual Studio will finish launching once it has completed.
- Once the ParentPortal project is opened in Visual Studio, expand the Student1.ParentPortal.Web in the Solution Explorer on the left side.
- Open the Web.config file to modify the following settings:
- If you are using a remote database server, modify the connectionStrings section as appropriate.
- In the AppSettings section, adjust the following key values to fit your installation:
- application.mode. Set the value to production.
- image.provider. Leave default as "ConventionBasedImageProvider". You can also choose between the available providers: "DemoImageProvider", "BlobImageProvider", and "ConventionBasedImageProvider"
- ed-fi.version. Leave the default value of EdFi31. This works with all versions of 3.x including Suite 3 v5.1.0
- unread.message.alert.hour. Leave as the default value="16". This defines the time of the day the alerts will be sent out. 16 = 4pm.
- For SSO - Single Sign On select your provider: By default we have integrated with 4 SSO providers:
- Azure Ad (B2B or B2C)
- Google Apps (or Google Classroom)
- Microsoft 365
- To configure any of those make sure you set the visibility to true and fill in the appropriate parameters.
- For Azure tenant value = "[Enter your tenant name here e.g. contoso.onmicrosoft.com]"
- SSO is the URL to authenticate against.
- ClientId is the Id used to authenticate the client.
- Redirect URL is the registered URL used for redirection. For example: "http://localhost/Student1.ParentPortal.Web/".
- Token Validation URL is the URL that contains the valid signing keys to validate the JWT token.
- Email messaging parameters:
- feedback.emails. The email address to use when receiving feedback. For example: "dontreply@student1.org".
- messaging.email.defaultFromEmail is the default email to use when sending emails. For example: "dontreply@student1.org"
- messaging.email.server. The SMTP server to use to send emails. For example: "smtp.sendgrid.net".
- messaging.email.port. The SMTP Port to use for sending out emails. For example: "587".
- Translation API configuration. Set this value to your Azure Cognitive services api key and secret.
- translation.Name value="[AzureCognitiveUser]"
- translation.Key value="[AzureCognitiveKey]"
- Set the unique JWT signing parameters. In the application we have followed a security flow that exchanges the SSO token for an application specific token that contains all claims. To secure this token we recommend you update the following parameters:
- Jwt:Key value="REPLACEMEveryVerySecretKey"
- Jwt:Issuer value="[your domain for example:https://localhost/]"
- When scaling the application it is possible that the communications engine slows down. If this happens we recommend you scale the SignalR server form a local one to use the Azure provided service. For this you will need to switch the following parameters:
- signalr.env. The value="local" should be switched to "azure".
- Then, in the connection strings section, set <add name="Azure:SignalR:ConnectionString" connectionString="[AzureSignalRConnectionString]" /> to the signalr connection string.
- Cache is set to optimize the application. You can disable cache or enable cache and set the duration by modifying the following parameters:
- cache.on value="true"
- cache.timeInMinutes value="5"
- Push Notifications when mobile app has been deployed. Set the following parameters:
- notifications.ApiUrl value="[PushNotificationsURL]"
- notifications.Key value="[PushNotificationsKey]"
- notifications.SenderId value="[PushNotificationsSenderId]
- Save and close all files, then test the Web Application by by pressing the F5 key, or by clicking on the Run icon (we recommend you select the Chrome web browser to launch the application):
- The Family Engagement Portal should then launch and open your web browser to the Portal Login page:
- When configured correctly, you will be able to log in successfully if you have an appropriate staff or parent test login with an email address that matches the test data in your Ed-Fi ODS / API.
- Use SQL Server Management Studio or your preferred database tool to check what email addresses are present in your data by querying either the StaffElectronicMail table or ParentElectronicMail table in the EdFi_Ods database that you set up in the connection string.
- Close the web browser to return to the project in Visual Studio and stop the test.
- We will explore more of the configuration details in the steps below.
- Once you've completed testing and reconfiguring for your needs, you will deploy the application to your test environments web servers.
- If you are familiar with .NET web apps, refer to the Microsoft guide to publish web apps from Visual Studio to your IIS web server environment.
- Alternatively, the portal app includes a deployment script to simplify that process, look in the C:\Ed-Fi\QuickStarts\FamilyEngagement directory for the deploy.cmd file which can be used with and Azure appservice and Kudu.
- Note that you can also find these project files and additional help documentation in the Family Engagement Portal Repository on GitHub.
Note that this guide does not cover the detailed deployment of .NET web applications. Refer to the support documentation from Microsoft for more information.
As you dig into the details and configure this starter kit for your organization's specific needs, you'll build your understanding of these key skills:
- Working with Descriptors
- Connecting data in the ODS / API with portal users
Let's check your understanding of those two topics now, skip to the next section if you are already comfortable with them.
Working With Descriptors
As you worked through the codes-to-descriptors mapping in the previous step, you learned the scope of descriptors and their importance to your data. Descriptors help standardize the vocabulary of education data across your organization and across all education-connected organizations, from students to staff to agencies to vendors. You can think of descriptors as "options" for particular types of data, similar to how "codes" work in many education tools — but focused on complete understanding of the data rather than simplified codes. Typical examples of descriptors are: KG for kindergarten, 01 for 1st Grade, and the sets of absence codes used in marking attendance each day/period for students.
To maintain our data standard, it is important to keep the set of descriptors as consistent as possible across all implementations. However, you will find that different agencies and organizations have chosen different "code sets", often for legal or historical reasons. Because of this differentiation, it may be necessary for you to look closely at the SQL queries in this starter kit and adjust them to match your organization's specific needs (these queries were built and used in other LEAs' projects and shared for your use and adaptation).
Below, you'll look at where and how those descriptors are used in the calculations and visualizations of the Family Engagement Portal starter kit and apply that knowledge to make this starter kit work for your organization and prepare you for the next data challenge.
Linking Student, Parent/Guardian, and Staff Data to the Family Engagement Portal
You are beginning to understand the size, shape, and characteristics of your data as it is standardized and loaded into your Ed-Fi environment. The next step is to learn how that data is assembled, consumed, aggregated, or generalized in the Family Engagement Portal application, and therefore, how you can apply your organization's needs to this solution.
To help you understand where and how your core data fits to the data standard, and thus how it is landing in the Ed-Fi ODS / API, take a look at the Overview Diagrams from the Ed-Fi Unifying Data Model, the detailed documentation and model of the Ed-Fi Data Standard, below:
- Student Academic Record (Staff & Student Section Associations and Grades)
- Student Attendance (Student School & Section Attendance )
- Student Identification and Demographics (Student Parent Associations)
The ODS / API is the physical instantiation of the UDM's logical model. You don't need to learn all of the details of the standard yet, but referring to the UDM's logical model may help you "see the big picture" which in turn can help you learn how to find data items and understand the structure of your standardized data .
As mentioned above, the portal application reads and gathers data from the ODS (or your read-only copy of the ODS) in real-time for display or delivery to users of the portal. We will look at configuration files which tune the database queries and use that tuning to understand more about where your data lands in the Ed-Fi ODS and how we can use it.
You can also use the SQL Server Management Studio, the SQL command line, or your preferred data tool for taking a closer look at the data used.
Configuring Key Metric Thresholds in the Family Engagement Portal
There are certain metric thresholds that can be customized easily in this application. To customize them open Visual Studio, then open the Student1.ParentPortal.Web project and locate the customizableParameters31.json file. The following sections detail how you will use the configuration items in this file to make this Family Engagement Portal solution fit your needs.
Attendance Metrics
Purpose: In addition to providing a quick reference for a student's current attendance, the portal app provides a set of configurable rules to track and notify family members or staff of a student's attendance changes.
Configure: The rules for attendance tracking are the section labeled attendance in the configuration file.
1. ADA (Average Daily Attendance of student for the school)
Purpose: The ADA subsection provides thresholds and user-friendly mappings of calculated attendance metrics which display in the portal. These metrics include: tardy, excused absence, and unexcused absence.
Details: Each metric has four thresholdRules to map total occurrences of each to a particular interpretation bucket: Great, Good, Warning, and Bad. The rules can be tuned for each by adjusting the value and operator accordingly.
"unexcused": { "maxAbsencesCountThreshold": 10, // This threshold indicates when a parent will receive an alert. "thresholdRules": [ { "interpretation": "great", "operator": "==", "value": 0 }, ...
2. PeriodLevelAttendance (PLA or class section attendance)
Purpose: The PLA subsection, similar to the ADA, provides thresholds and user-friendly mappings of section attendance metrics which display in the portal for each of the students' classes. These metrics include: tardy, excused absence, and unexcused absence
Details: Each metric has 4 thresholdRules to map total occurrences of each to a particular interpretation bucket: Great, Good, Warning, and Bad. The rules can be tuned for each by adjusting the value and operator accordingly.
"tardy": { "maxAbsencesCountThreshold": 10, "thresholdRules": [ { "interpretation": "great", "operator": "==", "value": 0 }, ...
Behavior Metrics
Purpose: The behavior section provides rules and mappings for student behavioral incidents, and linkage to external behavior tracking tools.
Configure: In the behavior section of the configuration file, the ThresholdRules subsection, similar to the attendance examples, can be configured by adjusting the value and operator items as needed. You can configure the link to an external behavior system in the linkToSystemWithDetails subsection.
"behavior": { "maxDisciplineIncidentsCountThreshold": 3, "linkToSystemWithDetails": { "title": "Hero K12", "linkText": "Hero", "url": "https://access.heropowered-stg.com/sso/parent/login" }, "thresholdRules": [ { "interpretation": "great", "operator": "<=", "value": 0 }, ...
Student Grades and Averages Data
Purpose: The Grades section brings data from students' gradebook results to the portal, including GPA, course averages, assignments, and linkage to other systems with greater detail such as a SIS family portal.
Configure: Configure these rules for student grades and linkages to external systems in the "Grades" section of the configuration file.
1. GPA (overall grade point average)
Purpose: Similar to the attendance examples above, this subsection provides thresholds and user-friendly mappings of grade point average for display in the portal for each of the students' classes, including a comparison to the national average.
Details: You can configure the ranges for comparative analysis and classification of a student's GPA using the value and operator settings for each of three classification buckets: Good, Warning, and Bad.
"courseGrades": { "linkToSystemWithDetails": { "title": "HAC - Detail", "linkText": "Skyward Family Access", "url": "https://skyward.iscorp.com/YESPrepTXStuSTS/Session/Signin" }, "gpa": { "nationalAverage": 3.38, "thresholdRules": [ { "interpretation": "good", "operator": ">=", "value": 3.0 }, ...
2. courseAverage (gradebook)
Purpose: This subsection provides thresholds and user-friendly mappings of students' performance in each of their Sections (classes).
Details: Configure the ranges for classification of a student's performance using the value and operator settings for each of four classification buckets: Great, Good, Warning, and Bad.
"courseAverage": { "thresholdRules": [ { "interpretation": "great", "operator": ">=", "value": 90 }, ...
Student Assignments (coursework)
Purpose: The assignments section provides rules and mappings for student performance with assignments in each of their sections (classes). You can also configure linkage to external tracking tools.
Configure: In the configuration file, the ThresholdRules subsection, similar to the attendance examples, can be configured by adjusting the value and operator items as needed. You can configure the link to an external behavior system in the linkToSystemWithDetails subsection.
"assignments": { "maxAssigmentsCountThreshold": 3, "linkToSystemWithDetails": { "title": "HAC - Detail", "linkText": "Skyward Family Access", "url": "https://skyward.iscorp.com/YESPrepTXStuSTS/Session/Signin" }, "thresholdRules": [ { "interpretation": "great", "operator": "==", "value": 0 }, ...
Student Graduation Readiness
Purpose: The graduationReadiness section indicates a positive or negative interpretation of a student as on track to graduate.
Configure: In the configuration file, the ThresholdRules subsection, similar to above examples, can be configured by adjusting the value and operator items as needed.
"graduationReadiness": { "thresholdRules": [ { "interpretation": "good", "operator": "==", "value": true }, { "interpretation": "bad", "operator": "==", "value": false } ] }, ...
Student Assessments
Purpose: The assessments section allows you to configure identifiers, friendly name mappings, scoring types, and external links for each of the key assessment types displayed in the portal app.
Configure: In the assessment section of the configuration file, you will see a list of the named assessment types along with relevant info and configuration details. You can add or modify these examples to match the assessment instruments your organization uses.
Details: Each assessment has a a title, description, identifiers from the ODS / API, reporting/scoring type values e.g. scale score or raw score, and links to the specific reporting tool for that assessment provider.
"assessments": [ { "title": "STAAR", // EoC -- STAAR Algebra II, STAAR English III "assessmentIdentifiers": [ "STAAR English I", "STAAR Algebra I", "STAAR English II", "STAAR Biology", "STAAR U.S. History" ], "assessmentReportingMethodTypeDescriptor": "Scale score", "shortDescription": "State of Texas Assessments of Academic Readiness", "externalLink": "https://txparentportal.emetric.net/login" }, ...
Descriptors Configuration
Purpose: The descriptors section allows for fine tuning of mappings and displayed values for Descriptors. This allows you to match values from your data, if they differ from defaults, to what is displayed on the portal.
Configure: The descriptors configuration enables you to manage the mappings and included data points for each of the student metrics used in the portal. For example, you can include or remove gradebook types from the assignments category, or change the valid types for the "parent" role used by the portal, or modify the grading period types as appropriate for your school.
Review the example here for more detail.
"descriptors": { "excusedAbsenceDescriptorCodeValue": "Excused Absence", // "AE", "unexcusedAbsenceDescriptorCodeValue": "Unexcused Absence", // "AU", "tardyDescriptorCodeValue": "Tardy", // "T", "absentDescriptorCodeValue": "Absent", // "A", "gradeBookMissingAssignmentTypeDescriptors": [ "HMWK" ], //["Assignment","Homework"], [895,897] "gradeTypeGradingPeriodDescriptor": "Grading Period", // 928 "gradeTypeSemesterDescriptor": "Semester", // 926 "gradeTypeExamDescriptor": "Exam", "gradeTypeFinalDescriptor": "Final", // 925 "validParentDescriptors": [ "Father", "Mother", "Step", "Guardian", "Foster", "GrandParent" ], //[ "F", "FP", "G", "M", "SP", "GP" ] "validCampusLeaderDescriptors": [ "Assistant Principal", "Counselor", "Principal", "School Administrator", "School Leader" ], "schoolGradingPeriodDescriptors": [ "First Six Weeks", "Second Six Weeks", "Third Six Weeks", "Fourth Six Weeks", "Fifth Six Weeks", "Sixth Six Weeks" ], // They have to be in order [ "A1", "A2", "A3", "A4", "A5", "A6" ] "examGradingPeriods": [ "A3", "A6" ], "disciplineIncidentDescriptor": "Perpetrator", "missingAssignmentLetterGrade": "M", "validEmailTypeDescriptors": [ "Home/Personal" ] },
Update and Publish Portal Application
Now that you have customized and configured the application to fit your needs its time to deploy it to your server.
Updating your Ed-Fi ODS Database
The Family Engagement Portal utilizes the Ed-Fi ODS database directly and it requires a few database objects to work.
Follow these steps to get them up and running:
- Open SSMS - SQL Server Management Studio and connect to the Database server where you installed the Ed-Fi ODS database on.
- Right click the database and select "New Query"
- Head over to the location where we unzipped the solution: C:\Ed-Fi\QuickStarts\FamilyEngagement\ and navigate to the edfi31 folder \ParentPortal-main\Student1.ParentPortal.Data\Scripts\edFi31
- This folder contains the SQL scripts that you will need to execute against your Ed-Fi ODS database.
- Execute Only these files in this order:
- 1CreateParentPortalSupportingDatabaseSchema.sql
- 2ODSExtensions.sql
- 3StudentDetails.sql
- Execute Only these files in this order:
Once done you can expand your Ed-Fi ODS Database and see the table structures that were created.
Deploying from Visual Studio
To deploy the application from visual studio we recommend doing the following:
- Open the application solution in Visual Studio.
- Ensure you have configured web.config connection strings and application settings to fit your need.
- Ensure that you ran the application locally and that everything works. (pressing F5 in visual studio will run the application)
- If everything is working from your local computer then right click the Student1.ParentPortal.Web project and select Publish.
- Once the Publish dialog opens select the "Folder" option and click the "Next" button.
- For the folder location create a folder in C:\Ed-Fi\QuickStarts\FamilyEngagement\Binaries and use it. Then click on the "Finish" button.
- When the modal closes ensure all details look good and then proceed to click the "Publish" button.
- After a couple of minutes you should see the Output window at the bottom show a message that
- Navigate to the folder you deployed to and copy those binaries to your web server. At this point we recommend you follow your IT's department policies for deploying web applications. For the purpose of this guide we are going to go with the defaults that are usually used deploying web applications.
- In your web server navigate to C:\Inetpub\wwwroot and create a folder FamilyEngagement.
- Copy all the binaries that were generated from Visual Studio to that folder.
- Do a last pass at the Web.Config to ensure all connection strings and app settings look good.
- Open the server's IIS - Internet Information Services and locate the "FamilyEngagement" folder under the "Default Web Site".
- Right click it and select the option that says "Convert to Application". A popup will show up. Accept the defaults and click the "Ok" button.
- At this point we recommend you test the application on the local server. To do this right-click the newly created application and select Manage Application => Browse. This will open a browser on the local server and load you the web application.
You may also refer to the Microsoft guide to publish web apps from Visual Studio to your IIS web server environment.
Step 4. Rollout
Now that you have created a test environment for your Family Engagement Portal solution with your district's own data, you can use it to:
- Verify functionality and support from key systems
- Understand what resources and technical skills you need to support it
- Test this solution with your key audience in a pilot
- Plan and conduct a production rollout of your solution
Rollout Planning
It is recommended that your rollout planning follow the general steps outlined below. All of these steps are are covered in more detail in the Production Rollout Checklist.
1. Plan | 2. Prepare | 3. Rollout | 4. Improve |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tips for a Successful Production Rollout
Engage your leadership and key stakeholders
- Clearly define the roles and responsibilities of your team members as early in the process as possible.
Foster and support "Power Users"
- Your pilot audience should include "power users" from your organization who will be using your solution most heavily.
- Encourage power users to form mentoring relationships with each other and other users, and give them strong support.
Use the "Train the Trainer" model
- Leverage your power users to guide training sessions and develop supplemental content to assist others with using the solution.
- Keep training focused on specific use cases that deliver a clear value to users. Don't try to cover every topic.
Build data literacy and governance
- Do not treat data governance as a separate project or dependency to fulfill in advance.
- Effective data governance processes don't operate in a vacuum, they need real examples that people can buy into.
- Build your process by answering questions about data ownership and responsibility.
Promote your Minimum Viable Product (MVP) approach
- Don't get bogged down in perfection or questions of data ownership.
- Show stakeholders that their contributions are needed.
More Information
Once you have your own test data loaded, you no longer need a demonstration environment with sample data. You can deploy your new prototype against your existing Ed-Fi test environment.
Next Steps
Prepare for Production
- Take a deep dive on security with the Platform Dev. Guide - Security.
- Review the technology and skill requirements to choose your deployment team.
Take a Deeper Dive Into the Technology
- Technical Documentation for the Ed-Fi ODS / API Suite 3 Version 5.1.0.
- Ed-Fi Data Standard v3.2.
- Source files for the Family Engagement Portal solution.
More Information
By completing the Family Engagement starter kit you have already accomplished a large portion of the work required for other Ed-Fi solutions. To finish setting up those solutions see their Starter Kit on the Starter Kit Home Page.
Link: Starter Kits