Category Archives: SharePoint Apps

Application Lifecycle Management in SharePoint 2013 & Office 365 using Team Foundation Server 2013 & Visual Studio Online – Introduction

There are several methods to customize SharePoint. Developers have the option of creating new cloud applications for SharePoint or maintaining legacy full trust code. Coupled with the complexity many organizations have in terms of managing SharePoint customizations across Office 365 and on-premises implementations, developers and solution architects will need to understand how to adjust application lifecycle management (ALM) techniques to support and deploy quality solutions. This series of blog posts will focus on the establishment of development, testing and deployment best practices for on-prem and cloud applications and solutions. This will also include concepts such as continuous integration, release management and automated testing.

If you think that you’ve read this introduction before, that’s true, it’s the description of my session at the upcoming SharePoint Conference:

clip_image002

While working with my co-presenter, Eric Charran (Microsoft), on the session content & demos, I’ve decided to put together a series of posts to cover the same topic in more depth while focusing on the How aspect.

  1. Introduction –> You are here!
  2. Infrastructure Overview 
  3. The Development Environment(s)
  4. The ALM Platform(s)
  5. The Testing Environment(s)
  6. Automated Build & Deployment for Full-Trust & Sandboxed Solutions
  7. Automated Build & Deployment for SharePoint-hosted & Autohosted Apps
  8. Automated Build & Deployment for Provider-hosted Apps (Azure-hosted)
  9. Automated Build, Deployment & Testing for Full-Trust & Sandboxed Solutions
  10. Automated Build, Deployment & Testing for Apps
  11. Release Management Overview
  12. Release Management for Full-Trust & Sandboxed Solutions
  13. Release Management for Apps

The full series is based on the best practices and guidance that was put together by some Microsoft folks (Eric Charran, Vesa Juvonen, & Steve Peschka) in this MSDN article.

image

The article applies common application lifecycle management (ALM) concepts and practices to application development using SharePoint & Office 365 technologies. This series is intended to complement the MSDN article by providing the “How” aspect of doing things. In fact, I’ll be referring to the article in almost every post instead of explaining the theory behind each task / exercise (I’m not a fan of reinventing the wheel).

One thing to note here is that the series is intended to be educational, the lab environment setup (will be covered in the next post) was done in a way that enables you to easily follow along, focus on what we want to achieve without spending too much time focusing on the infrastructure & security side of things. I’ve also broken some rules that are highly recommended to follow in production environments; you will find me ignoring the least privilege accounts principles and using the domain administrator account for setting up almost everything in SharePoint & Team Foundation Server (including all its components), you will also find me combining many services on one virtual machine. This is OK for educational purposes.

However, I’ll be giving you some guidance from time to time on how to setup a real-life Application Lifecycle Environment for SharePoint 2013 & Office 365 SharePoint Online. I’ll also provide you with some links for some of the best resources out there on the internet that can help you on installing & configuring the components needed for building a comprehensive ALM environment for SharePoint 2013 & Office 365. This means that you can still follow along in case you are willing to implement a real-life ALM environment.

Another thing also to note here is that I’ll be explaining how to apply the ALM practices using Team Foundation Server 2013 (on-prem), Visual Studio Online (The cloud offering of TFS) and a hybrid approach. So if you don’t have enough infrastructure or you’re a cloud fan, you can still follow along and choose the option that best suits you.

While you’re waiting for the next post, I’d like to leave you with the following small exercises:

Exercise 1

Read the “Overview of Application Lifecycle Management” part of the MSDN article. That’s only the first part.

clip_image004

Exercise 2 (Optional)

If you are not familiar with the new development options in SharePoint 2013, please refer to the following articles :

SharePoint 2013 development overview

Choose patterns for developing and hosting your app for SharePoint

No-Code Sandboxed solutions are NOT deprecated

The SharePoint Developer Team just blogged to clear any confusion around the future of Sandboxed Solutions:

While developing sandboxed solutions that contain only declarative markup and JavaScript — which we call no-code sandboxed solutions (NCSS) — is still viable, we have deprecated the use of custom managed code within the sandboxed solution. We have introduced the new SharePoint app model as a replacement to those scenarios that required the use of managed code.

342

Read more here …

Converting ASP.NET Web Applications into SharePoint Apps using Visual Studio 2013

Do you know that you you can convert your existing ASP.NET Web Application (Whether it’s Web Forms or MVC) into a Provider-Hosted SharePoint App in a few steps ? Yes, Visual Studio 2013 has this feature built-in. Nobody is talking about it though, Google it and you will find nothing!

So here are the steps :

1. Tailspin Toys is a large solution that has been built over the years, Tailspin.Web is an ASP.NET MVC Project for the web layer.

340

2. Right-click the asp.net application and choose “Convert” then choose “Convert to App for SharePoint Project

340-1

3. Enter the SharePoint Site URL for debugging.

340-2

4. Now the SharePoint App project is being created

340-3

5. Now that it has been created, press F5 to deploy & debug it.

340-4

6. Trust it ..

340-5

7. The app launches in the browser, note the URL.

340-6

8. Check the AppManifest of the Provider-hosted app.

340-7

 

340-8

[O365ForAll : English Video] TOP OFFICE 365 APPS : Documents Shared With Me

“TOP OFFICE 365 APPS” is a new video series where I’ll be covering, explaining and reviewing some of the coolest and most beneficial apps available in the Office 365 SharePoint app store.

Today’s app is one of the currently featured apps in the store and is called “Document Shared With Me” . It works on both SharePoint On-prem and SharePoint Online. You can watch the video from here.

339

Generally speaking, the app “Documents Shared with Me” provides a holistic overview of all documents shared with the logged-in user. Thus the user is automatically informed of shared documents without leaving the current working context.

All documents shared in public libraries, e.g. on SkyDrive Pro, are listed in the app. The listed content in the app allows a direct interaction with the particular user. Because of this, the user doesn’t have to open the MySite or SkyDrive to get an overview of all shared documents.

339-1
Another great feature is that users can select what will be displayed in the “Documents Shared with Me” App. In this case users can enable documents shared from specific users, for instance.

Also Watch:

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 1
“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 2

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 3
“TOP OFFICE 365 APPS” – SP2 CAML Query Tester

“TOP OFFICE 365 APPS” – Mavention Profile Completeness

[O365ForAll : English Video] TOP OFFICE 365 APPS : Mavention Profile Completeness

“TOP OFFICE 365 APPS” is a new video series where I’ll be covering, explaining and reviewing some of the coolest and most beneficial apps available in the Office 365 SharePoint app store.

Today’s App is : Mavention Profile Completeness”. It’s actually one of my favorite apps. You can watch the video from here.

338

Mavention Profile Completeness helps you to encourage your users to fill in the blanks on their profile. By confronting them with real-time statistics on how far their profile is completed your users will have an incentive to fill in missing information. Mavention Profile Completeness empowers users and helps them to achieve a full and active profile, making it quicker to find talent and colleagues within any given organization. By providing triggers to fill in missing information Mavention Profile Completeness strives to improve engagement and awareness on your intranet. Also, it’s worth mentioning that the app works on both SharePoint on-premise and SharePoint Online.

338-1

Also Watch:

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 1
“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 2

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 3
“TOP OFFICE 365 APPS” – SP2 CAML Query Tester

[O365ForAll : English Video] TOP OFFICE 365 APPS : SP2 CAML Query Tester

“TOP OFFICE 365 APPS” is a new video series where I’ll be covering, explaining and reviewing some of the coolest and most beneficial apps available in the Office 365 SharePoint app store.

336

Today’s app is “SP2 CAML Query Tester” which is another useful & free app for Developers.

As a developer, testing CAML queries can be a challenge, especially in SharePoint apps. With this new free app from SharePoint MVP Corey Roth at SP2, you can quickly test your queries within the app web or in the host web. Simply install this app, and add the App Part to your host web and you can quickly test your queries without having to redeploy your code multiple times. This tool is a must have for any developer writing complex CAML queries using the SharePoint Client Object Model.

You can watch the video from here..

Also Watch :

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 1
“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 2

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 3

[O365ForAll : English Video] TOP OFFICE 365 APPS : NAPA Developer Tools, Part 3

“TOP OFFICE 365 APPS” is a new video series where I’ll be covering, explaining and reviewing some of the coolest and most beneficial apps available in the Office 365 SharePoint app store.

In the previous videos, we have created our very first SharePoint app using NAPA and today we are going to export the project to Visual Studio 2013 and extend it by adding some SharePoint artifacts. You can watch the video from here.

335
328-1Presenter: Ayman El-Hattab, MVP
Publisher : O365ForAll.com
Language : Arabic

 

Also Watch:

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 1
“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 2

[O365ForAll : English Video] TOP OFFICE 365 APPS : NAPA Developer Tools, Part 2

TOP OFFICE 365 APPS” is a new video series in which I’ll be covering, explaining and reviewing some ofthe coolest and most beneficial apps available in the Office 365 SharePoint app store.328-1

NAPA Developer Tools is the first app in our series, I’ve already introduced NAPA and showed you how to install it in the first video. In today’s video, I’ll show you how to develop your first SharePoint App using JSOM (Java Script Object Model) using NAPA. You can watch the video from here.

333

And here’s Office 365 Team feedback :

333-2

Also Watch :

“TOP OFFICE 365 APPS” – NAPA Development Tools – Part 1

 

[O365ForAll : English Video] TOP OFFICE 365 APPS : NAPA Developer Tools, Part 1

TOP OFFICE 365 APPS” is a new video series in which I’ll be covering, explaining and reviewing some of the coolest and most beneficial apps available in the Office 365 SharePoint app store.

332

I decided to start with NAPA because it’s very popular among developers. It will most probably take me 3 or4 videos to briefly explain NAPA.328-1

Today’s video is Part 1 and is mainly for Introducing NAPA and demonstrating its installation process in Office 365 Tenants.

332-1 332-2

You can watch the video from here.

 

Errors & Resolutions for SharePoint Hosted App Development

SharePoint-Journey.com has done a very good job putting together a very useful video about SharePoint Hosted Apps. In the video, you will learn how to develop your very first SharePoint hosted app and experience all possible errors you might encounter during development. The video also covers the ways you can resolve those errors.

I usually refer to this video in my presentations and events.

321

You can watch the video here.