SharePoint custom application development can sometimes be challenging. This presentation at SPS New Hampshire on October 18th, 2014 covers some techniques and strategies on improving performance and scalability of your applications.
Road to the Cloud - Extending your reach with SharePoint and Office 365Talbott Crowell
Presentation on SharePoint and Office 365 development for ISV's at Microsoft Cambridge on March 6th, 2014. More details https://info.windowsazure.com/Feb2014BostonRoadtotheCloudBusinessstrategyandnetworkingforISVs_Register.html?LeadSource=Email&browserLanguage=&LeadSourceDetail=Person-to-person
Custom Development in SharePoint – What are my options now?Talbott Crowell
Since Microsoft has released SharePoint 2013 with a whole new application development methodology, there has been some confusion and frustration in the community on what the best approach for customizing SharePoint for developers. In this session, we will look at the options, new and old, and discuss the pros and cons. We may even see some novel approaches you haven’t thought about yet.
Road to the Cloud - Extending your reach with SharePoint and Office 365Talbott Crowell
Presentation on SharePoint and Office 365 development for ISV's at Microsoft Cambridge on March 6th, 2014. More details https://info.windowsazure.com/Feb2014BostonRoadtotheCloudBusinessstrategyandnetworkingforISVs_Register.html?LeadSource=Email&browserLanguage=&LeadSourceDetail=Person-to-person
Custom Development in SharePoint – What are my options now?Talbott Crowell
Since Microsoft has released SharePoint 2013 with a whole new application development methodology, there has been some confusion and frustration in the community on what the best approach for customizing SharePoint for developers. In this session, we will look at the options, new and old, and discuss the pros and cons. We may even see some novel approaches you haven’t thought about yet.
Get an overview of Microsoft PowerApps, still in preview, and learn how to build your first PowerApp by connecting to SharePoint Online. For a full recording of the presentation, visit it on YouTube at https://www.youtube.com/watch?v=T6fxBgLoxqc
In introduction to the various SharePoint development techniques in SharePoint 2013, this slide deck will give new SharePoint developers an overview of the options available to them to develop against SharePoint. To view audio of this recording go to the Office Mix version at https://mix.office.com/watch/1bgqd4roxtwpe
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien
Describes the new SharePoint development framework, which uses Gulp, node.js, TypeScript, SASS and other modern web technologies. Covers client web parts, modern pages and the canvas, and how to surface your files on a CDN for optimum performance. This intro presentation helps you get started.
SharePoint Framework, React and Office UI SPS Paris 2016 - d01Sonja Madsen
This session is about building client-side web parts, list-based and page-based applications on SharePoint. I'll show the workbench, the web part and a list based application, React and how to apply simple CSS styles for typography, color, icons, animations, and responsive grid layouts with Office UI Fabric.
Recently released Office Delve surfaces personalized content to you from across Office 365. Powered by the Office Graph, Delve shows you information based on what you're working on and what's trending around you.
In this session we will take a look at the Office Graph – the engine powering Delve. From this presentation you will not only learn how Delve works but also how you can leverage the Office Graph for building solutions for your organization and customers.
Get an overview of Microsoft PowerApps, still in preview, and learn how to build your first PowerApp by connecting to SharePoint Online. For a full recording of the presentation, visit it on YouTube at https://www.youtube.com/watch?v=T6fxBgLoxqc
In introduction to the various SharePoint development techniques in SharePoint 2013, this slide deck will give new SharePoint developers an overview of the options available to them to develop against SharePoint. To view audio of this recording go to the Office Mix version at https://mix.office.com/watch/1bgqd4roxtwpe
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien
Describes the new SharePoint development framework, which uses Gulp, node.js, TypeScript, SASS and other modern web technologies. Covers client web parts, modern pages and the canvas, and how to surface your files on a CDN for optimum performance. This intro presentation helps you get started.
SharePoint Framework, React and Office UI SPS Paris 2016 - d01Sonja Madsen
This session is about building client-side web parts, list-based and page-based applications on SharePoint. I'll show the workbench, the web part and a list based application, React and how to apply simple CSS styles for typography, color, icons, animations, and responsive grid layouts with Office UI Fabric.
Recently released Office Delve surfaces personalized content to you from across Office 365. Powered by the Office Graph, Delve shows you information based on what you're working on and what's trending around you.
In this session we will take a look at the Office Graph – the engine powering Delve. From this presentation you will not only learn how Delve works but also how you can leverage the Office Graph for building solutions for your organization and customers.
Architecting Solutions for the Manycore FutureTalbott Crowell
This talk will focus solution architects toward thinking about parallelism when designing applications and solutions specifically Threads vs Tasks on TPL, LINQ vs. PLINQ, and Object Oriented versus Functional Programming techniques. This talk will also compare programming languages, how languages differ when dealing with manycore programming, and the different advantages to these languages. Demonstration include C#, VB, and F# features for functional programming, LINQ and TPL. A demonstration of the Concurrency Visualizer in Visual Studio 2010 will also be included.
Optimus XPages: An Explosion of Techniques and Best PracticesTeamstudio
Are you starting a new XPages project, but not sure it’s going to be done right the first time? Do you have an existing application that doesn’t seem to have that “X” Factor? In this webinar, John Jardin demonstrates how XPages developers can apply proven techniques and best practices to take their applications to a game-changing level.
You'll learn how to:
-Rapidly develop responsive applications,
-Improve user experience and response times with background and multi-threaded operations,
-Keep your XPages lightweight with code injection,
-Create scheduled tasks the XPages way,
-And much more.
Using AWS to Build a Scalable Big Data Management & Processing Service (BDT40...Amazon Web Services
By turning the data center into an API, AWS has enabled Sumo Logic to build a very large scale IT operational analytics platform as a service at unprecedented scale and velocity. Based around Amazon EC2 and Amazon S3, the Sumo Logic system is ingesting many terabytes of unstructured log data a day while at the same time delivering real-time dashboards and supporting hundreds of thousands of queries against the collected data. When co-founder and CTO Christian Beedgen started Sumo Logic, it was obvious that the service would have to scale quickly and elastically, and AWS has been providing the perfect infrastructure for this endeavor from the start.
In this talk, Christian dives into the core Sumo Logic architecture and explains which AWS services are making Sumo Logic possible. Based around an in-house developed automation and continuous deployment system, Sumo Logic is leveraging Amazon S3 in particular for large-scale data management and Amazon DynamoDB for cluster configuration management. By relying on automation, Sumo Logic is also able to perform sophisticated staging of new code for rapid deployment. Using the log-based instrumentation of the Sumo Logic codebase, Christian will dive into the performance characteristics achieved by the system today and share war stories about lessons learned along the way.
Auditing Drupal Sites for Performance, Content and Optimal Configuration - SA...Jon Peck
Nobody likes a slow site, and Drupal can be notoriously sluggish if you're not careful. With the right configuration and platform, any site can be blazingly fast - but where to start? Enter site_audit, a collection of drush commands for statically analyzing Drupal 7 sites for best practices and optimal configuration. Join the developer for an in-depth discussion of how to analyze and optimize your site, and discover how to extend the platform with your own checks!
Site Audit reports include:
- Best Practices - structural recommendations
- Block - caching
- Cache - optimal Drupal caching settings
- Codebase - size of the site; size and count of managed files
- Content - checks for unused content types, vocabularies
- Cron - Drupal's built-in cron
- Database - collation, engine, row counts, and size
- Extensions - count, development modules, duplicates, missing
- Insights - Analyze site with Google PageSpeed Insights
- Status - check for failures in Drupal's built-in status report
- Users - blocked user #1, number of normal and blocked users, list of roles
- Views - caching settings
- Watchdog - 404 error count, age, number of entries, enabled, PHP errors
Site Audit is also used by Pantheon to power Launch Check from within site dashboards.
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...Datapolis
This is the first presentantion of our Guest Expert series featuring SharePoint MVPs talking about workflows and process design in SharePoint. The presentation explains the limitations of SharePoint Designer in deploying workflow, when this tool is enough to model business processes and when you need to look for other solutions.
AGENDA
After watching this webinar you will learn how to:
✓ Improve processes with workflow logic
✓ Select the type of workflow which works the best for your process
✓ Use Visual Studio to create custom workflows for large-scale complex processes
✓ Choose SharePoint Designer, Visual Studio or 3rd party solutions depending on your needs
SPEAKER
Bjoern H. Rapp is Senior Software Engineer at Steria Norge, Microsoft SharePoint MVP, and the author of the book "Beginning SharePoint 2013 Workflows" . In his native Norway he is a leading figure of the local SharePoint community, organizing such events as SharePoint Saturday Oslo. Visit his blog: SharePointViking.com
Load testing with Visual Studio and Azure - Andrew SiemerAndrew Siemer
In this presentation we will look at what web performance testing is and the various types of testing that can be performed. We will then dig into Visual Studio 2013 Ultimate to see that the Visual Studio platform is now a real contender in performance testing automation. And we will see how the Visual Studio integration with Visual Studio Online and Azure can take your web performance tests and spin up impressive load tests in a truly useful way.
Oracle Management Cloud - introduction, overview and getting started (AMIS, 2...Lucas Jellema
Oracle Management Cloud provides seven services that collect metrics and logging from all tiers in the stack and from clouds and on premises systems alike and provide various levels of insight in what is going on or what went on. To find performance bottlenecks, browser incompatibilities, application health issues, infrastructure problems at runtime , OMC provides dasboards, alerting, synthetic tests and log watchers. This presentation gives an overview of OMC, highlights some key features and describes how AMIS got started with APM, Log Analytics and Infrastructure Monitoring.
Recent Gartner and Capgemini studies predict only around 25% of data science projects are successful and only around 15% make it to full-scale production. Of these, many degrade in performance and produce disappointing results within months of implementation. How can focusing on the desired business outcomes and business use cases throughout a data science project help overcome the odds?
The latest distributed system utilizing the cloud is a very complicated configuration in which the components span a plurality of components. Applications for customers are part of products, and service quality targets directly linked to business indicators are needed. Legacy monitoring system based on traditional system management is not linked not only to business indicators but also to measure service quality. Google advocates the idea of site reliability engineering (SRE) and introduces efforts to measure quality of service. Based on the concept of SRE, the service quality monitoring system collects and analyzes logs from various components not only application codes but also whole infrastructure components. Since very large amounts of data must be processed in real time, it is necessary to design carefully with reference to the big data architecture. To utilize this system, you can measure the quality of service, and make it possible to continuously improve the service quality.
Choosing the Right Business Intelligence Tools for Your Data and Architectura...Victor Holman
Watch video presentation and get a FREE performance management kit at
http://www.lifecycle-performance-pros.com
This presentation takes you through the steps of understanding your business intelligence needs and identifying the right tools for you. We discuss the different types of BI tools. We to discuss the criteria for selecting each type of tools. We to discuss popular Business Intelligence vendors and how to rate them. And we are going to discuss the job functions and responsibilities for a typical BI implementation
UI Dev in Big data world using open sourceTech Triveni
He will be sharing his last 10 years of experience in UI Development for Big Data Analytics & ML world using available open-source plethora in the market. How 'UI dev' needs to target big data problems?
Key points to consider while choosing any open-source framework/library for the big data world.
Do you need to write a custom framework or use ready-made open source, when what to choose?
How dev can leverage open source frameworks like Angular, REACT to making big data apps faster?
How you can extend open-source BI tools like Kibana, superset graphana to make UI development tool?
How to show network big data using open source graph libraries?
How to deal with real-time data in Big data UI?
Why use & contribute to open source?
Design UI for future as in Big data world customer problems keep changing with time. Showcasing demo for our real customer's problems, how we achieved using these open source libraries.
The Rise and Benefits of Robotic Process Automation - Thomas HaverQA or the Highway
There is great opportunity in leveraging RPA to embed bots into business processes, but adopting RPA on an enterprise scale requires careful strategic and steady planning.
Logging and Exception handling is one of the easiest tools to use when debugging; but how can you take those massive logs, thousands of errors and effortlessly use them to build a better product? This presentation share our developers team's lesson-learned to expedite releases and fix app issues faster. It discuss best practices that will help your dev team build a culture of logging such as: what to log, how to log it, and how to proactively put it to use.
Building a Real-Time Security Application Using Log Data and Machine Learning...Sri Ambati
Building a Real-Time Security Application Using Log Data and Machine Learning- Karthik Aaravabhoomi
- Powered by the open source machine learning software H2O.ai. Contributors welcome at: https://github.com/h2oai
- To view videos on H2O open source machine learning software, go to: https://www.youtube.com/user/0xdata
Similar to Building high performance and scalable share point applications (20)
Talbott Crowell introduces F# 3.0 including function programming basics, units of measure, and the new F# 3.0 feature called Type Providers for analyzing Big Data
PowerShell is a powerful scripting environment and language for developers and administrators. SharePoint 2010 has built in PowerShell administration commandlets, but you can use this powerful scripting language with any version of SharePoint. Using PowerShell, Talbott will demonstrate how you can build and deploy SharePoint sites for development, testing, proof of concepts, and production. Using an agile methodology, you will learn how to leverage PowerShell scripts for your planning and development process.
This talk describes building Silverlight 3 applications using F#. Both Visual Studio 2008 and 2010 RC are demonstrated. This talk was given by Talbott Crowell at the F# User Group meeting on April 4, 2010 at Microsoft, Cambridge, MA.
Automating SQL Server Database Creation for SharePointTalbott Crowell
In this session, Talbott will discuss the use of the SharePoint API for provisioning content databases in SQL Server to store documents. There are several scenarios that you will want to control and manage the database creation when building specialized applications using SharePoint. Topics include planning and estimating size requirements plus strategies around partitioning data into content databases. Attendees include SQL Server DBA's supporting SharePoint installations and applications. Presented at New England Data Camp 1.0, Jan 24, 2009, at Microsoft Waltham, MA.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
GridMate - End to end testing is a critical piece to ensure quality and avoid...ThomasParaiso2
End to end testing is a critical piece to ensure quality and avoid regressions. In this session, we share our journey building an E2E testing pipeline for GridMate components (LWC and Aura) using Cypress, JSForce, FakerJS…
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
UiPath Test Automation using UiPath Test Suite series, part 4
Building high performance and scalable share point applications
1. Building High Performance and
Scalable SharePoint Applications
Talbott Crowell
ThirdM.com
@talbott
http://www.freeimages.com/photo/858598
2. AGENDA
• Terminology
• Where Performance
occurs in the SDLC
• Test Cases, Use Cases,
Volume of Data
• SharePoint Limits
• OOTB or Custom?
• Provider Hosted Apps
• Know SharePoint’s
Strengths
• What to Avoid
• Developer Dashboard
• Instrumentation
• Phases of SDLC
3. Terminology
• Performance
– Behavior and response time for a single user or
multiple users under load
• Scalability
– Behavior and response time for a growing number
of users and volume under load
5. Scalability
A Greyhound bus performs even better than a Lamborghini when
transporting 100 passengers from Boston to San Francisco
6. Software Development Life Cycle
• Waterfall
• Agile
• Combination
What's missing from this graphic?
• Testing!
– Functional Testing
– Performance Testing
– Scalability Testing
7. NON-FUNCTIONAL
REQUIREMENTS
Make sure you have:
• Performance requirements
• Maximum page load time
• Time for a user to complete a use case
• Volume requirements
• How much volume of data will your solution store at
launch, 6 months after launch, 2 years after launch?
• How many people will use your application
• Scalability requirements
• Number of concurrent users + volume + real world use
cases
8. TEST CASES
• Know BEFORE you start designing, even before you are
laying out the solution architecture what a real world
scenario will look like
1. Use cases
2. Number of users
3. Volume of data
9. Use Cases
• Doesn't need to be specific to the
implementation
• Just describe a user and the high level operations
they need to perform
• Examples
– user logs into the system and finds a purchase order
– user updates a purchase order by assigning date paid
• Don't need to have details of how the user will
accomplish the use cases, just what the user does
10. Number of Users
• How many users will be using your system?
• How often will they be using the system?
• How many people will be using the system
concurrently?
– Look at logs/stats for similar applications at the
company
• What about peak times?
– Example: Recording timesheets, there might be a peak
load in the last few hours they are due, Friday from
noon to 6 PM
http://www.freeimages.com/photo/1391608
11. Volume of Data
• Application might perform just fine with one
to ten Purchase Orders, but what happens
when there are hundreds of thousands?
• Know your target volume
• Simulate that volume using scripts
• Make sure at every step of the way,
volume is considered:
– envisioning, designing, implementing, testing…
http://www.freeimages.com/photo/1209714
12. SharePoint Limitations
• Number of Web Applications on a farm
• Number of security groups and users,
especially when breaking permission
inheritance for site level, list level, or item
level security
• Number of items in a list
– 30 million items per list
• http://bit.ly/limits2013
http://www.freeimages.com/photo/790725
13. IS 30 MILLION ITEMS A
GOOD IDEA?
• Just because it is possible, should you build
your information architecture and/or
application solution architecture on these
limitations?
• IT ALL DEPENDS!
• How are you going to use those items?
• SPQuery?
• SPSiteDataQuery?
• CrossListQueryInfo? (Enterprise Edition)
• Search index and Search API?
14. OOTB OR CUSTOM?
• Out of the box SharePoint functionality
• Lists
• Automatic CRUD screens for free
• Easy to set up
• Can handle many situations
• Custom solutions
• Database
• More development time
• May perform/scale better in certain
situations
15. SOLUTION ARCHITECTURE
• SharePoint stores data in lists
• Lists are abstractions that are
physically represented as
records in the content
database
• If you are building an
application in SharePoint,
consider the options in
storing the data in its own
database
SQL
16. SHAREPOINT ONLINE VERSUS
SHAREPOINT ON PREM
• Fully Trusted Code is not allowed on Office
365
• More flexibility on premise
• Higher maintenance cost for on premise
17. SHAREPOINT 2013
PROVIDER HOSTED
•Custom Database
• ASP.NET development model
• Connect to SharePoint using
CSOM
• Required security token and
framework
18. Know SharePoint’s Strengths
• Search is very powerful
– Leverage for very quick
results retrieving from
large sets of data
– Take in account the
time to index the data
– Does it take 15 minutes
or a day to crawl your
data set?
http://www.freeimages.com/photo/1369150
19. AVOID
• Looping though items
• Use targeted CAML queries instead with
SPQuery, SPSiteDataQuery, etc..
• Using Web Parts when they aren’t needed
• Web parts are great for composable pages or
reusable components
• Throwing Exceptions for normal flow
• Exceptions should be used when something
exceptional goes wrong (network is down,
database is unreachable)
• Very slow, and cause major performance issues
20. DEVELOPER DASHBOARD
• Free tool for analyzing web pages in
SharePoint
• Turn it on in developer environments
(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = ”On”
• Can turn it on in stage/production when
needed to troubleshoot in realtime
• Leverage SPMonitoredScope
• http://bit.ly/devdash
21. INSTRUMENTATION
• Leverage ULS logging
• Implement your own logging
• Incorporate a third party logging or
instrumentation product or framework
22. PHASES – PART 1
• Envision
• Gather Non-functional requirements
• Volume, user count, and use cases
• Design
• Keep in mind the volume and scalability
• POC areas you aren’t sure of
• Develop
• Build out the system
• Use tools like developer dashboard
23. PHASES – PART 2
• Test
• Make sure to test with artificial volume of data
• functional (does it work)
• performance (does it meet required user
experience response times)
• scalability (does it handle load)
• You may need load tools for this
• Large corporations have load tools and teams
• Smaller companies will rely on devs or QA
• Visual Studio has load tools http://bit.ly/vsload
24. PHASES – PART 3
• User Acceptance
• Pilot
• Production
• Monitor
• Leverage instrumentation
• Maintenance
• Fix performance and scalability issues before
your users notice them
• Proactively look at error logs for ways to clean up
25. REVIEW
• What is faster, a lambo or a bus?
• When should you be thinking
about performance and
scalability?
26. RESOURCES
• Bit.ly Bundle:
• https://bitly.com/bundles/talbott/2
• Blog:
• http://talbottcrowell.wordpress.com/
• Twitter:
• https://twitter.com/talbott
• Office Dev Patterns and Practices on GitHub:
• http://bit.ly/o365pnp
27. Was made possible by the generous
support of the following sponsors…
And by your participation… Thank you!
28. Join us for the raffle & SharePint
following the last session
Be sure to fill out your eval
form & turn in at the end of the
day for a ticket to the BIG
raffle!