When Dan came into the conference room, he was struck by the seating arrangement. The EA team was on one side, and Bill and his two developers were on the other. "Looks like disarmament talks of some sort—which is not a bad comparison," Dan thought to himself as he took his place at the head of the table.
"Hope everyone's lunch was satisfactory, and that you are all ready to work together on this," he said as he opened his notebook. "Has everyone looked through the materials I sent around last week?"
"I sure did, and there's something I just don't understand," said Bill, obviously irritated. "We've been busting our tails on the RMS project team, but it seems like the EA team is setting our IT direction. Before you came in, Mr. Kennedy here was telling us about all the great new technologies we're going to implement at Ferguson and Bardell. Since when does someone from Long-Range Planning dictate our technology choices?"
Before Dan could answer, and before Kevin Kennedy could open his mouth, Richard Kaplan said in a calm voice, "Now, Bill, don't act so surprised. I've been sending you weekly updates on the work of the EA team, so what Kevin said shouldn't have come as a shock. As for Kevin, he sometimes likes to assume airs, but that doesn't mean we should discount either his intelligence or his contributions. If we all take a look at the agenda, we'll see that this meeting is about the mutual feedback loop explained in the materials Dan sent around." Although Dick's words were fairly blunt, neither Bill nor Kevin seemed offended. In fact, they both looked somewhat sheepish.
"As usual, Dick has brought us to a moment of clarity," said Dan. "Our purpose here is not to endorse one team's views over the other's. As we used to say in graduate school, the work of both teams should be informed by the work of the other team. The EA team has spent the past six weeks putting together an excellent first cut at both documenting our current EA state and at planning the high-priority projects for the coming year. As you might expect, RMS is one of those projects. So before we complete the design process for RMS, we need to synchronize the two efforts. That is the purpose of our meeting today."
"Frankly, Bill, because the RMS project is so important, it may have more impact on us than we on it," said Jo Brown. "We've seen in our research into other companies how high-priority projects have a tendency to reshape a company's EA."
"Yes, but even if that's the case here, we still want to validate the direction of the RMS project against the stated business direction of Ferguson and Bardell," said Kevin. "Ultimately, what we build for RMS should fit into the long-range plans of the company." He looked at Dan. "Don't worry, Dan. I haven't forgotten the two-way information flow you've been pounding into my head." Kevin turned to Bill. "Our technology plans and discoveries have to be part of the input to our business plans, as well."
Bill shook his head. "I never thought I'd hear someone on the business side say something like that." He smiled wryly at Kevin. "I guess there's hope for you after all." Kevin just laughed. "Some would not agree with you, Bill, but thanks for the vote of confidence, anyway."
Dan was glad to see signs of willingness to cooperate and was grateful to Dick Kaplan for his influence. "OK, folks, now that we've established the relationship between our two teams, let's get going on the agenda. First, I'd like the EA folks to share the highlights of their individual perspectives that might relate to the RMS project."
The four EA team members took a few minutes each to point out findings or plans that they felt could have an impact on RMS. Bill, Sam, and Beth took notes and asked questions, and a lively discussion ensued. Jo told them that the RMS project was already a key component of their plans for the year, and that a project to build a training and skills tracking system might begin after RMS was complete. Sam noted that tying into the training and skills system might be a good feature for RMS Version 2.
Jenny Sax discussed the company's intention to narrow its approved technologies list to decrease support and training costs. She also mentioned that a pilot group was working with Windows 2000, but that it wouldn't be deployed across the enterprise until well into the fall of 2000, if then.
Beth turned to Sam. "Do we need any COM+ features for RMS Version 1? Do we need Windows 2000 sooner for either Version 1 or Version 2?"
Sam shook his head. "It might make certain parts of the business layer easier, but not enough to change the deployment schedule for Windows 2000. We can make do with what we have, and simply rewrite those components whenever we get 2000 deployed and stable."
Dick talked about some of the information gaps he had discovered. "One of the key gaps is good scheduling and resource information. In fact, almost every project and department manager has complained about the inability to match resources and projects across the enterprise. I'd say there are a number of people hoping RMS is going to take care of that." He pulled a packet of papers from his bag and passed them over to the development team. "As part of my work, I've put together a proposed data model and dictionary for Ferguson and Bardell. It's not completely approved yet, but I thought you might want to look at it and see if it is in agreement with your work on RMS."
The three developers looked over the data documentation sheets. "Dick, this is great!" Beth exclaimed. "There's a lot of overlap, but you've thought of some fields we hadn't considered. We'll take a look at this more closely later, and I'll send you our comments."
"Kevin, what about the business direction?" asked Dan. "What key strategic plans does the RMS team need to know about?"
"The biggest one is expansion," said Kevin as he shared his own handouts. He pointed to the first bullet point. "As you can see, we're going to go from six offices to ten over the next 18 months. We're also going to add approximately 250 people, which is more than a 30-percent increase in staff."
"Wow! That's some growth rate," exclaimed Sam. "And all those folks will be doing time sheets, right? That certainly changes some things—or at least, locks in some plans we were already considering." He looked at Beth and Bill, who both nodded.
"That sounds like a good transition to the next item on the agenda," said Dan. "What does the RMS team have to share with the EA team? Bill, why don't you take some time to bring the EA folks up to speed on the RMS project and the technologies you are considering."
Bill outlined the various design paths the development team was considering, including the question of whether to use Win32 clients or Web clients. The EA team spent some time asking questions, trying to be sure they understood the implications of various decisions on their EA work. Finally Dan said, "It sounds to me as if both teams understand each other's work pretty well. Let's move on to coordination and recommendations." He turned to the development team. "What have you heard from the EA folks that has an impact on your design choices?"
"I think the biggest impact will come from the expansion plans Kevin talked about earlier," said Sam. "In our original design work, we were planning on no more than 300 concurrent users. We thought that was a safe number, given the time differences between the offices and the fact that people update their time sheets throughout Friday and Monday. That left the options open between a Web client and a Win32 client. Now, with the number of concurrent users shoved up another 100 to 200, I think we've got to go with a strictly Web client, keeping as much functionality as possible on the application servers to minimize network traffic."
"But Sam," said Dan, frowning, "if I remember correctly, some of the most important functionality for the managers was in the Win32 client, and you hadn't put it into the Web client. In fact, a few of the features strike me as being fairly difficult to pull off in a Web client. Won't doing a pure Web client increase your development time?" Sam and Beth both nodded, and the group fell silent as they considered the dilemma. Dick Kaplan stopped doodling on his legal pad. "Do you have the Logical Design with you?" he asked Bill.
Bill tapped his bag. "Sure, it's right here. Why?"
"Let me see it a minute," Dick said. Bill passed it across the table, and Dick studied it for a minute. Then he looked at the group. "I think I see a way we can get off the horns of this dilemma." He laid the drawings out on the table for the EA team to see. "These drawings are representations of the various functions of the RMS application. Look first at the user services, then the business services, and finally the data services, and tell me if anything strikes you."
The group, including Bill, Beth, and Sam, spent some moments looking over the various drawings in silence. Finally, Jo said, "I'm not a developer, but from what I can tell, it almost looks like two separate applications using a common database."
"What do you mean?" asked Beth.
Jo picked up the drawings and rearranged them on the table. "See? This set over here is all concerned with entering time, verifying the time entered, submitting time, and approving the timesheet." She pointed to the second group of drawings. "And these are all about resources: knowing their skills, assigning them to projects, and checking on their availability." She stood up and folded her arms. "There's some common data, obviously, because in both instances we're working with the same resources and the same projects. But the purposes seem separate." Dick slowly nodded his head as he listened to the discussion with his eyes closed.
Suddenly Sam snapped his fingers. "That's it!" He turned to Bill and Beth. "We build both clients! A Web client for time entry for everybody, and a Win32 client for just the managers. Most of the managers are in the office when they assign resources, anyway, and there's a limited number of them." He was getting more excited as the pieces fell into place in his mind. "And we can use Transaction Server with it, to make sure that the time sheets get across even if the server is clogged up."
Sam seemed pleased with the vision he had just articulated, but Bill was aghast. "Two clients? I wasn't even sure we could get one done in time, and now you want to do two? There is no way we can hit the deadlines that way!"
"Sure there is, Bill!" Beth said. "If we split the services up like that, we can divide the work along both tiers and clients and work in parallel. Some of the other people in the department want to work on this project, anyway. We can get more done in less time, and meet our scalability requirements as well!"
Looking dubious, Bill turned to Dan. "What do you think?"
"I think it might work, Bill. I like the idea of the single-purpose Web client, and it will be easier to write. As for the parallel development effort—that's a management problem, not a technical one. I know a pretty good development manager who's probably up to the task."
Bill could see that Beth and Sam were excited about the solution, and he threw up his hands in mock surrender. "Alright, alright—we'll try it! But if it doesn't work, we write it my way: terminal emulation and assembler language." Everyone laughed.
"Remember, Bill, the Planning Phase can include proof of concept work, said Dan. "It might be worthwhile to have a certain pair of eager-beaver programmers put something together before committing completely to the two-client concept. No fancy interface, not fully functional; just something showing the effect of that many Web clients on our servers."
"Can you two do that?" asked Bill. They looked at each other and then nodded.
"Good, then that's a plan. And a good example of letting our company's enterprise architecture inform our development work." Dan turned to the EA team. "What about you four? Is there anything that the RMS development team has shared that you'll need to consider as you wrap up your EA work?"
Jenny nodded. "Absolutely. For one thing, we have been considering whether or not to make a stronger commitment to our intranet. It's served some good purposes, but it needs to be more than a source of static information. We have been debating whether it made sense to move some of our business processes onto the intranet, and I'd say that decision is now made. Our task is going to be identifying other candidates for that technology."
Kevin added, "Another area the long-range planning group has been looking at is expanding our service area even further outside our offices. In fact, we're looking at a national advertising campaign in about nine months. One of the concerns we've had, though, is connectivity issues involved with having that many people on the road. Jenny and Tim have already worked with us, showing us various ways we might deal with these issues. I think this meeting today has helped us to see we need to consider not only the pipes, but also what runs across those pipes. I, for one, am much more confident in the ability of our IT group to come up with creative solutions to business needs."
"Kevin, I think that's the nicest thing I've ever heard you say about a group you weren't part of!" said Jo with a sly grin. "We need to get you away from the CEO more often." The room got quiet as everyone waited to see how Kevin would take such a jab, but he said simply, "Sometimes a fast-tracker needs to do some growing to stay on the fast track." The few appreciative murmurs made Kevin smile.
Dan waited a moment, before continuing. "I think this has been a productive meeting for both teams. The EA team will be wrapping up Version 1.0 of the EA plan for Ferguson and Bardell in about a week, and I'm sure they would like to see the Functional Spec for RMS when it is done. Before we finish, are there any questions or comments?"
Dick Kaplan had been staring into space for the past few minutes, seemingly oblivious to the conversation of the others. Now he looked at Dan. "I'd like to meet with you and the development team after we're done, if the four of you have a moment. I've got an idea that might be helpful for the RMS work."
"Can you three stay for moment?" Dan asked Bill. All three nodded. "Good. If no one has anything else, we're adjourned."
As the rest of the EA team gathered up their things to leave, Dick joined Dan and the developers, who were standing together discussing the idea of two clients. "OK, Dick, we're all ears," Dan said. "You've already helped us with your insight into the work flows of RMS. What else have you got?"
Dick turned to Beth. "What were you considering for your back-end data store?"
"SQL Server, of course," she said. "That's the corporate standard."
Dick shook his head. "I think you should reconsider. There's a better choice for the application you have in mind."
"Dick, I know you're not as committed to the Microsoft product mix as the rest of us, but I'm not going to let another database in the door." Bill was slightly irritated. "I just got rid of the last dBase III application four months ago. We standardized on SQL Server for a number of good reasons, and I don't want another database that I have to train for, program for, and support."
"Bill, you're not hearing what I am saying," Dick said calmly. "I didn't say anything about another database. I said you should consider another data store. There's a difference."
Bill was getting visibly irritated. "Dick, you're talking in riddles again. Stop being the Socratic professor and spit it out."
Dan interrupted. "He's right, though, Bill—there is a difference. We tend to think of databases as the only place to store data, but it's too narrow a concept. We store data in file systems, e-mail, scanned documents, the Internet, any number of places that are not traditional databases."
"Exactly," said Dick. He turned to Beth and Sam. "What three primary data elements are common across both application threads in RMS?"
Sam and Beth answered almost simultaneously, "Resources, projects, and time."
Dick nodded and continued, "And what data store do we already have in place that everyone has access to and that already deals with people and time?"
Dan and the developers thought for a moment. Suddenly Sam said, "Exchange! Our Exchange server stores every user and their calendar!"
"I think you might consider Exchange as one of your data stores for RMS," said Dick, "especially when you add in its ability to replicate across the enterprise, and the fairly rich set of objects and services it exposes."
"Not to mention its integration with Web technologies," said Dan. "Excellent suggestion, Dick. You're two for two today."
Bill's initial irritation had melted during this conversation. "I didn't realize you know so much about day-to-day programming issues, Dick," he said as the group moved out of the conference room.
"Each of us has abilities and interests that are hidden, just as one side of an object is hidden when you look at the other side," said Dick calmly. "No one can know another person completely. Don't worry about it."
They had arrived at Dick's office door. Bill asked, as if on an impulse, "Do you keep a copy of your dissertation in your office? If so, I'd like to borrow it. It sounds like it might be interesting reading."
"I never would have thought of you as someone interested in Kant," Dan said in surprise.
"I think the man said something about hidden interests and abilities. Besides," Bill continued, "I hear Kant was a killer fisherman."