Why should I do this in SharePoint?
Guest Author: Olaf Didszun
SERVICEPORTALS IT-Systeme GmbH
Last week we had a meeting, at one of my customers, to do some knowhow transfer about our current project. In this project I created a site template with several fields and content types to do permission reviews for the systems in this company.
Because we have a dependency on the features, I created in this project, I started at the beginning. I described how we have created the fields and how we have created the content types, list templates, etc. Finally we saw the site template, which we can use to create a SharePoint site for our application.
So, at the beginning, we have a lot of configuration stuff with many xml-files. But we were able to see that we can do a lot of copy and paste to create the fields or the different features.
The members of this meeting were SharePoint admins with some knowledge of development and a Java-/Web-developer, who is responsible for several internal applications in the company. When I finished showing the different features in our solution I was faced with the one and only question:
Why did you use SharePoint for this solution? Isn’t it easier to create a simple database and build a front-end using Java or ASP.Net?
How would you answer this question? What are the real reasons to use SharePoint to build this solution?
I think there is no easy answer to this question. But there are some benefits, when we use SharePoint as our platform for this solution.
- We need to create a data model whether we use SharePoint or a simple database on SQL Server. So I don’t think we have many benefits when we use a database.
- When we create lists in SharePoint, we have a user-interface out-of-the-box. We can create views on this list, sort and filter items without any piece of code. Because SharePoint is a web-application, we can use URLs in e-mails to send references to items.
- While coding, we can participate from SharePoint SDK. We have methods to create mails, we have functionality to set permissions at site-, at list- and at item-level. Setting permissions at item-level is not so easy.
- Building the user-interface for our application is not too difficult, because we can build webparts to do the necessary stuff. We don’t have to create complete and complex screens or masks.
- We do not need any installation on the client machines as we would if we created an application with Java or ASP.Net. Anyone with Internet Explorer and the permissions can use our application from every machine in our network.
I guess there are a lot more reasons, why we have created this solution using SharePoint as the platform. I have to recognize that some knowledge about creating solutions in SharePoint is needed. But when we use the classic tools like Java, this knowledge is needed, too. Since we can integrate into the SharePoint infrastructure, that is built in many companies, using SharePoint as the platform for these solutions is a good idea.
Guest Author: Olaf Didszun
SERVICEPORTALS IT-Systeme GmbH
Olaf has worked as a SharePoint consultant and solution architect for SERVICEPORTALS.DE in Karlsruhe, Germany since 2005. Previously Olaf worked as a system engineer, implementing Active Directory, Exchange Server and SQL Server. His main business is implementing SharePoint in companies of any size. Olaf is an ITpro, but he also has a very deep knowledge of development using SharePoint. You can read more from Olaf on his blog at http://olafd.wordpress.com (SharePoint and more…)
Fantastic summation. Another benefit is that you can always get the data OUT of SharePoint and into other applications if you like; not so easy the other way around if you used some other platform.
Search is also a big win here. Keeping the features under one roof makes searching across all your business data that much easier.
very well said,,,,Thanks for this valuable info on why sharepoint…
I’d also add Office Integration features. I try to use this capability as much as possible and is a very compelling feature of SharePoint. In my eyes, you could write a book on this alone…
Excellent summary Olaf. This was a question that had to be answered for my organization too. We already had an intranet when I introduced SharePoint. So, the need to show off capabilities was key in moving to this platform.
I am sure this question gets asked often, so thank you for sharing your experience.
I am curious Olaf, if you took off your hat as a SharePoint consultant, would have proposed a SharePoint solution for this customer if they did not already own the platform? I am assuming the client already owned SharePoint licenses and you were simply adding more value to their current investment in it.
Yes, this company has already implemented SharePoint within their intranet, but it’s some kind of politics to implement new applications in this platform. Implementing this application was one attempt to move the whole company to SharePoint. It’s not easy in a company with several Java developers. I guess, we have a long way to go.
You can always refer them to this site as a great starting point! The STP is open 24×7.
We use a tool called ironspeed that allows us to swap back and forth between .net and sharepoint development. I highly recommend it on the consulting side.
SharePoint environments, when setup well, have backup, high availability, and established support processes when things go wrong. When you throw together a quick .Net app, it’s always a hassle for the business owner when things do go wrong.
Hi,
I do not understand your last argument : “5.We do not need any installation on the client machines as we would if we created an application with Java or ASP.Net.”
You do not need anything except a browser if you’re accessing an ASP.NET application. The .NET Framework is needed only for Windows Forms applications, or WPF (or Silverlight).
Fabien
I absolutely agree. When the application is created as a web application with ASP.NET we also just need a browser. But we actually see several Windows Forms applications. In this case the application itself needs to be rolled out to the clients including additional components, like the .NET Framework.
So really you wanted to say .Net rather than ASP.NET
Another benefit will be the standarization that you have when you are using just one tool to produce all your applications intead of having different developers producing their own code. It is easier to maintain if everything is done in the platform and following the same SharePoint procedures.
Hello Olaf:
Good writeup. When I talk to customers about this, the deeper part of the question is: SP is harder for developers, but using this platform creates additional function for users. Specifically, users want: search, alerts, versioning, data export, deletgated user management, (yada).
The base function of the application is “easier” to build in (maybe PHP), but all of the other built-in (and integrated) SP features would take much longer to add particularly when the platform brings these in for free.
Usually IT hires me, so I try to explain this to them. I always think: “they don’t want to hear it”.
Indeed, this is our dilemna (between users and IT)!
Regards..Roger