Introduction
The modern IT world shows a rapid change in application integration and systems development. With this rapid change, organizations now try to:
Shorten delivery times
Reduce the costs associated with software and mobile application development
Maintain the quality of product offerings
Closing the demand and supply gap
Although these objectives are occasionally conflicting, each objective is a high priority.
Application integration and systems development now need a unified process for managing projects, from requirements gathering, to application development, to governance.
Application Lifecycle Management (ALM) is a methodology that enables you to track project development efforts, while maintaining low overall cost and high product quality. It is a methodology that encompasses the significant development and deployment processes, from requirements gathering to governance.
This IBM Redbooks publication documents the use of Application Lifecycle Management in an integrated WebSphere environment. It also shows you how to build your environment and track your progress by the use of governing processes in Application Lifecycle Management.
This chapter describes a business scenario that will be used throughout this book. The following topics are covered:
1.1 Business integration problems
This is the age when all of our devices are connected, from computers, to mobile phones, and tablets, to cars. Even our homes are connected. Each system is intelligent enough to give you directions for accomplishing a task, for example, when you are driving, there are mobile applications that provide the best route to travel to avoid traffic jams.
While it may seem easy to invent and introduce new applications that help us in our daily lives, the term integration is quite different. Integration, as defined by Merriam-Webster, is “the combining and coordinating of separate parts or elements into a unified whole.” To create a process in this era, you need a perfect blend of IT and business to assimilate a unified, intelligent process.
Most companies experience integration problems today because they have existing monolithic applications that only serve one purpose, to perform a single function, and are built on different architectures. A user can use one or more applications to perform a single task, thus slowing down productivity. There are existing applications that need to be connected to perform a single transaction.
1.2 The business scenario
In this section, we describe a fictitious business scenario. Throughout this book, we refer to this scenario, and how Application Lifecycle Management can assist with meeting current project requirements. The scenario takes place at the Redbooks Company Service Desk, where process automation has become problematic. Figure 1-1 depicts this scenario.
Figure 1-1 Business scenario for the Redbooks Company Service Desk
The Redbooks Company is having a problem with a lack of automation at their service desk. By repeating manual tasks, such as reviewing warranty claims and parts, the company becomes less productive.
In this business scenario, we describe a warranty claim system that is used to accept all of the claims that are entered by the users from either the web or mobile devices. The system can determine the appropriate course of action the business should take, given the clients’ input, to track and resolve warranty claims. A business process is created to automate tasks, and business rules are created to determine which category the product falls into.
The following steps are part of the sample scenario in this book:
1. A client provides the serial number of a purchased product and submits it from either the web or a mobile application.
2. When a claim is received, the system launches a business process to initiate the warranty review.
3. If the system records multiple pending claims for the same serial number over a specified period, the system automatically rejects the claim. Otherwise, the system triggers an event to indicate that these claims with the same serial number need further investigation.
4. Multiple claims with the same serial number are be routed to technical support staff for further investigation, and they will assess if the claim is valid.
5. This process then invokes a business rule, wherein the serial number is assessed if the parts that are affected have low or high impact in terms of cost. A claim requires special handling if the assessment from the business rules produces a high impact to cost.
6. In cases for which there is a high impact to cost, the financial manager then approves the claim for special handling. Otherwise, the claim is processed automatically for implementation.
7. All claims are written to the database for logging and tracking purposes.
This scenario describes how project stakeholders can take advantage of events using well-defined processes to create rapid changes and flexible business decisions. This solution describes how the components fit together to become one system.
1.3 Application Lifecycle Management
In today’s fast-paced environment, project management usually works in silos, and this can often cause project delays, thus adding to the overall cost of the project. The structure of teams today is tightly coupled. Teams cannot send a solution to the next team to integrate, test, or deploy. The business should be able to know the demands and needs of their users. Business analysts should be more involved with users, so they are aware of the users’ pain points and where the system can be improved. Architects need to be involved by determining which architectural principle or pattern applies to the business. They should know the stakeholders’ needs as well. These then must be cascaded to the software developers, who can understand the business well and identify assets that can be reused. For software testing, quality assurance testers need to be closely aligned with the business analysts to ensure that the applications delivered are high quality.
When complexity affects quality, it affects the entire business. This costs your organization real bottom-line cost, damage to your reputation and client relationships, and damage to your clients’ loyalty. There is also the risk of managing multiple applications that can cause product recalls. This, too, is damaging to business.
Application Lifecycle Management is a methodology in which all of the activities can be tracked based on the following steps (see Figure 1-2 on page 16):
Project management
Asset Management
Requirements gathering
High-level design (architecture)
Low-level design
Build and software development
Quality assurance
Release management
Change management
Application Lifecycle Management is a widely accepted methodology. It involves the coordination of activities and assets to produce, manage, and change software applications throughout their lifecycle. IBM, Hewlett-Packard, and Computer Associates are some examples of vendors that have products that implement Application Lifecycle Management. IBM uses Rational Collaborative Lifecycle Management as their implementation of Application Lifecycle Management. IBM has offerings to support each of the practices that are required for continuous delivery, that is, the develop, build, deploy, test, and release practices:
Rational Collaborative Lifecycle Management offerings enable agile development to support collaborative development, enabling the output of agile development with continuous integration.
IBM UrbanCode™ solutions enable application release automation and support the practice of continuous release and deploy.
Figure 1-2 Picture illustrates a Software Development Lifecycle
1.4 Using this book
In this section, we list the goals and objectives of this book and describe how it is organized.
1.4.1 Goals and objectives
This book has the following goals and objectives:
Use ALM to track the progress of the project
Build your WebSphere environment by using ALM
Identify change requests
Create a package for deployment
1.4.2 How this book is organized
This book is organized so that users understand the use of Application Lifecycle Management and how to build a WebSphere environment:
Chapter 1, “Introduction” on page 13 describes the solution from a high-level perspective, outlines the business problem of the Redbooks Company Service Desk, and briefly identifies how the solution can alleviate the business problem.
Chapter 2, “Solution overview” on page 19 discusses the solution and how it addresses the business problem of the Redbooks Company Service Desk.
Chapter 3, “Application Lifecycle Management on a software development project” on page 27 discusses the roles and responsibilities of each project member in the Application Lifecycle Management process, and how to manage projects using this methodology.
Chapter 4, “Configuring IBM Business Process Manager integrated with IBM WebSphere Operational Decision Manager” on page 47 provides an in-depth discussion about how a WebSphere environment is integrated. We discuss the procedures for how it is built and how it is managed.
Chapter 5, “Creating solution artifacts” on page 113 describes the front-end application development (web and mobile) process, using IBM WebSphere Application Server and Worklight. It also provides information about how the integration flows are created in IBM Integration Bus.
Chapter 6, “Rapid application deployment using IBM UrbanCode Deploy” on page 175 shows how to automate your deployment process by creating components.
Chapter 7, “Quality management and the software development project” on page 211 discusses the testing methodologies and procedures that are used to assert the quality of this solution.
 
Note: IBM Collaborative Lifecycle Management is IBM’s implementation of Application Lifecycle Management. This chapter only discusses manual testing. To learn more about automated testing using IBM Rational Functional Tester, see the following link:
 
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.217.68.197