Transcript

00:01Thanks for joining us here. I want to get started on the Best Practices for Enterprise Data Management session. I'm Greg Pleiss. This is Don Hong.

00:06We're both from Esri's Professional Services organization, and we were asked by the conference team to give a little presentation…

00:13…on some of our experiences through Professional Services engagements and doing enterprise data management activities…

00:20…and present to you some of the best practices and the approaches that we're following today…

00:25…in our project work for enterprise data management.

00:29Quick look at the agenda here…

00:32…the topics we're going to talk a little bit about different procurement approaches for enterprise data management systems.

00:37We'll dive in a little more detail to the necessary features and what the commercial off-the-shelf, or COTS…

00:43…architecture looks like to support these enterprise data management systems.

00:48Don's going to jump in then to some deployment considerations…

00:52…the best practices and the things you need to think about when deploying a COTS-based enterprise data management system.

00:58We'll wrap it up with some summary and hopefully have some time for some Q&A at the end, if we can keep on track here relatively.

01:07So I wanted to start out by just kind of laying out the spectrum of different approaches for procuring enterprise systems…

01:14…and this truly is a spectrum. On one end, we've got the entirely custom-built systems. These are 100 percent custom code…

01:23…designed to meet very specific business needs.

01:26On the other end of the spectrum, what we're seeing emerging now is the ability to build a COTS-based system…

01:31…really contrasting the custom system. It's based on commercial software. It's configured with minimal development.

01:39In the middle of that spectrum, then, we have the notion of a component-based system.

01:44This is systems that use COTS-based components but still use fairly significant amounts of custom code…

01:50…to glue those pieces together and make a holistic system.

01:53So we wanted to really start to zero in on what we've seen in our experience is becoming more and more possible…

02:01…and more and more a best practice for building these enterprise data management systems…

02:06…and that's moving as far to the right of the spectrum as we can and really trying to embrace the COTS foundation and configuring, not customizing.

02:16[Audience question] What does COTS mean?

02:17COTS is commercial off-the-shelf. So commercial off-the-shelf technology, or COTS.

02:21And you'll hear me say COTS quite a bit, so thank you for asking for that clarification.

02:27As we compare these different approaches, again on the left here, the custom systems are really custom-built to meet specific business goals.

02:36Contrast that with a COTS-based system, where we're talking about orchestrating COTS technology to meet some business objectives.

02:45On the left, custom systems have a heavy emphasis on software development. We're building new software.

02:50We're doing software engineering to build this system.

02:54On the right, a COTS system has that emphasis on defining workflows and configuring the commercial software to work…

03:00Another real distinction here in the approaches. Custom-based systems really get into detailed feature function requirements to do their design.

03:01…to meet the end business goals.

03:13They're going to focus heavily on how things are done. On the right, with a COTS-based system, we really want to understand…

03:20…what needs to happen, what are the driving business goals, and how can we then configure the COTS and align it with existing COTS capability.

03:27So we're less concerned with how we get things done and more concerned with…

03:32…are we meeting the right business goals and doing it in an efficient way.

03:37Again, probably the biggest distinction here in the different approaches…

03:41…custom systems, we're talking about considerable development time, considerable development effort.

03:47It's a software engineering task to build a very focused system. COTS-based system…

03:51…we try to minimize that development time and effort and really rapidly get a system that's meeting business needs into the user's hands.

04:00And finally, probably the biggest distinction here, this last bullet…

04:05…custom systems end up being very static. They do what they're designed to do and they do it very well.

04:11A year later, when the business needs to change, when the process needs to change…

04:16…you can't adapt that custom system without inputting more, another round of considerable effort and time and development to upgrade it.

04:25A COTS system, on the other hand, can continually evolve with the COTS releases and take advantage of those incremental releases…

04:31…in the COTS software to be a much more dynamic system and a much more agile and adaptable system for your organization.

04:41So what is the COTS approach, where we talk about the COTS approach for building enterprise data management.

04:47It really is all about going with the grain. We want to maximize the investment in our commercial software.

04:53We want to meet business goals by leveraging that commercial software…

04:58…so that means configuring and extending the COTS base and avoiding developing new software as much as possible.

05:08Another hallmark of this is really its ability to provide immediate capability.

05:12We already have a foundation in the commercial software that can deliver capability today.

05:17So we're not talking about a year-long or a six-month-long requirement design phase before we even begin building the enterprise system.

05:25We're talking about leveraging that commercial platform immediately and getting it in the users' hands…

05:31…and then incrementally improving and continually improving that throughout the COTS life cycle.

05:37And finally, it does…another distinction here, and I kind of alluded to it just a second ago…

05:42…is that the COTS approach really engages users early and often to iteratively improve that system.

05:49So again, we're not talking about large, upfront requirement design initiatives before users have a system in their hands…

05:56…to start meeting business goals and providing feedback on where things can be better, where things should be different.

06:02So that really is a big differentiator for a COTS-based enterprise system.

06:09So this really is a different way of thinking for a lot of people and a lot of organizations.

06:15It's going to challenge the common procurement models. Requirements are going to be focused on business goals…

06:21…not the detailed feature function, you know. It's the what we need to accomplish, not how we need to accomplish.

06:27Let the business define what its goals are and then pair that with the COTS experts to understand…

06:34…how do we meet those goals without building a custom system that's static and requires a lot of investment over time.

06:41So we're really talking about selecting the commercial software that best meets those business goals and then…

06:47…implementing with the grain for the best results.

06:49So getting a good understanding of what the path of the commercial software is and aligning our objectives…

06:55…and our incremental delivery of this enterprise system with that road map of the COTS software.

07:03Another area that this can be challenging from a common procurement model is when we talk about scheduling…

07:08…and Don will talk about some of these aspects from a deployment perspective later.

07:13But one of the things we're going to want to do here is really schedule our rollout of this, linked with those commercial software releases.

07:21So again, we don't want to invest a lot of time and effort and money building a custom function that, six months later…

07:27…is going to be in the next commercial release of the software and becomes obsolete. So understanding that road map…

07:34…understanding what's coming next and what the future direction of the commercial baseline is…

07:39…is a real driver for how we schedule the rollout and what business goals we accomplish first versus second, versus third.

07:46The COTS approach really also asks users to consider new business processes…

07:54…so we don't necessarily just want to model the way we do things today.

07:58Again, we're not going to get focused on the detailed how things get done; we're focused on the bigger picture business goal…

08:06…what are we trying to accomplish.

08:08And then we're looking at potentially new workflows based on the COTS capabilities for implementing those.

08:13And that can be difficult. Individuals resist change, organizations resist change.

08:19So it really is a different way of thinking, and a lot of organizations require a bit of a top-down approach…

08:24…and top-down buy-in from executive management that this is worth the investment, this is worth changing our business process.

08:32We can still meet our business goals, but we change our business process in order to meet those goals in a much more sustainable way…

08:38…that we can grow incrementally and not sustain a long maintenance tail of a custom system…

08:44…that's continually being updated and redeveloped as the times change.

08:49And finally, a last bullet here, again, a different way of thinking. To implement a COTS-based system…

08:56… you really need to resist that change to overly customize.

09:00The best intentions of many people often start to spiral down into the, well, if we just change this, if we just change this, if we just change this…

09:07…before you know it, you're pretty far away from that COTS baseline…

09:11…and you've got all sorts of parts and pieces in here that aren't going to just incrementally evolve as the COTS platform does.

09:18So you really need to be conscious, continually conscious of the cost benefit here of customization versus configuration…

09:28…and be willing to look at how your business processes can change to meet your business goals…

09:34…in a more sustainable, maintainable fashion.

09:41So I think we've all seen this slide a number of times probably already this week and certainly in the past.

09:47But I really want to just kind of emphasize, from a technology standpoint, this ArcGIS system concept.

09:53It is the backbone for a COTS-based enterprise data management system.

09:59More so now than ever, we've got the pieces in place that really give us that foundation that we need with the flexibility…

10:05…to support a wide range of users and a wide range of uses, from desktop, mobile, to the web…

10:11…from local to enterprise to cloud-based services, the platform is there in all of these different fashions…

10:17…and we want to start looking at how we can now leverage that to very quickly and rapidly turn out…

10:24…enterprise data management systems that can evolve over time with the COTS platform.

10:31So before we dive into some of the feature functions and the real technology aspects of this…

10:37…I want to take just a view here from a user perspective, if you will, of that enterprise GIS pattern.

10:45Enterprise data management, users…

10:48…organizations that are really interested in enterprise data management are often what I would call authoritative content producers.

10:55They are the ones producing the authoritative content in their domain, in their region, in their area of specialty.

11:03They're getting data in from the fields or from VGI-type inputs.

11:08They've got a need to then produce data and map products of that authoritative content as well as…

11:13…services, map services, analysis services, et cetera.

11:17And they may be contributing to basemaps or be a consumer of basemaps, but really, they want to do all of this…

11:23…through a configurable and shared set of workflows, production tools, and business rules for quality control, et cetera.

11:30So, I just want to kind of jump in for a little bit here and look at some of the…

11:34…sort of the key features of an enterprise data management system as well as the COTS architecture that supports that.

11:43So at a very high level, we can really put this into three main categories, and what I'd like to do here is…

11:49…dive into each one of these a little bit, and then we'll actually kind of run through a little bit of a demo on each one of these sections…

11:55…to give you a view of a configured COTS-based system for doing end-to-end data management in line with what you see here.

12:03So at a high level, what we're talking about are production management capabilities, the ability to task the work force…

12:10…report on the status and progress of the data production activities that the work force is conducting…

12:16…and the ability to do some basic management capabilities…

12:20…job assignment, job scheduling, those basic types of capabilities.

12:25The center of that enterprise data management system really is geodata management and maintenance activities.

12:31This is the geodatabase and the workflows that support…

12:35…the user interaction with the geodatabase for geodata management and data update activities.

12:40And finally, we're all doing enterprise data management not for the sake of managing data…

12:46…but for the sake of ultimately providing content dissemination to our end users…

12:52…defining detailed information products and being able to disseminate those to end users.

12:55So that really is sort of the third key feature of an enterprise data management system here.

13:03So let's kind of start at the beginning and like I said…

13:05…I'd like to kind of sprinkle in here some demonstrations for each of these key areas and really kind of…

13:11…look at a bit of an end-to-end flow from tasking and reporting through workflow execution and ultimately…

13:17…out to the data content, the content dissemination piece.

13:22When we look at production management, again, we're talking about configuring…

13:26…the COTS platform to support that tasking reporting and management of the data maintenance activities that are ongoing.

13:32This is important. It provides transparency both within the organization and potentially it can be leveraged to do it…

13:39…external to the organization as well if you open these portals to the public.

13:45Again, through these production management applications, we're tasking and managing production.

13:49We're providing that status and reporting. We do that through utilizing role-based functionality.

13:55So I, as an executive manager, have a different set of needs for what I want to see from a production management application…

14:02…versus a line supervisor who's actually responsible for the day-to-day activities and doling out work…

14:08…to the individual data editors and keeping tabs on them.

14:12So we really want to target the user experience. Think about role-based functionality and how we keep it simple within those roles.

14:21And what this allows us to do is really extend the reach of those GIS workflows. We can start to…

14:26…through using simple web-based access, roll in the non-GIS users that are stakeholders in one way or another…

14:33…in the GIS activities that are happening in our organization, like I said, be it from an executive manager's point of view…

14:39…who just needs to have that immediate, up-to-date window of what's going on in my organization…

14:46…where are we on track, where are we off track, where are we doing work, where are we not doing work…

14:52…all the way down to a true line manager who, again, isn't a heavy-duty GIS user but is the personnel manager…

15:00…that's responsible for assigning work and balancing workloads amongst the GIS staff themselves.

15:08So we can start to really fold in those non-GIS users and extend the reach of our workflows across the organization.

15:16So I'm not going to spend too much time on this.

15:18I think it's better maybe to just take a quick look at a production management application and the types of capabilities that we can provide.

15:26The key technologies here, ArcGIS Server with the Workflow Manager extension, all being leveraged…

15:33…through the ArcGIS Server web APIs. So let me just kind of jump over here.

15:41So there's kind of three key things that I need to be able to do from a production management application perspective.

15:47I need to be able to visualize the location and age…

15:54…the status, if you will, of my current data holdings.

15:57I need to be able to see where I've got current data production activities or data maintenance activities ongoing.

16:05And I need to be able to task and report on the activities within my organization.

16:11So we look at the enterprise production manager web application here. On the landing page, right away I can see a data currency legend here…

16:20…that shows me all of my current GIS data holdings.

16:23In this case, each one of these represents a tile of GIS data symbolized by when it was last updated in our enterprise.

16:30So I get a real quick idea of where's my data current, where is my data not current.

16:35The next thing I want to do is be able to see, well, where do I have current production activities or data update activities ongoing.

16:43So I can turn on a production status layer here, hopefully. And what this is going to do is going to show me all of those locations…

16:54…it's not going to come back for me, though--all of those locations where I've got current activity, current data production activity happening.

17:02So quickly, what I can see from this view, if my production status layer would come up, is how old is my data…

17:08…how new is my data, where am I currently updating things.

17:11And I can now start to evaluate those customer requirements as they come in.

17:16I've got a need for updated data in a given location; I can quickly come here and see, well, how current is my data?

17:24Am I already doing work there? Or if I'm not already doing work there, I need to task some work versus expediting some existing work.

17:36So hopefully, this isn't going to continue for me here. I was having some problems with my VPN connection right before we started.

17:44Let me try something here. Definitely having some problems here. I'll tell you what. In order to keep us on track here…

18:08…I'm going to do a little bit of a fallback here. I've got some of these actually recorded. So let me just go ahead and jump in on…

18:18…instead of waiting for the Internet connection here to come up, let me just go ahead and do this…

18:23…play a short, little video demonstration for you here.

18:35[recording] [unintelligible]…production maintenance activities based on customer requirements…

18:41…and report on the location and status of ongoing data production efforts.

18:47In our example, each of these capabilities is provided by the enterprise production manager web application…

18:53…which leverages the web APIs provided by ArcGIS Server and the ArcGIS Server Workflow Manager extension.

19:01This easy-to-use web application can be accessed and leveraged by both the GIS and non-GIS stakeholders throughout the enterprise.

19:09This same application can also be deployed externally to provide the general public with visibility…

19:16…and input into the data production activities within the organization.

19:21From the landing page, I can quickly visualize the location and age of the organization's existing GIS data holdings.

19:28Each cell on the map represents a single tile of GIS data and is color coded based on the date it was last updated.

19:36I can turn on a production status layer to view all locations where data production activities are currently under way.

19:44Finally, I can select any given location to view more detailed information about the existing data holdings…

19:51…and any associated data production or maintenance activities that are under way. As a manager for my enterprise…

19:59…these tools quickly give me the ability to evaluate the new data requirement received from a customer.

20:04Now let's take a look at how I can use this application to task and report on data production activities.

20:11To task the workflow with a new data production or maintenance requirement, I simply launch the dashboard…

20:18…click on the Submit New Production Request tool, and enter some basic information about the requirement…

20:24…including the type of data required, the date the work needs to be completed…

20:30…and an e-mail address that will be used to communicate status updates and data availability information as the production activity progresses.

20:40I can also enter additional comments or descriptive information as needed to communicate details about the work to the production staff.

20:48Next, I specify the location of the work to be performed by drawing a bounding box on the map display.

20:56Clicking Submit Request will initiate a new production activity in a centralized workflow management system used throughout the enterprise.

21:04The user to whom the work has been assigned will be notified via e-mail that they have a new production activity…

21:11…that has been tasked for them to complete.

21:14At this point, a new production activity has been created and tasked.

21:19To keep tabs on this job, I can use the reporting functions provided by the enterprise production manager application.

21:26Here, the application is connecting to the centralized workflow management system to retrieve up-to-date information…

21:33…on all of the jobs I'm interested in, which it then presents geographically on a map.

21:38By selecting different report options, I can visualize production work in different ways.

21:44For example, here I've categorized activities by priority, showing me geographically where my high-priority work is taking place.

21:53Notice here that I can also see the newly tasked production activity indicating the immediate and up-to-date nature…

22:00…of the reports generated from the ArcGIS production mapping system.

22:05But the real power comes from the fact that we are working in standardized workflows that have been configured…

22:11…to match the business processes of the enterprise. Throughout the execution of these workflows…

22:16…status and progress information is automatically captured in the centralized workflow management system.

22:22This provides the ability to visualize ongoing work categorized by schedule status, for example…

22:29…so that I can quickly determine where production activities are falling behind their scheduled completion dates.

22:35To find out why a specific activity is falling behind, I can easily drill into the details.

22:42I can check to see if any relevant notes were captured during the workflow execution.

22:47I can view a detailed activity log, which gives me the full history of everything that's happened during the execution of this activity.

22:54And I can see if there are any holds associated with this activity. In this case, I can see that the job was placed on hold…

23:01…because the imagery needed to perform the GIS updates had too much cloud cover, so we're awaiting for new…

23:08…cloud-free imagery to be acquired and provided.

23:11We've now seen how the ArcGIS enterprise production mapping system can be used to quickly and easily task new production activities…

23:19…as well as how its centralized workflow management system can be used to manage and report status against those activities.

23:29[live speaker] So, sorry, I apologize to not be able to actually run that for real. Jump back in here.

23:41So now that we've created a job, we've tasked the production work force, I want to step in and talk a little bit…

23:47…about the geodata management and geodata maintenance feature of an enterprise data management system.

23:54The center of that enterprise data management system is the geodatabase…

23:58…and so I think it's important to talk a little bit about some of the best practices for geodatabase design in an enterprise setting.

24:05Our goal here, remember, is to deliver high-performance, application-ready geodata. We want the data to be usable right away by end users.

24:14They shouldn't have to jump through a bunch of hoops and do translations from one format to another to be able to get value out of our data.

24:21So we really want to emphasize our geodatabase design around end-user capabilities. Define those detailed information products…

24:29…and then build to deliver those information products. Avoid the what-if scenarios. We really want to focus on…

24:36…what is it that users want to be able to do with our data and how do we make the simple things simple…

24:41…and not get caught up in the 10 percent case or the 1 percent case that's always going to be there.

24:49Again, in an enterprise environment, from a geodatabase design perspective…

24:53…you want to embrace the notion of federated compilation and maintenance.

24:57Within any one department or organization within the enterprise, you need to be realistic about what your expertise is in that area…

25:05…and what your capability and capacity is within that area.

25:09And don't be afraid to let other parts of the organization collect pieces of data that you need but they're better suited…

25:15…better capable, better capacity to do so. And then you simply define information products for them of how you need to use their data.

25:24And you consume those, you integrate those, not at the RDBMS level but at the service level.

25:29We start doing web service-based mashups to get information content from different parts of the enterprise together.

25:35We don't need to do a single über database, über data model across the entire organization.

25:41As long as we've got clear data stewardship rules between the different parts of the organization and…

25:46…we've got good communication about how the data needs to be used or integrated between those organizations…

25:52…we can do that at the service level, not at the RDBMS level…

25:55…and start to let people really focus on what they're best at and contribute what they're best at.

26:02And then finally, we want to design for COTS usability, so this is again coming back to that COTS approach.

26:08Leverage the geodatabase concepts, feature classes, subtypes, et cetera.

26:12Really embrace the COTS capabilities that are there to ease your data collection and to ease your information product delivery…

26:22…keeping in mind as you do that that you will need to have some balance between the maintenance side of things…

26:28…and the dissemination side of things. It is difficult to get a single geodatabase that works perfectly for data collection activities…

26:37…and also perfectly for data dissemination activities.

26:39And so you do need to be constantly thinking about those tradeoffs and how do you come up with a best of breed…

26:46…that supports your data collection users as well as your end information product users.

26:54From a geodata management perspective, once we've got that geodatabase design laid out, the COTS software…

27:03…the ArcGIS platform really does provide you with a number of options for how you distribute those geodata management activities.

27:10A couple key things I want to get across here. One is this notion of a production database versus a publication database.

27:18One of these, the production database, is really tuned for data editing and has read-write access.

27:23The other, the publication database, is tuned for service delivery, content dissemination, and read-only access.

27:31We separate these two in the enterprise world. We've got authoritative content in our production side and then we've got…

27:38…a mechanism for providing approved content that's published out to the rest of the world or the rest of the enterprise to consume.

27:49So that's one kind of key concept is that distinction or differentiation between your production database…

27:55…and your publication database and the tuning that happens that's different to each of those.

28:00The other sort of key thing here is the notion of geodatabase versions and replication. So versions…

28:06…hopefully most everybody here is familiar with geodatabase versioning.

28:10It's been around for quite some time. It gives us that direct editing capability for a multiuser environment.

28:16Great for connected multiuser editing scenarios. But recently, in the past few releases of the geodatabase…

28:22…we've built on versioning to establish geodatabase replication, and this starts to open up a series of new patterns for us…

28:31…for how we further distribute those geodata management activities to both connected groups of users who, again…

28:39…just like the production database and publication database, are separate and can be tuned separately and have access control separate.

28:47There may be workgroups within your organization that want to carve off a specific geographic area or a specific set of features…

28:54…have their own sort of mini data stewardship group that manages those and then synchronizes just their changes up to the authoritative content.

29:02So there's a use for connected replication for two-way exchange of data. And then there's also the notion of disconnected replication…

29:11…and this is where we really open up the possibility for extending the geodata management activities not just inside the enterprise but outside.

29:19A lot of organizations that are doing large-scale enterprise data management and enterprise data production activities…

29:25…are leveraging a contract or work force or contracted agencies that are doing some of that work or specific areas of that work for them.

29:34And disconnected replication and check-out replicas give you two mechanisms to easily transfer sets of geodata…

29:42…outside of your organization for maintenance activities to occur and then just get transactionally the updates…

29:47…back of what that organization has done. So again, this is another one of those things that has evolved…

29:53…over the last couple of releases of the ArcGIS platform that starts to open up this notion of…

29:58…we can have a COTS-based enterprise data management capability here.

30:03There's a lot of the building blocks are actually in place, and we can start to leverage those now.

30:08From a data maintenance perspective itself, this is all about workflows and workflow-driven, rule-based production.

30:16We want to model both new and existing processes that are going to integrate the GIS and non-GIS aspects of the organization.

30:23The goal here is to standardize and streamline those activities; to define the best practices within the organization…

30:30…of how data maintenance occurs; and then do that in a way that, again, to contrast it with a custom system approach…

30:37…isn't static, isn't locked in stone, but can continually evolve both with the COTS platform…

30:44…and with the organization's needs as they change.

30:47So it really is all about configuring a common rule base of a number of different types.

30:53There's feature templates, new in ArcGIS 10 for the data editing so we can start to standardize how, what types of features we collect.

31:01We may come up with a geodatabase design and a data model that allows us to, from a number of combinations…

31:08…and permutations perspective, to have 300 different kinds of roads.

31:13But we really want to standardize within this area or within this project or within the organization.

31:18Here's the 10 different road classifications and combinations that occur 99 percent of the time in our area.

31:25We can define feature templates that have those 10 road combinations, distribute those out to the organization…

31:32…and start to standardize the way the data collection activities are occurring.

31:37Map templates, obviously, they allow us to start to standardize the way we look at and the way we share that information…

31:43…what the layers are, what the symbology is, what the labeling rules are.

31:48And then finally, another key one here in the enterprise data maintenance side of things…

31:52…is quality control rules and really standardizing the quality control aspects so that we don't have bad data…

32:00…or data of different quality coming in. Everybody's playing on a level field.

32:03We define a single set of quality control rules that live in the geodatabase and can be leveraged by all users of the geodatabase…

32:11…so that we've got consistent quality being applied by all data editors, by all data maintenance activities across the organization.

32:20So, again, kind of the pieces here that are at play--ArcGIS Desktop is going to be our primary foundation for our GIS professionals…

32:30…that are going to be doing most of this heavy lifting, leveraging the Esri production mapping suite, and again…

32:35…that centralized workflow management repository that Workflow Manager provides to guide those activities.

32:41But also, on the ArcGIS Server side, with the ArcGIS web APIs and mobile APIs, this is, again…

32:46…where we can start to reach out to either our field GIS users who need to be part of those overall data collection…

32:52…data maintenance workflows for the enterprise, or again, those non-GIS users who aren't doing the heavy lifting of GIS…

33:00…but need to be involved in approvals as the workflow progresses or need to be involved in routing the work…

33:07…from one individual to another in making some of those business decisions about our GIS workflows.

33:13So just a quick view here--yeah, I really have lost my Internet connection. Alright. So I apologize. I'm going to do this to you again.

33:21I'm going to--luckily, I had most of these recorded, at least. So just a quick view.

33:28[recording] …data production workstation, and I can see all of the production activities currently assigned to me for completion.

33:34When I select a specific job, I can view all of the same information that was provided to the production management web application…

33:41…including job assignment, job priority, dates, description, notes, holds, and more. In addition to these items…

33:52…the production staff is also provided with the preconfigured workflow window that outlines the steps required…

33:58…to complete the specific type of production activity tasked by the production management web application.

34:06This workflow window is much more than just a pretty picture, though. It is interactive.

34:09It actually steps the user through the workflow process. As the user executes each step in the workflow…

34:16…the workflow management system is preconfigured to automatically launch the necessary applications…

34:22…and log workflow execution progress and status.

34:26Once logged, this information is immediately visible to managers at stakeholders for up-to-the-minute reporting.

34:33Each of these workflows is configured to model an end-to-end data production process…

34:38…from source data acquisition through data compilation and quality control and, ultimately, content dissemination.

34:49[live speaker] So the main take-away there, right, is that this is all powered by that centralized workflow management system.

34:54If I could have been running this demo for you live, you'd see all of the, you know…

34:59…the job we created on the web is now available to me as a GIS user on the desktop.

35:05Again, all that information that was put in from the production management staff is available to me--attachments, other things.

35:11And now I'm guided, step by step, through my workflow. What applications do I need to use…

35:16…and I don't have to do anything special beyond executing that workflow to communicate back to my management…

35:23…and executive staff what the progress is and where we are along the way. That's all built-in, configured as part of the workflow…

35:29…and is just automatically providing that real-time status back to that web dashboard…

35:35…that executive viewer window that we were seeing previously.

35:45So each one of those steps--and I apologize 'cause it was kind of hard to see up there…

35:50…but every one of those boxes in that workflow has the notion of, what percent complete am I when this step is done?

35:56So simply by marking a step as complete, the workflow management system is now saying, okay, I'm 10 percent done…

36:02I'm 15 percent done, I'm 25 percent done.

36:04And that's again, you know, when we talk about configuring COTS to meet your business processes…

36:10…that's where a lot of the work comes in, is defining those workflows and making the decisions about…

36:15…once I've reached this point, I can say I'm roughly 50 percent done or 80 percent done.

36:21That's all configuration and that's all stuff that is flexible and can change on the fly as your workflows change…

36:27…and as you build a historic basis of, well, we thought we were halfway done when we got to this point…

36:33…but history is showing us that there was still three more months of work left on almost every project once we hit this point.

36:39Well, let's go update the workflow to say we're actually only 25 percent done.

36:44And so that's that very dynamic and nonstatic nature of configuring workflows versus building custom systems.

37:00So kind of stepping through here to the--like I said, none of us are into data maintenance for the sake of data maintenance.

37:08We're all doing data maintenance activities because ultimately, we want to serve end users…

37:12…and provide content dissemination services to end users. And this is, again where…

37:18…the COTS platform has evolved now to a point that we've got a variety of ways to meet end-user needs and provide end-user applications…

37:28…that deliver a variety of diverse information products, from visualization information products, map services…

37:34…be they basemaps or dynamic overlay services, to analysis services, the publishing of geoprocessing rules…

37:41…and analysis tradecraft that leverages your data and your expertise, to geodata services themselves.

37:49So the geodatabase replication has web service end points that actually allow us, through a web services perspective…

37:56…to distribute not just images of the information products but the raw data behind it.

38:02That's true for the vector data with a geodata replication service, and that's true for image services with a data download option…

38:11…as you may have seen during the plenary yesterday, as well. So we really can, at a COTS level, provide a very rich…

38:16…and very diverse series of information products. They enable search and discovery, both from a standards-based…

38:25…OGC-based search and discovery mechanism, using something like the geoportal server, to the more lightweight…

38:32…ArcGIS Online tags and description searches that are enabled now. And again, the COTS platform also allows us…

38:41…to support both the internal and external user. So web services clearly connect all of our internal or connected users.

38:49But as I said, through these geodata services and other mechanisms, we can easily put transactional updates onto traditional media…

38:58…that get carried over to a new network to an offline, sort of LAN environment, and we can stand back up all of that geodata content…

39:05…and all of those content services within a local node, and then manage through traditional media updates or…

39:15…if we're in a sometimes connected mode, through these web service-based updates, transactional updates that says every month…

39:21…this publication node is going to connect back to the mother ship, update with all the data maintenance activities…

39:27…and then be able to reoperate in an offline mode with the most current data as of our last connection point.

39:34So a lot of these things are there. The foundation is there in the COTS platform, and, like I said…

39:41…they're leveraging ArcGIS Server, the Geoportal extension, and really, you know, as we drive forward, they're also leveraging…

39:49…you know, just the straight ArcGIS Online and this notion of being able to publish your services directly to the cloud…

39:56…sharing them with private groups. We saw--for those of you that were in the plenary yesterday, you saw Scott Oppmann…

40:02…give a demonstration of the portal, the Esri-hosted portal configured for the City of Louisville.

40:07So when you logged in with the City of Louisville account, you didn't see all of the generic, Esri-produced content.

40:13You actually saw focused content that was all contributed by and relevant to the City of Louisville.

40:19So there's cloud and managed, hosted services capabilities in ArcGIS Online that you can take advantage of.

40:26And coming at 10.1, there's also the notion of being able to have ArcGIS Online on-premises with what we're calling ArcGIS Portal.

40:33And what we see here is an example of--this is no longer an ArcGIS.com URL, but this is a privately hosted…

40:35So planning the rollout is a key in COTS approach, and we need to include software releases, with us or with other vendors…

40:41…privately run version of ArcGIS Online that, again, has been configured. This is no customization. This is all configuration around…

40:48…what are the main things we want to do? Our users--we want to be able to visualize, we want them to be able analyze…

40:53…we want them to be able to access the data. And these just become all--yeah, of course, I'm offline…

40:59…these just become all configuration of that ArcGIS Portal, and the queries that the ArcGIS Portal is running to filter the content…

41:07…and this is now running local, on your private cloud, on your own internal infrastructure…

41:13…as opposed to externally on the public ArcGIS.com site.

41:21So really, just to kind of wrap up here with that first simplistic diagram--kind of blown out a little bit here.

41:28What did we look at? We looked at production management, feeding the geodata maintenance…

41:34…and geodata management activities of the organization--those are performed primarily by the GIS users…

41:41…and the field users and rely heavily on this notion of configured workflows, adaptable workflows, and a common…

41:46…rule-based and template concept that standardizes and streamlines those activities.

41:52There's a variety of geodata management options available for how you distribute those activities…

41:57…both within and outside of your organization. And ultimately…

42:01…that is what feeds the visualization analysis and data access web services that reach out to your end users…

42:08…both in a connected and disconnected fashion. So the pieces are really there from a COTS perspective to build this…

42:15…end-to-end tasking reporting production dissemination system without having to do a lot of heavy, custom development.

42:25So as we talk about how to do that, I'm going to go ahead and turn it over to Don…

42:27…and let him talk through some of the deployment considerations here.

42:33Thank you, Greg. That was a lot of stuff.

42:45And I have to tell you, you know, that demos are real and I've seen them.

42:50So if you're interested, then come up and see us and we're more than happy to show it to you.

42:55So in the previous two sections, Greg can show you, what is a COTS approach…

43:01…and he also showed you what are the necessary features and architectures as associated with that approach.

43:07I hope that you get a better understanding of the COTS approach…

43:10…and I hope that you think it's beneficial to your project and to your organization. Maybe you still, you know…

43:17…think it's a good idea but you still have doubts on how to get it done, right, how to put it into my organization.

43:24And in this section, we're going to talk about that and talk about how you're going to implement as a project management…

43:32…or as a techie. So before I start, I want to have a show of your hands, and how many of you consider yourself techies…

43:39…you know, program? Good portion--thank you. And how many of you think of yourself as a project manager…

43:49…executive level…decision makers? Good. The rest of you, that didn't raise your hand…? Alright, so just listen to me.

43:59Okay. So I think--where's my remote control? Thank you. So…

44:12…I think it's not an understatement that COTS approach has greatly impacted the software development life cycle in a good way.

44:21And when we look at software development, I think it's best to compare the COTS approach to a…

44:29…traditional approach to get a better understanding what we are talking about.

44:34There are many, as you know, many software development life cycles out there--waterfall, spiral…

44:42…iterative process, or recently, the more agile type of development approach.

44:49If you notice, there is a common thread among these development processes.

44:55It's a set of common activities in the development life cycle, and some of them are on the slides.

45:03We plot them onto two scales so that you can compare them. On a more traditional development approach…

45:09…you look at the planning, requirements, design, development, testing, implementation--the development is fairly large…

45:17…'cause we are developing software and we need to gather requirements and we need to plan the testing activities and deployment for it.

45:28As you look at the COTS approach, the fundamental assumption is that we're leveraging COTS functionality.

45:35So consequently, you see that you have much shorter life cycle and you have a quicker, accelerated delivery schedule…

45:46…which means a quick turnaround time. And how does the benefit being realized is through these…

45:53…shortened phases in that life cycle. You spend approximately same amount of planning and deployment effort, although shorter.

46:03And most of the benefits are realized in the requirements design and testing. We cross out development…

46:14…because we don't do a whole lot of development. We do configuration. We leverage existing functionalities.

46:23We involve a lot of users upfront. So we interact with the user because we can. We have COTS-based product.

46:32We can show them what we are talking about, rather than on a piece of paper. And remember this diagram.

46:39This provides a lot of insights on a COTS implementation approach. There will be a quiz at the end.

46:46No, just kidding. It's supposed to be a joke.

46:52Planning. So as we start planning our GIS system, COTS approach puts a lot of focus on business process and objectives.

47:03And not to say traditional approach does not emphasize that--we do. But the COTS approach allows you to do more…

47:11…because you have less time to worry about the development, right?

47:17And you're really just leveraging what we currently existing functionality that we offer to you.

47:24So you can emphasize--the typical goals that we're trying to achieve--improving productivity, increasing revenue, reducing costs…

47:34…supporting regulatory requirements, and one of the key things that I found, myself…

47:42…very hard to do in a COTS implementation project is the temptation of customizing.

47:50There's a lot of things that I want to do specifically for my organization that COTS doesn't offer, okay.

47:57So it's that temptation that you need to resist, not because you can't do it; it's what the business really needs.

48:06And how many times that we actually develop something without asking whether the business truly need them.

48:14But it's because we can do it, and it's cool. So we need to pay attention to that.

48:24Because releases of COTS software continues, they offer new functionality, in turn, help us building our system.

48:50…in your project schedule, and we need to work with them as a partner, right.

48:55And you need to work closely with us, say GIS, that we include you in our holistic testing.

49:02We solicit your input to our COTS-based functionality so that you can do your job better.

49:09Then, that is what we call there in the rollout, using multiple phases and iterations of software, the COTS software functionality…

49:21…which enabled heavy user interactions and validation as the releases evolved through time. Because user is part of this…

49:32…as we're going show later on. User interactions start from the beginning, unlike traditional approach…

49:39…that you have to put things on paper and you quickly go and build them…

49:44…and then you come back and show that and time has passed.

49:48By the time you finish all your functionality, there's a new releases coming out, and you have to catch up on that…

49:54…and you have to put in new code again. So it's an endless cycle, right? And so you carry that baggage throughout.

50:01So plan that ahead in the COTS approach that we do those things for you. But we need to talk. We need to do things together.

50:12So it's a partnership, it's a true partnership that we're talking about. And also, understand, there's a tradeoff between COTS.

50:22It's not, you know, the beautiful day, like outside--it's perfect--because there's a tradeoff.

50:28We talk about COTS cannot meet a hundred percent of your needs, and you have to be ready to sacrifice certain things.

50:35And that is the change that we talked about. Embrace the change.

50:40Maybe we spend 80 percent of our time developing 20 percent of the functionality that is critical to the business…

50:48…but can they change their process to save maybe 50 percent of that 80 percent?

50:55So that requires this upper management buy-in, the top-down approach, and rather than…

51:03…I've very seldom to see a very successful implementation from the bottom up from that perspective.

51:13Planning is about developing detailed work breakdown structure, and we know…

51:18…project managers know those detailed activities are critical.

51:22And this is the diagram to show you the COTS approach. The first phase is out of box…

51:31…put your hand off the coding and focus on configuring the tools and quickly deliver those functionality to the user.

51:40You'll get their buy-in, right, and get them talking to you, and this is what I like, this is what I don't like…

51:46…this is what I need, and to do. And then you have a list of things that you can start negotiating with them…

51:50…and that would be the refinement in the second phase. And talking about those things and say, well, how important is it to you?

51:57If I offer slightly different functionality, would you die tomorrow? Probably not. And so, and you can still operate as you go.

52:07So that's sort of the negotiation. Phase 2 is multiple phases, not just one. It's phase N, really.

52:16It's the iterative process until a point, and then you say, Yes, I'm finalizing it and I'm deploying it.

52:24Now, it's very simple to say that I'm ready for deploy in a traditional approach because, once you deploy, that's it.

52:33It is static. People sign off on it, and it's going to be there for six months, a year, or two years. But in a COTS approach…

52:42…it's less nerve-racking, because we know it will continue to evolve. COTS releases will come out.

52:51We can continue to configure the tool. It requires less effort to do that, alright. That's the benefit that we are talking about.

53:02In a COTS system, the requirements are satisfied by COTS functionality design around best practices…

53:09…and it's been tested by many organizations before we release them, right? And so, really…

53:18…understand the COTS capability and how it impacts the system business process.

53:23And it's critical for you to efficiently implementing with the grain of the software, so you need to understand…

53:30…what the software provides to you, so that you can tell your user and you can make intelligent decisions.

53:38And also, really, because we have time to focus on what this software can help the customer achieve, and we don't need to…

53:52…we have less time to worry about how to deliver them, because we have the COTS software behind your back to help you to do that.

54:00What I have seen many successful user used to do is to use COTS to demonstrate a vision of the system early on…

54:12…and instead of talking about modifying the technology to meet the business needs. In other words, you lead rather than you follow…

54:24…right, and you need to paint a vision. And because COTS products allow you to do that, you have the tools.

54:31In the old time when we need to custom develop these tools, it takes time. And so leverage that, and that is very, very powerful.

54:44Iterative and demo-based implementation approach sort of merge the requirement and design together.

54:55So as we develop requirements, we're really showing people how the system works and at the same time designing the system…

55:06…and then they provide feedback and I come back and revise my application. So these two actually are being combined…

55:16…and just imagine in your requirements workshop and design workshop that you are sitting down with the users.

55:24And I am the COTS expert; I can configure things. You have business users sitting down with me in the same room…

55:35…and as you say, I want to do X and Y and Z, I can quickly configure the tool and show you…

55:41…you can accomplish maybe 80 percent of that X and Y and Z. And that's very powerful.

55:47You deliver something to the user instantaneously, right?

55:51And maybe the 20 percent let me go back and talk to my technical staff. Maybe I do custom or maybe I talk to Esri.

55:58We provide additional--there may be other tools that you can leverage. So that is what we see the gain.

56:05Again, remember the chart up front. The small blocks of design and requirements are being realized because of this.

56:19In my view, this whole process of design, as requirement, gathering, planning--it's like a user feedback-driven machine, right.

56:30The key components are--there's prototypes, there's designs, there's configuration.

56:37Any of these component terms and the other goes, right? It's all running together. It propels and is moving forward.

56:45It's very dynamic. It's very iterative. So if nothing else in this implementation approach that you remember…

56:53…please remember iterative. Please remember user interaction, and this is what it's all about in a COTS implementation approach.

57:05Develop--this is where you actually develop something. And we like to say you configure rather than developing.

57:16The difference between the COTS and the traditional approach, it's most dramatic in this case, and we have a rule of thumb.

57:25If you do more than 10 percent of coding in your system, you're not truly doing COTS, and we want to resist that temptation…

57:35…again, to do custom code because we can. We provide a lot of those APIs for you to do that…

57:43…but just think about kind of the benefits that you get or the less trouble you get into…

57:49…by maintaining those code in the future, right. Not only quickly turn around a solution to your user if you use COTS…

58:00…you also save money in the long term. You don't need to maintain that.

58:03You don't need to carry a group of programmers or contractors or yourself to maintain it moving forward.

58:13Testing--this is another area that is significantly different and benefit people who implement COTS…

58:22…because we don't develop code. The testing in the common, the traditional approach sense…

58:30…it really is for testing a specific business case. You pull out a use case, all written nicely in a table…

58:41…and you test one by one and check off them. In the COTS approach, you don't…you don't do that.

58:48What you do is you test the configuration. If I have a problem, I just change it.

58:54So less effort goes into this rigid testing, and in turn, that you gain benefit on time and cost.

59:06Implementation is the last phase. It really, truly is a deployment, and as you're getting ready…

59:13…I have my system, I need to deploy into my IT framework. One of the real strengths of COTS-based system…

59:22…is that it will continually evolve and improve, both by configuration and by releases. And…

59:30…and that's why the decision to go into deployment, it's a lot easier, 'cause I know that I have support for my back…

59:38…that someone will continue, will have new functionality for me to continue to improve my system…

59:45…and I need to work with them to do that. So the deployment--the typical consideration on a deployment are, you know…

59:53…leveraging, sort of the human elements of the deployment is, you know, get your user buy-in, get them trained…

1:00:00…now, that's another side benefit of COTS is you get them involved early on in your project, so they already know the system.

1:00:08They already got trained, right? And it's really, the testing and training should be sort of coming together.

1:00:15You're actually doing one thing and benefit both, right. And so user has better buy-in, and my view is that as they go through this…

1:00:25…they know how to use it and they know the aerial pointers, so there's less learning curve going on.

1:00:32The other thing is probably about the same. You may have to look at, you know, IT standards, security…

1:00:38…you look at the demonstration side once you deploy--who's actually managing my geodatabase, who's my system administrator, how…

1:00:45…how to keep your data up-to-date. And there are oftentimes, people put the system out and they…

1:00:53…forgot that I need to keep my data up-to-date. And very quickly, people say, well, your tools are great…

1:00:59…but my data--your data is outdated. It doesn't mean anything to me, so they're not going to use the system.

1:01:05So we need to avoid that, and that's actually common on both sides.

1:01:09So this is the last slide on the implementation.

1:01:16Iterative--COTS approach is an iterative process, and you see these circles and the pilot…

1:01:25…deployment, phase 1, phase 2--the pilot being the bigger circle because it requires you to do more as you change.

1:01:35The people--so the paradigm within the organization, how to implement a system, and you have to get the buy-in…

1:01:43…you have to configure things, and you build from scratch.

1:01:46It will become easier in the deployment phase 1 because you are refining. You are not creating anything from scratch.

1:01:55Phase 2 is slightly bigger because we think it is a learning experience for you to work with the COTS vendor…

1:02:03…and you need to include more of their input or they will need to include your input. So as you learn, you'll get better.

1:02:12To conclude my session on this, I want to give you a quote.

1:02:17It's from one of my favorite organization management author, Jack Welch, a CEO from General Electric.

1:02:27He says about organizational change, quote…

1:02:31…"Getting it right is iterative. You get better at it with experience and observation, and eventually, after some time passes…

1:02:42…you notice it's not getting harder anymore. It's just what you do."

1:02:47And I think he's talking about COTS approach through software development, as well.

1:02:54Alright. Thank you, and now I hand it back to Greg for summary.

1:03:08So we just wanted to wrap up to kind of, you know…

1:03:11…make sure you get what we think are some of the key take-aways of this COTS approach…

1:03:17…and what are the benefits of trying to adopt a COTS approach to your enterprise data management needs.

1:03:24And they really summarize down to this: It's minimized cost to implement. You're not building and procuring and paying for large…

1:03:31…custom development efforts that then incur maintenance over the long run. You're leveraging your existing investment.

1:03:39You're shortening the schedule. You're immediately involving users and immediately having the users…

1:03:44…exercise the base platform capabilities that are there, getting real capability into their hands much faster.

1:03:52You're reducing your risk. As Don talked about in sort of a testing side of things here…

1:03:57…the technology that you're implementing on is proven by a very wide user base.

1:04:01Thousands, tens of thousands of users across the world that are leveraging that same COTS platform and are running through…

1:04:07…those same COTS capabilities and functionalities really reduces your risk and increases your testing work force, if nothing else.

1:04:18Again, it is lowered maintenance costs. We're not continually redeveloping or re-upgrading custom developed pieces…

1:04:27…every time a COTS release comes out. We're simply riding the coattails of and implementing the next release of…

1:04:33…the COTS technology without having to do COTS maintenance plus separate custom development maintenance.

1:04:41Like we said, this really allows your system to evolve with future COTS functionality. It's not a static system.

1:04:48It's a very dynamic system that has a known update schedule, with several times a year…

1:04:54…you can expect updates to the COTS baseline to come out.

1:04:58And ultimately, what this gives you is a wider range of qualified people to use and maintain the system.

1:05:02It's not a one-off system that you have to get special training on.

1:05:06It's a COTS platform that people are getting trained on through their school and education backgrounds…

1:05:13…they're getting trained on with other organizations before they come to your organization. It is…

1:05:18…it is just the standard COTS platform that they need training on, not a bunch of custom widgets and custom system pieces.

1:05:26So, in summary here, we think COTS configuration is a more efficient way to approach system development…

1:05:34…when you look at it in the long run and the big picture.

1:05:37The COTS approach redefines the system development process with a focus on the mission needs.

1:05:44Instead of building software, what is it that the business needs, what is the business trying to accomplish…

1:05:49…not what kind of software can we build. And finally, ArcGIS, and really at ArcGIS 10…

1:05:56…provides that platform for configuration and rapid development…

1:06:01…and we think that's really what's starting to make this COTS approach viable and something that can compete with…

1:06:08…maybe the more traditional mentality of large, custom system developments that's been much more pervasive in the past.

1:06:18So, I want to thank you guys all for attending. I appreciate the turnout.

1:06:24I've got some links here for those of you that might be interested in some more information on this.

1:06:28We did have an ArcNews article around this topic. The link is here. There's also a white paper that we published…

1:06:36…out to esri.com if you're interested in getting some more detail on this COTS approach and some of the concepts and ideas behind it.

1:06:44You're certainly welcome to send Don or myself an e-mail offline if there's any other questions or things we can answer for you.

1:06:51And then, last thing, I want to encourage everyone to fill out the online evals we are doing.

1:06:57No one's passing out papers this year; we're all doing them online, so if you get a chance, please fill it out.

1:07:02Give us some feedback. We'd really appreciate kind of your thoughts on, if this is a viable approach or not…

1:07:09…and other ways that we can make this session or this topic of more interest and more use to you all. So thank you very much.

Copyright 2013 Esri
Auto Scroll (on)Enable or disable the automatic scrolling of the transcript text when the video is playing. You can save this option if you login

Best Practices for Enterprise Data Management

Greg Pleiss and Don Hong discuss a procurement and deployment pattern for data management including architecture considerations and necessary features.

  • Recorded: Jul 12th, 2011
  • Runtime: 1:07:17
  • Views: 60174
  • Published: Sep 21st, 2011
  • Night Mode (Off)Automatically dim the web site while the video is playing. A few seconds after you start watching the video and stop moving your mouse, your screen will dim. You can auto save this option if you login.
  • HTML5 Video (Off) Play videos using HTML5 Video instead of flash. A modern web browser is required to view videos using HTML5.
Download VideoDownload this video to your computer.
<Embed>Customize the colors and use the HTML code to include this video on your own website
480x270
720x405
960x540
Custom
Width:
Height:
Start From:
Player Color:

Right-click on these links to download and save this video.

Comments 

Be the first to post a comment
To post a comment, you'll need to login.
If you don't have an Esri Global Login ID, please register here.