Skip Ribbon Commands
Skip to main content
Skip Navigation LinksHome What's New B2B Blog BlogPost

  • An Almost Codeless School Registration Application
    10 June 2015
    11:03 AM

    Category:Application Development; Portals and Collaboration
    Post By:David Frankland

    There are plenty of canned applications available to handle the student registration application processes for public school systems, and many can be extended and customized to meet the needs of the system.  But, when a technical high school explained their special requirements to the IT department of one of our local school systems, it was obvious that customizing the canned solution would be prohibitively expensive.  The technical high school struggled to manually handle the annual registration of roughly two thousand students, using spreadsheets and various reviews of each student’s past performance using disparate systems.  The process was painful, and something needed to be done.

    As I walked the school throug​​h their pain points, documented their registration process in Visio, and began to document all of the information that was required to admit a student, the registrar produced an InfoPath form that she had begun to develop.  It looked great, and she had put a lot of thought into it.  I asked, “What if I could allow students to fill this out as a web form, and then when you reviewed the form, I could populate it with the various attendance data, earned credits by subject, grade averages, discipline incidence, etc.?”  Everyone in the meeting literally lit up at the idea!

    With the excellent​​ help of a data analyst in the schools system’s IT department, within days I had eleven stored procedures that produced all of the data that was involved in the decision process.  There is a maximum of five roles involved, including ESOL Teachers, Special Needs Teachers, Counselors, the Assistant Principal, and the Registrar, so it was fairly easy customizing the form to display only the appropriate information for each role.  Finally, to make the whole process work, I developed a SharePoint Designer workflow to change the status of the process, based on data in the form, and to send descriptive emails with links to the relevant form to review to each of the roles, as their involvement was nee​​​​ded.

    InfoPath.png   SharePoint_Designer.png

    Other than a few dozen lines of C# to help with the student data fetchi​​ng, the entire solution was built using out-of-the-box InfoPath and SharePoint Designer features, which will make future updates easy for the IT department.  The managed code shouldn’t really change over time.

    When we showed the demonstration a couple of weeks after that first meeting, you could feel the joy in the room!  In the first weeks of school registration applications, some “nice-to-have” features were identified and the requests were quickly approved, so we were able to further improve the process.  Not all project requirements are met so nicely into the out-of-the box features of InfoPath and SharePoint, but when they do, like this one did, the return on investment can be dramatic.



  • Single Sign-On: ADFS or DirSync or FIM or EMS or not at all?
    13 May 2015
    2:47 PM

    Category:Infrastructure and Messaging; Cloud Services; Portals and Collaboration; Enterprise Mobility Suite; Application Development
    Post By:Cherie Knight-Batey

    Single Sign-On (SSO) can be achieved in multiple ways. In this blog, I will go over some of the most popular ways to achieve SSO. The four most popular ways users typically use SSO are: Active Directory Federation Services (ADFS), DirSync (with Password Sync), Forefront Identity Manager (FIM) and Enterprise Mobility Suite (EMS). As with most things in life, there certain advantages and disadvantages to each of these and usually there are one or two options that fit each need the best. Today, I will give a brief description and provide you with some of the benefits and drawbacks to each solution.

    ADFS
    ADFS with federated login provides, what is referred to as, true Single Sign-On with Office 365. I point this out because, other SSO options, like DirSync with Password Sync, only provides Same Sign-on. Same Sign-On means that the user will be prompted to re-enter their credentials when accessing Office 365, even if they have the same credentials.

    DirSync with Password Sync
    As mentioned above, DirSync with Password Sync provides Same Sign-On - where the user must re-enter their credentials even if they are the same. Since ADFS is not deployed in this scenario, DirSync is responsible for periodically synchronizing user profiles to Office 365; thus, there is no need to manually create users in the cloud directory.  

    FIM
    ForeFront Identity Manager (FIM), also known as Microsoft Identity Manager, uses Microsoft Enterprise Single Sign-On (ESSO) to provide an encrypted store for secondary credentials that a user may have to present to an application in order to be authenticated and authorized by that application. Additionally, FIM helps your organization ensure users have appropriate access to corporate information regardless of where that information is located—in your datacenter or in the cloud. FIM does this by providing self-service identity management, automated lifecycle management across heterogeneous platforms, rich policy framework for enforcing security policies, and detailed audit capabilities. 

    EMS
    Microsoft’s Enterprise Mobility Suite (EMS) centrally manages identities across your datacenter and the cloud, providing secure single sign-on to all of your applications. This is a cloud-based identity and access management solution on Azure Active Directory.


    ​Tool​Pros​Cons
    ​Active Directory Federation Services• ​Users logged in to a domain-joined machine do not have to re-enter their password when signing in to Office 365

    • Allows for Client Access Filtering (good for limiting access by remote or off-hour users)

    • No password hashes are synched to the cloud; all authentication is managed on-premises

    • Immediately block user access (i.e. when users leave the company)

    • Support for multi-factor authentication
    • ​Additional infrastructure required

    • Multiple points of failure

    • SSL Certificate from a public CA is needed and requires renewal 

    DirSync with Password Sync​• ​Easier and faster to implement and configure

    • Secure password hash-sync feature so that users don't have to enter a separate password
    ​• Automatic DirSync syncs occur every three hours; possible security-access issues

    • Does not provide true "Single Sign On" 

    ​Forefront Identity Manager​• End-User password reset

    • Common identity between applications and heterogeneous platforms

    • Custom solution - often complex and costly

    • Additional infrastructure required; ADFS is no longer required - can use Azure AD Sync Services
    ​Enterprise Mobility Suite
    ​• Create and manage a single-identity across your hybrid enterprise keeping users, groups and devices in sync

    • Enable application-access security by enforcing rules-based Multi-Factor Authentication for both on-premises and cloud applications

    • Self-service password reset and application access requests

    • Secure remote access to on-premises web apps

    • Greater security for mobile devices
            
    • Highly available​

    • Cost of individual options with the Enterprise Mobility Suite



  • Tips, Traps & Tricks of Migrating SharePoint Content to Office 365
    08 April 2015
    9:30 AM

    Category:Application Development; Portals and Collaboration; Cloud Services
    Post By:Tyler Bithell

    Office ​​365 adoption is increasing daily and​​ many organizations are seriously considering moving their SharePoint on-premises environments to SharePoint Online.​ Making such a move requires careful consideration and planning. This blog posts seeks to shed ​​light on some things that an organizat​​ion should look for when considering moving​ to the cloud.

    The first thing to consider is the current version of SharePoint that the organization is using. If using 2007 or 2010, a third party migration tool will be required in order to complete the migration. There are many tools to choose from and this decision should not be made without careful consideration. Beyond just cost, an organization is entrusting their content to the software provider. The most important thing to consider in this decision is the level of support that comes with the software. If a company isn’t able to offer 24/7 support and be prepared to go so far as to provide a software patch, you should seek a solution elsewhere. If the current version is 2013, a tool is still going to be required to move the data up to the cloud, and the same considerations should be taken as far as provider support. Get your arms around your content BEFORE you migrate.

    Ask yourselves these questions:

    • - Is it critical that this content be migrated?​​

    • - Does our information architecture need an overhaul?​

    This is also the perfect time to re-organize your content. If there is content you don’t need, trash it. If there are sites that are poorly organized, re-organize them. Just be sure not to do this in a vacuum though - be sure to involve your users early and often. Nothing kills user buy-in like a blanket decision made without the user.

    Over the years, many organizations have expanded SharePoint functionality via farm-deployed solutions. While those solutions are often very useful,​ they are not allowed in SharePoint Online. It is at this point, that an organization should evaluate the need for the solution.​

    During this evaluation, the following questions should be answered:
    • - ​Is this solution mission critical?

    • - Does “out of the box” SharePoint Online functionality replace the solution?

    • - Should we take this opportunity to redesign the solution?

    • - Is it possible to recreate this functionality via the Client Side Object model?

    • - Can we build an app for that?

    • - Is there a third party tool that fills this gap?

    • - Should we consider a hybrid deployment to keep this functionality?​​

    SP Online Migration.png

    Oftentimes, new functionality will replace the need for the solution or it will be possible to perform the same function via the Client Site Object Model. Third party tools are often another option as well. Each of these options will make the migration run more efficiently and should be strongly considered versus a hybrid deployment. If a hybrid deployment can be avoided then it should. And if it is unavoidable, then it should only be used as a bridge to a more permanent solution.

    ​Many organizations have customized the look and feel of their on-premises SharePoint environment. If the environment from which they are migrating is a version prior to 2013, the current look and feel will most likely not work and will need to be redesigned. However, if the current version is 2010, there is an option to avoid a visual upgrade but a lot of front-end functionality is lost if a visual upgrade is not done. While it is possible to customize your look in SharePoint Online, it has been recommended to avoid it when possible. Microsoft is making updates on a regular basis, but those updates won’t make it to your site if it is using a custom masterpage. ​Just remember, custom branding in SharePoint Online is possible and is often done, so if customizations are required for your organization, accommodations can be made​​.​​​


  • The Challenges of Being an Early Adopter: Part 3 - The Choices
    04 February 2015
    2:55 PM

    Category:Application Development; Portals and Collaboration
    Post By:Chelsea Stephens

    In the last part of this series, we are continuing the discussion of what we ran into developing one of the first apps for the new Microsoft App model. We began with an overview of the app created, The Quiz App, and then followed up with some of the hosting issues we ran into. The conclusion to this series will go over the final decisions we made and where we stand in the process.


    The Choices

    The SharePoint App model offers several hosting options which determine where the code runs. These can be in SharePoint, in the cloud, or a mix of SharePoint and cloud. Each option has its own set of constraints and strengths.  In addition, migrating from the auto-hosted or SharePoint-hosted models shifts the costs and resources of running the app from the party installing the app, to the organization providing the app.

    SPApp-cloud.png

    Moving from a model where each installation creates exclusive resources, a provider-hosted app introduces the need to manage multi-tenancy, both for the website and database. Available options included (1) multiple B2B Tech websites for each installation, (2) shared websites for multiple teachers at each host’s website, or (3) a single multi-tenant website. 

    Several options are available as well for database deployment, including separate databases, multiple schemas, and using a tenant field identifier to isolate the data; each with their own set of pros and cons. it was determined that a single website with  a single partitioned Azure database with a tenant identifier for data isolation would be the solution. This would be the easiest to implement and maintain, requiring the least amount of changes. Additionally, due to the limited personal data, any risk would be low. 

    One of the final challenges of t​​he provider-hosted solution is that all apps for SharePoint must establish a trust between SharePoint and the remote web application by being registered with the hosting SharePoint farm or tenancy. Fortunately, registering the app thru the Seller Dashboard ​​will enable you to design your app with a multitenant architecture without requiring individual administrator registration. 

    Now that the research is done and architectural decisions have been made, this will all be validated by implementing these changes for the B2B Quiz App; hopefully before my trial Azure and SharePoint development subscriptions expire. Stay tuned.

    ​You can find our previous post on Hosting Issues, here. ​Or you can start with Challenges of Being an Early Adopter: Part 1, here.




  • The Challenges of Being an Early Adopter: Part 2
    29 January 2015
    8:53 AM

    Category:Application Development; Infrastructure and Messaging; Portals and Collaboration
    Post By:Chelsea Stephens

    ​In our previous entry for this series​, we introduced the Quiz App and our background in developing Office 365 and SharePoint apps. When Microsoft released their latest app model, we jumped at the chance to learn everything we could about it. Following the implementation of the app, we soon realized there were caveats to the hosting side, which you will find below.

    The Hosting Issues​
    The Quiz App does not access any SharePoint lists and only uses the SharePoint user’s identity. Since the application has been written using .NET MVC and uses server code, the app cannot be hosted by SharePoint.  A provider-hosted or self-hosted architecture would allow us to retain much of the existing code and database schema.  This means that the application web and database need to be hosted by B2B or a B2B Azure (or other cloud) environment.​

    As we all know, apps for SharePoint extend the capabilities of a SharePoint website which are in-part self-contained, fully immersive web applications.  When this new model was released, Microsoft included an Auto-Hosted option in which SharePoint would take care of provisioning any resources required to run the app, included the App Web and SQL Database, if needed.

    Microsoft has subsequently removed Auto-Hosting as a hosting option. As a result, any Apps built using auto-hosting will need to be converted to use another hosting alternative.

    SPHostedPic.png   ProviderHosted.png

    Lessons
    ​• In the current releases of SharePoint, Apps are used to extend SharePoint in the most fundamental ways, such as adding lists and libraries.

    • The lowest overhead and complexity in building new SharePoint Apps would be using SharePoint-Hosting, custom lists, HTML5, and client access technology.​

    • Azure is the logical cloud environment to use to develop and deploy a custom SharePoint Hybrid App.

    • Registering your app in the Seller Dashboard will enable you to design your app with a multitenant architecture without requiring individual administrator registration.


    Don't miss the last part of the series next week on, The Challenges of Being an Early Adopter: Part 3 - The Choices!





  • Challenges of Being an Early Adopter: Part 1
    21 January 2015
    2:54 PM

    Category:Application Development; Portals and Collaboration
    Post By:Chelsea Stephens

    This three part series goes over the trials of what it means to be an early adopter of new technologies, specifically using Microsoft’s new App Model - creating the app and then deploying it through the store. While B2B Technologies has made a successful and long-standing career of implementing Microsoft solutions for our customers, we wouldn’t have nearly the experience and reliable expertise if we didn’t venture out on our own first. This allows us to get the tough questions answered before our clients engage us for their projects. That being said, when Microsoft first released the new App model with Office 365 and SharePoint 2013, we were excited to create a solution using this architecture. 


    The App

    Microsoft has a large investment of resources in developing Office 365 for Education and offering sites available to schools for little or no cost. Due to B2B Tech’s emphasis on the education sector, and the number of Office 365 Education sites we have converted and deployed, the result of this endeavor was the B2B Quiz App. The B2B Quiz App was written as a SharePoint App website accessed through an educator’s O365 portal, which would allow teachers to share quizzes with members of their classes using a PC or tablet. It would be made available for free through the SharePoint App Store. 

    When a teacher installs the app on their O365 or SharePoint site, a new Azure website and SQL database is automatically created for their exclusive use with no configuration or registration required on their part. These sites are managed by their own SharePoint subscription. This is made possible through the auto-hosted architecture. When the new website is first accessed, the authorized user is determined to be the teacher. The teacher can then set up classes, build and schedules quizzes, and analyze the results.  Any subsequent users to the website are recognized as students who can locate and take their quizzes. 

    B2B-Quiz-App.png

    SharePoint Apps can be built to look like the SharePoint Host Website by sharing the host styling; however, we chose to give our app an appearance conveying more of the intent of the application.​

    Check back next week for Challenges of Being an Early Adopter: Part 2 - Hosting Issues!



  • Dev Days for Education Sponsored by B2B Tech
    29 January 2014
    11:36 AM

    Category:Application Development; Cloud Services; Portals and Collaboration
    Post By:Chelsea Stephens

    B2B Technologies recently had the opportunity to sponsor Dev Days, hosted by Microsoft's Education Team, in Tampa, Florida.  Dev Days is a cloud-based seminar targeted to reach higher education and K-12 school districts.  Partnering with Microsoft's Education Team is a privilege to us as B2B Tech has worked with a number of school districts, colleges and universities, and we feel the progression of technology in the education space is vitally important to the success of teachers, students and administration within those institutions. Dev Days discussions were focused on Microsoft’s Office 365 and Azure with a focus on real-world case studies.

    If you weren't able to attend or have interest in finding out more about Dev Days for future events, check out the different presentations B2B spoke on during this two day event.

    Azure Active Directory - B2B.pdf

    Dev Days - January 2014.pdf

    SharePoint Azure - B2B.pdf

    DevDays.jpg


  • Developing a Cloud-Based Quiz Portal for Educators and Students
    13 May 2013
    11:47 AM

    Category:Application Development; Portals and Collaboration
    Post By:AvePointSA

     

    With a strong relationship with school systems and educators, B2B Technologies wanted to create an application which would aid teachers to manage the development, distribution and analysis of quizzes. As a major player in migrating schools to Office 365, the logical route was to use the new App Architecture of SharePoint 2013 and Office 365. 

     

    Challenges:

    • - Teachers spend a lot of time building, distributing and scoring quizzes

    • - It is time consuming to analyze class quiz results to determine areas for improvement

    • - Difficult and time consuming to analyze questions to determine their efficacy

    Contributing Factors

    • - Computers and other Wi-Fi devices are now readily used in classes

    • - Most households have a computer or other access to the internet

    • - Microsoft releasing new architecture for building secure apps for SharePoint hosted in the cloud

    • - Microsoft offers discounts and other incentives to Academic Institutions to use Office 365

    • - More schools are using Office 365 as a teaching portal

    • - Microsoft is relying on B2B Technologies to assist with Office 365 migrations

    • - Schools are also using Office 365 to manage student email accounts

    Keys to Success

    • - App integration with Office 365

    • - Utilizing new Office 365 Auto-hosting architecture

    • - Creating a Quiz app that anyone can understand and use with virtually no training

     

    The App

    B2B Technologies evaluated the different software API’s and hosting options available for SharePoint Apps. To leverage their experience with server side coding and the requirement of creating a SQL Server database for the application, MVC or Model View Controller was the API that was chosen. Since the application website was running server code, this required the website and database to be Provider-Hosted. The new O365 feature of Auto-Hosted applications which automatically provision a new Website and Database with each app installation was selected the hosting option due to its ease of use and administration.

    After designing a database which would support the required functionality, they built the screens which would be used by teachers to create, schedule and review quiz results. A smaller set of screens would be available to students to locate and take an exam.

    The new SharePoint App infrastructure offers the option of designing a custom app to use the appearance and styling of the SharePoint host site, but B2B chose to use its own branding for the site.

     

    What B2B Quiz Maker offers the educator

    • - Build and manage quizzes

    • - Quiz site accessible from anywhere

    • - Manage classes and schedule quizzes

    • - Automated scoring

    • - View student results

    • - Analysis of question results

     

    What B2B Quiz Maker offers students

    • - View classes and quizzes

    • - Take quizzes and get instant results

     

    Managing Quizzes

    You begin by creating a quiz; giving it a name, introduction and passing score.  

     

    Screenshot of Create Quiz page 

     

    Screenshot showing the process of creating each question 

    Each quiz can have as many single or multiple-choice questions as you want. You assign points to each question and a passing score for the quiz. As students complete a quiz the system calculates their raw point score (total points for correct answers) and a percentage score. A student may only take a quiz one time.

     

    Screenshot of Manage Quizzes page

    Scheduling a Quiz

    You create a list of the class sections that you teach, then assign a quiz to one or more class sections. The quiz schedule includes a start and end date and quizzes will only appear for students between the starting and ending date. If you want to schedule a quiz to be available immediately - as, during a class period, you can create or edit the schedule for that quiz, setting the start date for the quiz to 'today'.

    Screenshot of page to schedule a quiz

    Taking a Quiz

    Students will select their class section to view available quizzes scheduled for their class. After they begin a quiz they can move forward or backward through the quiz questions and update their answers. When they have completed all questions they will be prompted to complete the quiz. At this point the quiz is scored and they will not be permitted to update any answers. Each quiz is identified by the student's internal SharePoint userId and their name (this is automatic, students cannot change their name).

     

    Screenshot of quiz question.  Note: Students will not be able to access the menu tabs.  

    Viewing Quiz Scores

    After students have completed a quiz you can view their scores and their responses to each individual question.

     

    Screenshot of Student Quiz Score

     

    Screenshot of breakdown of each question in the quiz and the student response 

     

    The B2B Quiz Maker is still a work in progress, but we are expecting to release it this coming fall.  If you have any questions about the app, the process, or would like to give feedback, please contact David Norris, our Education Specialist. 


Skip Navigation LinksHome What's New B2B Blog BlogPost