You are on page 1of 22

Virtual Class – September 25, 2020

Speaker: Ms. Karren V. de Lara


OLC Computing
Outline:
 Application Lifecycle Management (ALM) definition
 Aspects of Application Lifecycle Management
 Benefits of Application Lifecycle Management
 Application Lifecycle Management (ALM) vs. System Development Lifecyle
(SDLC)
 Application Lifecycle Management models and components
 Product Lifecycle Management (PLM) definition and elements
What is Application Lifecycle Management?

➢ The product lifecycle management (governance, development, and


maintenance) of computer programs.

➢ It encompasses requirements management, software architecture, computer


programming, software testing, software maintenance, change management,
continuous integration, project management, and release management.
Aspects of ALM
➢ Governance
❖ The management framework within which project decisions are made.

❖ Project governance is a critical element of any project, since the


accountabilities and responsibilities associated with an organization’s
business as usual activities are laid down in their organizational
governance arrangements; seldom does an equivalent framework exist
to govern the development of its capital investments (projects).
Aspects of ALM
➢ Development
❖ The process of dividing software development work into distinct phases
to improve design, product management, and project management.

❖ It is also known as a software development life cycle (SDLC). The


methodology may include the pre-definition of specific deliverables and
artifacts that are created and completed by a project team to develop or
maintain an application.
Aspects of ALM
➢ Maintenance
❖ The modification of a software product after delivery to correct faults,
to improve performance or other attributes.

❖ A common perception of maintenance is that it merely involves fixing


defects. However, one study indicated that over 80% of maintenance
effort is used for non-corrective actions. This perception is perpetuated
by users submitting problem reports that in reality are functionality
enhancements to the system.
Aspects of ALM
Categories of Software Maintenance
❖ Corrective maintenance: Reactive modification of a software product performed after
delivery to correct discovered problems. Corrective maintenance can be automated with
automatic bug fixing.

❖ Adaptive maintenance: Modification of a software product performed after delivery to


keep a software product usable in a changed or changing environment.

❖ Perfective maintenance: Modification of a software product after delivery to improve


performance or maintainability.

❖ Preventive maintenance: Modification of a software product after delivery to detect and


correct latent faults in the software product before they become effective faults.
Benefits of ALM
➢ Helps Businesses in Preparing and Organizing
➢ Multiple Teams Collaboration
➢ Better Speed, Quality and Compliance
➢ Decision-Making
➢ Team Productivity
➢ Testing and Resolving
➢ Employee Support and Customer Satisfaction
Software Development Life Cycle vs. Application
Lifecycle Management
➢ Software Development Life Cycle (SDLC) is defined as the processes or stages
involved in the creation of a new information system or the modification of
an existing system, and the various methodologies used in the process. In
other words, it is all the activities involved in the development of the
software, the processes involved in taking it from idea to reality (actual
software).

➢ Application Lifecycle Management (ALM), on the other hand, is the


continuous process involved in the management of an application from its
inception as an idea through to its management and end of life. It also
includes the tracking of modifications and documentation throughout its use.
Application Management and Software Lifecycle
Know-How of what ALM and SDLC
Application Lifecycle Management Software Development Lifecycle

• An integration of people, processes and tasks • A process or a set of procedures involved in the
that manages the overall lifecycle of an creation of high quality software.
application from inception to its getting obsolete.

• More comprehensive but much broader concept, • A detailed plan to create, develop, maintain and
an umbrella term for developing, governing, replace a particular software.
maintaining and finally decommissioning the
application.
• A superset which wraps together the fragmented • The management of the processes during the
SDLC Management as processes, and integrates development stages only for different
them ensuring delivery of end user value and modules/components of the application.
maintaining the same.
What Makes up Application Lifecycle Management?

 Application Lifecycle Management (ALM) is really an umbrella term


that covers several different disciplines that traditionally were
considered separate, including project management, requirements
management, development, testing and quality assurance (QA) as well
as customer support and IT service delivery.
ALM Model
ALM Model
➢ Requirements Management
ALM tools should have functionality that helps you make sense of your
requirements and ideally the tools should be adaptable to your methodology and
processes rather than the other way around.

➢ Estimation and Planning


ALM tools typically provide functionality to help you estimate and plan your
projects. Some tools are designed to manage traditional waterfall projects, some are
designed for only agile development projects and some can handle both.
ALM Model
➢ Software Development
Although normally the actual act of developing and writing the code is not
considered to be part of ALM itself, you usually need to have source code
management functionality integrated closely within the ALM suite and most ALM
tools will offer integrated source code management functionality.

➢ Testing and Quality Assurance


One of the key attributes that distinguishes ALM suites from mere project
management tools or issue tracking systems is that they include the QA part of the
software development process. At the very least they should offer basic test case
management.
ALM Model
➢ Deployment and DevOps
Although the compilation and packaging of the software being developed is often
outside of the scope of ALM tools themselves, most ALM tools will at the very least
let you integrate with continuous integration.

➢ Support and Maintenance


Customer support is the feedback mechanism that guides the new user stories in the
next sprint. To ensure that the ALM suite either has a customer support capability,
or at the very least can integrate with other help desk or customer support tools.
ALM Model
➢ Project and Portfolio Management
Since ALM tools provide such rich and powerful functionality, it is important to make sure
that they also provide good tools and features for consuming the information and being able
to report across the entire system with information summarized and fused together to allow
decision making.

➢ Collaboration and Communication


It is highly inefficient to rely on email, text messages or even worse, group meetings, to
facilitate the communication of team members in real time. Information may be out of
context and afterward, no reliable record of the interchange exists, leaving other team
members in a vacuum with no good way to discover what is going on.
Key ALM Features
➢ Develop requirements and user-stories, then decompose into detailed tasks
for resource tracking
➢ Prioritize and schedule requirements for each release/iteration
➢ Assign requirements, tasks and incidents using Agile planning board
➢ Track bugs, enhancements, risks and issues linked to changes in your source
code repository
➢ Create, edit and execute test-cases
➢ Map tests to requirements to track coverage
➢ Create and assign test sets for test execution management
Key ALM Features
➢ Record bugs linked to test steps for full test traceability
➢ Manage manual and automated testing
➢ Personalized dashboards and customizable reporting
➢ Ability to attach documents, screenshots and URLs to all artifacts
➢ Full audit history of all changes made in the system
➢ Customizable graphs and reports in multiple formats such as HTML, MS
Office or Adobe Acrobat
What is Product Lifecycle Management (PLM)?
➢ The process of managing the entire lifecycle of a product from inception,
through engineering design and manufacture, to service and disposal of
manufactured products.

➢ Traditionally this has been a separate process to ALM, with hardware and
physical systems using standalone PLM systems to manage their lifecycles
and the software components using a separate ALM solution or suite of ALM
tools.
Essential Elements of PLM
➢ Manages design and process documents
➢ Constructs and controls bill of material (product structure) records
➢ Offers an electronic file repository
➢ Includes built-in and custom part and document metadata ("attributes")
➢ Identifies materials content for environmental compliance
➢ Permits item-focused task assignments
➢ Enables workflow and process management for approving changes
➢ Controls multi-user secured access, including "electronic signature"
➢ Exports data for downstream ERP systems
Thank you for listening.

If you have any questions please send a message thru LMS chat box or
email me at kvdelara@amaes.edu.ph

You might also like