01.12.2010 swift (QUICK) adjective SLIGHTLY LITERARY moving or happening at great speed or within a short time, esp. in a smooth and easy way; fast or quick from Cambridge International Dictionary of English
swift.consult GmbH Introduction to Microsoft SharePoint Server 2010 SharePoint Development Break Projects in depth Connecting SharePoint to 3rd Party Cloud Services Building a SharePoint driven recruiting platform Summary and Closing 2
Give you an idea, what SharePoint is about Interesting topics for students of both programmes Business Informatics Software Engineering Introducing you to real world examples of enterprise applications, built on top of the SharePoint platform Showing you possibilities to dig deeper into SharePoint or Microsoft.NET / C# OO-Development
Who are we? What is our connection to Fontys? And finally: what the heck are we doing?
A brief look into history What are the features of SharePoint? What can you do with it in the real world and who should care about SharePoint? Market
Anybody experiences with SharePoint?
2001 2003 2007 2010 SharePoint Portal Server 2001 SharePoint Team Services Focus on Document Management Everything was portal at this time SharePoint not. SharePoint Potal Server 2003 Windows SharePoint Services 2.0 Focus on Portal but lacking DMS features Office SharePoint Server 2007 (MOSS) Windows SharePoint Services 3.0 Portal and EAI features, document management, application platform, but complicated development SharePoint Server 2010 SharePoint Foundation 2010 Same as 2007, plus numerous improvements in interfaces and development environment
Organized in Sites User Interface can be customized using WebParts Documents and items are stored in Lists and Libraries Lists and Libraries supports Versioning MetaData can be added to every part of SharePoint Security can be applied based on LDAP (ADS) Groups or SharePoint Groups at Item Level Workflows can be designed and initiated for Lists, Items, Sites, etc.
Business Connectivity Services InfoPath Form Services External Lists Workflow SharePoint Designer Visual Studio API Enhancements REST/ATOM/RSS Ribbon UI SharePoint Workspace SharePoint Mobile Office Client Office Web App Integration Standards Support PerformancePoint Services Excel Services Chart Web Part Visio Services Web Analytics SQL Server Integration PowerPivot Tagging, Tag Cloud, Ratings Social Bookmarking Blogs and Wikis My Sites Activity Feeds Profiles and Expertise Org Browser Social Relevance Phonetic Search Navigation FAST Integration Enhanced Pipeline Enterprise Content Types Metadata and Navigation Document Sets Multi-stage Disposition Audio and Video Content Types Remote Blob Storage List Enhancements
Where is SharePoint used? What can you do with all that stuff? Document Management Collaboration platform for project work Expense Reports Holiday Management Manage your website Internet Extranet Intranet
SharePoint offers a wide range of activities Business People (IT-Pros) Identifying business processes that might benefit from a collaboration platform support Defining requirements Compare advantages with disadvantages of different solutions Build Prototypes in cooperation with the involved department Developers Planning, Developing and Deploying Enterprise Applications based on the application platform Integrating third party systems (e.g. CRM, ERP)
Lots of demand from customers (not only ours) Many companies want to replace the monster Lotus Notes (which was very popular in the late 1990s but is treated as an orphan by IBM since they bought Lotus Lotus 2 products in one: E-Mail and Document-centric database Microsoft Exchange often used for the E-Mail part SharePoint fits in the gap of document handling and applications Really good sharepoint developer skills are rare. A chance for consultants, freelancers and employees
Development
Requirements Possibilities Basics Support
Windows Server 2008, 64-Bit Editions.NET Framework 3.5 SP1 ASP.NET WebServer like IIS SQL Server 2008, 64-Bit Editions
Programming languages C# VB.NET CAML (XML-based Query Language) IDE: Visual Studio 2010 Numerous Templates User Interface Designer Publishing Tools Debugging
Visual Studio 2010 Server Explorer
Interfaces API Full blown programming interface, only availble to solutions based on the SharePoint Farm Client Object Model Subset of API, using XML Requests and JSON results to communicate with SharePoint WebServices Classic WebService, can be called by any system (SOAP), more encapsulated functions
MSDN TechNet Lots of literature Large developer community Microsoft Support Calls (Christmas tree is burning)
continuing after the break with these topics Projects in depth Connecting SharePoint to 3rd Party Cloud Services Building a SharePoint driven recruiting platform & Tips for your internships
Central, on-premise SharePoint installation in Germany Decentral, worldwide access Bad performance between Europe and Asia (Production in China, Headquarters in Japan), due to limited bandwith Client 2. Upload the file to S3 by Flash
Download Download- Service Client 4. Signed Expired Link Redirection
a SharePoint recruiting platform
Basic parameters Concept Project phases Project Resumé
Pratical phase during the 5 th semester 6 months at swift.consult Introducing work Together with other developers Presentation Report
Idea: A distributed software solution for job applications My tasks: Conceptual design Realisation Testing & bugfixing Deployment Documentation Release 2.0 all steps of software development
Preliminary studies about: Workflow foundation SharePoint WebServices InfoPath forms Building specification including all components Application flow
C# ASP.NET WebApplication Connects to the webserver and gets data as xml Insert new or updates existing data in SharePoint Validation of request Reply to webserver Configuration via Web.Config
Configurable state machine workflow Association and modification forms Updates items in SharePoint list Administration of dates in Exchange Email correspondence between user Deletion of not needed data
Problem with associated data size in workflow forms WebService which loads texts from database Configurable via Web.Config
All good software projects need testing After closed phases (specification, every component) After completion of the whole project Testing was not automatic
Connector and TextService deployed on IIS Create and fill TextService DB Build needed SharePoint list and document library Install workflow on SharePoint
40% conceptual work and requirement evaluation 40% realisation and programming 15% testing and bugfixing 5% documenting
The software is still successfully in use The traineeship was evaluated from all sides as positive Additional change requests are planned I learned a lot!!! I worked a period longer at swift.consult
Summary and closing words
SharePoint is (not only) an Document and Collaboration Platform a Dashboard for KPI (Business Intelligence) a Weblog and Wiki system an Application Platform for Enterprise Applications Possibilities of development (typical 80/20 scenario) Rapid Application Development by configuring Extensible and powerful custom developments
Apprenticeship during your Fontys study (normal during the 5th term) Bachelor Thesis / Projects Work in a small team, applying cutting edge technology on real world projects C# and.net, Java, Django, Android, SharePoint 2010, etc. Option for an employment contract after your graduation
Every program runs into an uncaught stackoverflow only once. Chuck Norris did it twice.
swift.consult GmbH Bürgerstraße 20 40219 Düsseldorf Telefon +49 (0) 211 933799 87 Telefax +49 (0) 211 933799 97 http://www.swiftconsult.de http://www.facebook.com/pages/swiftconsult/124968867532497 info@swiftconsult.de Contact me directly at: j.haedrich@swiftconsult.de