1. The document summarizes best practices and patterns discussed at a Boston Salesforce Developers Group meeting, including triggers, controllers, SOQL, callouts, and batchable/schedulable jobs.
2. It recommends separating business logic from user interface code, using mock objects in tests to isolate units, and having a single "DatabaseJockey" class perform all DML for consistency.
3. Other tips include treating triggers like workflow rules, returning errors from controllers to the user interface, querying data once through a shared SOQL class, and abstracting callouts to external services. The takeaway was to establish patterns and evolve them over time.
Jboss Application Server training-course-navi-mumbai-jboss-course-provider-na...VibrantGroup
Best Jboss Application Server course provider Navi Mumbai, Jboss Application Server course details,Jboss Application Server coaching center Navi Mumbai,Jboss Application Server course syllabus navi mumbai,Jboss Application Server courses Navi Mumbai,Jboss Application Server course training center Navi Mumbai,Jboss Application Server courses
What is DevOps? It’s a fairly hot term in today’s application development and operations space,but there are many different definitions as to what DevOps really is. Ultimately, DevOps is abouthow teams build software, deploy software and maintain it throughout its lifecycle. There is nosingle, right answer to the question, but there are a number of tools and strategies that can helpcustomers adopt a winning DevOps process that allows dev and operations teams to moreproductive together.In this session, the audience will learn what DevOps is at a high level, provide strategies for howto implement a DevOps process that fits their organization’s needs and how the MicrosoftApplication Lifecycle Management (ALM) tooling can help with this. As part of the session,attendees can expect to learn how to set up the Microsoft ALM stack for their teams and how touse it effectively in their software development lifecycle, regardless of the role each individual plays on the team.
Lessons learned in building a model driven software factoryJohan den Haan
These are the slides of my talk at Code Generation 2010. I share my experiences during the development of a Model-Driven Software Factory. This factory is based on multiple Domain-Specific Languages (DSLs), together describing a Service-Oriented Business Application. All DSLs have a graphical concrete syntax and are aimed at involving domain experts in the software development process. The factory has been used for many projects in the last five years and its user base is growing fast.
Authors' perspectives around software factories. Discussion points - What are the realities, how software development has evolved and how will the future look. Will software go the factory way - a la the manufacturing industry? Or is it closer to the construction industry? Was presented to an audience of college students and faculty.
Jboss Application Server training-course-navi-mumbai-jboss-course-provider-na...VibrantGroup
Best Jboss Application Server course provider Navi Mumbai, Jboss Application Server course details,Jboss Application Server coaching center Navi Mumbai,Jboss Application Server course syllabus navi mumbai,Jboss Application Server courses Navi Mumbai,Jboss Application Server course training center Navi Mumbai,Jboss Application Server courses
What is DevOps? It’s a fairly hot term in today’s application development and operations space,but there are many different definitions as to what DevOps really is. Ultimately, DevOps is abouthow teams build software, deploy software and maintain it throughout its lifecycle. There is nosingle, right answer to the question, but there are a number of tools and strategies that can helpcustomers adopt a winning DevOps process that allows dev and operations teams to moreproductive together.In this session, the audience will learn what DevOps is at a high level, provide strategies for howto implement a DevOps process that fits their organization’s needs and how the MicrosoftApplication Lifecycle Management (ALM) tooling can help with this. As part of the session,attendees can expect to learn how to set up the Microsoft ALM stack for their teams and how touse it effectively in their software development lifecycle, regardless of the role each individual plays on the team.
Lessons learned in building a model driven software factoryJohan den Haan
These are the slides of my talk at Code Generation 2010. I share my experiences during the development of a Model-Driven Software Factory. This factory is based on multiple Domain-Specific Languages (DSLs), together describing a Service-Oriented Business Application. All DSLs have a graphical concrete syntax and are aimed at involving domain experts in the software development process. The factory has been used for many projects in the last five years and its user base is growing fast.
Authors' perspectives around software factories. Discussion points - What are the realities, how software development has evolved and how will the future look. Will software go the factory way - a la the manufacturing industry? Or is it closer to the construction industry? Was presented to an audience of college students and faculty.
TLC2018 Thomas Haver: Transform with Enterprise AutomationAnna Royzman
Thomas Haver explains how to build a robust automation solution across the Enterprise to improve application quality, testing efficiency, and lower operational costs. He shows how to leverage all current resources to achieve this goal without affecting project delivery time at Test Leadership Congress 2018.
http://testleadershipcongress-ny.com
Structuring the right team for DevOps without Re-Organization. I presented this at DevOps Fusion 2015. Tips include rapid feedback loop, value stream analysis, etc.
What’s new in Rational collaborative lifecycle management 2011?IBM Danmark
Jan Ekstrøm, Rational Solution Architect - What’s new in Rational Collaborative Lifecycle Management 2011?
Præsentationen er fra Jazz Roadshow 2011.
Se mere på: http://www.smarterbusiness.dk
Automation Culture: Essential to Agile SuccessTechWell
For organizations developing large-scale applications, transitioning to agile is challenging enough. If your organization has not yet adopted an automation culture, brace yourself for a big surprise because automation is essential to agile success. From the safety nets provided by automated unit and acceptance tests to the automation of build, build verification, and deployment processes, the iterative nature of agile demands a culture of automation across your engineering organization. Geoff Meyer shares lessons learned in adopting a test automation culture as the Dell Enterprise Systems Group simultaneously adopted Scrum and agile processes across its entire software product portfolio. Learn to address the practical challenges of establishing an automation culture at the outset by ensuring that your organizational makeover incorporates changes to your hiring, staffing, and training practices. Find out how you can apply automation beyond the Scrum team in areas including continuous integration, scale and stress testing, and performance testing.
A discussion of deployment options for IBM Collaborative Life Cycle Management. The IBM Rational CLM products consist of Rational Team Concert, Rational Requirement Composer and Rational Quality Manager. This presentation covers the different options of integrating them into an existing software development environment.
Eliminate up to 70% of Your Test Automation CostsJade Global
Join us to understand how you can eliminate license costs, lower implementation efforts and reduce maintenance.For more detail please visit: http://www.jadeglobal.com
Xenon: Jade Automation Solution Automation | Testing Tools | Agile Test Autom...Jade Global
Learn how to thoroughly test your environment while reducing risk, test cycle times, test cost, and business user involvement. Jade Global’s revolutionary Automation Testing framework Xenon™ will change the way you think about testing.
Know more, please visit: http://xenon.jadeglobal.com/
Exploratory Testing Kari Kakkonen BTD 2017Kari Kakkonen
My talk on Exploratory Testing basics and its future at Belgium Testing Days / BNTQB Test Summit 2017 https://btdconf.org/ bit of slides revamp included
ALM with TFS: From the Drawing Board to the CloudJeremy Likness
Managing the lifecycle of software development can be a daunting task, especially after having adopted an Agile methodology that has you moving faster than ever. That is why it is more important than ever to have the right tools in place that allow you to effectively manage all facets of your SDLC from requirements gathering to testing and deployment. In the suite of tools available in the space of Application Lifecycle Management (ALM), Team Foundation Server (TFS) is a stand out. Let us show you how your organization can benefit from the advanced capabilities and unique configurability of TFS to successfully deliver your software development projects on time and on budget.
AI algorithms offer great promise in criminal justice, credit scoring, hiring and other domains. However, algorithmic fairness is a legitimate concern. Possible bias and adversarial contamination can come from training data, inappropriate data handling/model selection or incorrect algorithm design. This talk discusses how to build an open, transparent, secure and fair pipeline that fully integrates into the AI lifecycle — leveraging open-source projects such as AI Fairness 360 (AIF360), Adversarial Robustness Toolbox (ART), the Fabric for Deep Learning (FfDL) and the Model Asset eXchange (MAX).
TLC2018 Thomas Haver: Transform with Enterprise AutomationAnna Royzman
Thomas Haver explains how to build a robust automation solution across the Enterprise to improve application quality, testing efficiency, and lower operational costs. He shows how to leverage all current resources to achieve this goal without affecting project delivery time at Test Leadership Congress 2018.
http://testleadershipcongress-ny.com
Structuring the right team for DevOps without Re-Organization. I presented this at DevOps Fusion 2015. Tips include rapid feedback loop, value stream analysis, etc.
What’s new in Rational collaborative lifecycle management 2011?IBM Danmark
Jan Ekstrøm, Rational Solution Architect - What’s new in Rational Collaborative Lifecycle Management 2011?
Præsentationen er fra Jazz Roadshow 2011.
Se mere på: http://www.smarterbusiness.dk
Automation Culture: Essential to Agile SuccessTechWell
For organizations developing large-scale applications, transitioning to agile is challenging enough. If your organization has not yet adopted an automation culture, brace yourself for a big surprise because automation is essential to agile success. From the safety nets provided by automated unit and acceptance tests to the automation of build, build verification, and deployment processes, the iterative nature of agile demands a culture of automation across your engineering organization. Geoff Meyer shares lessons learned in adopting a test automation culture as the Dell Enterprise Systems Group simultaneously adopted Scrum and agile processes across its entire software product portfolio. Learn to address the practical challenges of establishing an automation culture at the outset by ensuring that your organizational makeover incorporates changes to your hiring, staffing, and training practices. Find out how you can apply automation beyond the Scrum team in areas including continuous integration, scale and stress testing, and performance testing.
A discussion of deployment options for IBM Collaborative Life Cycle Management. The IBM Rational CLM products consist of Rational Team Concert, Rational Requirement Composer and Rational Quality Manager. This presentation covers the different options of integrating them into an existing software development environment.
Eliminate up to 70% of Your Test Automation CostsJade Global
Join us to understand how you can eliminate license costs, lower implementation efforts and reduce maintenance.For more detail please visit: http://www.jadeglobal.com
Xenon: Jade Automation Solution Automation | Testing Tools | Agile Test Autom...Jade Global
Learn how to thoroughly test your environment while reducing risk, test cycle times, test cost, and business user involvement. Jade Global’s revolutionary Automation Testing framework Xenon™ will change the way you think about testing.
Know more, please visit: http://xenon.jadeglobal.com/
Exploratory Testing Kari Kakkonen BTD 2017Kari Kakkonen
My talk on Exploratory Testing basics and its future at Belgium Testing Days / BNTQB Test Summit 2017 https://btdconf.org/ bit of slides revamp included
ALM with TFS: From the Drawing Board to the CloudJeremy Likness
Managing the lifecycle of software development can be a daunting task, especially after having adopted an Agile methodology that has you moving faster than ever. That is why it is more important than ever to have the right tools in place that allow you to effectively manage all facets of your SDLC from requirements gathering to testing and deployment. In the suite of tools available in the space of Application Lifecycle Management (ALM), Team Foundation Server (TFS) is a stand out. Let us show you how your organization can benefit from the advanced capabilities and unique configurability of TFS to successfully deliver your software development projects on time and on budget.
AI algorithms offer great promise in criminal justice, credit scoring, hiring and other domains. However, algorithmic fairness is a legitimate concern. Possible bias and adversarial contamination can come from training data, inappropriate data handling/model selection or incorrect algorithm design. This talk discusses how to build an open, transparent, secure and fair pipeline that fully integrates into the AI lifecycle — leveraging open-source projects such as AI Fairness 360 (AIF360), Adversarial Robustness Toolbox (ART), the Fabric for Deep Learning (FfDL) and the Model Asset eXchange (MAX).
Cloud Applications SCM20181111.pptxOATUG MEMBERS SHARE THE VALUE OF THEIR MEM...BobBullman
OAUG CLoud presentation - The Oracle Applications & Technology Users Group (OATUG), formerly the Oracle Applications Users Group (OAUG), is the world’s largest education, networking and advocacy forum for Oracle Applications & Technology users. membership@oatug.org
Oracle Applications & Technology Users Group
One Glenlake Parkway NE
Suite 1200
Atlanta, GA 30328
USA
(404) 240-0897Assign Responsibilities to Internal Users
If you would like to utilize the internal user functionality of Oracle iSupplier Portal, you must assign the iSupplier Portal Internal View responsibility to users.
To assign the iSupplier Portal Internal View responsibility to users:
From the Oracle System Administrator menu, select Security > User > Define.
Enter the name of the user to whom you wish to grant the responsibility.
In the Direct Responsibilities section, enter iSupplier Portal Internal View in the Responsibility text box.
Click Save.Determines the date that the application will use to process work confirmations
If you set the profile option value to Yes, then while processing a work confirmation the application uses the current date on which the work confirmation is approved. When the application validates the date, because, the current date is in the current open General Ledger or Control Purchasing, or Inventory accounting period the work confirmation is approved without any errors. Note that if there is an approval chain, then the date of final approval is taken as the approval date.
If you set the profile option to No, then the application considers this as null and uses the work confirmation submission date for processing. The application validates the submission date to ensure that it is in an open General Ledger or Control Purchasing, or Inventory period. If the submission date is not in an open period, then the work confirmation is not processed.OAUG CLoud presentation - The Oracle Applications & Technology Users Group (OATUG), formerly the Oracle Applications Users Group (OAUG), is the world’s largest education, networking and advocacy forum for Oracle Applications & Technology users. membership@oatug.org
Oracle Applications & Technology Users Group
One Glenlake Parkway NE
Suite 1200
Atlanta, GA 30328
USA
(404) 240-0897Assign Responsibilities to Internal Users
If you would like to utilize the internal user functionality of Oracle iSupplier Portal, you must assign the iSupplier Portal Internal View responsibility to users.
To assign the iSupplier Portal Internal View responsibility to users:
From the Oracle System Administrator menu, select Security > User > Define.
Enter the name of the user to whom you wish to grant the responsibility.
In the Direct Responsibilities section, enter iSupplier Portal Internal View in the Responsibility text box.
Click Save.Determines the date that the application will use to process work confirmations
If you set the profile option value to Yes, then while processing a work confirmation the application uses the
Scaling Agile - Bejoy Jaison - Keynote at Agile and DevOps Conference BrisbaneBejoy Jaison
Leaning into diverse experiences from 18 years of large-scale product engineering and ownership, Bejoy highlights several factors across a broad spectrum of areas that contribute to making agile work at scale.
Agile Development – Why requirements matter by Fariz SaracevicAgile ME
The clear benefits of agile development is a better collaboration, incremental delivery, early error detection and the elimination of unnecessary work—have made it the default approach for many teams. Some developers have questioned whether requirements fall into the category of unnecessary work, and can be cut down or even completely eliminated. Meanwhile, teams developing complex products, systems and regulated IT continue to have requirements-driven legacy processes.
So how does requirements management fit in an agile world? This meetup will take a look at requirements management and how it can bring significant value to agile development in regulated IT and complex product development projects, and sets out the characteristics of an effective requirements management approach in an agile environment.
Software Testing in a Distributed EnvironmentPerforce
Distributed development across countries creates both challenges and opportunities for the production of high quality software. We’ll look at new ways of achieving automation for testing software in a continuous delivery context, using parallelization techniques and automated analysis fully integrated with a reliable and scalable SCM system. A new optimal method of testing common code in similar branches is presented along with the semantic merging of testing results.
Just the Job: Employing Solr for Recruitment Search -Charlie Hull lucenerevolution
See conference video - http://www.lucidimagination.com/devzone/events/conferences/ApacheLuceneEurocon2011
Using a case study on a major European executive recruitment company, we will show how we used Apache Lucene/Solr to build powerful, flexible, accurate and scalable search services over tens of millions of CVs and candidate records, allowing the company to completely restructure their IT provision for both local and national offices.
by Brad Appleton,
Presented August 2006 at Architecture & Design World 2006; Chicago, IL USA
Software Configuration Management Patterns for Agile Software Architectures.
During the Agile Austria Conference 2017, Graz, Austria
Speaker: Fariz Saracevic
This session will examine how requirements management can bring significant value to agile development teams.
Improving The Quality of Existing SoftwareSteven Smith
Presented at DevReach 2013.
As developers, most of our time is spent working on existing software. Sure, occasionally we get the chance to fire up a new Solution in Visual Studio, and that can be exciting. But after the first day, we find ourselves once more having to deal with the work we did yesterday. And today, we know more than we did yesterday, so there are things we’d do differently, if we had it to do over.
Over time, software rots. If we’re not diligent, our beautiful code can degrade into a worthless mess. Keeping our code in working condition is no different than changing the oil in our car – it’s preventive maintenance. In this session, Steve will look at some common places to look for signs of degradation in existing applications, and steps to take to improve the code. Examples will use C# and primarily ASP.NET.
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...DevOps.com
As a cloud native application grows in size—more microservices, more dependencies, more teams—there’s a corresponding increase in…
Complexity: Over time, the application becomes a lot harder for a single developer to reason about and contribute to. Staying on top of READMEs and managing cross-team communication is practically a full-time job.
Scaling challenges: The reality of building, deploying, and testing a 100+ service distributed application means developers are going to spend a lot of time sitting around waiting.
But it doesn’t have to end up this way, and there are concrete steps that DevOps engineers can take to keep their developers moving quickly even as an application grows. In this webinar, we’ll show you how to use open source products to:
Make it easy for your developers to code and run on-demand tests against a production-like environment—without having to constantly deal with the complexity that comes with a large application
Codify the relationship between all your services and tests, making your system self-documented and easy to understand
Keep your integration tests running fast so that devs can more easily write and debug their tests and get the quick feedback loops they need
Facilitate remote, in-cluster development and give every developer their own isolated namespace—and never again ask a developer to deploy the application on their laptop
Similar to Apex Enterprise Patterns Galore - Boston, MA dev group meeting 062719 (20)
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...Juraj Vysvader
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I didn't get rich from it but it did have 63K downloads (powered possible tens of thousands of websites).
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Mind IT Systems
Healthcare providers often struggle with the complexities of chronic conditions and remote patient monitoring, as each patient requires personalized care and ongoing monitoring. Off-the-shelf solutions may not meet these diverse needs, leading to inefficiencies and gaps in care. It’s here, custom healthcare software offers a tailored solution, ensuring improved care and effectiveness.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
2. 2
Agenda • Welcome!
• Why are we here?
• Best Practices & Demos
o Triggers, DML, Tests
o Controllers (LWC, Aura, VF) & SOQL
o Callouts
o Batchable & Schedulable jobs
• Takeaways
June 2019 Boston Salesforce Dev Group Meeting
4. 4
Slalom is a modern consulting firm
focused on strategy, technology, and
business transformation.
Slalom is a modern consulting firm
focused on strategy, technology, and
business transformation.
5. 5
strategy
Redefine what’s possible
Go beyond the expected. We help you move confidently through
ambiguity and risk, focus on your customer needs, and deliver
sustainable business value.
technology
We analyze, architect, and co-create
Learn from your data, create incredible digital experiences, or make
the most of new tech. We blend design, engineering, and analytics
expertise to help you build the future.
transformation
We deliver with you
New technologies. Shifting customers. Industry disruption. Business
moves fast, and we specialize in working through change with you.
Whatwedo
We bring impactful customer
experiences to life quickly
2,250+
Salesforce certifications
949
Projects for 318
clients in 2018
600+
Consultants with
Salesforce
experience
Platinum Consulting Partner
2x Partner Innovation Award Winner
Sales Cloud
Service Cloud
Community Cloud
Analytics Cloud
Einstein
Field Service
Marketing Cloud
Configure, Price, Quote (CPQ)
MuleSoft
Competencies
6. 6
We believe in a world in which every
person loves their work and life.
We put
people first.
7. 7
We are a B Corp on a mission to revolutionize energy with
simple, powerful solar solutions.
8. 8
WHAT WE DO
88
HOME SOLAR LOANS COMMUNITY SOLAR SOLAR DEVELOPMENT
Improves solar financing
accessibility for
households with
viable rooftops.
Expands access to solar
for residents and small
businesses, regardless of
roof viability.
Provides environmental
and economic value by
developing large scale
community solar arrays.
10. 10
Several new developers introduced to the
team
Big classes, especially tests
Distinct user stories require updating the
same class resulting in merge conflicts
Most business logic initiated by trigger
Frequent encounters with governor limits
Duplicated code
Ø Where to start development?
Ø How to identify bug root cause?
A typical
problem
• Lines of code:
• 75k in .cls
• 12k in .cmp
• 12k in .js
• 4k in .page
• 500 in .trigger
June 2019 Boston Salesforce Dev Group Meeting
11. 11
Separation of Concerns
Base Size of
Solution or Code
Number of
Developers
Requirements Scope Number of Client Types & Interactions SOC
Appropriate?
Small 1 to 2 •Well known and unlikely to change
•One-off solutions
•Limited number of objects
•Standard UI
•Simple UI / Triggers
•No Batch Mode
•No API
•No Mobile
Typically not
Small to Medium 1 to 6 •Well known but may need to evolve rapidly
•Growing number of objects and processing interactions
•Product deliverable or larger duration projects
•Standard UI
•Advanced VF / Lightning
•Batch Mode
•API (on roadmap)
•Mobile (on roadmap)
Worth
considering
Large > 6 •Scope driven by multiple customer and user types
•Large number of objects
•Generic product or solution aimed at Mid to Enterprise
market with Customer or Partner integrations
•Growing development team!
•Standard UI
•Advanced VF / Lightning
•Batch Mode
•Developer / Partner API
•Mobile Clients
•New Platform Feature Ready, Chatter Actions!
Definite benefits
https://trailhead.salesforce.com/en/content/learn/modules/apex_patterns_sl/apex_patterns_sl_soc
June 2019 Boston Salesforce Dev Group Meeting
12. 12
12
Financial Force Apex Common: https://github.com/financialforcedev/fflib-apex-common/
Well Documented:
Actively discussed:
WHAT WE LIKED
Actively updated:
13. 13
13
WHAT WE DIDN’T LIKE
Heavyweight:
Hard for us to use it all from the start, especially ApexMocks
The light-version fork is a few years old:
14. 14
Performing SOQL and DML in
tests is expensive … and adds to
the overall time it takes to execute
all application tests, which
becomes important once you start
to consider Continuous
Integration.
Andrew Fawcett
Author of Force.com Enterprise Architecture
15. 15
Build with unit tests in mind
June 2019 Boston Salesforce Dev Group Meeting
Considerations
• Salesforce requires code coverage for all Apex.
• 100% code coverage is a byproduct of well written tests.
• Unit tests are a first-order concern.
Responsibilities
• Every Apex class should have a corresponding test class.
• Mocks should be used to ensure that unit tests in a test class
only exercise the functions and methods within the
associated class.
• Integration tests should ideally exist separately from unit
tests, to reduce the time to run local tests for CI/CD.
16. 16
What if triggers looked more like workflow rules?
Trigger “workflows”
June 2019 Boston Salesforce Dev Group Meeting
Considerations
• Trigger context variables are only available in the context of
a running DML operation.
• Recursion can get messy, across triggers, workflow rules
and Lightning processes (i.e., processes created with
Lightning Process Builder).
Responsibilities
• Evaluate entry criteria.
• Execute actions.
• Keep Trigger context variable references exclusively in
.trigger files.
17. 17
Workflow Concept Trigger Workflow Concept
Object TriggerWorkflow__mdt.SobjectName__c
Rule Name Apex class name ending with Workflow
Description Apex class comment block
Evaluate the rule when a record is "created" or
"created, and every time it's edited"
TriggerWorkflow__mdt.IsOnInsert__c and
TriggerWorkflow__mdt.IsOnUpdate__c
Evaluate the rule when a record is "created, and
any time it's edited to subsequently meet criteria"
TriggerWorkflow__mdt.IsOnInsert__c and
TriggerWorkflow__mdt.IsOnUpdate__c with
custom logic in the workflow's qualify method
Rule Criteria Custom logic in the workflow's qualify method
Active TriggerWorkflow__mdt.IsActive__c
Workflow Actions
executeBefore() and executeAfter()
methods in the workflow class
20. 20
Why not have a “DJ” in your org harmonizing your data?
DatabaseJockey
June 2019 Boston Salesforce Dev Group Meeting
Considerations
• Reduce time to run local tests by minimizing the number of
Apex tests which execute DML operations.
Responsibilities
• Insert, update, delete, undelete SObject records.
• Be the only Apex class which performs DML operations.
28. 28
Just an interface between the user and all available services
Controllers (LWC, Aura, VF)
June 2019 Boston Salesforce Dev Group Meeting
Considerations
• Different options for returning errors to the end-user
• Sharing (CRUD, FLS, record-level) is not enforced by default
• (VF) May need to maintain state of the end-user application
Responsibilities
• Call a single Service class to execute business logic
• Manage anything specific to the client or user interface
• Error handling
• Enforcing sharing
• If simple enough, replace with Lightning Data Service (or
Visualforce Remote Objects)
29. 29
One query to rule them all (no matter where called from)
SOQL
June 2019 Boston Salesforce Dev Group Meeting
Considerations
• Introduces dependency on database fields & objects
• Records queried may be shared in different functions, with
different data populated
• By default, sharing (CRUD, FLS, record-level) is based on the
running user
Responsibilities
• Provide a predictable set of fields and order of records returned
• Ensure data is queried only when necessary (aka once)
• Control access to related object fields using wrapper classes
30. 30
Share your services or take advantage of others’
Callouts (Inbound & Outbound)
June 2019 Boston Salesforce Dev Group Meeting
Considerations
• Security for accessing the endpoint and the data returned
• Versioning & backwards compatibility
• Order of operations with DML
Responsibilities
• Abstract callouts in separate classes to avoid tight dependencies
• Isolate external-facing Apex REST classes from the Service classes
they delegate to
• Handle exceptions and error messages appropriately
31. 31
Takeaways
June 2019 Boston Salesforce Dev Group Meeting
• You don’t have to start from scratch.
• Establish a pattern and stick with it.
• Expect your pattern to change.
• Expect inconsistencies in your code base as your patterns
continue to evolve over time.
• Even if it’s by yourself, create a style guide and think about it
as you go. You can have plenty of interesting conversations
with your past self and your future self!