Agile for Enterprise Computing in the Context of Implementing SAAS applications
Our Experience with a SAAS Application
Our team is being trained on agile methods. One primary difference is that we are implementing a SAAS tool rather than creating our own software and delivering it via Agile methodologies. Thus we are in the process of re-thinking what works and what needs to be adjusted to the traditional Agile methods.
Traditional Goals of Agile
Per Chat GPT but very good: The traditional goals of Agile in software development are centered around delivering value to customers quickly and efficiently, while being able to adapt to changing requirements. Here's a breakdown of these goals:
1.??? Customer Satisfaction through Early and Continuous Delivery: Agile prioritizes delivering valuable software to customers frequently, focusing on shorter timescales ranging from a couple of weeks to a couple of months.
2.??? Welcome Changing Requirements: Agile methods are designed to accommodate and even welcome changes in requirements, even late in the development process. This flexibility allows for improved product relevance and value.
3.??? Deliver Working Software Frequently: The focus is on the frequent delivery of working software, which allows for regular feedback and continuous improvement.
4.??? Collaboration Between Business Stakeholders and Developers: Agile emphasizes close, daily cooperation between business people and developers. This collaboration ensures that development is closely aligned with customer needs and business goals.
5.??? Support, Trust, and Motivate the People Involved: Agile recognizes that the most important aspect of any project is the people working on it. It emphasizes creating an environment of support, trust, and motivation.
6.??? Enable Face-to-Face Conversations: Direct, face-to-face communication is considered the most efficient and effective method of conveying information to and within a development team.
7.??? Working Software as the Primary Measure of Progress: In Agile, progress is measured by the delivery of functional software, rather than traditional metrics like 'percentage complete'.
8.??? Sustainable Development Pace: Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
9.??? Continuous Attention to Technical Excellence and Good Design: Regular focus on technical excellence and good design enhances agility. This involves constantly improving the code and addressing technical debt.
10. Simplicity: Emphasizing simplicity, or the art of maximizing the amount of work not done, is essential. This means creating just enough to get the job done without overcomplicating or overproducing.
11. Self-Organizing Teams: Agile methods encourage teams that organize themselves, which are believed to be more likely to develop the best architectures, requirements, and designs.
12. Reflect, Tune, and Adjust Behavior Regularly: Regular reflection on how to become more effective and adjusting behavior accordingly is a key part of Agile.
This summary per Chat GPT and reflected in the graphic attached with this article explains the key steps and processes. I checked the boxes that I felt were relevant in the SAAS application context and which were irrelevant.
Change Processes for SAAS
I asked Chat GPT how to adjust these principles when using a third party tool and they provided a solid answer, see below. My additional comments are in italics.
1.??? Hiring Specialized Talent: Companies should focus on hiring or training developers and IT professionals who are skilled in integrating and customizing SaaS solutions. These individuals should have expertise in APIs, data integration, and customization capabilities of the SaaS platforms. Agreed - in our context, we search for developers who have specific experience with Apptio or similar SAAS analytical tools where possible so that they get up to speed quickly
2.??? Process Re-engineering: Rather than forcing SaaS solutions to fit into existing processes, companies should be open to re-engineering their processes to align with the capabilities of the SaaS software. This can lead to more efficient workflows and better utilization of the software's features. Since we support other teams with our SAAS tool, we try to show the available features and how they can improve existing processes, but we work according to the direction of our customer.
3.??? Leveraging SaaS for Innovation: Utilize the advanced features of SaaS solutions to drive innovation within the company. This can involve using analytics, AI capabilities, and other advanced tools provided by the SaaS vendor to gain insights and improve business operations. Since our SAAS provider has delivered IT Planning solutions to dozens of customers, we find that they are able to provide valuable insights into processes and execution. Many of the features we want are desired by other customers, as well.
领英推荐
4.??? Vendor Collaboration and Partnership: Develop a collaborative relationship with SaaS vendors, viewing them as partners rather than just providers. This can help in getting better support, training, and insights into the roadmap of the product. My company has been an Apptio customer since 2012 and we frequently talk with them about improvements and listen to their examples for peer companies in terms of size and scale.
5.??? Focused Training and User Adoption: Invest in targeted training programs to ensure that staff are adept at using the SaaS applications. User adoption is key to realizing the full benefits of these solutions. Our team has been heavily investing in training and outreach to drive increased benefits of this application.
6.??? Optimizing Licenses and Subscriptions: Manage and optimize SaaS licenses and subscriptions to ensure they are being used effectively and offer the best value for the money. This involves regularly reviewing the usage and ROI of each SaaS product. We pay by spend under management so the best way to achieve maximum value is to leverage these tools across a wider base of users, since the incremental cost of adding another customer is near zero.
7.??? Regularly Assessing SaaS Ecosystem: Continuously evaluate the SaaS ecosystem to ensure that each tool is still the best fit for its intended purpose. This includes staying informed about new features, updates, and alternative solutions in the market. I am part of the Technology Business Management ecosystem which is vendor agnostic and we are continually looking at alternatives in the space
8.??? Data Integration and Management: Focus on the effective integration of SaaS solutions with internal data systems to ensure seamless data flow and integrity across the enterprise. Data integration requires more effort than delivery and support of the tool itself. We also need to continually upgrade our data feeds since the underlying systems are being changed and we re-organize regularly, which causes other data quality issues.
9.??? Security and Compliance: While SaaS providers generally offer robust security measures, enterprises still need to ensure that data security, privacy policies, and compliance requirements are consistently met. We benefit from Apptio's investment in this space and have many options for differing level of user access in the tool that we can establish and manage ourselves without having to adjust the code
10. Agile Approach to Implementation: Adopt an agile approach to implementing and scaling SaaS solutions, which allows for flexibility and rapid adaptation to changing business needs. We look at the needs of our key customers, available functionality, and the level of effort required to manage changing data sets and internal re-organization when we do our PI Planning each month.
By focusing on these aspects, companies can better align their SaaS implementations with business goals, drive efficiency, and gain a competitive edge. This is a solid summary by Chat GPT, we are looking to obtain maximum value for our investment.
How to Adjust Agile (per GPT)
Per Chat GPT: In an environment where the focus is on implementing and optimizing SaaS solutions, rather than developing software from scratch, the Agile methodology can indeed be adapted. The key is to shift the Agile principles from software development to process optimization and effective utilization of SaaS products. Here's how Agile methods can be modified for this context:
1.??? Emphasize Continuous Improvement of Processes: Agile's iterative approach can be applied to continuously improve business processes and workflows to better align with the capabilities of the SaaS solutions. This involves regularly reviewing and adjusting processes in light of new software features and user feedback. We do add features and capabilities in iterations tied with our annual planning process and our monthly forecasting process, as well as quarterly reporting needs.
2.??? Focus on User Training and Adoption: Agile sprints could include specific goals related to user training and adoption. Each iteration can focus on different aspects of the SaaS tool, ensuring gradual and comprehensive user familiarization. User outreach, training and adoption is a primary focus for our team
3.??? Enhance Collaboration with SaaS Vendors: In Agile, the customer is a key part of the development team. In the SaaS context, this could translate to forming a collaborative relationship with the SaaS vendor, treating them as an integral part of the team to provide feedback, request features, and understand best practices. We invest in support from our vendor and work to maximize its value
4.??? Prioritize Data Management and Quality: Given the importance of data quality in utilizing SaaS solutions effectively, Agile teams should prioritize tasks related to data cleaning, integration, and management in their backlogs. Along with user outreach and iteratively adding features, constant work on data quality and improvement is a top priority of our team.
5.??? Iterative Approach to Integration: Approach the integration of SaaS solutions in an iterative manner, adding more complex features and integrations over time rather than trying to do everything at once. This helps in managing risks and ensuring smoother adoption. We set goals for MVP launches and then add features and reports to improve the user experience
6.??? Adaptable Roadmaps and Planning: Agile roadmaps and planning sessions should be adapted to focus on optimizing the use of SaaS tools. This could include planning for the rollout of new features, integration with other tools, and process adaptations. We plan and re-plan based on what is a priority at the company and for our main customers
7.??? Feedback Loops with Users and Stakeholders: Regularly gather feedback from users and stakeholders about the effectiveness of the SaaS tools and the processes surrounding them. Use this feedback to inform future iterations. We do outreach in many forums and work to improve our responsiveness
8.??? Agile Documentation: Keep documentation dynamic to reflect the evolving use and understanding of the SaaS tools. Documentation should be living and continuously updated to reflect changes in processes and software usage. We spend a lot of time on documentation in various formats and places to reach different types of users
9.??? Flexible Teams with Diverse Skills: Agile teams working with SaaS solutions should have a mix of skills, including process management, data analytics, and technical expertise related to the specific SaaS products. Our teams have a mix of skills, and soft skills (outreach / communication) are also particularly important
10. Measure Success Based on Outcome and Adoption: Shift the focus of Agile metrics from traditional software development metrics to those that measure the success of process improvements, user adoption rates, and the overall business impact of the SaaS solutions. We measure the quality of the processes, engagement, and various other measures but ultimately it is satisfaction of our key customers
By adapting Agile methodologies in these ways, organizations can effectively manage the implementation and optimization of SaaS solutions, ensuring they are aligned with business objectives and deliver maximum value. Good summary per Chat GPT