• No results found

How to Build an Enterprise App in 5 Days 1

N/A
N/A
Protected

Academic year: 2021

Share "How to Build an Enterprise App in 5 Days 1"

Copied!
28
0
0

Loading.... (view fulltext now)

Full text

(1)
(2)

TABLE OF CONTENTS

STAGES OF TRADITIONAL APP DEVELOPMENT

3

STAGE 1: DEFINE 4

STAGE 2: BUILD & TEST 4

STAGE 3: ROLLOUT 6

STAGE 4: MANAGEMENT 7

BUILDING AN ENTERPRISE APP IN 5 DAYS

9

DAY 1: MODELING & DESIGN 11

DAY 2: INTEGRATION 15

DAY 3: TESTING & REVIEW 19

DAY 4: QUALITY TESTING 22

(3)

Traditional app development requires a huge workload for programmers and can literally take months. And that's not the worst part! Even after investing months in development, app management and maintenance is an ongoing drain on critical IT resources.

What if there was a way to bypass the most difficult challenges, and time-consuming tasks of traditional app

development? What if there was a platform that could shave months off development timelines,

while making management and maintenance simpler? While we're dreaming, what if development and maintenance could be performed by citizen developers rather than professional

programmers?

The typical steps required to publish enterprise apps are:

1. Define

2. Build and Test

3. Rollout

4. Management

In this eBook, we’ll examine how each stage can easily stall, or completely derail, the app development process. Then, we’ll look at a way to bypass the roadblocks of traditional development, showing how it’s possible to create a fully integrated mobile enterprise app in 5 days.


(4)

The

4 Stages

of Traditional

App Development

Stage 1: Define

This first stage is where the app is completely planned out. All features and capabilities of the app, such as GPS, camera, or offline functionality, must be clearly defined before development can begin. Stakeholders must clearly communicate the business needs and desired functionality that requires mobilization or web-enablement.

Once all requirements are discovered, business and logic flows must be mapped out in-depth and everything must be added to a project spec.

The difficulties of the Definition stage are exacerbated by the expectations of user experience. More than ever before, mobile apps are expected to have a higher level of user experience beyond that of traditional enterprise applications or web apps. As a result, requirements are fluid, steadily changing to keep pace with the realities of business.

Enterprise users expect updates to their apps every three months on average.

Stage 2: Build & Test

After the app has been thoroughly planned, mapped out, and into a detailed project spec and design document, it’s time to put developers onto the task of programming the app. Programmers

(5)

must develop front-end components for the various mobile devices the app will support. Then, integrations into various backend systems and business and integration logic has to be coded. Finally, the app must go through a

comprehensive testing period to ensure it’s fully functional.

When utilizing a platform into the build phase, setting up the

platform can take a lot of time and resources. Of course, this depends on the platform vendor you choose to utilize. Almost all platforms require skilled developers, who then have to learn the platform tool kit, to build the needed apps.

While most platforms tackle the development stage quite well, many are greatly lacking when it comes to mature integration capability. As a result, 70% of time spent on enterprise app development, on average, is sunk into integrations and security.

Maintenance of business and integration logic is a notorious nightmare for developers. If the source application has business logic, you don’t want to replicate it into your mobile development process. However, because the data coming out of backend applications don’t come out in an easily consumable format for the mobile app, developers are forced to add business and integration logic between the backend source system and their mobile apps. As a result, the logic component is duplicated and requires maintenance itself, apart from everything else.

“70% of the time spent

on enterprise app

development, on

average, is sunk into

integrations and

(6)

Also, almost all development platforms focus solely on

development, not considering the customizations done in the backend applications. As a result, developers must customize on top of customizations in order to export the correct data in a consumable format.

After the app has been coded, it must go through a rigorous test cycle, finding bugs and fixing them one at a time. While testing isn't rigorous in itself, fixing bugs can take up precious time and resources. Not only that, but addressing missing, or

misunderstood, features and functionality usually means going back through the define stage to clear up miscommunications between what the stakeholder requires and what the

programmers think they are coding. All of this must be addressed, and fixed, in the build and testing phase.

Stage 3: Rollout

Now that the app has been through the test cycles, and all bugs and errors have been fixed, it has to be published and installed by end-users on various devices. IT must identify the various users who are going to be using the app. They must assign apps, authorizations, and permissions to the users to ensure the

“Almost all development platforms

focus solely on development, not

considering the customizations

done in the backend applications.”

(7)

functionality and user-permissions are correct across different levels of employees.

The normal challenges of an app rollout vary largely on the technology of the chosen platform. Most development platforms don’t support a robust rollout infrastructure, which increases the time and effort of app rollouts.

Post-rollout, the biggest challenge is user adoption, which is typically low due to a combination of these factors:

1. The app took too long to develop.

2. Core business requirements changed, changing user expectations.

3. The development team understood the app specifications differently than the stakeholders, developing an app very different from expectations.

Stage 4: Management

Now that the app has been published, and made available for end-users, managing the app becomes it’s own project. User adoption must be measured, making decisions based on how to on-board the workforce meant to use the app.

Inevitably, due to long development cycles and miscommunicated requirements, the app will undergo a series of change requests for modifications and enhancements. For each of these changes, the app must again go through the development, testing, and rollout cycles - which make iteration of the app a lengthy process in itself.

Inefficient development processes primarily drive the challenges in this phase. When end-users need an enhancement or change

(8)

to the app, it can take months to roll out the changes. By then, business users lose interest and move on.

Not only that, but every single tool has to follow the traditional app development process (see Traditional vs. Model-driven blog post.) This multiplies the problems of IT never being able to deliver exactly what the business users really need.

Finally, after the app is in its final form, it still must be managed throughout it’s entire lifecycle up until its complete retirement.

Breaking Free from the Traditional Development Paradigm

What if you could bypass most of the pitfalls of traditional app development, shortening the development lifecycle to only a few days? At appsFreedom, we asked ourselves this question and decided we could build such a platform.

In order to take a step into a future of better, more efficient app development, the appsFreedom platform has been designed to cut through the challenges of each of these stages, allowing IT departments to not only deliver apps extremely quickly, but to be able to build the right thing the first time, and to make quick iterations as well.

Now, let's see how appsFreedom empowers citizen developers to create a fully integrated enterprise app in 5 days utilizing the appsFreedom platform. While this is “in a perfect world” scenario, it will showcase the power behind our platform and how it can literally revolutionize the way IT develops solutions for their enterprise.

(9)
(10)

Building a complex enterprise app in 5 days does come with some prerequisite requirements. As we said, if everything is done exactly right, it’s possible to develop an app in five days, which we are going to show in the following chapters. However, in order to accomplish this goal, we have to make sure we consider and plan for anything that could delay the development with these prerequisites:

1. Finalize the business requirements and scope of the apps beforehand.


2. Line up the required resources for the appropriate tasks:


a. A technical specialist to manage network configurations if required.

b. If the citizen developers are not conversant with the backend applications, line up appropriate resources that understand the backend applications and data access. c. Business subject matter expert to test the apps.

3. An appsFreedom platform account, including a current ID with platform user access.


(11)
(12)

As you can imagine, developing an enterprise app in 5 days require full days of work on each day. Day one is no exception. On day one, there are 5 critical tasks to tackle. Notice, at this stage, we are not concerned with the following:

1. Backend Systems & Applications 2. Backend Data or Business Logic 3. Integration Logic

4. Customizations in Backend Applications

Task 1.1: Process Modeling

In the appsFreedom platform, go to the Process Modeler and draw the business processes from the finalized business

requirements. The focus should be on the logical process model, not on UI or other items listed above.

AppsFreedom is based on the Frontline Methodology, where the focus is on end-user processes and user experience. As a result, the primary step is to get the processes completely right. This

(13)

way they are designed exactly the way the end-user requires without compromising on user experience, or UX.

This step alone, which is typically performed by a citizen developer, can take from a few minutes to a few hours, depending on the complexity of the app.

Task 1.2: Generate the App

Clicking on the Generate button in the Process Modeler generates the base app framework for all devices and the browser. At this point, you have an app with all the logic and navigation flow embedded. However, it will not have all the desired screen elements.

Task 1.3: Design

Now, we need to go to the App Designer and open app that was generated from the Process Modeler. This app will have various pages, and

the relationship between them, if there is such. In the App Designer, we can open each page and drag-n-drop the mobile components into the UI.

The mobile components can be from simple elements like drop-down and text boxes to more advanced elements like charts and bar-code scanners.

(14)

All in all, step 3 can take from a few minutes to a few hours, again depending on the complexity of the app. A citizen developer can also complete this step.

Task 1.4: Real-Time Stakeholder Reviews

After the app has been designed, share it with business

stakeholders using the Collaborator. This allows stakeholders to test the app from their mobile device and provide real-time

feedback all from within the collaborator.

Review the feedback and make appropriate changes to the app. Business users can see the changes in real-time and continue the review process until all the app screens are completely finalized.

This step only takes a few minutes, and can also be completed by citizen developers.


(15)
(16)

Day two is focused on the integration of the app to backend systems. Considering how integration alone can often take months, it's amazing that we're about to tackle it all in a few hours.

Task 2.1: Picking Integration Data Sources

There are 3 distinct options to choose for integrating to backend enterprise applications:

1. Connect to an on-premise business application (SAP, Oracle, etc.)*


2. Connect to a cloud-based business application (Salesforce, Concur, etc.)


3. Connect to the Freedom database.

* If the data source is #1, download and install the Freedom Plugin from the Freedom Manager. The appropriate technical person typically completes this task.

Task 2.2 Setup Backend Business Application

Integration

This task largely depends on the application chosen for integration.

A. Freedom Database

Using the Database Designer in the Freedom Manager, setup the appropriate tables, as well as the relationships between the

(17)

Depending on the number of tables and relationships to be created, this should only take a few minutes. Again, a citizen developer can complete this activity. If the requirements are very complex, a more technical person may be required to establish and setup the database.

B. Cloud-Based Business Applications

1. Connect to the cloud business application from the Platform Configurator, using the right parameters and credentials from the backend application.


2. Test the Connection.

This entire step should only take a few minutes, depending on the backend application. A citizen developer with the right credentials should be able to easily complete this step.

C. On Premise Applications

1. Install the Freedom Plugin on a Java application server. This is a simple installation that should only take a few minutes.


2. Open the DMZ port to make a connection between the Freedom Plugin and the Freedom Manager.


3. Setup the Freedom Plugin configuration under the Platform Configurator.

This entire activity should only take a few minutes but, depending on the network infrastructure, it could take a few hours to

(18)

Task 2.3: Building Integration Logic

For this task, open the

Integration Builder and start building the integration logic for the generated app. This activity should include building the business and integration logic required by the

application. All business and integration logic is done via drag-n-drop components in the integration builder.

A citizen developer can complete this activity, provided their familiarity with the backend application and the chosen

integration method isn’t above their skill level. If the business or integration logic is too complex, or if the backend application is highly customized, a developer may be required to build the logic correctly.

This activity can take from a few minutes to several hours

depending on the complexity of the app, the customization of the backend enterprise application, and the integration option

chosen, as well as the knowledge and skills of the person doing the integrations.

“At the end of Day 2, the core app

development process should be

complete.”

(19)
(20)

Day three consists of 4 major tasks, which include getting users involved in testing and running through any bugs in the system.

Task 3.1: Publish the app in the Configurator

Once the app is published, users need to be created and assigned to the app. You may be required to define users into appropriate user groups, as well as assigning permissions and roles to the different groups. Then, an OTA (over-the-air) link needs to be setup in order to download the app.

Task 3.2: User Testing

Once users have been created, business users should download the app, check their permissions and credentials, and then start testing. This round of testing is executed in the appsFreedom “Development” platform, and the focus should be on testing the functionality, end-to-end integration, and user interface.

This activity can take up to a few hours, typically executed by citizen developers and key business users.

(21)

Task 3.3: Collecting and Squashing Bugs

Bugs encountered during the first testing phase should be

collected by the citizen developer and rectified immediately in the App Designer or Integration Builder. These changes should be published using the Platform Configurator so the business users can see the changes and continue testing.

This process should be repeated until all bugs are squashed and any missing features or functions are taken care of. This entire activity can take several hours, depending on the number of bugs identified.

Task 3.4: Transport for Quality Testing

The last activity for Day 3 is to publish and transport the app to the appsFreedom “Quality” platform. This will provide for further testing in a real-world environment. This last task should only take a few minutes and can be completed by your appsFreedom administrator.

(22)
(23)

Day Four is a complete day of expanded testing in a real-world environment, ensuring quality for the final release on Day 5.

Task 4.1: Expanding Tests

To kick off day four, more business users should be added for further testing. They’ll need to download the app on their devices using the OTA link created on Day 3 by the appsFreedom

administrator. The focus of this round of testing should be on everything from the first round of testing, plus testing the

performance of the app itself as well as UAT (User Acceptance Testing) and sign-off.

Task 4.2: Squashing Bugs

If any bugs are identified, they should be fixed immediately in the appsFreedom Development Platform, then transported

immediately to the appsFreedom Quality Environment for continued testing. The goal is to get a complete sign-off from business stakeholders before rolling out the app to production.

The end-user testers, as well as the citizen developer, work together in conjunction to identify and remove any and all bugs and missing features or requirements.

Task 4.3: Configuring User Groups, Users, and Roles

While business users are doing the final round of bug testing, the appsFreedom administrator should create the user groups, users, and roles in the appsFreedom production environment. This is done from the Platform Configurator.

This step can take from a few minutes to a few hours depending on the number of users and groups to be created.


(24)
(25)

Day Five focuses on rolling out the apps to production. Assuming all the steps were executed correctly, this day should be

somewhat easier on workload. There are two major tasks for Day 5:

Task 5.1: Publishing the App

Day 5 starts with publishing and transporting the app to the appsFreedom Production Environment. Then, the appropriate users should be assigned the app. The citizen developer, or a small group can do an initial test of the app before publicizing it to everyone.

This generally only takes a few minutes, and is performed by your appsFreedom administrator.

Task 5.2: Releasing the App

Once the small group is satisfied that everything is working correctly in production, all business users are notified that the app is available to download. They will all receive a URL as well as their credentials to download the app. Once they’ve

downloaded the app, they can login and start using it.

Task 5.3: Analyze Usage

Once business users have downloaded and deployed the app, you can analyze usage and adoption. This allows you to capture usage patterns to update the app with improvements.

(26)
(27)

Congratulations! You’ve built a fully integrated enterprise app in 5 days.

Note: The 5 Day deployment process does not include advanced

requirements, such as SSO configuration, MDM configuration, and the like.

Although these are generally quick steps in the appsFreedom platform, the time it takes to implement largely depends on the customer’s environment as well as the tools used. Therefore, we did not include them on the 5-Day deployment plan.

Conclusion

Compared to the traditional app development process,

appsFreedom empowers IT departments to sidestep most of the time-consuming activities. This literally results in building fully integrated enterprise apps in days as opposed to months using other development methods.

If you have yet to experience the appsFreedom platform, we recommend you take a test drive. This will allow you to get a feel for the platform, seeing first-hand how it can empower your

citizen developers to build and deploy enterprise apps in days, as opposed to months.

(28)

SHARE THIS:

iiiillllllllllll iiiillllllllllll iiiillllllllllll iiiillllllllllll iiiiliillll

iiiillllllllllll iiiillllllllllll iiiillllllllllll iiiilllllllllllliiiiiiiiiiii

iiiillllllllllll iiiillllllllllll iiiillllllllllll iiiillllllllllll iiiiiiiiiii

iiiiiiiiii iiiiiiiiiiiii iiiiiiiiiiiii

iiiiiiiiiiii iiiiiiiiiiii

References

Related documents

In the Remote Fabric Zoning dialog ( Figure 8 ), if you made and saved changes in the TR Mapping Manager dialog, you can choose the type of zoning commands to view in the

nesses conducting commerce over the Internet to assess their risks of ex- posure to suit in a distant forum. 4 Until personal jurisdiction analysis is consistently

48. ZIDEL and the other members of the purported class are intended third party beneficiaries of these ALLSTATE insurance agreements. ZIDEL and the members of the putative class were

Lo que parecieran ser las incoherencias de un hombre al punto de morir toma un aspecto mágico real cuando Uxbal de repente encuentra a su padre, quien le afirma que “aquí antes

Flow-through electrodes have been shown to increase power density and fuel utilization compared to planar (flow-over) electrodes, 31 be- cause the fuel is able to contact a

 Framing movement aims within wider societal concerns: These movements often adopted “limited, well-defined and seemingly apolitical aims” (e.g. combatting health threats posed

In this first semester of the program, we co-taught 17 sections twice, reaching 462 students over a two-week period (thus, 34 sessions and over 934 attendees). The liaison only

Second National JTA 2016 Study -Proposed Profession Domains-. Professional Responsibility and