Building an accurate and reliable application inventory begins with application discovery, a systematic process of identifying and gathering data about applications across the organization. The discovery process is essential for uncovering applications that may not be well-documented or fully understood, including shadow IT, legacy systems, and redundant software. This section explores various methods and approaches to application discovery, offering practical guidance for organizations at the early stages of their Application Portfolio Management (APM) journey.
1. Manual Discovery Methods
Manual discovery involves engaging with stakeholders and reviewing existing documentation to collect application data. While this method is time-intensive, it is especially useful for smaller organizations or teams with limited automation tools.
- Stakeholder Interviews and Workshops:
- Conduct one-on-one or group sessions with business and IT stakeholders to identify applications and their use cases.
- Focus on application owners, key users, and IT support teams to ensure comprehensive coverage.
- Use structured questionnaires to collect consistent data points.
- Review of Documentation and Contracts:
- Analyze existing documentation, such as contracts, license agreements, and architecture diagrams.
- Cross-check purchase records and support agreements to identify applications not actively monitored.
- Observation and User Feedback:
- Shadow end-users to observe their workflows and identify software used in day-to-day operations.
- Solicit feedback from teams about unrecorded or underutilized applications.
2. Automated Discovery Tools
Automated tools are invaluable for efficiently gathering data in larger or more complex IT environments. They minimize manual effort and help ensure comprehensive and accurate discovery.
- Configuration Management Database (CMDB) Tools:
- Tools like ServiceNow, BMC Helix, or Micro Focus UCMDB provide automated scanning capabilities to identify applications and their dependencies.
- Integrate with IT Service Management (ITSM) platforms to maintain an up-to-date inventory.
- Network Scanning Tools:
- Use tools such as SolarWinds or Lansweeper to scan networks for installed software and running applications.
- Identify software installed on endpoints, servers, and virtual machines.
- Cloud Monitoring Tools:
- Leverage cloud-native tools like AWS Config, Azure Monitor, or Google Cloud Asset Inventory to discover cloud-based applications.
- Track resource usage, configurations, and dependencies in hybrid and multi-cloud environments.
- Endpoint Management Systems:
- Tools like Microsoft Intune or VMware Workspace ONE can identify installed applications on user devices and servers.
- Gather data on application versions, usage, and compliance.
3. Hybrid Discovery Approaches
Many organizations combine manual and automated methods to balance efficiency with completeness. A hybrid approach leverages the strengths of both techniques while addressing their limitations.
- Manual Validation of Automated Data:
- Use automated tools to collect initial data, then validate and refine it through stakeholder input.
- Identify gaps in automated results, such as undocumented custom applications or shadow IT.
- Iterative Discovery:
- Begin with automated scans to gather baseline data, then conduct targeted interviews and reviews to fill in missing details.
- Repeat discovery periodically to ensure the inventory remains up to date.
4. Shadow IT Discovery
Shadow IT refers to applications used by employees without formal IT approval or oversight. Uncovering shadow IT is crucial for building a complete inventory and managing risks.
- Network Traffic Analysis:
- Analyze network logs to identify unauthorized or undocumented applications communicating with external servers.
- Use tools like Splunk or Wireshark to monitor traffic and flag anomalies.
- Expense and Procurement Reviews:
- Audit procurement records and expense reports for unapproved software purchases or subscriptions.
- Identify software purchased using departmental budgets or corporate credit cards.
- Employee Surveys:
- Conduct surveys or focus groups to encourage employees to disclose shadow IT usage without fear of repercussions.
- Educate teams about the risks of shadow IT and the importance of including these applications in the inventory.
5. Addressing Legacy and Retired Applications
Legacy systems and retired applications often present challenges during discovery due to incomplete documentation or knowledge gaps.
- Engaging Long-Tenured Staff:
- Consult employees with historical knowledge of the IT environment to uncover details about legacy systems.
- Document informal practices or unwritten rules about these applications.
- Data Archives and Historical Records:
- Search for legacy application references in historical databases, archived email correspondence, or outdated systems.
- Vendor Communication:
- Contact vendors or consultants who supported legacy systems to gather additional information.
6. Handling Dependencies and Relationships
Understanding application dependencies is critical for effective portfolio management. Discovery methods should include techniques to identify relationships between applications, infrastructure, and processes.
- Dependency Mapping Tools:
- Use tools like AppDynamics or Dynatrace to map application dependencies and data flows.
- Identify critical systems and their downstream or upstream impacts.
- Integration Review:
- Examine API logs, middleware configurations, or integration platforms to uncover interconnected systems.
- Process Mapping Workshops:
- Work with business teams to map workflows and identify applications used at each step.
7. Data Collection and Standardization
During discovery, it is essential to standardize the data collection process to ensure consistency and usability.
- Templates and Checklists:
- Develop standardized templates to capture key application attributes, such as name, owner, cost, and usage.
- Use predefined fields to ensure data uniformity across sources.
- Centralized Data Repository:
- Store discovery results in a centralized repository, such as a database or APM tool, to maintain a single source of truth.
- Regularly back up and secure the data to prevent loss or unauthorized access.
8. Challenges in Discovery
Discovery is not without its challenges, particularly in large or complex organizations. Common obstacles include:
- Incomplete Data: Gaps in automated results or stakeholder knowledge.
- Resistance to Participation: Teams reluctant to share information due to workload or fear of scrutiny.
- Dynamic Environments: Applications frequently added, retired, or changed without notice.
9. Best Practices for Effective Discovery
To overcome these challenges, organizations can adopt the following best practices:
- Prioritize Communication: Clearly explain the purpose and benefits of discovery to all stakeholders.
- Start Small and Expand: Focus on high-priority systems initially, then expand to less critical applications.
- Iterate and Refine: Treat discovery as an ongoing process rather than a one-time effort.
Conclusion
Application discovery is a vital step in creating an accurate and actionable inventory. By combining manual methods, automated tools, and hybrid approaches, organizations can uncover the full scope of their application portfolio. Addressing shadow IT, legacy systems, and dependencies ensures that the inventory reflects the true state of the IT environment, laying the groundwork for successful APM practices.