This glossary lists (alphabetically) details of all Deliverable documents from the Project Checklist.
Acceptance from business stakeholders confirms that they, as key stakeholders, are aligned with the solution and have given their approval as to how the business requirements meet the business case.
Acceptance testing is performed when an application is ready for production. The tests are performed by a group representing the various types of end-user, using real-life scenarios.
Acceptance tests are used to confirm that the:
The earlier you plan and design your acceptance tests, the easier the final deployment. They should be defined together with the customer and your Quality Assurance team.
Although you might not be able to define all details at the very start of the project, initial definitions should be discussed and agreed on. The acceptance tests will probably be based on the fundamental requirements (functional and performance).
Ensure that the required levels of system access have been granted to all roles.
The Adobe Security Checklist is the official checklist provided to ensure that Adobe Experience Manager (AEM) is secure at installation. It contains the security measures and verification steps that you must perform to ensure the integrity of your instance.
The Adobe Support Portal enables implementation partners and customers to set up the AEM implementation as a project in the Support Portal.
Details can be registered; for example, about the technologies and versions implemented. These provide transparency between the customer and Adobe.
Training for administrative staff of the solution. See the Adobe Training Services for more information.
Training for staff who will be producing (authoring) content for the solution. See the Adobe Training Services for more information.
Ensure that the appropriate personas are registered to take the relevant certification exams.
Ensure that the appropriate persona have passed the relevant certification exams.
Provide technical training for the appropriate persona; for example, developers, architects, engineers, and business practitioners.
Key Performance Indicators (KPIs) help an organization to define and measure progress toward organizational goals. Once an organization has analyzed its mission and defined its goals, it must measure progress toward those goals. KPIs provide a mechanism for measurement.
Alignment of your business and performance Key Performance Indicators (KPIs) helps pull together all the involved people and processes from within the organization. This in turn helps reduce the amount of time and effort required to achieve business goals and fulfill the proposed purpose.
Ensure that the proposed content architecture is aligned with the relevant Key Performance Indicators (KPIs).
The Customer Roadmap is composed of high-level milestones and business goals. The Project Timeline must adhere to and align with this strategy, so any potential risks and/or possible deviations must be highlighted and tracked.
The application architecture should clearly define the behavior of the proposed applications.
It is focused on:
Apart from standard Adobe Experience Manager (AEM) maintenance tasks, you must define any other operational tasks that must be run for the ongoing maintenance of the solution.
Ensure that your team is made up of staff with the appropriate training. For project teams the recommendation is to have all of the following:
The architecture diagram is a graphical representation of the architecture. It includes representation of:
This provides a high-level view of the system and solution architecture. At this stage it is a draft that will be reviewed and refined at later stages.
The Architecture Review Board is a cross-organizational body that:
The review board should be representative of all key stakeholders involved with the architecture. Typically they are composed of a group of executives responsible for the review and maintenance of the overall architecture.
Automation scripts and basic automated use cases:
This strategy defines a framework for reusable automated scripts, together with the approach planned by the Quality Assurance (QA) team. It outlines the overall plan for automation testing to help ensure:
The Automated Testing Strategy must be validated and adjusted according to the content and expected load that will be on the solution.
The automation of deployments ensures faster and consistent deployments. The Automation Strategy outlines the configuration of any such automation mechanisms; including:
The entire project team and all stakeholders must confirm that they are aware of the:
The entire project team and all stakeholders must confirm that they are aware of the:
The Backup and Restore Concept outlines the technical functionality that will be implemented in the solution. It is required by the Company back up and restore policy.
A full end-to-end test based on the Backup and Restore Concept.
A business case document presents the arguments related to taking the action, taking alternative action (if available), or not taking any action. The arguments should be balanced, based on concrete facts (wherever possible/relevant) and highlight both the benefits and risks for all cases.
A business case document should be a clear definition of all options, concluding with a compelling argument for implementation of the proposed solution.
The Business Analyst should confirm that they fully understand:
Organizations use Key Performance Indicators (KPIs) to evaluate their success at reaching targets.
Business KPIs define measurable values that demonstrate how effectively a company is achieving key business objectives. It is important to choose KPIs appropriate to your business/scenario with clear definitions of what they are, how they are measured, how they are used, and by whom.
A business requirements document (BRD) details the business solution for a project, providing a clear specification of the customer’s business needs and expectations. The BRD also distinguishes between the business solution and the technical solution.
When examining the business solution the BRD should answer the question:
“What does the business want to do?”
The processes of risk assessment and penetration testing may produce issues and outcomes that must be addressed in the architecture or development of the solution.
Any adjustments resulting from these processes must be reviewed and approved by the business and gauged against the overall goals.
The Caching Strategy outlines what will be cached for the end user. It must be compliant with the Performance KPIs.
The Coding Guidelines define basic principles that the developers should adhere to when developing the solution. These can include, among others:
Ensure that all appropriate persona/roles have received the Operations Manual.
Ensure that all appropriate persona/roles have received the Performance Test Report.
Ensure that all appropriate persona/roles have received the Release Notes.
Ensure that the project team is fully aware of, and aligned with, the project scope and expectations for delivery.
Ensure that all appropriate persona/roles receive the training materials and user guides.
Ensure that all the customer’s security requirements are in place.
Ensure that the Security Concept is in place.
The outline of the templates and components that are used in the new application. Includes details such as inheritance rules, permissions, and relationships, among others.
Details of the components and templates relationship concept.
Specification details for each of the components to be implemented.
The concept of how to develop against and test any external interfaces that may not be open/available to the development or test environments.
Plan/implement mock-ups of these interfaces to ensure that testing is as close to production-like behavior as possible.
Documentation of the proposed architecture of the content. The details should include, among others:
The legacy system content is reviewed and the selected content is validated for migration to the new solution.
An initial draft of the legal contract.
Documentation of the current content architecture and format. This will be used to generate the future content architecture. It will also be used for the Migration Concept.
Policies from the customer concerning:
Any guidelines/requirements from the customer on how development should be done.
Policies from the customer that define how and when deployments/releases can be made.
These often include timelines, scheduling, and sign-off requirements.
Customer policies and requirements on what should be monitored. These are in addition to any recommendations specified in the Monitoring Concept.
The schedule that is defined by the customer for releases to the production environments.
Any policies, or requirements, or both, that the customer has in regard to reporting. These can include:
Formulate a roadmap of the major milestones to be implemented, both technological and business. This roadmap is then communicated to the customer.
The customer (business and IT) will have policies that define the required security levels for the solution. These can include:
Any guidelines the customer has that relate to the format, delivery, and sign-off of specifications.
Reports from the customer to the Quality Lead during the User Acceptance Test (UAT) period.
Any customizations and/or applied hotfixes applied must be documented as they can affect future upgrades:
AEM can be heavily customized to suit business needs. Any customizations that may impact upgrading must be fully documented. For example, any major changes to the user interface (UI) of AEM.
Any updates required for the current solution must be fully documented; these can include:
Reports or meetings resulting from the User Acceptance Testing (UAT). They should detail:
Ensure that the default security settings for AEM have been enabled/implemented.
Formalized policies covering both the deployment and releases of your project. These can include:
Define the required frequency of deployments across environments.
A software development methodology involves breaking the entire process of software development work into distinct phases (or stages), each with distinct activities. The aim is to improve planning and management.
When defining the methodology, you should pre-define specific deliverables and artifacts that are created and completed by the project team to develop or maintain your application.
Define which developer and/or role is executing IT (performance or other) and/or unit tests within the solution.
Ensure that the development environment is configured with the integrated tooling required for the automation of deployments.
The Development Team should confirm that they fully understand:
Details about the dialogs required for the solution.
Documentation of the development environment.
Documentation of the production environment.
Documentation of the test environment.
The Durability Test shows the performance of the solution under a specific load. The tests gauge how long the solution survives when submitted to the threshold load and at what performance levels.
Execution of the durability tests.
Error handling refers to the anticipation, detection, and resolution of programming, application, and communication errors.
Detailed documentation of the proposed error handling, based on the Error Handling Concept.
Definition of all escalation processes. There will be separate processes for each project level:
Establish regular quality review meetings with the appropriate team members.
Documentation of the existing set of permissions and groups defined for either the legacy solution or within the organization.
A diagram (or set of diagrams) of the existing systems and dependencies.
The Project Sponsor collects the business expectations related to the success of the project. It is important to have the full set of expectations available at the start of a project as these should influence all decisions made throughout the implementation.
Expectations can include:
Requirements for the entire experience of the solution. This covers factors such as personalization, cross device persistence, and user experience, among others.
Details of the Experience Design Requirements.
A diagram (or set of diagrams) outlining the full ecosystem of the solution. This should include elements such as the external integrations, interfaces, dependencies, and networks.
The definition of the fallback system:
End-to-end test of the fallback system.
Sign off, from the business stakeholders, that the fallback system and related procedures ensure the critical business functionalities.
Results of a feasibility study for both AEM and the high-level solution design. These should be measured against the KPIs to ensure that these can be met.
A finalized and signed contract is needed before proceeding with the project. This is based on the Contract Draft.
Confirmation that the stakeholders fully accept the:
Timeline and schedule for the activities required for:
A happy path is a default scenario featuring no exceptional or error conditions. It is composed of the sequence of activities executed when everything goes as expected.
Initial estimates of:
Confirmation that all environments will have the minimum required hardware in place.
Definition of the high-level requirements provides a generalized breakdown of requirements for the system, covering aspects such as:
Basic details about these functions are typically known, so this document should not be an estimate.
The high-level solution design explains the architecture that is used for developing the solution. The architecture diagram provides an overview of the entire system, identifying the main components that are developed for the product and their interfaces.
This system map should provide a high-level diagram of the system. It differs from the Solution Context in that is it a generalized map of all systems involved, there are no interfaces on this diagram.
Definition of the content structure of the legacy system. This is used for reference and also when preparing the migration strategy.
You must collect and document performance statistics and performance KPIs from the legacy system. These are then used as a reference point and for benchmarking the new solution.
A list of the business critical functionalities.
Implementation of all required changes (that have been signed off) to the solution based on the results of the penetration tests.
Setup of the tooling and processes required to support automated testing.
Setup of the tooling set and processes required to support automation.
Implementation of the content architecture, tagging concepts and reuse of content.
Implementation of the requirements to support the Experience Design.
Implementation of the fallback system and related procedures.
Implementation of integrations with all required external systems.
Migration together with the validation of content and other artifacts for the new solution.
Implementation of roles and rights, users, and groups.
Implementation of all security measures, including the AEM defaults.
Implementation of software application security.
Implementation of the system security.
Implementation of the URL handling concept.
Implementation of the designed workflows.
The implementation concept provides the guiding principles for the entire implementation. It should consider:
This concept also outlines the frameworks, libraries, and other artifacts used in the solution.
Contact Adobe Support to ensure that any support that is needed, can be enabled during the go live.
Preliminary concepts for the designs of the experiences.
Testing, and the resulting confirmation, of all integrations, both internal and external.
This should be automated and run frequently to ensure system stability.
Clear processes record all issues encountered and track ongoing activities with the aim of ensuring that all issues are addressed.
A tracking system, together with the required processes, to record all issues encountered and track ongoing activities with the aim of ensuring that all issues are addressed.
All project stakeholders should have access to facilitate transparency of the project status.
Examples include Atlassian JIRA and HP Quality Center.
The selected tooling is fully integrated and access granted to all required roles.
For your project the legacy system is the existing technology, computer system, or application program that will be replaced by the new solution.
Details of the legacy system should be collected so that you know what can be retired, when and the impact on any other systems.
An outline of tools that will be used in the implementation; the tools should include:
A list of all users and roles that need access to the Adobe Support Portal.
The list is normally comprised of the Solution Architect and/or customer IT staff.
An analysis, together with the resulting recommendations, defining what must be logged to monitor the solution:
Test and enable AEM maintenance tasks such as:
Document the migration; including
A full description of the existing content, content architecture and formats mapped to the new solution. It should cover:
It should also recommend how to keep the content up-to-date (or as up-to-date as possible) during the period between migration and the actual go live of the new system. This could mean a content freeze, double publishing, or the maintenance of an alpha system.
Monitoring the solution’s use of the system CPU:
Monitoring the solution’s disk input and output rates:
Monitoring the solution’s use of disk space:
You should monitor use by:
Monitor any connections between the solution and external systems:
Monitor the solution’s usage of the network bandwidth:
Monitor the requests made to the solution.
Monitor at the defined security points.
Monitor the overall system; for example:
Monitoring of the solution’s defined threshold together with the implementation of intervention steps to reduce load.
The monitoring concepts to be applied to your solution; incorporating:
Specific points that could be susceptible to failure, should be identified and defined. Any monitoring tasks related to these should also be defined.
Examples include (among others):
Ensure that the system engineers and operations staff know and understand any monitoring policies.
All operational tasks documented, with their frequency defined.
Manual providing all the information required for the successful operations and maintenance of the solution:
Should also detail the implementation concepts for:
Software package built and delivered ready for deployment.
A penetration test (informally known as a pen test) is an attack on a computer system that looks for security weaknesses, potentially gaining access to the computer’s features and data.
All required criteria are passed.
Reports created for the business explaining the penetration test results.
Conceptual document about how to ensure that your implementation meets the performance KPIs, and how to scale the solution so that it continues to meet those KPIs.
The Performance Benchmark is used to define performance testing, durability testing, and monitoring. It does this by assessing the performance characteristics of the solution and system hardware.
These define the Key Performance Indicators (KPIs) required to measure performance of the system. Some examples include page load time, server response time, and database query performance.
Reports created for the business, detailing the results of the performance tests.
The results must match the defined KPIs and expectations for performance.
Persona-based testing is a method based on the different personas outlined in the Experience Designs. It also tests the accounts and their related permissions levels.
This is often used in User Acceptance Testing (UAT).
The Proof of Concept (POC) is gauged against the requirements to ensure that both are aligned.
A checklist to define the series of checks and tasks to perform after each deployment.
A checklist to define the series of checks and tasks to perform before each deployment.
It is usual to run a baseline test on a standard installation of AEM. This is then used as a benchmark to test the implementation and hardware against.
Confirm that the production environment is ready, with automated deployments in place.
Before Go Live onto the production environment, Production Sign-off (PSO) must be granted. This is the result of a review of the release that will go into production, together with any known issues. Sign-off is given as part of the Go Live schedule.
The policy and process required to obtain the Production Sign off before moving the package to the production environment.
Define the communication plan for both business stakeholders and the project team.
The initial estimates were high level and made according to the high-level requirements for the implementation.
These are now reviewed, refined, and expanded to provide the final estimates. Estimates should be delivered by each appropriate project lead, including project management, consulting, architecture, testing, and development.
These estimates are used for resourcing and budgeting.
Initial estimates are high level and made according to the high-level requirements for the implementation. This will be reviewed and refined at later stages.
The required documentation to outline the organization and reporting structure of the project and team.
Often takes the form, or includes, a chart to present a visual overview of timelines and responsibilities. There are many tools available to help with this.
The project scope document requires you to identify and document a list of:
It covers what must be achieved, together with the work that must be done, to deliver the project
Project status reports delivered according to the agreed schedule and with the required format.
The Proof of Concept (POC) implements a limited range of functions for the solution.
It should aim to demonstrate the feasibility of the solution, verify that it can fulfill the required purpose and prove that there is the potential of it being used.
AEM maintains multiple versions of assets and content. Purge rules are designed and configured to periodically remove the older versions to maintain repository health and size.
Define the required content and format of the quality report, together with how frequently it must be delivered.
The project manager coordinates all roles required for the release to production.
Release notes are part of the documentation for the release. The release notes should cover:
It is used with the Runbook to execute pre- and post installation steps and checks.
For an example, see the AEM Release Notes.
Final release running and active in production.
Highlight specific contract terms that are relevant to the implementation of the project; such as contractual milestones, invoice periods, or staff requirements.
Together with the customer, define the frequency of reports delivered to them.
Data is never overwritten in a tar file, the disk usage increases even when only updating existing data.
To counteract the ever increasing size of the repository, an optimization strategy is put in place to remove obsolete data.
The official request to set up your project in the Adobe Support Portal.
This set of documentation covers the functional and non-functional requirements, together with the efforts estimated.
Ensure that all the roles required for go live are staffed and available.
The Risk Assessment is run by the customer’s IT department, or Security department, or both.
It assesses the technical and business risks of the project. The assessment is required for the solution to ensure compliance with security policies.
The Risk Mitigation Plan includes the Risk Assessment. Together they cover:
Define the Return on Investment (ROI) expectations that are attached to the solution.
They aim to indicate the efficiency of the solution in economic terms by defining the benefits/profits expected in relation to the estimated investment.
Detailed specification of the concepts relating to roles and access rights required for the new application, including a high-level outline of:
Review of the Roles and Rights concept to ensure that it meets the security policies.
A detailed specification based on the Roles and Rights Concept.
Recommendations related to security for the software and hardware architecture.
These guidelines define how the development coding should be done, based on security requirements such as:
Project-specific checklist of items, based on the Security Concept together with any additional policies required to ensure compliance of the solution.
Often this is also included as part of the post-deployment steps in the runbook.
Define and document details of the security configuration required for the application, architecture, and infrastructure.
A high-level outline covering the security setup of the:
All security issues of the solution listed and assessed; including effort estimates.
Sign off from the stakeholders to ensure that the security implementation is compliant with policies and expectations.
Set the required support processes in place.
Ensure that Service Level Agreements (SLAs) are available and communicated to both the development and operations teams for use during implementation and support.
Smoke tests consist of a set of defined steps that test the key functionalities of the solution to ensure basic operations and functionality of the solution.
They are executed, on any environment, after installation or deployment.
Smoke Tests should be run on all systems to ensure correct operation of the solution’s basic functionality on installation or deployment to any environment.
The high-level strategy for the software architecture; including services, servlets, frameworks, and other implementation decisions.
The Solution Review Board is comprised of customer stakeholders.
The board holds regular meetings to review the currently scoped requirements and relevant specifications on an ongoing basis. The aim is to ensure alignment with the success definition and criteria and also provide input into the development of the requirements.
Installation instructions for the solution, together with basic operational tasks to be executed on installation.
The sign-off and acceptance process outlines the criteria that must be fulfilled before the solution can be released into a productive environment.
It can also serve as a contractual milestone.
The initial concept for any special functionality that is considered outside the normal scope of development on the AEM platform.
Details of any special functionality that is considered outside the normal scope of development on the AEM platform.
Any guidelines from the customer on how the specification should be done.
A clear process for the customer sign-off of specifications should be put in place. This process ensures clarity and firmness of scope for the requirements.
Internal staff that needs training to administer the solution.
Internal staff that needs training to author on the solution.
Stakeholders are the key persons and/or roles that have a significant interest in the project. Some will be contributing towards the project budget.
The stakeholders can be internal and/or external.
Confirmation that all stakeholders outside the actual implementation team are aware of the:
Confirmation that all stakeholders outside the actual implementation team are in alignment with the overall project and expectations, both internal to the project team and to the customer.
Status reports are a key tool of communication. The format should be aligned with any reporting requirements from the customer.
The customer, project sponsor, and project manager or consultant should specify:
These are used to ensure that the criteria for success are met:
Part of the Quality Lead’s responsibilities is to ensure that there are resources available to support any user when testing. For example, to help the user when testing, when reporting issues and to help validate the issues against the test environment.
Access to the Adobe Support Portal is crucial for submitting tickets about any product-based issues that may arise during implementation.
Access should be allocated to key members of the team.
An initial proposal and definition of the architecture for all environments of the solution.
A document detailing the system architecture; including interfaces, network location, and integrations for all environments, among other information.
A high-level outline of how to make the system architecture compliant with any security policies. This can cover:
Any risk factors found in the risk assessment (or other reviews) are identified and assessed:
Confirmation that the entire team is aware of the success definitions and criteria.
Confirmation that all members of the team are aware of who should be communicating with the customer, together with details of how and when.
Alignment with the overall project and expectations, both internal to the project team and to the customer.
These requirements are specific to the technical implementation of services that support the solution.
Identify and verify potential technical risks. Technical risks can include:
The Technical Specification covers (among other information):
The specifications for the required templates. These should cover details including parsys, blueprint and inheritance mapping, among others.
The specifications are based on the Business Requirements and Experience Requirements.
Test Cases specific the detailed steps required to execute functional testing of the solution.
The test content should be as close to production content as possible. It must be of a wide enough selection to allow for testing all scenarios.
Ensure that the test environment is ready, with automated deployments in place to ensure that all release candidate code is up-to-date for testing.
Reports detailing the results of testing; including:
It should be noted that:
Selection of the automation suite and tooling. These are used to automate tests, including those for use cases.
Automation suite and tooling selected for use case automation and other test execution tasks.
The Testing Concept is the high-level outline of testing for the project; including, QA, UAT, performance, security, and integration testing.
These plans outline in greater detail the execution of tests for each phase of development and are based on the Testing Strategy.
These requirements are specific to the technical implementation of services that support the solution.
The testing strategy outlines the high-level strategy for quality assurance and user acceptance testing. This includes timelines, reporting cadence, and execution.
Architectural and system level concept for the integration with third-party systems.
Details of the requirements (both functional and non-functional) for the supported functionality and integration of the third-party systems.
Concept for ensuring the security of any third-party integrations. Must be compliant with the appropriate security policies.
Ensure that all third-party systems are available, with appropriate documentation, for integration implementation.
Required access rights granted to the respective roles used with third-party systems.
Defines the key values for monitoring points in the system.
This should define the project timelines and contractual milestones to be used for:
All effort estimates, from each of the leads on the project, should be consolidated; including, overhead, development, system engineering, architectural, and testing efforts.
If there is a support level included in the agreement, support and operations efforts should also be included.
Materials to be used in training sessions. The materials should be created specifically for the solution and designed to be used with the User Guides.
The appropriate persona should confirm that they fully understand:
Your URL handling concept should cover AEM-specific URL functionalities including:
The concept should also cover:
A use case is the list of actions or event steps needed to achieve a goal. Typically they define the interactions between a role and the solution. The role can be a user or an external system.
Test scenarios are based on the technical and business use cases. They are used to test that the solution behavior is as expected.
User Guides provide information and assistance for the users of the solution:
The budget plan must be reviewed and validated by all stakeholders. They must check details such as invoicing, amounts, and methods/timing of budget reporting.
White box testing is a method that tests the internal structures or workings of an application, as opposed to its functionality. White box testing can be applied at the unit, integration, and system levels of the software testing process.
Based on the Workflows Concept, these specifications should define, in detail, the steps that create the full workflow.
The specification of each workflow should include (at a minimum):
Workflows let you automate AEM activities. The Workflows Concept outlines: