|"... One third of all [software] projects fail .... The top 5 causes of failure: Lack of user input, lack of executive support, incomplete requirements and specifications, changing requirements, technology ineptitude." Rauch, T., Kahler, S., and Flanagan, G.1|
The possible approaches to moderate and large scale information systems development can be dizzing. If you were to visit one hundred information systems departments you would find one thousand different ideas about hardware platforms, operating systems, network software, computer languages, packaged software, user support, the role of the user, risk taking in adopting new technology, etc. Likely the most basic tenet that you would learn is that IS development is a wild and wooly moving beast. Yet ISs are under considerable pressure to be developed faster, deal with more numerous and complex interfaces, and work correctly the first time.
To deal with the size and complexity of larger systems, a normative
(what experts suggest you should do) approach is to follow ISs through
a birth to death "life cycle." Laudon & Laudon2 enumerate
a six stage systems life cycle consisting of definition through post implementation.
If you were to open any other text in Information Systems you would find
a similar breakout. Dozens of taxonomies and approaches for better software
development have been developed over the years. Which one is "best." Perhaps
George Carlin's. Actually, there is no right answer.
As anyone who has been through an unstructured development would tell you,
structured is better. But just how much structure is needed? This
week we will look primarily at the traditional approaches as well as more
recent development approaches. Next week we will look at more in-depth
tools for assisting in developing quality systems.
|Is there a well defined methodology for the life cycle of information systems in the organization where you work?|
Whatever methodology you selected, you would likely find four common threads - analysis, design, "programming", and implementation. Programming here may be loosely interpreted to include packaged software and even outsourcing, which will be addressed shortly.
It seems somewhat obvious that before you can create, improve, or replace
an information system, you should stop to study the current system, whatever
it might be, to see how it operates. This is typically an integral part
of the analysis stage. There is, however, another viewpoint - ignoring
the old system entirely, at least ignoring the "customary" way of
thinking. Instead perhaps you should start from scratch to create a new
mousetrap. From Childrens' Letters to God:
|Dear God, Instead of letting people die and having
to make new ones why don't you just keep the ones you have now. Eric L.
Dear God, Maybe Cain and Abel would not kill each other so much if they had their own rooms. It worked with my brother. Larry
Dear God, Why is Sunday school on Sunday? I thought it was supposed to be our day of rest. Tom L.
In a more recent story, when an U.S. Army General recently took over a new command, several of his high level executives asked him when he was going to issue a "vision" statement. He cursely replied that before he could see any vision he needed to cut down some of the trees (his top heavy staff) that were blocking his view.
On a more immediate and practical note, in the analysis stage an analyst would use such tools as questionnaires, interviews, and flow charts to help determine the makeup and flows of the current system. You will learn more about these in the next lesson and in a later course in this series.
The later design and programming stages are typically closely intertwined. This is because detail requirements for what the system is to accomplish are written into exact specifications or "pseudocode." Those instructions are then translated into computer code. Much about the efforts in these two stages are dependent upon the general approach that is taken. If the approach involves outsourcing, then the efforts in these stages would be handled by the outsourcing organization. If the approach involves packaged software, then frequently these stages would involve packaged software modification.
The last stage "implementation" is frequently given short shrift. During installation, systems should be run in parallel to insure full operability. Often it is only in this stage when adaptability problems are discovered.
Both Laudon and Laudon and Plyer3 do an excellent job of explaining the role of prototyping. Prior to the late 1980s system development was a much more formal process. The introduction of prototyping allowed a more flexible approach toward life cycle development. Plyer advocates the use of prototyping in all four stages. Most professionals familiar with prototyping would recommend it most effectively for extracting user requirements.
End User Development
The rise in packaged software and end user development is evident. Desktop personal computing has provided end users with the opportunity and means to create their own applications. Newsweek magazine has stated that 89 percent of teens use computers at least several times a week4. So it is likely that this trend will not only continue but escalate. As L&L have stated, controlling information systems development outside the information systems department is a major issue. On one side of the issue user involvement should be encouraged. On the other side of the issue user involvement must also be controlled. In an age of high employee turnover, letting employees create custom built solutions can be problematic when those solutions must later be maintained. L&L provide some excellent strengths and limitations with respect to end user development. In times of cutbacks frequently end user development becomes the only viable option for many organizations and departments within them. They also provide for controls including cost justification, standards, quality assurance reviews, and other controls typical to formally developed information systems. The packaged software issue will be addressed in greater detail in lesson 7.
The Evolution of Computing and the Life Cycle
The history of computing has seen us progress through four stages. The first was the mainframe. The second was the use of minicomputers. The third was a migration to networks and client/server computing. And currently we are seen the evolution of systems into Web based access - the internet, intranets, and extranets. Is there any difference in the approach we should take with the current generation of systems development?
The growth in popularity of internet technology has prompted an associated growth in approaches for creating and maintaining information systems that 'ride' on the base technologies. What more specifically are these approaches and how might we evaluate them? The remainder of this reading looks at those alternatives and attempts to provide some guidance for evaluating them. It will begin by providing a definition for intra and extranets. It will then provide a taxonomy and characteristics of each of the approaches. It will also provide a basis for matching a solution to an organizationís environment. Finally, it will provide some caveats for managers who need to think carefully about the long term effects of creating and maintaining these solutions.
What is Inter, Intra and Extranet technology?
An intranet is a privately owned information network that utilizes the
protocols, tools, and languages of the Internet. An extranet expands the
concept to allow for customer access via two way interaction - typically
with an issued user ID and security features. This differs from "open"
web based Internet information where any person can read the information
provided. The varieties of protocols used in inter, intra and extranetting
include TCP/IP, DNS, HTTP, FTP, CGI, SMTP, Usenet, and IRC. The principal
tools include servers (with utilities), browsers, and web page organization
The server is central to the establishment and implementation of an intra
and extranets because it must be able to interpret the variety of protocol
instructions and also store and deliver the data packets.
|Note that Webtycho is a form of Extranet. You pay for the value it provides. You are issued a user ID, and a password. You also interact on a two way basis within it.|
A Taxonomy of Approaches
Four relatively clear approaches for building these types of systems
have arisen. They are 1) roll your own, 2) packaged applications,
3) generic systems, and 4) see through. A Roll your own
approach entails coding data or information from scratch, most frequently
applications are purchased "turnkey" applications oriented toward specific
functional areas such as sales or budgeting. They are usually written in
or Netscape. Generic systems provide a loose framework with generic
application templates or data structure supports that work within the internet
protocols. Finally, See Through programs operate by providing a
window through a browser into legacy applications. The table below provides
a quick look at additional characteristics for each of the approaches.
|Roll Your Own||Start coding HTML, CGI, Java from scratch||Organization specific||Custom built; sense of pride in creation||Expensive;
difficult to maintain
|Packaged Application||Pre-packaged applications such as sales, purchasing||Oracle, Oblix||Ready to go; meets immediate business need||Likely need tailoring;
limited applications available; training required
|Generic||Template environment for application creation and management||Lotus Domino;
Allaire Cold Fusion
|May build on legacy apps;
complete solution; integrated
|See Through||Use of your browser to view legacy applications running on your LAN or mainframe||CITRIXís Winframe;
|No new development necessary; very cost effective||Must continue to support legacy apps; some inefficiency in speed and processing because of added layer|
Note that these categories are not meant to be all -inclusive. There are many variations on a theme. And as web based information system applications grow, so will the options for delivering them. Irrespective of which of the above approaches an organization may select, certain basic requirements are necessary. That is, intranets and extranets are no different from traditional client server systems in needing servers that must be purchased (e.g. $5,000 for a 100 user Intranetware license from Novell) and maintained (backup, upgrades). They also require webmasters (in lieu of network administrators) to administer and control access to the data. It would be untenable to have a user create a series of pages only to have another user come along and accidentally delete them. Additionally it is desirable for these systems to have links to the other information systems already resident in the organization such as e-mail and databases. Gateways to those systems need to be created and maintained. The following paragraphs discuss additional vagaries of the individual approaches.
Roll Your Own
This method is the approach currently most utilized. Roll your own has been a common sense evolution. Intra and Extranets are new technologies and therefore not much software support is yet available for integrating and managing web pages. Much of this type of help is just now surfacing. We are passing through a stage roughly equivalent to mainframe computing in the early 1960ís. At that time database management systems and packaged applications did not yet exist. Organizations hired and used their own programmers to build systems from scratch.
The roll your own approach is touted as easy and inexpensive. It provides this appearance by giving users the ability to create their own home pages through HTML coding, and the hypertext linking capability inherent in internet protocols. A number of vendors have created packages or add-ons to word processing packages for building HTML web pages. With an hour or two of training, users can be creating personal web pages to attach to an intranet.
Technical management of a roll your own intra or extranet is typically limited to what may be accomplished through low level server capability, for example, read/write privileges on disk directories. This places a burden on the user to know what directories may be used. It also surfaces the issue of how pages and links are to be maintained upon a userís transfer or leaving. In a survey of ten organizations using roll your own intranet technology, an average of one full time person needed for each intranet server in use. This person is needed in addition to LAN management personnel. This management can be aided through the use of programs such as Microsoftís Front Page for organizing and controlling content.
To meet the serious business userís needs, and eliminate the "start from scratch" necessity, vendors have stepped in and created turnkey packaged internet applications.
Most of an organizationís business needs can be well served by packaged software. Knowing this, vendors such as Oracle, Clarify, and Oblix have begun producing Web-based software for a variety of application areas such as customer support, sales/marketing, and human resources management. Their goal is a turnkey system that a customer can install quickly, receive on-line training, and implement post-haste. Oracle has produced an array of applications in manufacturing, supply chain management, financials, projects, human resources, and front office (http://www.oracle.com/applications/)
Clarify (http://www.clarify.com/) has produced applications such as call tracking, service-contract verification, customer-configuration management, defect tracking, and service-inventory management that companies such as Cisco Systems are using daily. Oblix has produced an environment called IntraPower Suite. It includes an Employee Directory, Resource Scheduler, Dynamic Business Cards, and Organization Chart. The largest problem in this approach is the current lack of extensive applications. Although working hard, it will take time before application specific vendors can convert their applications from the client server side to Web/Intranet based technology. Meanwhile organizations can find solutions that go half-way toward a turnkey environment through generic approaches.
The generic approach is an interesting hybrid between the packaged application thrust and the roll your own method. There are several vendors who offer structural frameworks and more sophisticated management tools for creating and managing HTML and other data types. These include Lotusí Domino (http://www2.lotus.com/), Interbase (http://www.interbase.com/) from a division of Inprise and Allaire Corpís Cold Fusion, The thrust of this approach is to set up a complete environment for allowing users to create web pages, but to also integrate them easily by adding the essentials of database technology. The features commonly available in database environments such as access control, security, and query capability are then available for web based documents. A particularly attractive feature of this product is the groupware aspect. Users can pull information from the intranet, but also push it, i.e. place information on the server in a much more organized fashion without having to coordinate with the Webmaster. Additionally users can create forms and output views without extensive professional training and experience. The Lotus product acts as both an intranet and internet server simultaneously. This provides an organization with the capability of developing intranet applications that can then be turned out onto the web. Notesbases databases residing on a Domino server exist in an HTML format. The paradigm for data control through Domino is also different. The content of and access to a Notes database, internal and external to the organization, is controlled by the database manager, not the Webmaster or network administrator. Domino also has CC:Mail built in with SMTP, POP3 and X.400 compliance.
In any of the three approaches just visited a substantial investment must be made in development and infrastructure support. Another method which bypasses much of this need is surfacing.
The rationale behind much of the thrust of creating intra and extranets has been to utilize the browser such as Netscape Navigator or Microsoft Internet Explorer as a single point of entry and navigation among an organizationís information. In fact, little data is yet available to support the cost benefit payoff of creating intranets (see Web Week 21 April 1997). In response to this lack of a measure and in response to a need for accessing an organizations legacy systems, two vendors have produced products which allow and end user to peer through his browser into the legacy applications. The two products in this arena are CITRIXís Winframe (http://www.citrix.com/products/winframe.asp) and SCOís Tarantella (http://www.tarantella.sco.com/). Winframeís non-HTML access is limited to applications running on Microsoft client server networks. Tarantella however works through a wide range of UNIX (X-Window), Novell and mainframe application frameworks. While this approach is very cost effective it prevents data which is not in an internet accessible format from being integrated. It also limits processing to legacy capability.
While certainly any organizationís criteria for evaluating intranet options are specific to its needs, the following list of issues are likely universal and therefore should be considered when evaluating the various approaches to intraneting:
The "Independent" Intra and Extranet Approach?
Cost - Initial, maintenance, programming, training Compatibility / Standards / Platforms Security / Access Interface/Ease of Use Network Management Tools Data Organization and Access Development and Administrative Personnel Availability Application Development / Extensibility / Customization
While intra and extranets have been proliferating, many if not most
of the efforts have been "bottom up", that is started and extended by decentralized,
enthusiastic individuals. Ultimately, however, your organization will need
to answer the questions: What is the business purpose of our Intranet and
is it cost effective? What applications needs will readily be answered
with this technology, and what others are inefficient using these approaches?
The fact that the basic paradigm of the web is hypertext should not be
ignored. Information Systems managers should be wary of falling into the
trap of the 1960ís - spaghetti code. There is significant cost down the
road to those who are now advocating a "Do your own thing" - no structure
approach. Payday will come in the form of heavily overloaded Webmasters,
the entanglement and loss of links, and the loss of control and history
over one of the organizations most important assets - its information.
1. Rauch, T., Kahler, S., and Flanagan, G. "Usability Techniques - What Can You Do?" SIGCHI Bulletin vol 28, no 4. Oct 1996 pp 63-4.
2. Laudon K. and Laudon, J. Management Information Systems. Prentice Hall. 1998.
3. Plyler, R. W., & Kim, Y.-g. (1993). Methodology myths: Four tenets for systems developers. Information Systems Management, 10(2), 39-44.
4. "Teenagers and Technology" Newsweek April 28, 1997, p 86.
The Life Cycle According to George Carlin:
"The most unfair thing about life is the way it ends. I mean, life is
tough. It takes up a lot of your time. What do you get at the end of it?
A Death. What's that, a bonus? I think the life cycle is all backwards.
You should die first, get it out of the way. Then you live in an old age
home. You get kicked out when you're too young, you get a gold watch and
you go to work. You work forty years until you're young enough to enjoy
your retirement. You do drugs, alcohol, you party, you get ready for high
school. You go to grade school, you become a kid, you play,
you have no responsibilities. You become a little baby, you go back into the womb, spend your last nine months floating. . .and
you finish off as an orgasm."
1. Find an alternative or variation on the life cycle development method(s) described in your readings. The method you locate might, for example, be related to specific types of IS development such as object oriented or Web-based. Or it may be a general approach suggested by an IT guru or a "Big 6" firm. After you have located a method, post, in the "Approaches to Life Cycle Development" Conference, a 2 or 3 paragraph description of that approach. If possible include links to further info available on the web.
2. Start Mini Paper One. Refer
to the Syllabus, Project Descriptions, Mini Paper 1 to get started.
(c) John H. Saunders 1999. Permission granted for use in courses at the University of Maryland